学習方法 - akjava/Matcha-TTS-Japanese GitHub Wiki

datasetを工夫するだけでも、いろいろな学習方法を試せます。

シングルスピーカー

基本、シングルスピーカーの方が音の品質はいいですが最終の容量に見合うほどの価値があるかは検証が必要

普通にトレーニング

音質は一番いいが、イントネーションは一番悪い。 それでも、音素バランスぐらいは多少取ったほうがいいかも。

ファイル数が少ないMediumクラス以下では普通にトレーニングするだけで十分。

Curriculum Learning/カリキュラム学習

datasetを難易度で分割して、徐々に増やしていく方式。難易度判定は難しいので、単純に文字数で分割してもいい。

イントーネーションの改善は見られた。

このやり方の致命的欠点は、後半に音素パターンが見つけ出されると(単純な組み合わせでも10万以上あるので)、そこだけ学習不足で、Robotic音になる。 回避策としては、長い文章は、分割して最初に混ぜておく。(手間がかかるの試していません)

sequential fine-tune training

Fine tuneトレーニングを、モデルを変えながら、継続して繰り返していく。

ノイジーな音声になった。

開始のモデルの選択(小さいファイル数)が間違った。

Merge Dataset + Retrain single

複数のdatasetを混ぜてトレーニングする。期待とは異なり、中間な音になるわけでなく、ランダムで別の発話者が出てくる、マルチスピーカーのようになった。ただし、イントネーションの方は、多少混ざっている感じがした。

 現在、混ぜてトレーニングしたものを、再び、単独Datasetでトレーニングしています。

マルチスピーカー

TODO