言語識別
別名:LID
更新日:
定義
言語識別とは、音声ソフトウェアが文字起こしの前に、または文字起こししながら、どの言語が話されているかを判断する処理です。これにより、多言語対応のツールは、ユーザが設定を変えなくても言語を切り替えられます。
違う言語を前提とした認識器は、自信たっぷりにでたらめを出力します。フランス語を英語のモデルに通すと、英語らしく見える意味不明な文になります。従来の音声入力は、これを手動で変える設定で解決していました。1つの言語で仕事をする人には問題ありませんが、会話の途中で言語を切り替える多くの人にとってはつらいものでした。
現代のツールは、音声の最初の1〜2秒に小さな検出器を走らせ、いちばん可能性の高い言語を選んで、適切なモデルに音声を送ります。優れたツールは音声入力のたびに検出し直せるので、Slackでドイツ語で返信し、次は英語で返信しても、何もする必要はありません。
検出の仕組み
ASRモデルの中には、文字起こしの副産物として言語を自分で検出するものがあります。Whisperは最初のパスでこれを行います。ほかのモデルは、発話の冒頭を聞いて言語と信頼度スコアを返す、小さな別の分類器を使います。いずれにしても、判断は早く行う必要があります。間違ったモデルは、多くを出力する前に打ち切らなければならないからです。また、ごくわずかな音声から判断しなければなりません。音声入力の最初の1、2語が、多言語ツールにとっていちばん不安定な瞬間なのはそのためです。
検出は翻訳ではない
言語を識別して、その言語で文字起こしするのが、デフォルトで安全な動作です。翻訳、つまりある言語で話して、テキストを別の言語で入力することは、別のオプションのステップであり、自分でオンにしない限りオフであるべきです。勝手に翻訳するツールは、本来ツールが決めるべきではないことを、あなたの言葉について決めてしまっています。
Macで複数の言語で音声入力する方法
Appleの音声入力は追加した言語で使え、音声入力中に自分で言語を切り替えます。設定は1分で済みます。
- アップルメニュー→「システム設定」と選択し、サイドバーで「キーボード」をクリックします。
- 「音声入力」に移動して、「言語」の横にある「編集」ボタンをクリックします。
- 音声入力に使いたい言語と地域をそれぞれ選択します。
- 任意のテキストフィールドで音声入力を開始します。
- 言語を変えるには、カーソルの横に表示される言語をクリックします。言語は略称か、その言語を表す文字で表示されます。
- または、🌐キーを押して、使いたい言語を選択します。
WhisperとParakeetはどのように言語を検出しますか?
Whisperは、文字起こしや翻訳と並ぶタスクの1つとして、話されている言語を特定するように学習されています。言語を指定しない場合、文字起こしツールは音声の最初の最大30秒を使って言語を検出し、ファイル全体をその言語として文字起こしします。英語専用モデルは検出を行わず、英語とみなします。
Parakeet TDT 0.6B v3の方法はもっと限定的です。NVIDIAによると、対応する25のヨーロッパ言語の範囲で、音声の言語を自動的に検出し、追加の指示なしで文字起こしします。その範囲外の言語には対応していません。
言語の検出を間違える理由と直し方
検出は少量の音声からの推測なので、いくつかの状況ではほぼ確実につまずきます。ほとんどは簡単に直せます。言語を自分でモデルに伝えればよいのです。
- 録音の途中で言語が変わる。Whisperのツールはファイルの冒頭から一度だけ検出し、その言語を残りにも適用します。
- その言語の学習データが少ない。Whisperのモデルカードは、そうした言語では精度が低くなると報告しています。
- その言語にモデルがまったく対応していない。その場合、モデルは対応している言語のどれかで答えるしかありません。
- Whisperでの直し方:コマンドに--languageと言語名を追加します。例:--language German
- Appleの音声入力での直し方:カーソルの横の言語をクリックして、自分で言語を選びます。
よくある質問。
音声入力ソフトは、話している言語を検出できますか?
現代のツールなら、音声の最初の1〜2秒で検出し、適切なモデルに音声を送れます。古いツールでは、話す前に設定で言語を選ぶ必要があります。
言語の推測を間違えるとどうなりますか?
違う文字やつづりで、自信たっぷりのでたらめが出力されます。モデルは音を、自分の知っている言葉として文字起こしするからです。音声入力のたびに検出し直すツールなら次の文で元に戻りますが、設定が固定されたツールでは、設定を変える必要があります。
Macで音声入力の言語を変更するには?
「システム設定」→「キーボード」→「音声入力」で、「言語」の横の「編集」をクリックして言語を追加します。音声入力中は、カーソルの横に表示される言語をクリックするか、🌐キーを押して言語を選択します。
Whisperが間違った言語を選ばないようにするには?
コマンドで言語を指定します。例:whisper audio.mp3 --language German。こうするとWhisperは、通常なら音声の最初の最大30秒を使う自動検出を省きます。
音声モデルは言語を自動で検出できますか?
はい。Whisperは言語を指定しなければ検出し、NVIDIAのParakeet TDT 0.6B v3は対応する25のヨーロッパ言語の範囲で自動的に検出します。