見出し画像

音声認識: 耳の獲得、あるいはコンピューターとの対話による未来

 以前の記事で、コンピュータービジョンについて書きました。人間がコンピューターに何が見えているかを教えるというテーマから始まったコンピュータービジョンは、今や大きな発展を遂げ、コンピューターは目を獲得し、更に人間の視覚の限界を越えた動画像処理を通して、コンピューターが人に何が見えるかも教えてくれるという時代を迎えました。教えるだけでなく、教えられる、関係は一方通行から相互のものになったわけです。

 今回の記事では、目ではなく、コンピューターによる耳の獲得、つまり、音声認識について書こうと思います。


 我々人間は、物を見て、音を聞き、そして言語を解するという能力をもって生まれてきます。そしてその能力を発達させ、言葉を発し、そして書き、世界や人とインタラクトしていきながら成長をしていきます。
 コンピューターとのインタラクションの歴史を考えた時、その手段の主たるものはプログラミング言語や各種コマンド、あるいはマウス等による操作でした。それはまだ、道具としてのコンピューターを扱っている姿でしかないように思えます。そして以前はそれらの手段を用いてエンジニアやオペレーターだけがコンピューターとのやり取りを可能にしていました。しかし、もし人間がコンピューターに話しかけ、コンピューターがそれを理解して対話に応じてくれたら、誰もがコミュニケーションをとれるようになり、我々とコンピューターの関係はぐっとよくなる、とそういう期待が持てるかもしれません。コンピューターが耳を獲得し、我々の言っていることを分かってくれる。Siri、Google Assistant、Amazon Alexa のように万人の音声を認識し、理解してくれる技術は目の前にもう登場しています。今後技術が発達し、我々の関係のありようがどう変化していくのかはとても興味深いテーマです。

 時にASR (automatic speech recognition) や、STT (speech to text) という名前で呼ばれたりもしますが、音声を認識してくれるのには、より良い Speech Recognition の技術が必要です。

 世界最初の Speech Recognition のシステムはベル研究所で1952年に開発された Audry です。それは一人の人間が発した数字を認識することだけができました。1962年にIBMによってデモンストレーションされた Shoebox は、16個の単語を識別しました。1960年代後半、後にCarnegie Mellon 大学で Robotics Institute を立ち上げることになる Raj Reddy は、音声コマンドで遊べるチェスゲームを開発。ソ連の研究者は200個の単語を認識できるアルゴリズムを発明していきました。
 1970年代になると、DARPA にファンドされたプロジェクトにおいて、Carnegie Mellon 大学が Harpy システムを発表しました。Harpyシステムは、発声された1000個以上の単語を認識できました。また、同じ単語における異なる発音(例えば、アメリカ発音とイギリス発音等のように)にも対応できたところが画期的でした。
 1980年代、隠れマルコフモデルが導入され、より数学的な(確率的な)アプローチを使って音波の分析を行い、音声認識の精度を高めるということが始まり、今日の音声認識技術発達の先駆けとなりました。音声をマイクを通して採取し、生の音波データに変換し、それを細かく分割し、それぞれの音素(Phoneme) を識別していきます。音素は、単語を表現する際の最も原始的な単位、原単位ですが、これにより全体の音響モデルを作るという方法論が普及していきました。80年代中頃、IBMは音声認識のタイプライターを開発しました。これは、2万個以上の語彙をさばく優秀なものでしたが、人間の脳がどのように処理しているかというモデル化はいったんおいておいて、隠れマルコフモデルを活用したシンプルな統計的なアプローチを採用しており、言語を扱う技術にしてはあまりにも単純化しすぎていると言語学者たちの論争の対象となりました。

 それからも、技術は着実にかつ長足の進歩を遂げています。特に1990年代以降のインターネットの登場により大量のデータが収集できる時代となり、機械学習と組み合わせた精度向上が継続してもたらされています。ゆえに、現代の音声認識技術は、例えばディクテーションをやらせると高い精度でそれを遂行します。ですが、音を聞くことの先にある、言語を解するという能力はどうでしょうか。

 元々言葉を理解するという人の能力は、我々が文化や文明を形成するのに大きな助けとなってきました。言葉を使い、人々は歴史や伝統、そして知識を世代から世代へと継承していくことができます。骨格たる文法やあるいは文化に基づいた慣例表現や言い回しなど、それらを総合的に含んだ言語の体系がどのように機能しているかを解明していくことは、コンピューターサイエンスにおいて、一見容易そうに見えてとてつもなく解くのが困難な問題です。ですが、子供は二、三歳の時点においても本能的にそれぞれの言語の振る舞いを把握していきます。人の持つ驚異的な能力の最たるものです。
 人間の脳には何億兆ものニューロンが存在し、それぞれ並列で計算や処理を行っています。我々の持つ知識も洞察も全てはニューロンのつながりという神秘の中に存在しています。ここ10年のコンピューターサイエンスのトレンドは、Neural Net によりニューロンを模し、そしてその機能に迫ろうとしています。前までは人手で音声の持つ特徴量を設計し、音波を見て、フーリエ変換を行い、どの特徴をパターン認識システムに送り込むべきかを考え、分析を行っていました。Deep Learning は特徴量を学習の中から、抽象と具象の幅広いスペクトラムをもって獲得します。この技術は更に、データの抽象的な流れに強い RNN、そしてその拡張であり、長期の文脈を考慮できるLSTM と発展しました。2017年学習に必要な計算量が少ない、単語間の関係を直接的にモデル化する自己アテンションメカニズムを持つ Transformer が登場し、次々に音声認識と言語理解を飛躍的に向上させました。
 言葉を正確に理解するには、それぞれの語や文がどのような意味をなしているかを推測することができる、より洗練された、これらの多層なNeural Netであり、かつアテンションメカニズム等の拡張を持つ言語モデルが強力です。かつては果てしなく長い道のりと思われた汎用的な言語モデル構築の世界も、今においては、Transformer を発展させた BERTの登場によって近い将来に確実に到達するステップとして認知されるようになりました。(Transformer は学習量が少なくなるという触れ込みとともにデビューしましたが、BERTは学習量が大きくなり、GPU/TPU 等のコンピューティングパワーが必要となってきているのは同時に興味深いポイントでもありますが。)またWord2Vec から始まり、昨今の LASER Embedding Model のように多次元の空間に様々な言語の語や文を配置し、言語によらない意味理解も可能となる Representation モデルも我々に次の世界を示してくれています。

 言葉とは果てしなく複雑で、深く、そして、美しい存在です。意味があり、感情があり、婉曲があり、反意があります。強弱を用い、リズムを有し、間があり、表情を伴います。寓意があり、ユーモアも忘れてはいけません。かくも音声と言語には抽象と具象の様々なレベルが存在し、多くの層をなしています。この特質は、深層化していく Neural Net、進化していく Representation と出会うことが運命づけられていたようにも思います。

 しかし、まだまだ終わりではありません。実は終わりどころか、まだ始まってすらいないのかもしれません。目に対する耳である音声認識の技術が完成を見て、人とコンピューターのインタラクションがより確実にできる未来はやがてきます。音声認識も、音声でのコンピューターの操作やあるいは言葉を介したコミュニケーションだけでなく、その人が誰であるか声紋から話者を識別し、コンピューターがセキュリティ認証をしたり、パーソナライズされたサービスをユーザーに提供していくことを普通に行えるようになりました。一人ひとりの個人とコンピューターの対話が始まっています。ですが、そこで終わるのではなく、その後にこそ、真なる我々の関係が始まるのかもしれません。



この記事が気に入ったらサポートをしてみませんか?