参加者が言語を切り替えながら話す会議を、AIは文字起こしできるのか?

多くの場合、できます。精度は、システムが主要な言語を1つだけ検出するのか、切り替えを1つずつ追跡するのかで変わります。音声AIにできること、苦手なこと、そしてClearScribeが現在対応している内容を解説します。

すべての会議が1つの言語だけで行われるわけではありません。ベイルートのプロダクトチームなら、1つの文の中でアラビア語、フランス語、英語を行き来することがあります。営業電話がスペイン語で始まり、英語で終わることもあります。家族経営の会社では、ヒンディー語と英語が終始混ざることもあるでしょう。それでもAIは使える文字起こしを作れるのでしょうか。

結論から言うと: 多くの場合は可能ですが、結果は音声認識システムの設定に大きく左右されます。録音全体に対して主要な言語を1つだけ検出するシステムもあれば、言語の切り替えを単語単位で追うように設計されたシステムもあります。自分がどちらを使っているかを知ることは、どんな宣伝文句よりも重要です。

コードスイッチングが音声認識にとって意味すること

同じ会話の中で言語を切り替えることを コードスイッチング(code-switching)と呼びます。研究者は通常、次の2種類を区別しています。

  • 文と文の間: ある人が英語で文を言い終え、次の文はフランス語になる。
  • 1つの文の中: 「金曜までに facture が必要なんだ、yalla、片付けちゃおう。」

エンドツーエンド音声認識の研究に関する最近の体系的レビューによると、文の中での切り替えは音声システムにとって最も難しいケースであり、多くの研究もこのケースに焦点を当てています。モデルは2つの言語の音、語彙、文法を同時に認識しなければならず、しかも多くの場合、第3の言語の影響を受けたアクセントで話されます。

言語検出は、すべての切り替えを追うこととは違う

プロバイダーが提供する2つの機能は、よく混同されます。

自動言語検出 は、録音の 主要な 言語を特定し、その言語で音声を文字起こしします。Deepgramのドキュメントでは、detect_language を次のように説明しています。事前に録音された音声で動作し、音声チャンネルごとに検出した言語を1つ返します。各録音が、事前に指定していない1つの言語でほぼ構成されている場合には非常に有効ですが、1つのチャンネル内の複数の言語を報告するようには設計されていません。

コードスイッチング対応の多言語モード は別物です。Deepgram Nova-3では、language=multi を設定すると多言語モデルが使われ、言語が変わっても文字起こしを続け、各単語に言語コードを付けます。録音済み音声とストリーミングの両方で動作し、任意の言語ヒントを使えば、想定している言語にモデルを寄せることもできます。

ツールが1つの言語しか検出しない場合、英語70%・アラビア語30%の会議は通常英語として文字起こしされ、アラビア語の部分は不正確になったり、近い音で置き換えられたり、抜け落ちたりする可能性があります。

ClearScribeが現在行っていること

ClearScribeのWebプラットフォームはDeepgram Nova-3を使用していますが、機能によって使い方が異なります。ここで説明するのは現在の実装であり、プロバイダーが理論上できることすべてではありません。

録音・アップロードした会議。 ClearScribeは会議の音声を処理する際、自動言語検出、話者分離、発話単位への分割をリクエストします。文字起こしには、その録音について検出された言語が1つ保存されます。1つの言語が明らかに優勢な場合に最もよく機能します。現在のClearScribeは、録音した会議の文字起こしの中で言語の切り替えを1つずつラベル付けしていません。そのため、すべての切り替えが自動的かつ確実に認識されるとは考えないでください。

ライブキャプション。 ClearScribeのライブキャプション には 多言語 オプションがあり、Deepgram Nova-3の多言語モードを使用しています。発話終了の検出も短めに設定されており、コードスイッチングに適しています。ClearScribeの現在の設定では、このオプションの対象として10言語が挙げられています:英語、スペイン語、フランス語、ドイツ語、ヒンディー語、ロシア語、ポルトガル語、日本語、イタリア語、オランダ語。会議で使う言語が1つだけなら、その言語を直接選ぶほうが通常は適しています。

文字起こしの後。 文字起こしを翻訳して複数の言語で作業する ことができるほか、話者名の変更、話者の割り当ての修正、要約とアクションアイテム の生成も可能です。対応言語の一覧は ClearScribeのグローバル言語サポート をご覧ください。

多言語会議における話者分離

話者分離が答えるのは「誰がいつ話したか」であり、「どの言語が話されたか」ではありません。Deepgramの話者分離は各単語に話者番号を割り当て、ClearScribeはその番号を「話者1」「話者2」のような番号付きラベルに変換します。Deepgramは自社の話者分離を言語に依存しないものと説明しているため、原則として言語を切り替えた人も同じラベルのままになります。

実際には、発話の重なり、ごく短い相づち、似た声、離れた位置のマイクによって、話者分離の誤りは増えます。会議の後で話者ラベルを確認し、名前を付け直す前提で計画しておきましょう。

精度が下がるケース

次のような場合は、結果が弱くなることを想定してください。

  • 短い文の中で何度も言語が切り替わる。
  • 人名、製品用語、略語が別の言語の文法に組み込まれている。
  • 言語や方言が、選択したモードでプロバイダーが対応している一覧に含まれていない。
  • 複数の人が同時に話している、または部屋に反響や背景ノイズがある。
  • 大部分が第2言語なのに、録音が単一言語の検出で処理されている。
  • アラビア語の口語変種のような地域色の強い方言が、学習データと異なる。

文字起こしは自然に見えても間違っていることがあります。音声モデルは、外国語の単語を主要言語の似た音の単語に置き換えてしまうことがあります。

多言語会議のための実践的なワークフロー

  1. 主要言語を決める。 1つの言語が優勢なら、その言語を前提に計画し、利用できる場合は単一言語の設定を使いましょう。
  2. 多言語モードは意図して使う。 対応言語が実際に混ざるライブセッションでは、ライブキャプションの多言語オプションを選びます。
  3. 音声品質を上げる。 良いマイクを使い、私語を減らし、参加者に話がかぶらないよう依頼しましょう。
  4. 話者を紹介する。 冒頭で簡単に名乗ってもらうと、話者の確認が楽になります。
  5. 共有前に見直す。 言語が切り替わる箇所、人名、数字を確認し、話者名の変更と区間の修正を行います。
  6. 見直した後で翻訳する。 修正済みの文字起こしを翻訳するほうが、誤りを含んだまま翻訳するより良い結果になります。

頼る前にテストする方法

デモを信じるのではなく、自分たちの会議で小さく正直なテストを行いましょう。

  1. いつもの参加者、マイク、言語の組み合わせで、実際に近い会議を10〜15分録音します。
  2. 切り替えが頻繁に起こる2〜3分について、丁寧に参照用の文字起こしを作成します。
  3. AIの文字起こしを参照用と比較します。抜けた単語、誤った単語、切り替え部分が誤った言語で書かれた箇所を数えます。
  4. 話者ラベルは単語とは別に確認します。
  5. 単一言語の設定でもテストし、該当する場合はライブキャプションの多言語オプションでも同じテストを繰り返します。
  6. 音声環境や言語の組み合わせが変わるたびに、改めてテストします。

誤りが人名や用語に集中しているなら、見直しの手間は小さく済みます。第2言語の部分がまるごと抜けているなら、その設定はその会議に合っていません。

プロバイダーの機能とClearScribeの機能の違い

機能Deepgram(プロバイダー)現在のClearScribe
主要言語の検出録音済み音声、チャンネルごとに1言語録音・アップロードした会議で使用
コードスイッチング対応の文字起こしNova-3の language=multi、録音済みとストリーミングライブキャプションの多言語オプションで使用
単語ごとの言語タグ多言語モードで返される録音した会議の文字起こしでは区間ごとのラベルとして表示しない
話者分離単語ごとに話者番号録音した会議で有効
言語ヒント任意の language_hint 値現在は未設定

まとめ

AIは多言語の会議を文字起こしでき、多言語モデルは急速に進歩しています。重要なのは、その製品が主要な言語を1つ検出するだけなのか、実際に切り替えを追っているのかという点です。現在のClearScribeは、記載した言語についてはライブキャプションの多言語オプションで切り替えを追い、録音した会議では話者分離とあわせて主要言語の検出を使用しています。自分たちの音声でテストし、文字起こしを見直し、チームの実際の話し方に合ったモードを選んでください。

参考資料

関連記事