[論文メモ] VITS-based Singing Voice Conversion System with DSPGAN post-processing for SVCC2023
ASRU2023
VITSベースのSinging Voice Conversion(SVC)モデルの提案
Voice Conversion Challenge 2023 (SVCC2023)に参加したT02チームの手法。
SVCC2023についてはこちらの記事にまとめた。
手法
アーキテクチャ全体像は図2を参照
基本的にはVITSをベースとしていて、学習時の入力はF0、スペクトログラム、HuBERTによるSSL特徴の3つになる。
元のVITSではPrior Encoderの入力がテキスト(音素)、Posterior Encoderの入力がスペクトログラムだったのに対し、提案手法ではPrior Encoderの入力をHuBERT特徴量とF0、Posterior Encoderの入力をスペクトログラムとF0に拡張した。
F0の抽出はPYINを利用。
ソースとなる歌手のF0をそのまま適用するとターゲット歌手の話者性が下がってしまうのでKey Shifterを導入しピッチを変更する。
Key Shifterはまず各歌手の平均F0を計算しておく。そしてソース歌手の平均F0とターゲット歌手の平均F0の差分を計算し、それを抽出したソース歌手のF0に足し合わせる。
ただ、これはソース歌手がわかっているin-domain タスクだけでしか利用できず、cross-domainでは利用しない。
よくあるVITSベースの手法ではVITSのdecoderに当たるvocoderをHiFi-GANベースと異なるもの(Vocosとか)に変更するのが多いが提案手法ではdecoderは変更しない。
ただ、このままだと生成された音声にmetallic noiseがのることがある(特に呼吸時)。それを消すためにDSPGANを導入し、post processとして生成された音声をDSPGANで再生成する。
これによりアーティファクト等が減ったらしい。
システムの全体像は図1の通り。
VITSで声変換し、予測時にはDSPGANのpost processを導入。
実験・結果
データセットと利用については表1を参照。
SVCCのデータは少ないのでVCTKデータセットで事前学習し、次にMixedデータで学習、そしてSVCCデータでの適応学習という手順をとった。
適応学習時には二人ほど追加。この二人は歌唱データでも大量のデータを持つ二人で学習の安定化に役立つと判断。
SVCCデータで学習する際にはspeed perturbationでのaugmentationを行った(0.8~1.4)。使用したのはaudiotsmというライブラリ。
最適化はAdamでとが少々大きめな印象。学習率は1e-4。
SVCC2023、自然性について結果は以下の図3のT02を参照。
Task1(in-domain)、Task2(cross-domain)ともに自然性は高そう。
類似性についての結果は図4。
参加チームの中では上位。
ablations
提案手法の各テクニックが自然性、類似性にどう影響しているかを調査。
調べたテクニックは
Speech Pre-training:VCTKデータでの事前学習
Adaptation Tricks :適応学習時のaugmentationと二人の話者追加
DSPGAN Post-processor:DSPGANによるpost processの有無
結果が表2。
Speech Pre-trainingとDSPGAN Post-processorがないと自然性が大きく低下(類似性もすこし)、
Adaptation Tricksがないと過学習して類似性が大きく低下した。