学ぶ

単語誤り率とは。音声AIのWERでは測れないもの

Rene, Kabir Goel 
単語誤り率とは。音声AIのWERでは測れないもの

単語誤り率(WER)は、文字起こしと参照文の違いを数えます。抜けた語や誤った語の検出には役立ちます。しかし、その音声が製品に適しているかはわかりません。

2つの生成音声がまったく同じ単語を話していても、体験は大きく異なることがあります。一方は安心させる話し方で、もう一方は飛行機が欠航したことを喜んでいるように聞こえる。文字起こしは合格でも、会話はそうではありません。

TTSモデルの品質をどう評価するかで説明した私たちの方法は、利用者に届けたい体験から始まります。リアルタイム音声エージェントなら、一度で応答を理解できること、状況に合う話し方、気まずい遅延や割り込みのない会話です。WERはその評価に含まれる診断指標の1つであり、単独で最適化するスコアではありません。

単語誤り率が実際に測るもの

WERは、文字起こしを参照文に合わせるために必要な単語の編集回数の最小値を使います。次は英語の計算式と例です。

WER = (substitutions + deletions + insertions) / reference words

百分率で表すには100を掛けます。次の例では、文字起こしで「Tuesday」が「Thursday」に置き換わっています。

Reference:  please move my appointment to next Tuesday morning
Transcript: please move my appointment to next Thursday morning

WER = 1 / 8 = 12.5%

誤りは1語ですが、予約日を間違える可能性があります。WERでは、他のどの置換とも同じ重みです。その結果が製品に与える影響は、製品評価で扱う必要があります。

MicrosoftのWERドキュメントに計算方法があり、JiWERなどのツールで対応づけを計算できます。テキスト正規化と参照文のルールを統一してください。コーパス全体のWERでは、各音声の百分率を単純平均せず、編集回数の合計を参照語数の合計で割ります。挿入があると100%を超える場合があります。参照文が空だと通常の式ではゼロ除算になるため、採点方法を文書化する必要があります。

計算式は同じでも、次の2つの評価条件は異なります。

評価比較するもの結果からわかること
音声認識(STT/ASR)認識器の文字起こしと人手の参照文認識された語が参照文とどれほど異なるか
テキスト読み上げ(TTS)生成音声のASR文字起こしと意図した文章合成と認識を合わせた処理が、その語を保持できるか

後者では、別のモデルを通して音声を評価しています。TTSの誤りに見えても、認識器が原因かもしれません。逆に、正しい文字起こしが不明瞭な音声を隠すこともあります。どちらなのかを確かめるには、聞く必要があります。

WERがTTS評価の判断を誤らせる理由

同じ単語でも聞こえ方は大きく違う

文章だけでは、唯一の正しい話し方は決まりません。「I can’t believe it」は、興奮、怒り、悲しみ、皮肉のいずれも表せます。すべての語を認識できても、その話し方が状況に合うかはわかりません。

評価記事の対になった音声例で違いを聞けます。同じWERでも、話し方は異なります。テストセットで意図した語を安定して話せるようになった後は、WERの小さな差が、聞き手に重要な品質の差をほとんど示さないこともあります。小数点以下の桁を増やしても、測定していない情報は得られません。

認識器は誤りを作ることも隠すこともある

生成音声が対象の聞き手には明瞭でも、ASRモデルがアクセント、言語、なじみのない名前を苦手とする場合があります。WERは上がりますが、音声合成が失敗したとは限りません。

逆も起こります。認識器が聞き取りにくい語を文脈から推測し、意図した文字起こしを返す場合です。電話越しに口座コードを聞き取る人間が、同じように補えるとは限りません。

回帰テストでは認識器と採点方針を固定し、誤りをTTSの責任と判断する前に、検出された音声を聞いてください。合格した音声も抽出して確認します。失敗例だけを見ると、ASRが出力を補正したケースを見落とします。認識器の固定は比較条件をそろえますが、認識器の弱点を消すものではありません。

正確さは文脈で決まる

文字起こしに「read」とあっても、現在形と過去形のどちらで発音したかは表れません。単語は一致していても、その文では発音が誤っている可能性があります。

日付表記にも同様の問題があります。「07/08/2026」は米国では7月8日、英国では8月7日を意味することがあります。参照文で正誤を判断する前に、製品側で対象ロケールを定める必要があります。参照文の作成者が別の解釈を想定したという理由だけで、どちらかを不正解にしてはいけません。

「$25」と「twenty-five dollars」のように、同じ金額を表す無害な違いもあれば、意味を変える違いもあります。用途に応じて許容される読み方を定義し、表記の不一致と、日付、金額、識別子の誤りを区別してください。発信者にとって重要な誤りを、テキスト正規化で消してはいけません。

意味を考慮したWERが役立つ場面

Semantic WERは、意味を保つ言い回しの違いと、意味を変える誤りを区別しようとする指標です。「Twenty-five dollars」と「$25」は同じ意味になり得ますが、「fifteen dollars」は違います。文字どおりの一致判定が無害な違いを過大評価する場合は特に、単語単位のWERと併用する意味重視のスコアが役立ちます。

採点方法が重要です。何を同等とみなすかを定め、名前、金額、否定表現の変化を評価器が検出するか確認してください。「semantic WER」という名前でも、2つの実装の結果をそのまま比較できるとは限りません。意味が完全に一致していても、安心させる声か、住所を早口で読むか、音声チャンクの間に不具合があるかはわかりません。診断材料は増えますが、会話品質の最終判定にはなりません。

支援したい会話から始める

モデルを比較する前に、状況を記述します。誰が聞くのか。どの言語とロケールを期待するのか。電話越しに住所を聞くのか、ヘッドホンで短い回答を聞くのか。何を理解し、次に何をする必要があるのか。

予約確認を読み上げるサポートエージェントなら、日時を一度で理解できること、落ち着いた話し方、詳細を追えるだけの間を設けることが要件になり得ます。全体のWERが低いだけでは、このどれも確認できません。

それらの要件を中心に評価を設計します。対話型TTSでは、私たちは次のような観点を使います。

観点検証する問い集める証拠
正確さと明瞭さ名前、数字、住所、コードを正しく聞き取れるか聞き手による文字起こしと重要箇所の確認。WERは診断に使う
文脈上の正確さこの状況に合う発音や読み方か明示したロケール、分野、許容する読み方のルールに照らした確認
適切な話し方速さ、強調、感情が会話に合うか状況を伝えたうえでの聴取比較
応答性相手を長く待たせたり、遮ったりしないかエージェント全体の所要時間とターン交代の観察
一貫性ターンをまたいでも話者が安定するか会話全体で声、アクセント、話し方の変化を確認
ストリーミング動作リアルタイム再生でつなぎ目、繰り返し、音の欠落が生じないか想定するストリーミング・再生経路で記録した音声

TTSそのものを評価するテストも、エージェント全体を評価するテストもあります。不具合の原因を調べるときは区別してください。割り込みはターン検出、長い間は音声生成ではなくバックエンド検索が原因かもしれません。利用者はすべてを体験しますが、修正方法は問題の発生箇所によって変わります。

文脈を伝えて聞き、実際の経路を検証する

人間による聴取は欠かせませんが、好みのスコアも普遍的な正解ではありません。音声が何をする場面なのかを聞き手に伝えます。その言語とロケールを理解する人を募り、全員を1つの平均にまとめるのではなく、判断が分かれた点を報告してください。

モデルの比較では、再生音量、コーデック、サンプルレート、提示順を統一します。疲労を抑えるため、セッションを長くしすぎないようにします。製品全体を検証するなら、実際の電話や再生の条件を保ち、その範囲を明示してください。そうしないと、コーデックの問題をモデルの問題と取り違えたり、テスト準備の過程で本番の問題を消したりしかねません。

短い音声と会話全体の両方を使います。完成度の高いオフライン録音では、応答テキストが届く途中で生成する音声の不具合をすべて見つけられません。不自然なチャンクのつなぎ目、音節の繰り返し、最初に選んだ話し方を途中で修正できない状態に注意して聞きます。長い会話では、声やアクセントの変化も確認してください。

結果はロケールと不具合の種類で分けます。ある言語の発音が改善する一方、別の言語の話す速さが悪化することもあります。全体のスコアでは両方が隠れます。自動品質予測器は回帰の候補を絞るのに役立ちますが、対象言語と音声条件で検証する必要があります。WERを別の単一スコアに置き換えても、評価の問題は解決しません。

WERは原因調査に使う

WERは、単語単位の回帰を追跡し、確認すべき音声を探すうえで有用です。名前や英数字コードでは、正確な読み上げが不可欠な場合もあります。こうした確認を残し、実際の会話で理解しやすく適切な音声だとわかる証拠と組み合わせてください。

スコアが改善したら、聞き手にとって何が変わったかを確かめます。住所が聞き取りやすくなったのか。抜けていた語が戻ったのか。それとも表記を変えた結果、参照文と文字起こしが一致しただけなのか。ダッシュボードが同じ緑の矢印を示しても、結果は異なります。

違いを聞くには、TTSモデルの評価記事にある音声例から始めてください。その後、自分たちの会話文とストリーミング構成でSonicを試します。利用者に重要な観点で、製品の要件を満たすモデルを選んでください。文字起こしのスコアだけでは、その選択はできません。

よくある質問

単語誤り率とは何ですか?

単語誤り率は、文字起こしを参照文に合わせるために必要な単語の置換、削除、挿入の数を、参照文の単語数で割ったものです。音声認識ではモデルの出力を人手の文字起こしと比較します。TTS評価では通常、生成音声をASRで文字起こしした結果を、意図した文章と比較します。音声品質全体を測る指標ではありません。

WERが低いTTSモデルほど優れていますか?

必ずしもそうではありません。低いWERは、特定の評価条件で単語の編集が少なかったことを示します。同じWERでも、話す速さ、表現、文脈に応じた発音、話者の一貫性は異なります。ASRモデル自身が誤りを加えたり、人間には聞き取りにくい語を推測したりする場合もあります。

良い単語誤り率はどの程度ですか?

製品として使えることを示す共通のしきい値はありません。WERはデータセット、言語、参照文、正規化方針によって変わります。対話型TTSでは、対象の言語と状況を理解する聞き手とともに、文脈上の正確さ、明瞭さ、話し方、レイテンシー、ストリーミング動作も評価してください。

WERはどう計算しますか?

編集回数が最小になる対応づけで置換、削除、挿入を数えます。合計を参照文の単語数で割り、百分率なら100を掛けます。8語の参照文で1語を置換するとWERは12.5%です。挿入によって100%を超えることがあり、参照文が空の場合は通常の式では定義できません。