教師なしテキスト読み上げのためのコツが詰まったバッグ

抽象的な

少量の教師なしデータに対して音声合成を行います。

イントロ

特殊な言語での TTS の場合、低リソースの合成が必要です。多くの場合、半教師ありまたは教師なしのトレーニングが必要です。

  • 半教師あり: 少量のラベル付きデータを使用してモデル パラメーターを初期化し、逆変換を使用してラベルなしデータを利用します。プロフェッショナルな TTS データを記録してラベルを付ける必要があります。
  • 教師なし: ASR は、トレーニング前に音声データの疑似ラベルを提供するために使用されました。しかし、それは ASR モデルのパフォーマンスによって制限され、辞書や G2P ツールがなければ小さな言語に対してそれを行う方法はありません。
  • マイナー言語データはさまざまな国固有の Web サイトからクロールされるため、他の言語の大量の教師付きデータを使用して予備作業を行うことができます。ただし、教師付きデータの言語とターゲットのマイナー言語は、フランス語とインドネシア語のように同じ母音単位を共有する必要があり、どちらもラテン語 (同じアルファベット) であることに注意する必要があります。
既存の問題 解決
低品質のマルチスピーカーデータ フローベースの強化された事前処理を備えた多言語 VC モデル、複数の話者のデータを 1 つの話者に変換し、強化
逆変換の安定性: 半教師あり手法はラベルのないデータを使用し、パフォーマンスが限られており、収束が困難です。 カリキュラム学習、長さの増加、および補助教師付き損失
Lupineness: 自己回帰モデルのアライメントの問題 非自己回帰モデル。ASR モデルのアライメントにより逆変換プロセスが導入されます。

方法

建築

ここに画像の説明を挿入

ここに画像の説明を挿入
ステージ 1: 音声変換: 音声合成の難しさは、音声とテキストの間のクロスモーダル調整を確立することにあります。これら 2 つのモード間のギャップを小さくできれば、小さなデータの TTS が可能になります。同じテキストでも、録音のノイズ、話者の音色やリズムは異なります。これらは、従来の TTS では感情/スタイルのモデリングですが、小さなデータ TTS では干渉になります。実際にやるべきことは、これらを排除することです。干渉は可能な限り。音声変換方式を採用し、Sリッチ S_richSri c h (大規模教師あり言語データ) とS low S_lowSo w (少量の教師なしターゲット言語データ) がトレーニングに使用されます。Sref S_refSre fは基準音色ガイドとして使用されるため、音声変化モデルの出力によって入力音声の変数が正規化されます。
ステージ 2: 教師ありウォームアップ トレーニング: 教師ありデータを使用して ASR、TTS モデルを事前トレーニングし、モデルに適切な初期化を行います。

ステージ 3: 教師なし逆翻訳トレーニング: 音声シーケンスSSsを ASR に入力してテキスト シーケンスtpseudo t_{pseudo}tそうですね_ _ _ _、その後、( s , tpseudo ) (s, t_{pseudo})を使用します。( s tそうですね_ _ _ _) N step=20k 後に TTS モデルをトレーニングし、spseudo、t s_{pseudo}、tsそうですね_ _ _ _t はASR モデルをトレーニングします。実験の結果、2 つのモジュールのパフォーマンスが向上していることが上の図に示されています。

音声変換モデル

ここに画像の説明を挿入

  • VC モデルの要件: (1) 豊富なデータに基づいてトレーニングされ、言語間で音声を変更する機能、および音声変更用の低データを入力する機能、(2) VC によって生成された結果が使用されるため、高品質の結果を生成するTTS用。(3) 入力ローデータにはノイズが多い可能性があるため、VC モデルはノイズに強いです。
  • この点に関して、モデルの設計では次の対策が講じられています。
  • 言語間機能のサポート: 多言語 HuBERT を使用して、フレームレベルの自己教師あり学習の離散コンテンツ表現を抽出し、VC モデルのデコーダーに言語 ID を追加し、言語の発音の詳細の違いに注意を払うようにモデルに指示します。さまざまな言語。
  • フローベースの拡張事前確率を備えた変分エンコーダ: PortaSpeech や VITS の方法と同様に、エンコーダは事後確率D q D_qをモデル化します。Dq、時間スケールの微妙な違いを学習し、D q D_qに対して正規化フローを使用します。Dq配布は制限されています。エンコーダの特性評価結果から KL 距離を求めることは、基本的にガウス空間に制約されるため、分布の多様性が制限され、デコーダにより多くの事前知識が与えられます。さらに、ランダムにサンプリングされた変数に時間依存性を与えることもできます。
  • 情報のボトルネック: HuBERT のトークンは、発言者の身元情報の漏洩を最小限に抑えるために線形制約を受けています。寸法が大きすぎると情報が漏れ、小さすぎると発音の誤りが発生します。
    ここに画像の説明を挿入
    λ 1 = λ 2 = λ 3 = 1 \lambda_1=\lambda_2=\lambda_3=11=2=3=1
    MAEメルロス
    ここに画像の説明を挿入

ヒューバート

  • 多言語 HuBERT は、英語、フランス語、スペイン語のトレーニングに基づいています。(VoxPopuli データセットのサブセットであり、それ自体には 23 の言語があります)、合計 13.5,000 時間のデータがあります。
  • HuBERT の 3 番目の反復モデルの 11 層からフレーム レベルの表現を抽出し、事前トレーニングされた K 平均法モデルを使用して離散表現H ing H_{ing}を取得します。Hg
  • 公正なオープンソース モデル

ポスタリアエンコーダ

  • アーチ:conv1d(stride=4)+LN+ノンカジュアルウェーブネット(k=8/192/5)
  • 平均分散を予測し、リサンプリングして z、dim=32 を取得します

ボリューム維持 (VP) 正規化フロー

ここに画像の説明を挿入

  • θ \シータθは正規化流量のパラメータです

  • 一連の可逆変換を通じて単純なガウス分布を複素分布に変換し、この複素分布をデコーダ入力の事前分布として使用します。

TTS および ASR モデル

ここに画像の説明を挿入

  • TTS モデル設計のアイデア: 主に、非自己回帰の PortaSpeech の実践を参照し、調整タスクを上流の ASR に割り当てて完了します。
  • TTS モデルの詳細: デコーダー入力には言語 ID のガイドがあります。postnet モジュールが削除され、マルチレングス GAN モジュールが追加されます。簡単にするために、テキスト エンコーダは fastspeech と同じであり、混合言語エンコーダは使用されません。
  • ASR モデルの設計アイデア: LSTM ベースのエンコーダーとデコーダーに基づいて、位置合わせに位置依存のアテンションを使用し、ビタビ復号化を通じてアテンション マトリックスを取得します。ASR モデルはすべての言語に共通であり、新しいターゲット言語のトレーニングにより適しています。
  • ASR モデルの詳細: ASR トレーニングとして tacotron2 モデルを使用し、入力音声、デコーダー出力は多重分類問題であり、文字シーケンスを予測します。Transformer ベースの言語モデル + ビーム検索をトレーニングしてlogp ASR ( X ∣ S ) + 0.2 ∗ logp LM ( X ) log p_{ASR}(X|S)+0.2*log p_{LM}(X) を最大化するログp _ _SR _( X S )+0.2ログp _ _LM _( X )、ここでSSSは入力音声、XXXはASR認識結果、ビームサーチサイズ=5

逆翻訳のコツ

  • カリキュラム学習:
    • (1) 最初の使用( S rich , trich ) (S_{rich},t_{rich})( Sリチ_ _ _tリチ_ _ _) S low S_{low}に基づいて ASR モデルをトレーニングします。Sああ _アップデートの際、取得したtlow t_{low}を確実にするためtああ _信頼度が高く、計算集中率がFF。FF_F値が高いほど、一方向の位置合わせパス上の確率が高く、転写されたテキストの信頼性が高いことを示します。F > F しきい値 F>F_{しきい値}の場合、各ラウンドで最良の ASR 結果が選択されます。F>Fしきい値保持ます_、次の逆変換ラウンドで、tpseudo t_{pseudo}を置き換えます。tそうですね_ _ _ _
      ここに画像の説明を挿入ここに画像の説明を挿入
    • (2) ASR の結果はバックエンド TTS に影響を与えるため、ベースと発音が似ているいくつかの文とその転写が TTS トレーニング用に選択され、それらの悪いケースは直接破棄されます。
  • 長さの増加
    • 背景: TTS モデルと ASR モデルは両方とも、短い文ではより高速に収束し、パフォーマンスが向上しますが、パフォーマンスの悪い文を破棄するという上記の戦略によると、長い文では最終モデルのパフォーマンスが大幅に低下します。
    • 解決策: 特定の比率/確率に従って、いくつかの短い文とその転写をトレーニングにつなぎ合わせた場合、結果と位置合わせエラーは比較的小さくなります。比率20%
  • 補助監視損失
    • 問題: 逆翻訳だけを使用すると、位置合わせが悪く、構成も悪くなります。
    • 解決策: 教師付きデータを使用して TTS と ASR をトレーニングするステップは、一定の割合に従って逆変換のトレーニング プロセスに挿入されます。比率20%

実験

  • トレイン セット: CommonVoice データセットのリッチ データとしてフランス語が選択され、ターゲットのマイナー言語として英語とインドネシア語が選択されます。ターゲット言語は 2 つの部分に分割されており、1 つはオーディオ、トレーニング ASR 用、もう 1 つはテキスト トレーニング TTS 用であり、この 2 つが重複しないようにします。LJSpeech はスピーチを参照として選択しました。
  • ウェブサイトでは、インドネシア語は合計 65 時間、英語は合計 3205 時間であることがわかります。明らかに背景ノイズが発生しています。
  • val set: 評価として LJSpeech から 100 個のオーディオ/テキスト ペアを選択し、インドネシア語は CommonVoice から 100 個を選択します
  • A100 カード 1 枚、VC/TTS/ASR、LJSpeech で事前トレーニングされた HiFi-GAN ボコーダーを含む 3 日間のトレーニング。
  • MOS: 20 文と 20 人、CER/WER、wenet モデルによる英語テスト、Microsoft インターフェイスによるインドネシア語テスト

ここに画像の説明を挿入ここに画像の説明を挿入

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_40168949/article/details/129390184