ASR(自動音声認識)とは?
自動音声認識(ASR)とは、話し言葉を文字に変換する技術です。 ASRシステムは音声信号を受け取り、そこに含まれる音を分析して、最も可能性の高い単語の並びを予測します。文字起こしソフト、音声アシスタント、リアルタイム字幕、ディクテーションツール、音声検索などを支えているのがこの技術です。
ASRはautomatic speech recognitionの略で、automated speech recognitionと表記するベンダーもありますが、意味は同じです。2分で概要をつかみたい方はASRの概要をご覧ください。このガイドでは、エンジンの仕組みから、その背後にある70年分の研究まで、さらに踏み込んで解説します。
ASRはよく似た3つの用語と混同されがちですが、それぞれが答える問いは異なります。
- ASR(自動音声認識) 音声を文字に変換し、「何が話されたか」に答えます。
- 音声テキスト変換(Speech-to-text) 同じ技術を製品名として呼んだもので、やはり「何が話されたか」に答えます。
- 話者認識(声紋認証) 誰が話しているかを特定または照合し、「誰が言ったか」に答えます。
- NLP(自然言語処理) テキストの意味を解釈し、「それは何を意味するか」に答えます。
実際には、ASRと音声テキスト変換は同じ意味で使われます。ASRは技術用語、音声テキスト変換は製品側の呼び方です。よく混同されるのが話者認識です。スマートフォンが持ち主の声でだけロックを解除するように、話者認識は話し手を見分ける技術です。一方のASRは、誰が話したかを問わず、その言葉を文字にします。NLPはその後段に位置します。まず音声が文字になり、次にNLPがそれを要約したり、内容についての質問に答えたり、それに基づいて処理を実行したりします。
ASRはどのように動くのか?
現代のASRは、音声をそのまま文字に変換する一つのニューラルネットワークです。しかし歴史の大半において、ASRは5つの独立したモデルをつないだパイプラインでした。
従来のパイプラインは次のように動きます。以下の歴史は、この各部品が一つずつ生まれていく過程でもあります。
- 音声の取り込みと前処理。 音声をデジタル化してノイズなどを整え、通常は数十ミリ秒ほどの短いフレームに切り分けます。
- 特徴量抽出。 各フレームを、周波数ごとのエネルギーを表すコンパクトな数値データに変換します。
- 音響モデル。 特徴量を、言語の基本的な音の単位である音素に対応づけ、どの音が発せられた可能性が高いかを判断します。
- 言語モデル。 どの単語の並びが自然かを知っているモデルです。英語のエンジンが「wreck a nice beach」ではなく「recognize speech」と書き出せるのはこのためで、どちらも音としては当てはまりますが、言葉として自然なのは一方だけです。
- デコーダ。 音響モデルと言語モデルの確率を組み合わせて探索し、最も可能性の高い文を出力します。
エンドツーエンドへの転換
2010年代半ば以降、エンドツーエンドのディープラーニングモデルが、生の音声から文字への対応を直接学習するようになりました。現在その多くはTransformerアーキテクチャを基盤とし、数十万時間分の音声で学習されています。手作業で作る発音辞書も、独立した音響モデルもありません。ネットワークがそのすべてを一度に学習します。2010年代の10年間で、文字起こしの精度がそれ以前の40年間よりも大きく向上したのは、主にこの転換によるものです。
こうしたモデルは膨大な量の音声から学習するため、なまりや背景雑音、自然な会話を、パイプライン型のシステムよりはるかにうまく扱えます。さらに句読点や大文字小文字も同じ処理の中で予測するため、現代の文字起こしはそのまま文書として読めます。
ASRの精度の測り方
標準的な指標は単語誤り率(WER)です。機械による文字起こしを人が丁寧に作成した文字起こしと比較し、置換・脱落・挿入された単語をすべて誤りとして数えます。WERが5%なら、おおよそ20語に1つの誤り、つまり精度95%を意味します。WERはテストに使う音声に完全に左右されるため、2社の精度の数値を単純に比べられることはほとんどありません。計算式と計算ツールは当社のガイドで紹介しています。
ひと目でわかる音声認識の歴史
- 誕生
- 音声認識が誕生したのは1952年です。ベル研究所のAudreyというシステムが、一人の話者が発声した0から9までの数字を聞き分けました。
- 初の市販ソフト
- 1990年に約9,000ドルで発売されたDragon Dictateは、一般向けに販売された初の音声認識製品でした。ただし、単語を一つ言うたびに間を置く必要がありました。
- 初の1,000語認識
- カーネギーメロン大学のHarpyは1976年に1,011語を理解しました。これは、DARPAが5年間の音声理解研究プログラムに掲げた目標値でした。
- 人間と同等の精度
- 2017年、Microsoftは電話音声ベンチマークSwitchboardで5.1%の単語誤り率を記録し、同じ通話を書き起こしたプロの文字起こし担当者と肩を並べました。
- オープンモデル
- 2022年9月に公開されたOpenAIのWhisperは、68万時間の音声で学習され、100近い言語を文字起こしできます。モデルの重みも公開されています。
- 現在
- 2017年創業のSonixは、54以上の言語を99%の精度で文字起こしし、1時間の録音を約5〜6分で返します。
音声認識の歴史は1952年、ベル研究所で始まった
最初の音声認識機は1952年にベル研究所で作られ、理解できる単語はちょうど10個、0から9までの数字だけでした。
自動数字認識機Audrey
K. H. Davis、R. Biddulph、S. Balashekの3人は、高さ6フィートのリレーラックを埋め尽くすアナログ回路でAudreyを組み上げました。話者が電話の受話器に向かって数字を言うと、機械が母音のフォルマントを測り、聞き取った数字の横のランプが点灯する仕組みです。設計者たちの声に合わせて調整した状態では97から99パーセントの正答率を出しましたが、見知らぬ人の声にはまるで歯が立ちませんでした。人間の交換手が番号をダイヤルするほうが安上がりだったため、Audreyが研究所の外に出ることはありませんでした。それでも、機械は音声を聞き取れるのかという問いには、これで決着がついたのです。
IBMのShoeboxと1960年代
1962年、IBMはシアトル万国博覧会でShoeboxを披露しました。10個の数字と6つの算術コマンドを合わせた16語を聞き取り、その音声で加算機を動かしてみせたのです。アメリカ、イギリス、日本、ソ連の研究所が母音や小さな単語リスト向けの認識機を作り、1968年にはTaras Vintsyukが、話す速さの違う音声どうしを機械が比較できるようにする動的時間伸縮法(DTW)を発表しました。それでも1969年の時点で、この分野には野心こそあれ理論がなく、ベル研究所のJohn Pierceは水をガソリンに変える計画になぞらえたほどでした。
DARPAの音声理解研究プログラムで語彙が1,000語を超えた
1971年から1976年にかけて、DARPAは当時としては最大規模の音声認識研究に資金を投じ、カーネギーメロン大学のHarpyが目標の1,000語に到達しました。
5年間の目標
音声理解研究プログラムが求めたのは、複数の話者による連続音声を1,000語の語彙で、誤り率10パーセント未満で理解できるシステムでした。資金を受けたカーネギーメロン大学、BBN、SRIなどがその実現を競いました。1976年にカーネギーメロン大学で完成したHarpyは、3歳児の語彙にほぼ相当する1,011語を理解し、目標を達成した唯一のシステムとなりました。決め手は、あらゆる可能性を検討する代わりに、見込みの薄い単語列を早い段階で枝刈りする探索手法で、この発想は今もあらゆるデコーダの中核にあります。
統計的アプローチの登場
同じ時期に、その後40年にわたって他のあらゆる手法を凌駕することになるアイデアが生まれました。カーネギーメロン大学では、James Bakerが1975年の学位論文でDRAGONシステムを発表しました。音声を隠れマルコフモデルとして扱い、人が書いたルールではなく確率に、どの単語が話されたかを判定させる仕組みです。IBMではFred Jelinekのグループが同じ手法を研究用のディクテーションシステムに組み込み、さらにnグラム言語モデルを加えて、直前の2語から次の単語を推測できるようにしました。一方のベル研究所は、一人の声から多くの声へと対象を広げ、電話アプリケーションに欠かせない、話者を問わず動作する認識機を作り上げました。
1980年代、隠れマルコフモデルが音声認識を統計的手法に変えた
1980年代にはパターンマッチングが確率に取って代わられ、語彙は10年のうちに数百語から2万語へと広がりました。
隠れマルコフモデルはどう聞くのか
隠れマルコフモデルは、音をテンプレートに照合しようとはしません。受け取った音声を最も高い確率で生み出したのはどの音素列か、そしてその音素列を最も高い確率で生み出したのはどの単語列か、と問いかけます。確率は録音された音声で学習して決めるため、データが増えるほど認識機は賢くなります。この性質は、インターネットの登場後にとてつもなく大きな意味を持つことになります。nグラム言語モデルと組み合わせたHMMは、あらゆる研究所で標準のアーキテクチャとなり、2012年にディープラーニングに取って代わられるまでその座を守りました。
Tangora、Sphinx、そして最初の製品
IBMのTangoraは1980年代半ばまでに2万語の語彙を認識できるようになりましたが、単語ごとに間を置く必要があり、話者ごとの学習も欠かせませんでした。1988年、カーネギーメロン大学でKai-Fu Leeが開発したSphinxは、大語彙、連続音声、話者非依存の3つを一つの認識機で初めて両立させました。1982年にJames BakerとJanet Bakerが設立したDragon Systemsは、パソコン向けの音声認識ソフトの販売を始めます。音声認識が消費者の手に届いたのもこの時期です。1987年にはWorlds of Wonder社の人形Julieがいくつかの決まった言葉に返事をし、電話会社は音声ダイヤルの試験を行いました。おもちゃとしては素朴なものでしたが、「音声認識」という言葉を一般家庭に持ち込んだのです。
1990年代、音声認識がパソコンにやってきた
プロセッサの高速化により、ディクテーションは研究所のデモから店頭に並ぶパッケージソフトになり、共通のベンチマークのおかげで進歩を測りやすくなりました。
Dragon DictateからNaturallySpeakingへ
Dragon Dictateは1990年に約9,000ドルで発売されました。一般の人が買える初めての音声認識製品でしたが、単語を一つ言うたびに間を置かなければなりませんでした。1997年のDragon NaturallySpeakingで、単語ごとに間を置く必要はなくなりました。家庭用PCで毎分100語ほどの連続音声を認識でき、IBMも同じ年にViaVoiceで対抗しました。弁護士や医師、作家がコンピュータに話しかけて使える文章を得られるようになったのは、これが初めてです。ただし、学習させて誤りを直す手間は必要でした。
自動音声応答と最初のベンチマーク
1996年、BellSouthは電話をかけると音声の質問に答えてくれるボイスポータルVALを開始しました。以来、皆さんが電話口で格闘してきた自動音声応答システムはすべて、その子孫にあたります。舞台裏では、DARPAと米国立標準技術研究所(NIST)がSwitchboard電話コーパスなどの共通の録音を使って毎年評価を実施し、単語誤り率がどの研究所も報告する指標になりました。それ以降の音声認識の歴史は、おおむねこの数字が下がっていく歴史です。
2000年代、音声認識はクラウドへ移った
精度はこの10年の大半を80パーセント前後で足踏みしていましたが、Googleが認識処理を端末から自社サーバーへ移したことで流れが変わりました。
停滞期
2001年までに、最良のシステムはディクテーション音声をおよそ80パーセントの精度で文字にできるようになっていましたが、それに続く数年は飛躍ではなく小幅な改良の時代でした。デスクトップのディクテーションはニッチにとどまり、自動音声応答は相変わらず苛立たしく、研究資金は細っていきました。隠れマルコフモデルは天井に近づいており、それに取って代わるはずのモデルには、まだ必要な計算能力もデータもなかったのです。
Google Voice Search
2007年に始まったGoogleの電話番号案内サービスGOOG-411は、数百万件の音声クエリを集めました。そして2008年11月、Google Voice SearchがiPhoneアプリとして登場し、音声認識のあり方が変わります。スマートフォンは録音するだけで、認識はGoogleのデータセンターで行われるようになったのです。そこでは、2,300億語の検索クエリで学習した、どの端末にも収まらないほど大きなモデルが動いていました。音声認識はプログラムではなくサービスになり、今もその形が続いています。
