테스트 방식
BizCrush 음성인식 벤치마크가 어떻게 동작하는지, 처음부터 끝까지 설명합니다.
이 벤치마크를 만든 이유
STT 사용자가 실제로 쓰는 앱들을 현실의 오디오로, 테스트 방식까지 모두 드러난 상태에서 비교할 수 있는 스코어보드를 제공하고 수치와 원본 오디오, 전사가 이 자리에 그대로 있어 누구나 직접 검토할 수 있도록 하고자 이 벤치마크를 공개합니다.
이해 충돌은 실재합니다. BizCrush와 이 벤치마크를 함께 만든다는 사실은 그대로이며, 이를 보완하기 위한 장치들은 본 페이지의 나머지 섹션에서 다룹니다.
테스트 환경
테스트는 벤치마크 전용으로 사용되는 별도의 Mac mini 위에서 진행됩니다. 정답 오디오는 가상 오디오 브리지를 거쳐 안드로이드 에뮬레이터의 마이크 입력으로 재생되고, 그 위에서 실제 STT 앱이 이를 받아 처리합니다. API 직접 호출 대신 스피커-마이크 경로를 거치는 것은 의도적이며, 사용자가 실제 환경에서 겪는 앱의 오디오 파이프라인 전체를 점수에 반영하기 위함입니다.
Multi-Output Device는 같은 오디오를 Mac 스피커와 BlackHole로 동시에 보내, 재생을 직접 모니터링하면서 BlackHole이 에뮬레이터 마이크로 같은 오디오를 전달하도록 합니다. BlackHole만 사용하면 재생 소리가 가상 장치로만 흘러가 직접 들을 수 없습니다.
한 번의 테스트가 진행되는 방식
- 테스트 하네스가 에뮬레이터에서 대상 앱을 열고 녹음을 시작합니다.
- BlackHole을 통해 정답 오디오 클립을 에뮬레이터 마이크 입력으로 재생합니다.
- 녹음이 진행되는 동안 엔진의 실시간 전사를 앱에서 직접 캡처합니다. 일부 앱은 녹음 중 복사 버튼을 제공하고, 그렇지 않은 앱은 화면에 표시되는 전사 뷰를 폴링합니다.
- 재생이 끝나면 후속 인식 결과가 플러시될 수 있도록 몇 초간 기다린 뒤, 실시간 전사의 마지막 부분을 캡처합니다.
- 정지 버튼을 누릅니다. 이후 동작은 어떤 전사를 캡처하는 테스트인지에 따라 달라집니다.
- 실시간 테스트: 실시간 전사는 앞 단계에서 이미 캡처되었으므로, 이대로 녹음 세션을 종료합니다.
- 후처리 테스트: AI 후처리는 정지 버튼을 누른 이후 실행되므로, 하네스는 후처리가 끝날 때까지 기다린 뒤 다듬어진 결과를 가져옵니다.
- 캡처된 각 전사를 정규화하고 정답과 비교하여 점수를 매깁니다. 각 전사는 별도의 테스트로 내부 검수 대기열에 들어가며, 공개 사이트에는 아직 표시되지 않습니다.
- 리뷰어가 오디오를 들으며 엔진 출력과 비교합니다. 표기는 다르지만 발화상으로는 구분되지 않는 단어 쌍을 일치 처리할 수 있습니다. 띄어쓰기 차이, 빠른 발화에서 구분이 어려운 표기 변이(예: 있지마는 / 있지만은), 자동 정규화가 일반적으로 잡지 못하는 경우(예: 100 kilometers / a hundred kilometers) 등이 그 예입니다. 각 일치 처리는 해당 오류를 점수에서 제외합니다. 리뷰어가 일치 처리한 내용도 각 테스트 페이지에 그대로 표시되므로, 어떤 쌍이 일치로 처리되었는지 누구나 확인할 수 있습니다. 리뷰어는 엔진 출력, 정답 텍스트, 오디오를 수정할 수 없습니다. 모든 일치 처리의 (참조, 엔진) 단어 쌍이 향후 정규화 규칙 확장을 위해 기록되며, 리뷰어 신원은 저장되지 않습니다.
- 리뷰어가 승인하면 해당 테스트가 본 사이트에 공개됩니다.
녹음 중에 캡처하는 이유
BizCrush를 포함하는 테스트 대상 앱 중 다수는 사용자가 정지 버튼을 누른 뒤 전체 전사에 후처리를 수행합니다. 구두점 추가, 대소문자 정리, 가끔은 단어 교정까지 적용합니다. 사용자 경험에는 도움이 되지만 인식 오류를 가리고, 표시되는 전사는 엔진이 실제로 출력한 것보다 좋게 보입니다.
녹음이 진행되는 동안 실시간 전사를 캡처하면 그 후처리를 피할 수 있습니다. 다만 실시간 캡처에도 앱이 단어 단위로 적용하는 인라인 AI 보정은 포함됩니다. 이는 앱 파이프라인의 기능이며 엔진 자체의 동작이 아닙니다. 사용자가 앱에서 실제로 보는 결과이므로 일부러 무력화하지 않습니다.
사용자가 앱에서 실제로 경험하는 형태로 엔진을 채점합니다. 인라인 보정은 포함, 정지 후 후처리는 제외합니다.
실시간 전사와 후처리 전사
상당수의 앱은 실시간 전사를 노출하지 않고 정지 후 다듬어진 전사만 보여줍니다. 그런 앱까지 평가할 수 있도록 후처리 전사 캡처(정지 후 AI가 다시 다듬은 결과)를 추가했습니다.
앱이 두 가지를 모두 노출하는 경우 각각 별도의 테스트로 게시하며 실시간 또는 후처리로 표시하여, 후처리가 무엇을 바꿨는지 직접 확인할 수 있습니다.
투명성
각 테스트의 투명성을 확보하기 위해 게시되는 모든 테스트에는 정규화된 정답 텍스트와 정규화된 엔진 전사를 함께 공개하여, 독자가 직접 점수를 검증할 수 있도록 합니다.
앱 별로 각기 다른 전사 노출 방식을 채택하고 있기 때문에 별도의 자동화 하네스를 구축하여 테스트하고 있으나, 세부 내용이 공개되면 테스트 대상 앱이 식별될 수 있어 해당 부분은 공개하지 않습니다.
채점 방식
표기 선호가 아닌 음향적 정확도를 반영하기 위해, 모든 전사는 비교 전에 양쪽(정답 텍스트와 엔진 전사)에 동일한 정규화를 거칩니다. 구체적으로는 다음과 같습니다.
- 대소문자 및 구두점. 소문자화, (laughter) 같은 괄호 안 무대 지시문 제거, 타임스탬프 제거, 구두점 제거(축약형 내부의 아포스트로피는 유지), 유니코드 NFKC.
- HTML 엔티티 디코딩. 원본 전사에 & 같은 원시 엔티티가 포함되는 경우가 있어, 정규화 전에 디코드합니다. 그래야 참조 텍스트의 'R&D' 같은 표기가 디코드되어 엔진이 출력하는 'R&D' 와 같은 토큰으로 비교됩니다.
- 천 단위 콤마 제거. 300,000 과 300000 을 같은 토큰으로 간주합니다. 엔진마다 콤마를 출력할지 여부가 다르기 때문입니다.
- 통화 및 퍼센트 동치성. 참조가 $3.3 billion 이고 엔진이 3.3 billion dollars 로 출력하면 일치로 처리합니다(0.6% 와 0.6 percent 도 마찬가지). 엔진 측 표기를 양쪽에 적용하므로 diff에서 동일한 토큰으로 렌더링됩니다.
- 화자 라벨 제거. 엔진이 출력하는 Speaker 1 같은 화자분리 잔여물은 정답에는 없으므로 삽입 오류로 집계하지 않습니다.
정규화를 적용한 뒤 사용하는 지표는 다음과 같습니다.
- WER 라틴 문자 언어와 한국어. 공백으로 토큰을 나누고 치환·삭제·삽입을 셉니다. 한국어 원시 WER은 발화상으로는 구분되지 않는 표기 차이도 오류로 셉니다. 띄어쓰기 차이나 빠른 발화에서 구분이 어려운 표기 변이(예: 있지마는 / 있지만은) 같은 경우입니다. 리뷰어가 각 클립을 직접 듣고 음향적으로 동일한 쌍을 일치 처리하므로, 게시 점수는 음향적 정확도를 반영합니다. 또한 WER은 CER이 놓치는 분절 차이를 보존합니다. 예: 전 체조 선수 / 전체 조 선수.
- CER 일본어와 중국어. 문자 단위로 채점하며, 비교 전에 양쪽에서 공백을 제거합니다.
자동 정규화가 일반적으로 잡지 못하는 경우(예: 100 kilometers / a hundred kilometers. 의미는 같지만 수 표기 문제도 통화 동치성도 아님)는 위의 '한 번의 테스트가 진행되는 방식'에 설명된 리뷰어 단계에서 처리됩니다. 리뷰어는 엔진 출력이나 정답을 수정하지 않고 해당 쌍을 일치 처리합니다.
신뢰도
안드로이드 에뮬레이터의 오디오 브리지는 실시간 시한 내에 프레임을 전달하지 못하는 경우가 있습니다. 그러면 녹음은 무음을 캡처하고 전사 품질이 떨어집니다. 하네스는 에뮬레이터 로그에서 producerThread late 이벤트 수를 세고, 발생률이 임계치를 넘으면 해당 테스트를 "지연"으로 표시합니다. 신뢰도는 엔진별로 깨끗하게 마무리된 테스트의 비율입니다.
한계
- 현재는 엔진을 소비자 앱을 통해 테스트하므로, 점수에는 앱이 엔진 위에 추가한 인라인 AI 보정이 반영됩니다. API 직접 테스트는 로드맵 단계이며 별도로 보고할 예정입니다. 동일 엔진의 앱 점수와 API 점수는 일반적으로 직접 비교할 수 없습니다.
- 실시간 전사 캡처는 앱별로 다릅니다. 엔진마다 진행 중 전사를 노출하는 방식이 달라, 하네스는 앱별 캡처 경로를 따로 가집니다. 새 엔진을 추가하려면 적절한 UI 훅을 직접 매핑해야 합니다.
- 앱 버전은 아직 자동 캡처되지 않습니다. 엔진의 주요 버전 간 비교를 본 사이트에서는 (아직) 명시적으로 다루지 않습니다.
- 테스트 클립 수는 아직 적으며, 의도적으로 천천히 확장하고 있습니다. 라이선스 문제가 없는 오디오를 확보하기가 쉽지 않고, 잘 작성된 정답 전사를 얻기는 더 어렵습니다. 리뷰어가 직접 오디오를 들으며 정답 전사를 작성하거나 다듬어, 엔진을 채점하기 전에 참조가 정확해지도록 합니다.
라이선스 및 출처
BizCrush가 직접 제작한 오디오와 정답 전사의 저작권은 BizCrush에 있으며, 모든 권리가 유보됩니다. 누구나 청취와 표시된 정답 텍스트를 통해 전사 정확도를 직접 검증할 수 있도록 본 페이지에 공개되어 있습니다. 사전 서면 허가 없이 재배포, 2차적 저작물 작성, 상업적 이용, 기계학습 모델 학습 데이터로의 사용은 금지됩니다.
외부 출처의 테스트 오디오와 정답 전사는 객관적인 벤치마킹을 목적으로 원 출처에서 인용되었습니다. 저작권은 원 창작자에게 있으며, 각 클립 페이지에 출처를 표시합니다. 엔진별 출력 전사는 해당 오디오의 파생물로서 동일한 저작권 위상을 계승합니다.
엔진 출력 전사는 해당 음성인식 서비스가 생성한 결과로, 오로지 정확도 비교를 위해 인용됩니다. 상표 및 제품명은 각 권리자에게 귀속됩니다.
BizCrush 자체 제작 콘텐츠에 대한 라이선스 문의나, 본 벤치마크에 포함된 외부 출처 클립의 권리자로서 출처 표기 변경 또는 콘텐츠 삭제를 요청하시는 경우 help@bizcrush.ai 로 연락 주세요.