[ディープ・イン]。記事] ADASpeech2: 文字起こしされていないデータを使ったアダプティブ・テキスト・トゥ・スピーチ-DeepBrainAI

Updated on
July 4, 2024
|
Technology
Published
March 2, 2022
ディープラーニングチーム:Colin
要約

前回見た AdaSpeech モデルと同様に、既存のTTS適応方式では、テキストと音声のペアデータを使用して特定の話者の音声を合成していました。しかし、ペアでデータを用意するのは現実的に難しいため、転記されていない音声データのみでTTSモデルを適応させる方が、はるかに効率的な方法となるでしょう。最も簡単なアクセス方法は、自動音声認識 (ASR) システムを使用して文字起こしを行うことですが、状況によっては適用が難しく、認識精度が十分に高くないため、最終的な適応パフォーマンスが低下する可能性があります。また、TTSパイプラインと適応モジュールを共同でトレーニングすることでこの問題を解決する試みも行われてきましたが、他の市販のTTSモデルと簡単に組み合わせることができないという欠点があります。

ADASpeech2は、任意のTTSモデルを組み合わせて非転写音声(プラガブル)での学習を可能にする追加モジュールを設計し、そこから、テキスト音声データに完全に適合した(効果的)TTSモデルのパフォーマンスと同等の結果を生成できるモデルを提案します。

忙しい人のためのまとめ
  • 音声データのみを使用して特定の話者への適応を誘導するために、AdaSpeechの構造に追加のモジュールが取り付けられました。
  • Mel Encoder の潜在空間は Phoneme Encoder の潜在空間と類似するように学習されているため、入力がテキストであるか音声であるかに関係なく、Mel Decoder は同じ機能を受け取ることができます。これは、事前学習済みの TTS モデルに音声データのみを入力しなければならない状況に適しています。
  • ADASpeech2の適応方法は、任意のTTSモデルを取り付けることで使用でき、特定のスピーカーをテキストと音声のペアデータに適合させたモデルと同様のパフォーマンスを得ることができます。

モデル構造

ADASpeech2は、音素エンコーダーとメルスペクトログラムデコーダーで構成されるADASpeechをバックボーンモデルとして使用しています。音響条件モデリングと条件付き層正規化は既存の ADASpeech と同様に使用されますが、わかりやすくするために上の図では表現していません。ここでは、音声データを受信してエンコードするメルスペクトログラムエンコーダーを追加し、L2 損失を適用して音素エンコーダーの出力と同様にします。詳細な学習プロセスについては後述します。

トレーニングと推論プロセス

ステップ 1:ソースモデルトレーニング

まず、ソース TTS モデルを上手にトレーニングすることが重要です。ADASpeech モデルの音素エンコーダーとメルスペクトログラムデコーダーを十分な量のテキスト音声ペアでトレーニングします。ここで、音素エンコーダーの出力をメルスペクトログラムの長さまで拡張するための持続時間情報が、モントリオール強制配置 (MFA) によって得られます。

ステップ 2:MEL エンコーダアライメント

十分にトレーニングされたソースモデルがある場合は、文字変換されていない音声適応用のメルスペクトログラムエンコーダーを取り付けてください。最後に、音声を自動エンコードしている間にメルスペクトログラムデコーダーに入力される機能を作成する役割を果たしますが、文字起こしデータ (テキスト) からの特徴と同じ出力を吐き出す必要があるため、音素エンコーダーの潜在空間と同じにする必要があります。そこで、テキスト音声データを使用してTTS学習を再度進めると、音素エンコーダーからのシーケンスとメルスペクトログラムエンコーダーからのシーケンスの間のL2損失を取得して最小限に抑え、2つの間の潜在空間の位置合わせにつながります。現時点では、この方法は構造全体を再トレーニングするのではなく、ソースモデルのパラメーターを固定し、メルスペクトログラムエンコーダーのパラメーターのみを更新するため、プラガブルとして表現できます。

ステップ 3:非文字化音声適応

次に、合成したい特定の話者の (文字起こしされていない) 音声データのみを使用してモデルを微調整します。入力音声はメルスペクトログラムエンコーダーとメルスペクトログラムデコーダーを介して音声に合成されるため、これは自動エンコードによる音声復元方法であり、ソースモデルはメルスペクトログラムデコーダーの条件付きレイヤー正規化のみを更新し、計算量を最小限に抑えます。

ステップ 4:推論

上記の調整プロセスがすべて完了すると、モデルは微調整されていない音素エンコーダーと、テキストが入力されたときに部分的に微調整されたメルスペクトログラムデコーダーを使用して、特定の話者の声を模倣できるようになります。

実験結果
アダプテーション音声品質

表1では、音素エンコーダーとメルスペクトログラムエンコーダーの両方を同時に学習してこの実験でベースラインとして使用した設定がジョイントトレーニングであり、音素エンコーダーとメルスペクトログラムを順番に学習するストラテジーが優れていると判断しました。

また、バックボーンとして使用しているAdaspechベースモデルとPPGベースのモデルの性能がADASpeech2の性能の上限と考えられていたので、それらを比較する実験を行いました。MOS と SMOS の結果から、AdaSpeech2 は上限と考えられるモデルとほぼ同じ品質の音声を合成していることがわかります。

適応戦略の分析

 

アブレーション研究を実施して、学習プロセスの前半で述べた戦略がモデルのパフォーマンスの向上に貢献したかどうかを評価しました。その結果、音素エンコーダーとメルスペクトログラムエンコーダーの出力間の L2 損失が取り除かれたり、微調整の段階でメルスペクトログラムエンコーダーも更新されたりすると、音声の品質が低下します。

 

変動する適応データ

適応音声データのサンプル数が 20 未満の場合、データ量が増えるにつれて合成品質は大幅に向上しますが、それを超えても品質は大幅に向上しません。

 

結論と意見

TTSモデルをトレーニングする機械学習エンジニアは、データの品質が合成品質であることを知っているため、データの収集と前処理に多大な労力を費やしています。また、新しい話者と音声を合成するには、新しい話者の音声ファイルと文字起こしされたテキストをペアで収集して、TTS モデルをゼロから再トレーニングしますが、ADASpeech2 メソッドを使うと、データを収集してモデルを微調整するだけで済みます。また、どの TTS モデルとも組み合わせることができるため、現実に応用しやすいという利点もあります。

ADASpeech2でさらに研究を進めると、L2損失の代わりにコサイン類似度などの新しい距離関数を制約として使用して、結果として生じるパフォーマンスの変化を観察することは興味深いトピックになる可能性があります。

次回は、ADASpeechシリーズの最後の論文を紹介する時間があります。

リファレンス

(1) [アダスピーチ 2 論文] AdaSpeech 2: 文字起こしされていないデータを含むアダプティブ・テキスト・トゥ・スピーチ

(2) [アダスピーチ 2 デモ] https://speechresearch.github.io/adaspeech2/

 

Most Read

Most Read

つながり続けよう

私たちのチームは、お客様のバーチャルヒューマンジャーニーをサポートする準備ができています。以下をクリックしてご連絡いただければ、すぐに担当者よりご連絡差し上げます。