音声テキスト変換
別名:STT
更新日:
定義
音声テキスト変換(Speech-to-text、STT)は、話された音声を文字に変換する技術です。リアルタイムの音声入力、ファイルの文字起こし、字幕、音声コマンドを含む総称です。
変換は音声認識モデルが行います。モデルはクラウドで動く場合(音声がサーバにアップロードされる)と、デバイス上で動く場合(音声がマシンの外に出ない)があります。どちらを選ぶかで、プライバシーの性質とオフライン時の動作の両方が決まります。
STTの出力そのものは文字起こしです。英語ならほぼ小文字で、句読点は少なく、言いよどみや言い直しもそのまま残ります。STTを使った製品の違いは、主に認識のあとの処理にあります。何もしないものから、本格的な整形まで行うものまであります。
4つの段階からなるパイプライン
音声キャプチャでは、音をサンプルのストリームに変えます。特徴抽出では、そのサンプルをモデルが読める表現、たいていはスペクトログラムに変換します。認識モデルは、その表現をテキストに対応付けます。途中で音素やサブワードのトークンを経由することもあります。後処理では、モデルの出力を人が書くような文章にします。句読点、大文字と小文字、数字の表記、そして優れたツールでは言いよどみの除去やトーンの調整です。
ツールが「AIを使っている」と言うとき、ほとんどの場合は3つ目の段階を指しています。日々使うときの品質の大部分を左右するのは4つ目の段階ですが、宣伝では省かれがちです。
クラウドとデバイス上
クラウドのSTTは、音声をサーバに送り、そこで大きなモデルを動かしてテキストを返します。ノートパソコンには大きすぎるモデルを使え、ネットワークがあればどのデバイスでも動きます。デバイス上のSTTは自分のハードウェアでモデルを動かすので、音声はマシンの外に出ず、オフラインでも動き、通信の往復もありません。Apple siliconでは精度の差が縮まり、選ぶ基準は品質よりも、プライバシーとコストになっています。
製品ページの用語の意味
仕様表の「音声テキスト変換」は、たいていモデルそのものを指します。「音声入力」は、テキストが入る場所まで含めた体験全体を指します。「文字起こし」はファイルのことです。「ストリーミング」は、話し終えたあとではなく、話している間に言葉が表示されることです。「ローカル」や「デバイス上」は、音声が手元から出ないことを意味します。それぞれの言葉がどの段階を指しているかがわかれば、比較を正しく読むのに必要なことはほぼ押さえられます。
Macで音声テキスト変換をオンにする方法
Macにはどれも音声をテキストに変換する機能が組み込まれています。Appleはこれを「音声入力」と呼んでいて、カーソルがある任意のテキストフィールドに入力します。設定は1分ほどで終わります。
- アップルメニュー→「システム設定」と選択し、サイドバーで「キーボード」をクリックします。
- 「音声入力」に移動して、オンにします。
- 「マイクの入力元」の横のポップアップメニューをクリックし、使いたいマイクを選択します。「自動」にすると、使う可能性が最も高いデバイスをMacが聞き取ります。
- 「ショートカット」ポップアップメニューをクリックし、音声入力を開始するショートカットを選択します。一覧にないものを作るには「カスタマイズ」を選択します。
- 任意のテキストフィールドをクリックし、ショートカットを押して話します。
- 終わったら停止します。30秒間音声が検出されない場合も、音声入力は自動的に停止します。
音声テキスト変換は正確ですか?公開されている数値からわかること
多くの人が思う以上に、音声の状態に左右されます。NVIDIAはオープンモデルParakeet TDT 0.6B v3について8つの英語テストセットでの結果を公開しており、同じモデルでも単語誤り率は、きれいな読み上げ音声(LibriSpeech test-clean)で1.93%、会議の録音(AMI)で11.31%です。
ノイズも数値を動かします。同じモデルカードでは、平均の単語誤り率が、きれいな音声での6.34%から、ノイズが音声と同じ大きさのとき(S/N比0)には11.66%に上がります。静かな部屋と近いマイクは、精度を上げるいちばん安上がりな方法です。
- 話し方の種類:読み上げた文は、人が重なって話す会議より認識しやすくなります。
- 背景のノイズや音楽:ノイズが声の大きさに近づくほど、誤り率は上がります。
- アクセントと方言:Whisperのモデルカードは、アクセントや方言によって性能が異なると報告しています。
- 言語:Whisperのモデルカードは、学習データが少ない言語では精度が低くなると報告しています。
- 語彙:Parakeetのモデルカードは、モデルの語彙にない単語は認識されにくいと注意しています。
音声がMacの中にとどまっているかを確認する方法
音声テキスト変換は、デバイス上で処理されるか、サーバに送られるかのどちらかで、たいていはどちらなのかを確かめられます。Appleの音声入力なら、答えは設定に書かれています。ほかのツールについては、アクセス許可の一覧で、そもそもどのアプリがマイクを聞けるかがわかります。
- アップルメニュー→「システム設定」と選択し、サイドバーで「キーボード」をクリックします。
- 「音声入力」に移動して、「音声入力」スイッチの下の説明を読みます。音声入力と文字起こしがデバイス上で処理されるかどうかが書かれています。
- 「システム設定」→「プライバシーとセキュリティ」→「マイク」に移動すると、マイクの使用を求めたすべてのアプリが表示されます。
- その一覧で、聞き取ってほしくないアプリをオフにします。
- 他社製のツールについては、プライバシーポリシーで音声がどこで処理されるかを確認してください。「マイク」の一覧でわかるのは誰が聞けるかであって、音声がどこへ送られるかではありません。
よくある質問。
音声テキスト変換と音声入力の違いは?
音声テキスト変換は土台となる技術で、音声を入れると言葉が出てきます。音声入力はその上に作られた製品で、その言葉を書いている場所に、リアルタイムで、整形して入力します。音声入力アプリはどれも音声テキスト変換を使っていますが、音声テキスト変換の製品がすべて音声入力というわけではありません。
いちばん精度の高い音声テキスト変換は?
良いマイクで話す英語なら、主要なクラウドエンジンと最高のオープンモデルの差はわずかで、モデルよりも、アクセントや部屋、語彙のほうが大きく影響します。精度はベンチマーク音声での単語誤り率で測られます。実際の使用での差を縮めるには、モデルを替えるよりも、ユーザごとの辞書のほうが効果があります。
Macで音声テキスト変換をオンにするには?
アップルメニュー→「システム設定」と選択し、「キーボード」をクリックして「音声入力」に移動し、オンにします。あとは任意のテキストフィールドで、そこに表示されているショートカットを押して話します。
Macの音声テキスト変換は、時間制限で止まりますか?
Appleによると、どんな長さのテキストでもタイムアウトなしで音声入力できます。ただし、30秒間音声が検出されないと、音声入力は自動的に停止します。
騒がしい部屋だと音声テキスト変換の精度が下がるのはなぜですか?
ノイズが、モデルが頼りにしている音の部分を覆い隠すからです。NVIDIAが公開しているParakeet TDT 0.6B v3の結果では、平均の単語誤り率が、きれいな音声での6.34%から、ノイズが音声と同じ大きさのときには11.66%に上がります。