ニューラルネットワークによる音声認識



米国カーネギーメロン大学 計算機科学部 アレックス ワイベル*



1.まえがき
 現在使われている電子計算機は、複雑な計算やシステムの制御などの特定分野では、人間の能力をはるかに越えています。しかし、日常、我々が無意識に行っている多くの仕事、例えば、音声の認識、テキストの朗読、車の運転等では、現在のプログラムによる計算機で置き換えられそうにもありません。ここで、このATRジャーナルの表紙のATRのロゴを見てみましょう。ATRのどの文字も明確には書かれておりませんが、誰もが容易に正しくATRと読むことができます。人間はどのようにしてこのような文字を読み取っているのでしょうか。
 ATRのロゴを見るときには、目からの刺激をもとに、非常に多くの事実とそれらの間の関係(constraint)が並列的に評価されて、もっともらしい解釈(satisfaction)が無意識に求められているのかもしれません。このような多くの制約を考慮し、もっともらしい解釈を求めること(massive constraint satisfaction)が、すばやく行われていると思われます。実際、人間の脳は、およそ100億個の互いに結合した神経細胞からなっており、大規模並列処理(massive parallelism)が行われています。このようなメカニズムは、現在の計算機とは根本的に異なっています。大規模並列処理のメカニズムに挑戦し、画期的な新しい計算機の動作原理を探究しているのがいわゆるニューロコンピュータの研究です。特に、このような大規模並列網のユニット間の重みを自動的に決定する強力な学習アルゴリズムの出現とスーパーコンピュータの普及によって、ニューロコンピュータの開発が現実味を帯びてきています[1,2]。これまでは、ほとんどのニューラルネットワークの研究は、小さな問題を取り扱ってきましたが、現在多くの研究者が現実の問題に挑戦し始めています。
 ATR自動翻訳電話研究所でも、音声認識の問題を取り上げ、ニューラルネットワークの本格的な研究を昨年度から開始しました。音声波形には、多くの不安定かつ不確実な情報が含まれていますが、人間は様々な知識を無意識に用いて音声波形の意味を理解しています。音声認識の研究は30年もの長い間行われてきていますが、まだ、人間の能力に比べると初歩的な段階です。我々は、新しい音声認識の段階を切り開こうと、大いなる希望を持ってニューラルネットワークに基づく音声認識の研究を進めています。

2.時間遅れ神経回路網
[3]
 我々は、口や口蓋などの発音に必要な調音器官を動かし、音声を発声します。音声には、時間とともに変化する特徴が含まれています。音声認識を行うには、この特徴の時間軸での動きを適切に捕らえなければなりません。ニーラルネットワークに基づく音声認識を始めるに当たって、まず、時間的に変化するという音声の特徴を表すニューラルネットワークの新しい構成(アーキテクチャー)を考えました。このアーキテクチャーを時間遅れ神経回路網(Time Delay Neural Network以下、TDNNと呼ぶ)と名付けました[3]。具体的には図1に示すようなアーキテクチャーを採用しました。
 このTDNNは、スペクトログラムあるいは声紋と呼ばれる周波数分析した音声の時系列を入力層とします。この入力層として、子音と母音の境界を中心にした15フレーム(150ミリ秒)の周波数パターン(スペクトログラム)を用います。この入力層をもとに、周波数上の局所的な特徴から大局的な特徴へと順次まとめあげていく多層の構成になっています。また、素子間の結合の重みに時間軸の平行移動の制約を付け加えることによって、入力音声の位置のずれや発声速度の変化にも対応できるようにしたアーキテクチャー(Shift Invariant)を採用しました。すなわち、隠れ層1には、入力層の3フレーム(30ミリ秒)の局所的特徴を検出する特徴検出器(素子)が並んでいます。同様に、隠れ層2には、隠れ層1の5フレーム(50ミリ秒)のより大局的な特徴を検出する特徴検出器が並んでいます。このアーキテクチャーが3フレームごとの周波数パターンを順次、1フレームの時間の遅れを持たせてニューラルネットワークに送り込むことと同じことになることから、時間遅れ神経回路網(TDNN)と呼びます。このTDNNの高い能力を実証するために、小規模であるけれども難しい音韻認識として、有声破裂音/B,D,G/の識別を取り上げ、識別実験を行いました。図1は、入力音韻/B/を正しく認識したときのTDNNの素子の発火の強さを表しています。一番上の層は、/B,D,G/の認識結果を表す素子で、この例では/B/の素子が強く発火して、入力パターンが/B/であることを示しています。
 実験では、まず、ATRで作成された大規模単語音声データベースから/B,D,G/に対応する音声区間を切り出しました。素子(Unit)の間の結合の強さを表す重みの学習を、逆伝搬法(Back-Propagation Algorithm)〔1〕で行いました。逆伝搬法による学習では、図1のTDNNにおいて、/B,D,G/の音声区間を入力パターンとし、/B,D,G/のそれぞれの音韻に対応する出力層の素子の発火レベルを1と0に設定します。例えば、入力された音韻が/B/のときには出力層/B/の素子の発火レベルを1にして、残り/D/と/G/の発火レベルを0にします。この出力層のこれらの値は理想的な出力値であり、これらを教師信号と呼ぶことにします。逆伝搬法では、この教師信号と、入力パターンから計算した発火レベルとの差を検出して、この差を逆に出力層から隠れ層へ伝搬して、差が小さくなるように素子間の結合の重みを調整するアルゴリズムです。学習サンプル全体を繰り返し入力して、差が小さくなるように素子間の結合の重みを徐々に調整します。このようにしてニューラルネットワークは、重みの調整により/B.D.G/の識別に重要な特徴を発見します。
 このTDNNの認識性能を評価するため、3人の発声者の大規模単語音声データベースを用いて、認識用の音韻サンプルをTDNNに入力しました。この音韻識別実験の結果を話者別に表1に示します。表1には同じデータベースに対する隠れマルコフモデル(Hidden Markov Model)*1による結果も比較のために示しています。隠れマルコフモデルは、現在の音声認識で最も強力とされている統計的なアルゴリズムです。いずれの話者に対してもTDNNは、隠れマルコフモデルよりもはるかに高い識別率を示していることが分かります。

3.時間遅れ神経回路網の性質
[3]
 /B,D,G/識別のTDNNでも、約400個の素子、6000個の素子間の結合の重みを持ち、その重みの自由度が約500、かなり大規模なニューラルネットワークです。我々はこのTDNNの動作を解析し、いくつかの非常に興味深い性質を見つけました。まず、逆伝搬法による学習を、位置ずれ不変(Shift Invariant)のTDNNのアーキテクチャー上で行うため、700余りの比較的少ない音韻のサンプルから、安定な識別に有効な特徴が自動的に得られました。この学習により、入力音韻の時間軸上の位置が多少ずれても正しく認識できることが確かめられました。また、周波数上の局所的な特徴から大局的な特徴へと順次まとめあげていく構成が、音声の発声速度や音韻環境による変化にも強い特徴を見つけ出していることも分かりました。さらに、音韻環境等による音韻の異なる特徴(例えば、普通/G/と鼻音化した/G/)に対しても、異なるネットワークの表現を実現していました。そのうえ、ネットワークのいくつかの素子は、言語音声学で知られている/B,D,G/の弁別特徴と対応していました。これらの事柄は、TDNNが音声の認識にたいそう適したアーキテクチャーであることを示唆しています。

4.大規模時間遅れ神経回路網の構成への挑戦
[4]
 これらのTDNNの有望な性質に勇気づけられ、日本語の全部の子音の識別問題の研究を開始しました。/B,D,G/の出力素子の代わりに、20余りの子音の出力素子を設け、それに伴って中間層も6, 7倍に素子を増やすことを考えてみます。このようなTDNNを逆伝搬法で学習させるには、ミニスーパー計算機でも膨大な計算時間がかかることが予想され、実際上不可能です。この膨大な計算時間に打ち勝つために、/B,D,G/ネットワークのように音韻のクラスターごとのネットワークを逆伝搬法であらかじめ作成しておき、これをもとに全音韻の識別ネットワークを構成することを考えました。図2に、“Connectionist Glue”と呼んでいる手法による/B,D,G/ネットワークと/P,T,K/ネットワークとから、/B,D,G,P,T,K/破裂音識別ネットワークを構成するアーキテクチャーを示します。“Glue”とは、「のり」という意味です。第一隠れ層として/B,D,G/ネットワークと/P,T,K/ネットワークをそのまま用いて、入力パターンとの結合の強さの重みも同じ値をコピーして用います。さらに/B,D,G/クラスターと/P,T,K/クラスターを識別できるような特徴を自動的に見つけ出すことを目的にして、“Connectionist Glue”と呼んでいる隠れ層を付加します。このような構成にして、図2でFree(自由)としている重みを逆伝搬法で学習させます。これにより、98.4%の音韻識別率が得られました。その識別率は、すべての重みを自由にして、逆伝搬法で学習させたときの識別率と同じでした。勿論、逆伝搬法での学習に要する時間は“Connectionist Glue”の方が数分の1でした。さらに、全ての重みを自由にして学習を進めると、音韻識別率が98.6%まで向上しました。
 同様のアプローチで全子音/(B,D,G),(P,T,K),(M,N,NN),(S,SH,H,Z),(CH,TS),(R,W,Y)/の識別ネットワークの構成を試みました。この実験では、括弧で示した音韻クラスターの識別ネットワークと上記のクラスター間の識別ネットチワークを用いました。まず、入力パターンと第一隠れ層の重みを固定して逆伝搬法での学習を行い、95.0%の音韻識別率が得られました。さらに、すべての重みを自由にして学習を進め、95.9%の音韻識別率まで向上しました。この音韻識別率は、ATRで改良された隠れマルコフモデル[5]の音韻識別率92.7%よりも優れています。さらに、高い音韻識別率を少ない学習時間で達成できるアルゴリズムの検討を進めています。

5.むすび

 時間遅れ神経回路網(TDNN)という音韻識別用のニューラルネットワークの新しいアーキテクチャーを考えだし、逆伝搬法による学習で非常に高い音韻識別率を達成できることを実験で確かめました。今後、このTDNNの適用分野を単語音声認識、連続音声認識、不特定話者音声認識へと広げて行くとともに、ニューラルネットワークのニューロコンピュータとしてのアーキテクチャーの検討も進めて行く予定です。(訳者:鹿野清宏)
解 説

ニューラルネットワークとその音声認識への応用

 神経細胞(ニューロン)は、本体と本体から樹状に突出した樹状突起、1本の長い繊維組織からなる軸索から構成されています。軸索の先端はシナプスと呼ばれ、ここで他の神経細胞に結合します。シナプス結合を通して樹状突起に入力された他の神経細胞からの刺激(信号)は、刺激の重み付け等単純な処理の後、軸索を経由して次の神経細胞に伝達されます。人間の脳では、このような神経細胞が約100億個あり、これらがたがいに複雑に結合しあいネットワークを形成しています。これをニューラルネットワーク(神経回路網)といいます。このネットワークは学習等によってさらに複雑に成長しますが、使われないものは退化する等柔軟性を持っています。ニューラルネットワークの持つ情報処理機能は、ネットワークの形態や複雑な結合の仕方にあると考えられています。ネットワーク上では必要な機能を記憶した神経細胞だけが機能し、不必要な神経細胞は抑制して処理するため処理速度が速くなります。このシステムの動きを解明して、工学的に応用することがニューラルネットワークの研究の狙いです。このような機能をコンピュータ上でモデル化したものに、音声認識に用いられたニューラルネットワークがあります。ここでは、入力層から出力層までの4つの層の間にネットワークを張り、入力した音声信号の特徴に対して刺激を受ける素子が機能すると、この素子と重み付け(結合の度合いの強さ)をした次の層の素子に音声信号の特徴を強調した信号を伝達し、さらに次の層に伝達して特徴抽出を行うという方法で音声信号の認識を行っています。



参考文献