"会議"の音声でOpenAIのWhisperとAmiVoiceの音声認識率を比較してみた
安藤章悟
みなさま、こんにちは。
先日こちらの記事でOpenAIのWhisperとAmiVoiceの認識率を比較しました。
この記事を振り返ると「AmiVoiceの得意分野はAmiVoiceが勝ち、Whisperの得意分野はWhisperが勝つ」という当たり前の結果だったので、今回は「会議の音声ではどちらが良い結果になるのか?」という視点で比較をします。
検証方法
検証方法や条件は下記です
- 当社のお客さまから研究開発用としてご提供いただいた会議の音声を使用しました。
- 会議音声は4種類の異なる業種のもので、それぞれ冒頭10分程度の合計40分程度の長さを使用しました。
- 上記音声や、その書き起こしテキストは音声認識エンジンの学習には使っておりません。
- 音声認識処理はAmiVoiceもWhisperもどちらも社内のローカル環境で実行しました。
- 音声認識エンジンはAmiVoice APIの「会話_汎用」の同等品、およびWhisperの「large」「large-v2」を使用しました。
- AmiVoiceは2022年6月頃、Whisper(large)は2022年10月頃、Whisper(large-v2)は2023年2月に音声認識処理をし、それぞれその時の最新のものを使用しました。
- 音声認識精度は文字単位で(単語単位ではなく)計測しました。
- 表記ゆれによる誤認識については、自動変換および目視でチェックし修正を行いました。目視のため多少のチェック漏れは残っているかと思います。
- フィラー(不要語)は正解文および音声認識結果から除去して計算するものとしました。
ここでポイントとして、今回の会議音声は比較的大きな企業様や団体様のもので、司会進行がきちんとされ発言者ごとに個別のマイクがあり、また発言者は参加者全員に説明するために適切な声量で喋っているものです(ひとり言やボソボソ声ではない)。この音声は人間が聞いても聞き取りやすく、つまり会議の音声認識の難易度としては比較的低いと言えるものです。
計測結果
■AmiVoice(会話_汎用)
データ | 正解文字数 | 挿入誤り数 | 削除誤り数 | 置換誤り数 | 音声認識精度 |
① | 2905 | 33 | 46 | 34 | 96.11% |
② | 2616 | 23 | 21 | 27 | 97.29% |
③ | 3011 | 38 | 23 | 44 | 96.51% |
④ | 3047 | 36 | 21 | 39 | 96.85% |
合計 | 11579 | 130 | 111 | 144 | 96.68% |
■Whisper(large)
データ | 正解文字数 | 挿入誤り数 | 削除誤り数 | 置換誤り数 | 音声認識精度 |
① | 2903 | 49 | 113 | 199 | 87.56% |
② | 2630 | 37 | 190 | 60 | 89.09% |
③ | 3009 | 47 | 138 | 146 | 89.00% |
④ | 3046 | 65 | 223 | 90 | 87.59% |
合計 | 11588 | 198 | 664 | 495 | 88.29% |
■Whisper(large-v2)
データ | 正解文字数 | 挿入誤り数 | 削除誤り数 | 置換誤り数 | 音声認識精度 |
① | 2901 | 60 | 132 | 161 | 87.83% |
② | 2625 | 67 | 204 | 55 | 87.58% |
③ | 3011 | 40 | 117 | 122 | 90.73% |
④ | 3044 | 65 | 189 | 85 | 88.86% |
合計 | 11581 | 232 | 642 | 423 | 88.80% |
考察
AmiVoiceが最も良い結果になりました。エラー率(CER)にすると、AmiVoiceは100%-96.68%=3.32%、同様にWhisper(large)は11.71%、Whisper(large-v2)は11.20%となり、3倍以上の非常に大きな差となりました。
AmiVoiceの音声認識率96.68%という値は我々の社内実験の中でも比較的高い水準のものだと言えます。 きちんとマイクがセッティングされ、話者も参加者に向けて明瞭に発話していて、人間にとっても聞きやすい音声であることが高い精度が出た理由だと言えます。
気になるのはWhisperがそれなりに誤認識をしている点です。 誤認識箇所をチェックしていると、目立つ誤認識パターンとして2種類くらいに分類できそうです。
- Whisperの誤認識パターン1:発音が似た単語に文脈を無視して間違っている
- 競合→今日後
- 好調に推移→好調に注意
- どこも投資をしている→ドグも投資している
- ◯◯か何かで→◯◯内科で
- Whisperの誤認識パターン2:あまり見たことのない漢字変換をしている
- 加重平均→過充平均
- 四半期報告→市販機報告
- 余資運用→吉運用
- 残存期間→暫存期間
- 外貨建て→外科だて
- 一過性→一家性
パターン1は人間が聞くと若干「そう聞こえなくもないかな?」と感じる箇所もありますが、文脈などを含めて総合的に考えるとおかしな誤認識のように感じます(このパターンはAmiVoiceでも発生しますが、その頻度が今回の音声ではWhisper方が多かったです)
パターン2はあまりWeb検索でも出てこない漢字変換をしていて、どうしてこのような出力をしたのか謎です。
また、Whisperは削除誤りが突出して多いです。これは原因を調べて驚いたのですが、Whisperは不要と思われる文章を賢く削除する傾向があります。例えば下記のような発話に対してWhisperはこのように出力することがあります。*1
- 発話者「1月、いや2月の1日、あれ2月1日じゃなかったでしたっけすいません、え、いいんでしたっけ、その日の件ですが」
- Whisper「2月1日の件ですが」*2
この処理があることで音声認識結果の可読性は上がると思いますが、この結果を正解とするわけにはいかないため計算上は省略された箇所は削除誤りという扱いになります。この挙動による削除誤りは用途によっては問題がないのである程度差し引いて評価してもいいかもしれません。
まとめ
今回は会議の音声を使ってAmiVoiceとWhisperの比較をしました。
結果はAmiVoiceの方がエラー率(CER)が1/3以下という大きな差になりました。
Whisperは発音が似た単語に文脈を無視して出力しやすかったり、あまり日本語として使われない漢字変換をしてしまうことによる誤認識が多かったようです。
また、Whisperは不要な文章を賢く削除する傾向があり、そのため削除誤りが多くなりやすいようです。この誤りは用途によっては問題ない場合もあるので、比較評価する際はある程度差し引いて考えもいいでしょう。
この記事を書いた人