音声認識

音声認識は声がもつ情報をコンピュータに認識させるタスクの総称である。ヒトの音声認識と対比して自動音声認識とも呼ばれる。

例として文字起こしや話者認識が挙げられる。

1. タスク
------

音声認識は「音声に含まれる情報を認識するタスク」の総称であり、具体的に解かれる問題の例として以下が挙げられる：

Speech-to-Text : 含まれる言語情報を文字に変換するタスク。いわゆる文字起こし
キーワード認識: 事前に設定されたキーワードの出現を認識するタスク。例として「ヘイ、Siri」音声認識をサブタスクとして含むタスクには以下が挙げられる：

音声操作: 音声によるアプリの操作。SST/KWSで音声情報を取り出し、これをコンピュータ操作命令へ変換
音声入力: 音声によるアプリへの文字入力。SSTで文字化、整形ののちアプリへ引き渡し。ディクテーションとも

2. 認識技術
-------

2.1. 統計的手法
----------

音声認識では、統計的手法が良く用いられている。これは大量の発話を記録した学習用データから音声の特徴を蓄積し、認識対象となる入力音声から抽出された特徴と蓄積された特徴とを比較しながら、最も近い言語系列を認識結果として出力する手法である。

一般に、音声の音響的な特徴と言語的な特徴を分離して扱うことが多い。音響的な特徴とは、認識対象の音素がそれぞれどのような周波数特性を持っているかを表したもので、音響モデルと呼ばれる。音響モデルの表現としては、混合正規分布を出力確率とした隠れマルコフモデルが広く用いられている。言語的な特徴とは、音素の並び方に関する制約を表したもので、言語モデルと呼ばれる。例えば、「あなた 」という発声の直後には、「が 」や「は 」などの発声が続く確率が高い、などの制約である。言語モデルの表現としては、認識対象の言語が大規模な場合はn-gramが良く用いられ、認識対象の言語が人手で網羅出来る程度に小さい場合は、文脈自由文法が良く用いられる。

2.2. 動的時間伸縮法
------------

動的時間伸縮法は初期の音声認識手法であるが、隠れマルコフモデルに基づく手法が一般化したため、使われなくなった。時間または早さの異なる2つの信号シーケンスの間の類似度を測るアルゴリズムである。例えば、人間の歩行のパターンは、素早く歩いても、ゆっくり歩いても、さらには歩行の画像を早送りしてもスロー再生しても一定のパターンが存在する。DTW は音声だけでなく動画などの任意の時系列のデータに適用可能である。音声認識においては、発声速度がどうであっても一定のパターンを検出するために使われていた。従って、比較のための標準パターンが必要であり、認識できる語彙は限定される。

2.3. 隠れマルコフモデル
--------------

音声信号は、断片的あるいは短時間の定常信号と見ることができ、隠れマルコフモデルが適用可能である。すなわち、10ミリ秒程度の短時間でみた場合、音声信号は近似的に定常過程と見なすことができる。従って、音声を多くの確率過程のマルコフ連鎖と考えることができる。

また、隠れマルコフモデルによる音声認識は自動的にトレーニングされ、単純で計算量もそれほど多くない。音声認識について考えられる最も簡単な設定では、隠れマルコフモデルは10ミリ秒ごとに例えば13次元程度の実数値ベクトルを出力するだろう。このベクトルはケプストラム係数から成る。ケプストラム係数は短時間の信号のフーリエ変換にコサイン変換を使って、その第一係数を取り出したものである。隠れマルコフモデルは、それぞれの観測されたベクトルの尤度を与える対角共分散のガウス分布の混合ともいうべき確率分布を持つ傾向がある。各単語や各音素はそれぞれ独自の出力分布を持つ。単語列あるいは音素列に関する隠れマルコフモデルは、個々の単語や音素の隠れマルコフモデルを連結したものとなる。

これらが隠れマルコフモデルを使用した音声認識技術の概念である。音声認識システムにはこれ以外にも様々な技術を使用している。語彙の多いシステムでは、音素について文脈依存性を考慮する。また、話者間の違いや録音状況の違いを正規化するために、ケプストラムの正規化が行われる。他にも話者正規化の試みとして、男女間の正規化のための声道長正規化  や、より不特定多数の話者に対応するための最尤線形回帰  がある。

3. 評価指標
-------

音声認識は様々な指標を用いて性能を評価される。例えば速度は実時間係数 で表される。

3.1. 単語誤り率
----------

単語誤り率は認識された「単語」の誤り率である。WERを評価するための代表的なコーパスとしてWSJコーパスが挙げられる。

3.2. 文字誤り率
----------

文字誤り率は認識された「単語」の誤り率である。letter error rate}}; LER とも。WER評価と共に行われる場合が多い。2019年時点でのWSJコーパスに対するCERは1%を切っている。

3.3. 音素誤り率
----------

音素誤り率は認識された「音素」の誤り率である。PERを評価するための代表的なコーパスとしてTIMITが挙げられる。2019年時点でのTIMITコーパスに対するPERは10%を切っている。

4. 実際と課題
--------

実地での音声認識利用には様々な難しさがある。以下はその一例である：

背後音
雑音
背景での会話
語彙
業務用語
ジャーゴン
音声
同時話者数
発話方法並列モデルは予想外の入力にもある程度対応できる。

5. 研究中の技術
---------

5.1. MFT
--------

話者の音声の特徴量が雑音や特徴分離処理によって歪むと音響モデルとの差が開いて誤認識の元となる。得られた音声の特徴量に歪みや雑音がどの程度含まれているかを推定し時間軸と周波数軸に対して信頼度をマップとして持たせて、低信頼度の特徴量にはマスクをかけたり、失われた音声を復元する処理に活用するのがミッシング・フィーチャー理論である。

5.2. GSS
--------

GSSは複数の音源を分離する技術であり、音源間に相関が無ければ複数のマイクからの入力情報によって比較的簡単に音源分離とその位置情報が得られる。これをMFTの雑音情報として信頼度マップに反映させれば、騒音下や同時発話の状況でもそれほど認識率を落とさずに済む。

6. 実用例
------

6.1. Apple社製品における利用
-------------------

Macintoshでの音声認識機能は、1993年のQuadra 840AV/Centris 660AVより、PlainTalkとして搭載された。Mac OS 9では、音声認識パスワードによるログイン機能も搭載されている。macOS Sierraからは、音声認識アシスタント機能のSiriが搭載され、様々な操作が可能になった。

6.2. Microsoft社製品における利用
-----------------------

Windows VistaとWindows 7では音声認識機能が搭載されており、この機能を使用して、キーボード入力なしにチャットをするなどの操作が可能となっている。音声認識機能でパソコンを操作するといった利用方法はこれまでにもあったが、日本語の認識率を向上させているほか、マウスやキーボードで行うWindowsの操作が音声で操作できるようになっている。Windows 10からはCortanaという音声認識アシスタント機能が搭載され、さらに様々な操作が可能になった。

マイクロソフト社は音声認識技術を開発するニュアンス・コミュニケーションズを買収している。

6.3. Google社の製品やサービスにおける利用
--------------------------

Google Cloud Platformの　 Speech-to-Text API
Google アシスタント
Google Home, Google Nest

6.4. Amazon社の製品やサービスにおける利用
--------------------------

Amazon Alexa

6.5. 企業・団体における利用
----------------

企業、病院、自治体では、2005-6年頃から次第に次のような実用システムの導入が活発化してきている。

医師向け電子カルテ入力システム
自治体向け議事録作成支援システム
コールセンター向けオペレータ支援・通話内容分析システム
学校向け語学学習アプリケーションでの発音評価システム

6.6. その他の利用例
------------

携帯端末へのメール文章入力
同時通訳型の機械翻訳、自動通訳
パソコン上での文書作成
音声指示による機械操作
指示を聞き分けるペットロボット
音声対話受付案内システム
裁判員制度での評議における証言内容などの確認
[1] 

6.7. その他の応用例
------------

「感性制御技術」などと組み合わせることにより、例えば「ごめんなさい」も口先だけで軽く言った「ごめんなさい」も同じ「ごめんなさい」でしかないが、早口で軽いトーンの「ごめんなさい」は、バカにしていると判断して怒った態度で接したり、ゆっくり丁寧に発音された「ごめんなさい」は、心からの謝辞だと理解して許したりすることが可能となる。

7. 音声認識ソフトウェア例
--------------

Nuance
[2]
[3]
[4]
IBM IBM ViaVoice - IBMから買収
アドバンスト・メディア
[5]
[6]
[7]
[8]
[9]
[10]
Apple
PlainTalk
Siri
NEC
[11] 
[12] 
[13] 
マイクロソフト
Windows Vistaなどに標準搭載
Windows 10に標準搭載
Vocollect
Intermec [14] - インターメックが買収、その後インターメックをハネウェルが買収。
Julius  - フリーの音声認識ソフト [15]
[16]
NTTテクノクロス株式会社
[17]
[18]
[19]
[20]
[21]
[22]
[23]
[24]

7.1. 音声認識を応用したゲームソフト例
---------------------

シーマン
大玉
オペレーターズサイド
デカボイス
ピカチュウげんきでちゅう
Touch! Generations
機動戦士ガンダム 戦場の絆
TALKMAN

8. 歴史
-----

音声認識システムの研究開発はコンピュータが普及しだした1970年代から盛んに行われてきた。

当初は日本語識別率が60％程度にとどまっており、話者限定・事前トレーニングをおこなった理想環境下でも80%が限度であった。語彙を限定してトレーニングを必要としないシステムでは、不特定多数の話者の音声を認識できるが語彙が少ないために利用範囲は限定される。同音異義語が少ない欧米系の言語では90％の認識率があると評価されていた 。

2010年代後半からは人工知能や深層学習の進化により性能が向上し、Google アシスタントやAmazon Alexaなどバーチャルアシスタントの音声操作にも利用されるなど実用レベルに達したが、声優のような発声トレーニングを受けた者でも条件によっては認識されない場合もある。

9. 出典
-----

10. 参考文献
--------

Lawrence Rabiner , "Fundamentals of Speech Recognition", Prentice Hall, ISBN 0-13-015157-2
Frederick Jelinek , "Statistical Methods for Speech Recognition", MIT Press, ISBN 0-262-10066-5
Manfred R. Schroeder , "Computer Speech: Recognition, Compression, Synthesis", Springer-Verlag, ISBN 3-540-64397-4

11. 関連項目
--------

パターン認識
自然言語処理
音声分析
音声処理
音声強調
音声合成
音声検索
VoiceXML
Common Voice
感情認識

12. 外部リンク
---------

[25]
[26]
[27] 特許庁総務部技術調査課
[28] Shun
[29] 音声認識の歴史を概観している
[30] DARPAの音声認識と機械翻訳を組み合わせたプロジェクト
[31] Hidden Markov Model Toolkit
[32] オープンソースの音声認識エンジン