ブログに戻る
Fundamentals

音声認識におけるCERとWER

音声認識システムの性能を評価する際、CERとWERは重要な指標です。この記事では、これらの2つの指標の定義、計算方法、および限界について紹介します。音声認識エンジンの性能を評価する際には、他の指標と組み合わせて総合的に判断する必要があります。

音声認識におけるCERとWER

音声認識(Speech to Text)は、私たちの日常生活において欠かせない存在となっています。スマートフォンの音声アシスタントからスマートホームデバイスまで、これらのシステムは音声を文字に変換する能力に依存しています。音声認識システムの性能を評価する際、CERとWERは非常に重要な指標です。それでは、これらはそれぞれ何を意味し、どのような違いがあるのでしょうか?

WERとは?

WER、正式名称はWord Error Rate(単語誤り率)であり、音声認識システムの性能を評価するための一般的な指標です。WERは、音声認識システムが単語を認識する際の正確性を測定するために主に使用され、その計算式は次のとおりです:

WER=S+D+IN\text{WER} = \frac{S + D + I}{N}

その中で:

  • S(Substitutions、置換)は、正しい単語を誤った単語に認識した数です。

  • D(Deletions、削除)は、システムが認識すべき単語を見逃した数です。

  • I(Insertions、挿入)は、システムがテキスト中に存在しない単語を誤って認識した数です。

  • Nは、参照テキストに含まれる単語の総数です。

WERの値が低いほど、認識エラー率が低く、つまり正確性が高いことを示しています。

CERとは?

CER、すなわちCharacter Error Rate(文字誤り率)は、WERに似た指標ですが、単語ではなく文字に基づいて誤り率を計算します。この指標は、特定の状況(例えば、ピンインを扱う場合、明確な単語の境界がない言語、または文字ベースの言語モデル)でより効果的です。CERの公式は次の通りです:

CER=S+D+IN\text{CER} = \frac{S + D + I}{N}

公式中の記号が表す意味はWERと同じですが、ここでは SDIN は単語レベルではなく文字レベルに基づく数です。

CERとWERの適用シーン

単語を単位とする言語、例えば英語や他のアルファベットで構成される言語において、WERは一般的で直感的な評価基準です。しかし、日本語や中国語のような字形で構成される言語を扱う場合、通常はCERを評価基準として使用します。なぜなら、これらの言語の単一の文字は通常、意味の単位を表すことができるからです。

さらに、スペルの正確な認識や文字レベルの校正タスクなどの特定の適用シーンでは、CERがWERよりもシステムの性能をより反映する場合があります。

計算例

簡単な日本語の例を通じて、計算方法を理解しましょう。以下の日本語テキストを仮定します:

  • 参考テキスト(Reference、すなわち標準解答): 今日は天気がいいね

  • 認識テキスト(Hypothesis、すなわち音声認識の結果): 今日天気はいいよね

この例では、テキストの言語が日本語であるため、CERを指標として使用するのが適切です。したがって、次にCERを計算します。

手動でCERを計算

Reference
Hypothesis
エラータイプDSI
  1. 置換エラー(S):

    • 文字 が誤って として認識されました。したがって、置換エラー数 S=1。
  2. 削除エラー(D):

    • 文字 が漏れて認識されました。したがって、削除エラー数 D=1。
  3. 挿入エラー:

    • 文字 が追加で挿入されました。したがって、挿入エラー数 I=1。
  4. 総文字数(N):

    • 参考テキストには9文字があります。したがって、N=9。

これらの数値をCER公式に代入します:

CER=S+D+IN=1+1+190.333\text{CER} = \frac{S + D + I}{N} = \frac{1 + 1 + 1}{9} \approx 0.333

したがって、この例のCERは約0.333、すなわち33.3%です。

PythonでCERを計算

上記の簡単な計算例を通じて、CERの計算方法を明確に理解できます。WERの計算も同様で、ここでは詳しく述べません。しかし、手動での計算はやはり面倒なので、これらの計算を手伝ってくれるツールがたくさんあります。以下にJiWER というPythonライブラリの例を示します:

開発環境を準備

Python >=3.8 が必要です。

pip install jiwer

CERを計算

import jiwer

reference = "今日は天気がいいね"
hypothesis = "今日天気はいいよね"
# Calculate CER
out = jiwer.process_characters(reference, hypothesis)
# Print CER only
print(f"CER={out.cer}\n-------")
# Print detailed infomation
print(jiwer.visualize_alignment(out))

上記のコードを実行すると、以下の情報が出力されます:

CER=0.3333333333333333
--------
=== SENTENCE 1 ===

REF: 今日は天気がいい*ね
HYP: 今日*天気はいいよね
     D  S   I

=== SUMMARY ===
number of sentences: 1
substitutions=1 deletions=1 insertions=1 hits=7

cer=33.33%

JiWERはWERの計算もサポートしており、ドキュメント にアクセスしてさらに多くの機能を探索できます。

CERとWER計算前の追加処理

CERとWERを計算する際、通常は文字自体の誤りにのみ注目するため、計算前に参照テキストと認識結果に対していくつかの前処理を行う必要があります:

  • 略語の展開:テキスト中の略語を実際の読み方に展開します。例えば、「IEEE」を「I triple E」に展開します。

  • 大文字小文字の統一:英語など大文字と小文字を区別する文字の場合、一般的にすべて小文字に統一します。

  • 句読点の除去:参照テキストと認識結果からすべての句読点を除去し、文字のみを保持します。

  • ITN変換の処理:ほとんどの音声認識システムにはITN機能が内蔵されており、日付や数字などのオブジェクトを慣用的な形式で表示します。以下の表に示します:

ITNを無効にするITNを有効にする
二十パーセント20%
千二百三十四円1234円
四月三日4月3日

CERまたはWERの計算を行う前に、参照テキストと認識結果を「ITN無効」のスタイルに統一する必要があります。つまり、すべてのテキストはその言語独自の文字で表現され、音声の発音内容と完全に一致し、テキストにはアラビア数字や記号などの内容が含まれていません。DolphinVoice音声認識APIを使用している場合は、パラメーター enable_inverse_text_normalization = false を設定することでITN機能をオフにし、音声認識結果が上記の要件を満たすようにできます。ITNに関する詳細情報は、記事「音声認識におけるITN技術について」 を参照してください。

CERとWERの応用に関する注意事項

CERとWERは音声認識システムの性能を評価する重要な指標ですが、限界もあります。例えば、CERとWERの計算では、テキストの可読性に影響を与える多くの要因をカバーすることができません。例えば、句読点の位置や種類、数字や記号(例えば、日付や時間)のフォーマット、そしてテキストの流暢性の処理などは、ユーザー体験に大きな影響を与える重要な要素ですが、これらはCERとWERの評価範囲には含まれていません。

さらに、日本語では同じ語彙が複数の書き方を持つ場合があります。例えば、参照テキストが 全て で、音声認識の結果が すべて である場合、これらの書き方は実際にはどちらも正しいですが、CERの計算では1つの置換エラーと1つの挿入エラーとして扱われ、CERの計算結果に影響を与えます。この問題は可読性や実際の理解にはほとんど影響を与えませんが、CERを低下させる原因となります。

したがって、音声認識エンジンの性能を評価する際には、CERやWERだけに依存するべきではありません。私たちは、CER/WER、可読性、ユーザー体験を含む複数の指標を総合的に分析し、性能評価の参考基準として用いる必要があります。これにより、システムの真の能力とユーザーの実際の体験を包括的に理解することができます。


株式会社DolphinAIは SOC 2 Type 1 認証および ISMS(ISO/IEC 27001)認証を取得しており、安全な環境で高精度の音声認識サービスを提供できます。1日平均約7,000時間の商用利用実績があります。コールセンター業界では、DolphinVoiceのサービスがCloopen株式会社のSimpleConnectプラットフォームに正式に導入され商用化されました。株式会社三通テレコムサービスと協力してAI通話メモサービス を開発・提供しています。

音声認識システムの導入や関連の問題についてご相談がある場合は、お気軽にお問い合わせください。

今すぐスタート


著者の紹介

朝倉 匡廣 / Andy Yan

  • 株式会社DolphinAI 代表取締役社長
  • 株式会社アドバンスト・メディアの(8年間勤務) 元海外事業部長
  • 音声AI実施経験:12年
  • 実績:30社以上の企業の音声AI導入支援
  • 分野:音声認識、音声合成、コールセンターAI、AI会議録、音声対話デバイス
  • 市場:日本、中国本土、台湾、香港
  • 執筆:100篇以上

公開発表

  • 「AI新勢力・プロダクトオープンデー」 by Tokyo Generative AI Development Community(2025年10月25日)
  • 「TOPAI国際AIフロンティア・エコシステム 招待者限定イベント」 by TOPAI & インスピランド・インキュベーター(2025年7月29日)
  • "Global AI Conference & Hackathon" by WaytoAGI(2025年6月7日)

連絡先

Email: mh.asakura@dolphin-ai.jp
LinkedIn: https://www.linkedin.com/in/14a9b882/

株式会社DolphinAIについて

日本語を中心とした音声認識・音声合成・音声対話技術を開発・提供するAI企業です。

サービス:DolphinVoice(音声対話SaaSプラットフォーム)
提供機能:音声認識(日本語・英語・中国語・日英/中英混合)、音声合成(日本語・英語・中国語)
利用実績:コールセンターやAI議事録業界にて、1日平均約7,000時間の商用利用

■ セキュリティ体制

  • ISMS(ISO/IEC 27001)認証取得済み
  • SOC2 Type I レポート取得取得済み
  • 詳細へ

■ 問い合わせ先

️ 03-6161-7298

 voice.contact@dolphin-ai.jp

 https://dolphin-ai.jp/

記事を共有