AIにおける音声認識

音声認識技術とは

自然言語処理とは、その言葉通り自然言語を処理する技術のことですが、そもそも”自然言語”とは何を指すのでしょうか。結論から言うと、自然言語とは人間が普段、会話や文章で用いる曖昧性を持った言語のことを指します。人間が話す日常会話では、同じ言葉を話していても、その言葉だけ考えていたら何通りもの解釈がでてくることも少なくありません。場合によっては、会話の間にある無言、がものすごく大きな意味を持っている場合もあるわけです。曖昧性がとてもあり、そのため「自然に話す言葉」という意味で自然言語と呼ばれています。また、自然言語の逆にあたるものがプログラミング言語であり、プログラミング言語は、完全に曖昧性がなく一字一句正確に記載されている必要があります。

AIにおける音声認識の仕組み

AIを使った音声認識は、大きく次のような流れで行われます。

各要素技術について、それぞれ具体的に見てみましょう。

音響分析

音響分析は人間が発した音声から音の強弱や周波数などの特徴量を抽出した上で、単音節ごとにAIが認識できるようなデジタルデータに置き換え、ノイズを除去する作業のことを指します。例えば下の図で言うと、「おはよう」という音声から「よ」という単音節を認識し、「よ」に含まれる音の強弱や周波数といった特徴量を抽出しています。

音響モデル

音響モデルは、音響分析のステップで抽出された特徴量を過去にAIが機械学習で学んだ様々なパターンと照合し、どの音に最も近いのかを解析する作業のことを指します。例えば下の図で言うと、「あ」という単音節データが持つ音の強弱や周波数を「い」や「う」が持つそれらと比較することで、最も近い「あ」というデータとして認識しています。

言語モデル

言語モデルは、蓄積されたデータを基に文章の中での単語同士の繋がりを予測・判定する作業のことを指します。下の図で言うと、「太郎」から「は」に繋がる確率と、「に」に繋がる確率を蓄積されたデータから算出し、以降も同じ要領で文章を組み立てています。

発音辞書

発音辞書は、言語モデルの単語と音響モデルの音素とを結びつける辞書的な役割をしています。例えば、「私は日本が好きだ」という音声が発された時、音響分析と音響モデルのプロセスで「わ・た・し・は・に・ほ・ん・が・す・き・だ」というように単音節ごとに音素を分解することができます。これらを自然な文章としてテキスト化するためには各音素が単語になった時にどういった発音をするのかといった辞書が必要です。そこで以下の図にあるような発音辞書を使用することによって、「わ・た・し」→「私」、「に・ほ・ん」→「日本」というように各単語を認識することができます。その後、各単語が結びつく確率を算出する言語モデルのプロセスによって自然な文章をテキスト化することができるのです。

自然言語処理との関係性について

ここまで音声認識の仕組みについて説明しましたが、次に関わりの深い自然言語処理との関係性について説明します。冒頭で説明したように両者は異なる技術ですが、組み合わせることによってその活用の可能性が大幅に広がります。例えばAppleのSiri機能を使って「Hey, Siri メールを開いて」と命令した際に音声認識だけでは何を発したか文字に起こすことはできても、文章が何を意味しているかを理解することができないため命令を実行することができません。そこで自然言語処理の技術が組み合わさることによって、「メール」という言葉がどういったアプリケーションを指しているか、「開いて」という言葉がどういった動作を指すのかを理解することができます。従って人間が発した命令をAIが認識して実行をすることができるのです。このようにして音声認識と自然言語処理は密接に関わっています。

具体的な活用事例について

AIにおける音声認識を実世界ではどのようにして使われているかについて活用事例を3つ挙げて説明します。

文字起こし

文字起こしはAIにおける音声認識技術を活かした最も基本的な活用事例です。ここまで説明してきたように人間の発する言葉を意味の通る自然な文章としてテキスト化するものです。具体的にはWordやGoogle Documentに実装されている音声入力機能がそれにあたります。

スマートフォンの音声アシスタント

AppleのSiriやGoogleのGoogle アシスタントなどといったスマートフォンに実装されている音声認識機能です。これは音声認識技術と自然言語処理とを組み合わせたもので、人間が発する言葉を認識しそれを意味あるものとして解析することによって検索や音楽再生、その他アプリケーションの起動など様々なタスクを音声で処理することができます。

リアルタイム翻訳

リアルタイム翻訳とは、多言語を音声認識し、即時的に任意の言語に翻訳する機能です。具体的な例としては、『NEC翻訳』や、NTT研究所の音声認識システムなどが挙げられます。

まとめ

以上ここまでの説明をお読み頂ければ、AIにおける音声認識とはどういったものなのか、またその具体的な活用事例は何があるのかなどといったことがお分かり頂けたかと思います。そして現在では自然言語処理と密接な関係を築き上げていることも分かったかと思います。実際に、スマートフォンの音声認識機能を使いアプリケーションを開くよう指示できたり、スマートスピーカーでカーテンを開けるよう指示できたりと、音声認識AIは自然言語処理と組み合わさることで人間の発する言葉を聞き取り、そしてその意味を理解して実行することができます。さらに今後は、自動運転において音声入力で車を動かすことができるなど、より音声AIの活用の幅が広がるかと思われます。音声AIの今後に期待しましょう。