自分の声で話す — あなたが話せない言語で
リアルタイム翻訳において、ほとんどの人が誤解し、ほとんど誰も語らない部分があります。それがあなたが聞く声です。
優れた音声認識と優れた翻訳があっても、結局は機械がリストを読み上げているようなミーティングになることがあります。なぜなら、最後のステップ — 翻訳されたテキストを再び音声に戻す段階 — で、ほとんどのツールはあなたを単一の汎用的な合成ナレーターにこっそりと置き換えてしまうからです。部屋に8人がいても、全員に1つのロボットの声が使われます。誰が話しているのか、強調ポイント、個性が失われます。理解はできても、会話にはなりません。
InterMINDは最後のステップを異なる方法で行います。あなたが話すと、他の参加者は明らかにあなた自身のものとわかる声 — あなたの音色や話し方を反映した声 — で、今彼らの言語で言葉を発している翻訳を聞きます。まだ完璧な模倣ではありませんが、重要なのは、汎用のナレーターではなくあなたの声であるという点であり、それは改善され続けています。これはすべての参加者に対して、双方向で同時に機能します。
この投稿は、InterMINDを動かす4つの翻訳パイプラインの内部の抜けていた章です。前回の記事では、音声がどのように翻訳された音声になるかを説明しました。今回は、最終的に誰の声が出力されるのかについてお話しします。
誰もが提供しているデフォルトと、それが平坦である理由
大手のミーティングプラットフォームでライブ翻訳を使ったことがあるなら、その音声を知っているでしょう。中立的で、均等なペースの声が翻訳を読み上げます。話者がタウンホールミーティングを開始するCEOであれ、冗談を言っている同僚であれ、同じ声です。その根底にある技術は、1つの固定された音声モデルを用いたテキスト読み上げであり、デザイン上の前提は「理解できれば十分」というものです。
実際のミーティングでは、それは十分ではありません。ミーティングが伝える情報の半分は、誰がどのように言っているかです。声を奪えば、議論はたまたま音声として読み上げられた文字起こしになってしまいます。人々はお互いに反応するのをやめ、自分の番を待つだけになります。
その代わりにInterMINDがしていること
翻訳はカスケードパイプラインとして実行されます — 1つのモデルですべてを行おうとするのではなく、3つの専門化されたステージが順番に実行されます。最初の2つのステージについてはパイプラインの投稿で説明されています。この投稿で取り上げるのは、音声ステップです。
- ASR — 音声認識。 あなたの言葉は、話している瞬間にブラウザ上で、あなた自身の言語で文字起こしされます。(ローカルで実行することでラウンドトリップが節約され、翻訳が開始される前の遅延を可能な限り最小限に抑えられます。)
- MT — 翻訳。 文字起こしテキストは安定した文の断片 — 節(clauses) — にグループ化され、文を言い終わる前に翻訳を開始でき、各断片は聞き手の言語へと段階的に翻訳されます。
- ゼロショットTTS — 音声合成。 翻訳された各断片はあなた自身の声のサンプルを使用して読み上げられ、聞き手にストリーミングされます。
この効果を生み出しているのは、ASR → MT → ゼロショットTTS という3番目のステージです。「ゼロショット」とは、システムが事前に録音された登録音声や、あなたの声のトレーニングセッションを必要としないことを意味します。あなたが現在参加しているミーティングの音声から、あなたの声をモデル化します。
ウォームアップ:どうやってすぐにあなたの声のように聞こえ始めるのか
「あなた自身の声のサンプルを使用する」という言葉には、鶏と卵の問題が隠れています。通話の開始直後は、システムはあなたの声をうまくモデル化できるほど十分にあなたを聞いていません。
InterMINDはこれを段階的なウォームアップで処理します。
- 最初の約5〜10秒間、システムがあなたの音声を十分に集めている間は、翻訳された各断片は、あなたがソース言語でまさに話した内容に一致する音声断片を使用して合成されます。音声化はあなたの実際の、即時の音声に固定されます。
- 十分な長さのサンプルが得られたら — その5〜10秒のマークに達した時点で — システムはそれをロックし、以降のすべての音声化にそれを使用します。
実際には、スイッチが切り替わるような音は聞こえません。会話が進むにつれて、翻訳はよりあなたらしく聞こえるようになります — あなたの声の完璧なコピーではなく、機械の声ではなく明らかにあなたのものであり、モデルがより多く聞くにつれて改善されていきます。段階的な翻訳(文単位ではなく節単位)と段階的な音声化の組み合わせが、人間らしく聞こえさせつつ、全体を遅延の予算内に収めているのです。
音声サンプルは保存されません
これはセキュリティや法務チームがすぐに尋ねる部分なので、ここではっきりと説明します。
合成に使用される音声サンプルは一時的です。それは翻訳の音声化に提供するためだけにライブの会議セッション中にのみ存在し、どこにも保存されません。リアルタイムセッションを支えるMind APIおよびSDKはデータを一切保持しません — 会議セッションが終了すると、すべての一時的なデータは消滅します。
このサンプルが何ではないかを正確にしておく価値があります。それはInterMINDの録画機能のひとつではありません。ミーティングの映像と音声を録画することは、目的を持って意図的に行う個別のアクションであり、専用のコントロールが存在します。本人の音声サンプルは録画ではありません — それは通話の寿命を超えることのない、音声合成器への一時的な入力です。
これはプライバシー管理の慣行以上の意味を持ちます。「自分の声で話す」という機能は、まさにどこかに声紋を保存する必要があるように聞こえる種類の機能です。しかし、そうではありません。正直なバージョンこそがより良いストーリーです。あなたの声はその瞬間にモデル化され、通話を切ると消滅します。
他の誰もこれを提供しない理由
ボイスクローニングが秘密だからではありません。ライブで、参加者ごとに、双方向で、1秒未満の予算内で、24言語にわたって、何も保存せずにそれを行うことは、ポッドキャストのためにオフラインで声をクローンするのとは異なる問題だからです。
大手プラットフォームは、キャプションのカバレッジと単一の無難なナレーターの声に合わせて翻訳を最適化しています — これが大規模運用における安価で堅牢なデフォルトです。各話者本人の声を保持するということは、合成ステージがすべての参加者を独立して追跡し、パイプラインの他の部分と同じ遅延予算内に収まる必要があることを意味します。私たちは独自のインフラストラクチャ上で、自社でボイスエンジンを構築しました。これにより、このトレードオフを私たち自身の判断で行うことができます。(なぜエンジンが自社のコードなのかについては、1つのInterMINDミーティングは何から構成されているかを参照してください。)
これが向かう先:リップシンク
あなたの声を保持することは、より大きな目標の半分です。もう半分はあなたの顔です。
現在、相手の声を本人の声で聞くことができますが、カメラをオンにしている場合、相手の唇は依然として彼らが実際に話した言葉 — つまりあなたが読めない言語 — に合わせて動きます。次のステップはリップシンクです。話者の口の動きを翻訳された音声に再同期し、あなたの画面上では彼らがあなたの言語を話しているように見えるようにします。
この2つを組み合わせると、この取り組みの全体像が明確になります。共通の言語を持たない2人がビデオ通話で向かい合い、それぞれが相手の言語のネイティブスピーカーであるかのように見聞きする — 同じ声、同じ顔、間に通訳は介入せず、台本を読み上げるロボットもいません。
状態について明確にしておきます:音声は本日提供中(ライブ)ですが、リップシンクはロードマップ上にあり、まだ提供されていません。 私たちが目的地を明示しているのは、それが音声に関する取り組みの意義だからです — 本人の声による翻訳は最終的な機能ではなく、「誰とでも、どんな言語でも、自分自身として話す」という目標の前半部分にすぎません。
どこで聞けるか
本人の声による翻訳は、**本日、21のすべての音声言語で提供中(ライブ)**です — ドキュメントに記載されている言語と同じです。個別に有効にする必要はありません。ミーティングで翻訳が有効になると、参加者は自動的にお互いの本人の声を聞くことができます。現在の状況について正直に言うと、今日の時点で音声はすでに明らかにあなたのものであり、私たちはその類似性をさらに高めるよう積極的に取り組んでいます。ぜひ実際に聞いて、ご自身で判断してください。
- デモを試す — 24の言語のいずれかで、あなたの音声に対してライブ音声パイプラインを実行します。
- 品質の数値を見る — 同じ本番パイプラインを使用し、FLORES-200に対して月次でスコアリングし、言語ペアごとに完全な分布を公開しています。
- ドキュメントでの仕組み — この投稿の短いバージョンです。
翻訳されたミーティングは、実際に参加している人々がお互いに話しているように感じられるべきです。あなたの声を保持することが、それを実現する方法です。