本記事では、クラウド型音声認識サービスの認識精度について記述します。音声認識は人の能力を超える!?音声認識の評価手法としてSWITCHBOARDデータセットを用いた、評価が代表的な手法となります。このSWITCHBOARDデータセットは、電話にて交わされた2,400を超える英語による会話が含まれており、このデータセットに対する音声認識の誤り率5.5%が現在(2017/11月時点)の最高到達点となります。逆に言うとほぼ95%は正解という事ですので、こう考えると人の聞き間違いの方が多いかもしれません。2017/8/24))さて、このSWITCHBOARDですが、実装の違う音声認識の性能評価を行うには、こうした尺度が有効となりますが、実際の運用では同等の性能を発揮する事はありません。特徴となるモーラリズムなど様々な要因が認識精度の低下を引き起こしているため、SWITCHBOARDで示された認識精度には到底到達しない現実があります。本記事では、こうした尺度ではなく実際の音声コーパスを用いて、代表的なクラウド型音声認識サービスを比較してみたいと思います。料金、スペック、機能などカタログ値的なものは、それぞれの製品サイトや他のサイトに譲ることとし、下記の3サービスをざっくり比較してみます。されたテキストが正解テキストに対して、どのくらい正解、誤りがあるかをカウントを行う。認識誤りは”置換誤り”、”脱落誤り”、”挿入誤り”と分類します。下図にそのイメージを示します。2つを求め音声認識サービスを比較します。音声認識された単語が、正しく認識されているか評価を行う。認識結果の確からしさの評価を行う。実際の評価は音声認識の利用目的に応じて、評価項目や基準を決定します。ここであげた基準は、会議議事録の書き起こしや字幕、日報と行った分野向けの基準で、かなり厳しい設定になっています。音声データ本来は実際の業務で使われている音声データを使うのですが、ここでは研究目的での利用を前提とした音声コーパスを利用しました。16,000、モノラル、フォーマットはWatsonとAzureはwav、Googleはflacにそれぞれ変換しています。今回2種類の音声データを使い実施した評価結果を示します。棒グラフはそれぞれのサービスにおける認識誤りの傾向を示し、もう一つのグラフは音声認識精度を示します。このグラフから精度の良し悪しの他に、修正への手間が多くかかるのか、少なくて済むのかが読み取れます。2種類の音声データを使い評価してみましょう。先に結論からあげますがGoogleは、頭一つ飛び抜けた感じの高い認識精度となりました。テキストと各サービスの認識結果を示します。【認識精度の順位】Watsonが認識率80%を超えてきております。Googleも十分な精度に達していると思います。ないWatson認識結果にある”D_”は、言い澱みを示しています。音声認識の精度は、これまでの経験上、概ねGoogle、Watson、Bingという感じになります。Watson、Bingはカスタムモデルを作れるため学習次第で適切な認識精度まで上げていくことが可能となります。今回の評価は、どちらかというと良い認識率が得られています。これは利用した音声コーパスの品質が非常に良く、逆に言うとこのくらいの認識精度でなんら不思議な事はありません。実際のビジネスシーンにおける認識精度は60%台がスタートになるかと思います。これをいかに80%台に引き上げるか、ここに多くのノウハウが必要となります。音声認識を何に使うのかによっても、精度向上の進め方が変わってきますが概ね下記の5点がポイントになります。(1)適切な評価基準を設定する(2)学習データによりコーパスを整備する(3)辞書を整備する(4)話者をトレーニングする(5)発話環境を整備するスマートスピーカも登場し、音声を用いたインターフェースはより自然なものになっていくのではないかと思います。すれば、独り言を言っているようで恥ずかしい感じもしますが、そういう時代では無いですね。音声認識については引き続き、学習効果や話者分離など調べたいこともたくさんありますので、成果が得られたらエンジニアブログに残して行きたいと思います。機械学習研究を経て、AI、ロボットを強みとする部門に異動。現在はテクニカルエバンジェリストとして企業が持つ業務課題へのAI、機械学習適用に関するコンサルティング、技術支援に従事するかたわら、自ら研究テーマを持ち共同研究、実験システムの構築のほか、執筆活動も行う。