AppleのiPhoneに搭載された音声認識機能「Siri」によって音声認識技術に再び火が付いた。特に自動車向けとしては、これまでも音声認識機能を持ったクルマはいくつかあったものの、認識率はそれほど高くなく使いにくかった。Spansionが最近発表したアコースティック・コプロセッサチップは、認識率を改善して自然言語認識に近づけると共に、高速処理、CPU負荷の改善、という特長も持つ。クルマ向けの音声認識は、使いやすいレベルに上がってきた。

これまでの音声認識とSiriの仕組み

音声認識の研究は古い。1970年代にも各国の研究所で行われていた。しかし、認識率の低さ、特定話者しか認識しないため訓練がいるなどの点で使い勝手という点で満足はいかなかった。商用レベルでは1990年代後半に日本IBMがViaVoiceという商品名で音声認識ソフトを売り出したが、認識率はそれほど高くなく市場で広く受け入れられなかった。欧米では2000年代にFordがSyncという名称の音声認識技術を搭載して以来、音声認識は比較的よく受け入れられている。自動車ドライバにアンケートをとった結果、ハンズフリーでの音声入力システムを「少し使っている」あるいは「よく使っている」と答えた人は欧米では80%以上あったが日本ではまだ35%しかないとしている。しかし、自動車市場ではこれから立ち上がるとNuance Communicationsは期待する。

日本で音声認識が立ち上がるドライバとなっているのがAppleのSiri技術である。Siriのおかげで音声入力に対する抵抗が消えつつあり、音声認識技術は広まりつつある。Siriが普及すればするほど自動車市場でも抵抗感は少なくなる。ただし、自動車市場では、要求事項がスマートフォンとは違う。高い認識率と、低いレイテンシ、大容量のボキャブラリである(図1)。しかも、スマホの音声認識技術とは、低いレイテンシと消費電力の点で少し異なる。このため、消費電力が多少上がってもレイテンシが低く高速処理が求められる。

図1 自動車システムへの要件と音声入力の要件(出典:Nuance Communications)

音声認識技術は、基本的に辞書に蓄えられた言葉と、話す言葉の読みとが一致し、さらに意味もあっているかどうかによって正しく意味を理解しているかどうか、ということまで判断する。内蔵のデータベースと一致しているかどうかという判断はコンピュータ技術の得意な分野である。しかし、計算するのに消費電力をたくさん食うようでは携帯機器に使えない。このためSiriでは、音声を入力するとその音声データだけをクラウドのコンピュータに送り計算させ、計算した結果だけをコンピュータからiPhoneに送り返している。このためiPhoneでは認識のために計算を行わずに消費電力の増加を抑えている。

Siriとは違い必ずしもクラウドを使う必要はない

今回、Spansionが発表したコプロセッサは、携帯機器用ではなく少し消費電力を食わせてもかまわないという用途に向けた音声認識専用のコプロセッサである。コプロセッサは、単独で動作するプロセッサとは違い、CPUプロセッサと協調して使うプロセッサである(図2)。このため、CPUの負荷をゼロにはしないが減らすという役割を担う。

図2 コプロセッサ方式はCPU負荷を減らし、性能を高める(出典:Spansion)

コプロセッサ方式の音声処理ができるということは、Siriとは違い、クラウドコンピュータを利用しなくても音声認識ができるという意味である。クラウドへ飛ばす必要がないため、応答が非常に速い。ただし、Spansionは、音声処理そのものとクラウドの両方を組み合わせると機能を豊かにすることができるとして、ハイブリッド音声認識と呼ぶ。

Spansionチップのメリットは、認識率を高めると同時に、計算速度が速く、CPU負荷が少ないことだ。記者会見では、住所の認識デモでは、「5204, East Ben White Boulevard, Austin Texas」と呼ぶとGoogleマップを表示するまでの時間を比較した。その結果、従来のCPUだけで処理する場合は、8.7秒かかったが、このコプロセッサとCPUを組み合わせた場合は3.4秒で住所を表示した。この時のCPU負荷は半減の52%であった。

なぜNORフラッシュが音声認識に向くか

もともとNOR型フラッシュメモリのトップメーカだったSpansionがなぜ音声認識分野に進出してきたのか。同社は2009年に経営破綻してチャプター11適用を申請し地裁のもとで再建活動を行ってきたが、破綻するまでの競合はNAND型フラッシュメモリだった。低速でも大容量の不揮発性メモリが望まれていた当時はストレージやストリーミングなどの需要が大きかった。NANDがピッタリ合っていた。NORの需要が携帯電話機のBIOS書き換えなどの低容量から始まったが、NORはストレージには向かなかった。このためNORはNANDに負けた格好となった。

同社が再建を果たし復活したとき、NORフラッシュをベースに従来のパラレルNORに加え、ピン数を減らしたシリアルNORフラッシュ、ストレージ以外のNANDフラッシュ、ロジックインメモリへと広げていった。再建・借金返済に必要な現金は、工場売却によって賄った。このため同社が再建するにはファブレスあるいはファブライト戦略を取らざるを得なかった。しかも製品戦略はNANDフラッシュと競合しない分野に定めた。高速ながら適度なメモリ容量を持ち、しかもNORフラッシュが求められる分野を狙う。これから成長できそうな分野の1つが音声認識でありジェスチャー認識である。共に辞書やリファレンスとなるデータベース用の大容量メモリが必要でしかも不揮発性、高速性も求められるため、NORフラッシュをベースにしたメモリ領域の大きなロジックを設計した。

音声認識に必要とされる標準的なアコースティックモデルでは20~30MB程度、住所のような辞書を入れる場合でも100MB程度だということからNORフラッシュにとっては最適な容量サイズである。電源をオフにしてもメモリ内容が消えない不揮発性でもある。一方、音声認識にはロジックとメモリとソフトウェアが必要であるが、音声認識処理を実行するチップは現状では不揮発性のメモリ容量が小さすぎた。ただし、モデルは1種類だけでは使い勝手が悪い。普段は日本語を標準的に使うものの、音楽の曲名が英語だったりフランス語だったりするとその言葉も認識させる必要がある。となるとモデル数は多い方が好ましい。例えば10モデルなら200~300MBのメモリ領域を持つロジックを設計する必要がある。このため製品として10~12モデルのものと、1~3モデルの製品を用意した。

音声認識の処理技術はNuanceを利用

音声認識ICはその処理の流れやアルゴリズムをチップ内に組み込まなければならない。そのソフトウェアで世界市場トップのメーカーであるNuance Communicationsのソフトウェアを使った。音声認識を使ういくつかのスマートフォンにもすでに同社のソフトは使われているが、スマートフォンでは上述したように実際の音声マッチング計算にはクラウドコンピュータを利用する。Spansionは半導体チップ上で計算するためにNuanceのアルゴリズムをチップに組み込んだ。

基本的な音声認識処理は、以下のようにして行う(図3)。音声入力→認識→意味の抽出→推論(対話管理)を行うことで意味のマッチングを行う。その答えとなる文章を作り、言語を生成し、音声合成処理を行い出力する。例えば、「90年代の時代劇を見たい」といえば、「kyu-u-ju-u-ne-n-da-i-no-ji-da-i-ge-ki-wo-mi-ta-i」というように日本語の音素に分解し、それぞれの前後で関連する意味付けを行う場合にデータベースの意味とのマッチングを行う。その際、マッチングは1か0かではなく、どの程度合っているか、点数を付ける(スコアリングと呼ぶ)。そのスコアの数字によってどの程度意味を持つものなのか、次の音素との関係においてもデータベース上の意味と合っているか、スコアリングによって、音の意味を判断し解釈する。

図3 音声認識の基本(出典:Nuance Communications)

このスコアリングにおいて、1つの言葉といえども、日本語では青森弁から鹿児島弁等さまざまな地方によってサウンドが違うためそれらを音素に分解してすべて取りこんでおく。さらにイントネーションやアクセントが違うことも考慮に入れてデータベースを作り込む。こういったニュアンスの違いを大量に取り込むことで不特定話者の自然言語を処理できるようになる。Nuanceはこのノウハウを持っており、SpansionはNuanceのアルゴリズムとデータベースを1チップに収めることができた。Nuanceの日本法人であるニュアンスコミュニケーションズジャパンのマーケティングマネージャーの村上久幸氏は、「これまでのチップや方式ではメモリが少なすぎたためにできなかったが、Spansionのチップによって、一段上のボイスコントロール機能が可能になる」と述べている。

760ビットという超広い内部バス幅

Spansionのチップは、大きく分けて音声認識処理用のロジック回路と、独自のMirroBit NORフラッシュメモリからなる。このチップでは、音声でデジタルに変換しコーディングした後で、入力された音声を言葉として認識し、スコアを付けるところまで(図4)、コプロセッサが受け持つ。このチップに集積されたNORフラッシュメモリが音声のデータベース部分の役割を担い、スコアリングアルゴリズムを演算ロジックが受け持つ。

スコアが得られると、今度は文脈の推論、割り当てなどの処理をするためCPUにデータを手渡す。CPUは外付けの言語と辞書のデータベース(フラッシュメモリ)とデータ照合しながら、最終的な答えを入力者に返事を返す。このためCPUは検索処理だけで済むため、CPU負荷が約半減するという訳だ。

図4 音声スコアリングまでコプロセッサが受け持つ(出典:Spansion)

内部のロジック回路とメモリとのバス幅は760ビットと非常に広い。これによって内部データレートは1.2GB/秒という高速処理を実現した。ロジック部分は多数の並列処理を行うプロセッサからできている、と同社マーケティング&ビジネス開発のVPであるAlvin Wong氏は述べているが、このプロセッサがどのようなものかについては明らかにしていない。

「今回、Nuanceの音声認識処理技術とSpansionの半導体技術が一緒になったことで、自然言語理解のレベルが一段と高まった。これによりユーザー体験がこれまでよりも高いものになる。カーメーカーに対して、処理速度とシステム消費電力という点で要求に合ったシステムを実現でき、シナジー効果を生んだといえる」とSpansion CTOのSaied Tehrani氏は述べている。

図5 将来はさらにメモリを増やし自然言語認識が容易になるだろう(出典:Spansion)

クルマで音声入力をストレスなく使えるようになると、ドライバの注意が散漫になるような操作を減らせるため、より安全にもっと自然に運転できるようになる。またNORフラッシュの新しい用途によって、音声認識のデータベース容量を増やすことで、方言や性別、さらにはノイズなどにも対応でき(図5)、世界中の言語も載せられて、より自然に近い言語の認識ができるようになると期待できる。