English | 簡体中文 | 日本語
現在リリースされているモデルは、ゼロショット音声変換 🔊 と ゼロショット歌声変換 🎙 に対応しています。トレーニングなしで、1〜30秒のリファレンス音声を与えるだけで声をクローンすることができます。
以前の音声変換モデルとの比較やデモのリストを見つけるには、デモページ🌐 をご覧ください。
私たちはモデルの品質を向上させ、さらに多くの機能を追加し続けています。
Seed-VCの音声変換能力に関する一連の客観的評価を行いました。
再現性を高めるために、ソース音声はLibriTTS-test-cleanからランダムに選ばれた100の発話、リファレンス音声は独自の特徴を持つ12のランダムに選ばれた自然音声です。
ソース音声は ./examples/libritts-test-clean
にあります
リファレンス音声は ./examples/reference
にあります
変換結果を話者埋め込みコサイン類似度(SECS)、単語誤り率(WER)、文字誤り率(CER)の観点から評価し、
私たちの結果を2つの強力なオープンソースベースラインモデル、OpenVoice と CosyVoice と比較しました。
以下の表の結果は、私たちのSeed-VCモデルが知覚の明瞭さと話者の類似性の両方でベースラインモデルを大幅に上回っていることを示しています。
モデル\指標 | SECS↑ | WER↓ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|
Ground Truth | 1.0000 | 0.0802 | 0.0157 | ~ | ~ | ~ |
OpenVoice | 0.7547 | 0.1546 | 0.0473 | 3.56 | 4.02 | 3.27 |
CosyVoice | 0.8440 | 0.1898 | 0.0729 | 3.51 | 4.02 | 3.21 |
Seed-VC(Ours) | 0.8676 | 0.1199 | 0.0292 | 3.42 | 3.97 | 3.11 |
また、特定の話者に対して非ゼロショット音声変換モデルと比較しました(公開モデルの可用性に基づく):
Characters | Models\Metrics | SECS↑ | WER↓ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|
~ | Ground Truth | 1.0000 | 6.43 | 1.00 | ~ | ~ | ~ |
トウカイテイオー (ウマ娘) | So-VITS-4.0 | 0.8637 | 21.46 | 9.63 | 3.06 | 3.66 | 2.68 |
Seed-VC(Ours) | 0.8899 | 15.32 | 4.66 | 3.12 | 3.71 | 2.72 | |
明前奶绿 (Vtuber) | So-VITS-4.0 | 0.6850 | 48.43 | 32.50 | 3.34 | 3.51 | 2.82 |
Seed-VC(Ours) | 0.8072 | 7.26 | 1.32 | 3.48 | 4.07 | 3.20 | |
マチカネタンホイザ (ウマ娘) | So-VITS-4.0 | 0.8594 | 16.25 | 8.64 | 3.25 | 3.71 | 2.84 |
Seed-VC(Ours) | 0.8768 | 12.62 | 5.86 | 3.18 | 3.83 | 2.85 |
結果は、特定の話者に対して微調整やトレーニングを行っていないにもかかわらず、Seed-VCが非ゼロショットモデルよりもはるかに優れた結果を達成できることを示しています。
ただし、これはSoVITSモデルの品質によって大きく異なる場合があります。この比較が不公平または不正確であると感じた場合は、PRまたはIssueを歓迎します。
(トウカイテイオー モデルは zomehwh/sovits-tannhauser から取得)
(マチカネタンホイザ モデルは zomehwh/sovits-tannhauser から取得)
(明前奶绿 モデルは sparanoid/milky-green-sovits-4 から取得)
ASR結果は facebook/hubert-large-ls960-ft モデルによって計算されました
話者埋め込みは resemblyzer モデルによって計算されました
eval.py
スクリプトを実行することで評価を再現できます。
python eval.py
--source ./examples/libritts-test-clean
--target ./examples/reference
--output ./examples/eval/converted
--diffusion-steps 25
--length-adjust 1.0
--inference-cfg-rate 0.7
--xvector-extractor "resemblyzer"
--baseline "" # ベースライン結果を計算するには openvoice または cosyvoice を入力
--max-samples 100 # 処理する最大ソース発話数
その前に、ベースライン評価を実行する場合は、../OpenVoice/
と ../CosyVoice/
にopenvoiceとcosyvoiceのリポジトリが正しくインストールされていることを確認してください。
追加の歌声変換評価は、M4Singer データセットを使用し、こちら から入手可能な4人のターゲットスピーカーで行いました。
話者の類似性は、変換結果と各キャラクターデータセット内のすべての利用可能なサンプルとのコサイン類似度を平均して計算しました。
各キャラクターについて、ゼロショット推論のプロンプトとしてランダムな発話を一つ選びました。比較のために、各キャラクターに対してそれぞれの RVCv2-f0-48k モデルをトレーニングし、ベースラインとしました。
各歌手タイプに対して100のランダムな発話をソース音声として使用しました。
Models\Metrics | F0CORR↑ | F0RMSE↓ | SECS↑ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|
RVCv2 | 0.9404 | 30.43 | 0.7264 | 28.46 | 3.41 | 4.05 | 3.12 |
Seed-VC(Ours) | 0.9375 | 33.35 | 0.7405 | 19.70 | 3.39 | 3.96 | 3.06 |
詳細な評価結果を表示するにはクリックしてください
Source Singer Type | Characters | Models\Metrics | F0CORR↑ | F0RMSE↓ | SECS↑ | CER↓ | SIG↑ | BAK↑ | OVRL↑ |
---|---|---|---|---|---|---|---|---|---|
アルト(女性) | ~ | Ground Truth | 1.0000 | 0.00 | ~ | 8.16 | ~ | ~ | ~ |
Azuma (女性) | RVCv2 | 0.9617 | 33.03 | 0.7352 | 24.70 | 3.36 | 4.07 | 3.07 | |
Seed-VC(Ours) | 0.9658 | 31.64 | 0.7341 | 15.23 | 3.37 | 4.02 | 3.07 | ||
Diana (女性) | RVCv2 | 0.9626 | 32.56 | 0.7212 | 19.67 | 3.45 | 4.08 | 3.17 | |
Seed-VC(Ours) | 0.9648 | 31.94 | 0.7457 | 16.81 | 3.49 | 3.99 | 3.15 | ||
Ding Zhen(男性) | RVCv2 | 0.9013 | 26.72 | 0.7221 | 18.53 | 3.37 | 4.03 | 3.06 | |
Seed-VC(Ours) | 0.9356 | 21.87 | 0.7513 | 15.63 | 3.44 | 3.94 | 3.09 | ||
Kobe Bryant(男性) | RVCv2 | 0.9215 | 23.90 | 0.7495 | 37.23 | 3.49 | 4.06 | 3.21 | |
Seed-VC(Ours) | 0.9248 | 23.40 | 0.7602 | 26.98 | 3.43 | 4.02 | 3.13 | ||
ベース(男性) | ~ | Ground Truth | 1.0000 | 0.00 | ~ | 8.62 | ~ | ~ | ~ |
Azuma | RVCv2 | 0.9288 | 32.62 | 0.7148 | 24.88 | 3.45 | 4.10 | 3.18 | |
Seed-VC(Ours) | 0.9383 | 31.57 | 0.6960 | 10.31 | 3.45 | 4.03 | 3.15 | ||
Diana | RVCv2 | 0.9403 | 30.00 | 0.7010 | 14.54 | 3.53 | 4.15 | 3.27 | |
Seed-VC(Ours) | 0.9428 | 30.06 | 0.7299 | 9.66 | 3.53 | 4.11 | 3.25 | ||
Ding Zhen | RVCv2 | 0.9061 | 19.53 | 0.6922 | 25.99 | 3.36 | 4.09 | 3.08 | |
Seed-VC(Ours) | 0.9169 | 18.15 | 0.7260 | 14.13 | 3.38 | 3.98 | 3.07 | ||
Kobe Bryant | RVCv2 | 0.9302 | 16.37 | 0.7717 | 41.04 | 3.51 | 4.13 | 3.25 | |
Seed-VC(Ours) | 0.9176 | 17.93 | 0.7798 | 24.23 | 3.42 | 4.08 | 3.17 | ||
ソプラノ(女性) | ~ | Ground Truth | 1.0000 | 0.00 | ~ | 27.92 | ~ | ~ | ~ |
Azuma | RVCv2 | 0.9742 | 47.80 | 0.7104 | 38.70 | 3.14 | 3.85 | 2.83 | |
Seed-VC(Ours) | 0.9521 | 64.00 | 0.7177 | 33.10 | 3.15 | 3.86 | 2.81 | ||
Diana | RVCv2 | 0.9754 | 46.59 | 0.7319 | 32.36 | 3.14 | 3.85 | 2.83 | |
Seed-VC(Ours) | 0.9573 | 59.70 | 0.7317 | 30.57 | 3.11 | 3.78 | 2.74 | ||
Ding Zhen | RVCv2 | 0.9543 | 31.45 | 0.6792 | 40.80 | 3.41 | 4.08 | 3.14 | |
Seed-VC(Ours) | 0.9486 | 33.37 | 0.6979 | 34.45 | 3.41 | 3.97 | 3.10 | ||
Kobe Bryant | RVCv2 | 0.9691 | 25.50 | 0.6276 | 61.59 | 3.43 | 4.04 | 3.15 | |
Seed-VC(Ours) | 0.9496 | 32.76 | 0.6683 | 39.82 | 3.32 | 3.98 | 3.04 | ||
テナー (男性) | ~ | Ground Truth | 1.0000 | 0.00 | ~ | 5.94 | ~ | ~ | ~ |
Azuma | RVCv2 | 0.9333 | 42.09 | 0.7832 | 16.66 | 3.46 | 4.07 | 3.18 | |
Seed-VC(Ours) | 0.9162 | 48.06 | 0.7697 | 8.48 | 3.38 | 3.89 | 3.01 | ||
Diana | RVCv2 | 0.9467 | 36.65 | 0.7729 | 15.28 | 3.53 | 4.08 | 3.24 | |
Seed-VC(Ours) | 0.9360 | 41.49 | 0.7920 | 8.55 | 3.49 | 3.93 | 3.13 | ||
Ding Zhen | RVCv2 | 0.9197 | 22.82 | 0.7591 | 12.92 | 3.40 | 4.02 | 3.09 | |
Seed-VC(Ours) | 0.9247 | 22.77 | 0.7721 | 13.95 | 3.45 | 3.82 | 3.05 | ||
Kobe Bryant | RVCv2 | 0.9415 | 19.33 | 0.7507 | 30.52 | 3.48 | 4.02 | 3.19 | |
Seed-VC(Ours) | 0.9082 | 24.86 | 0.7764 | 13.35 | 3.39 | 3.93 | 3.07 |
Seed-VCはターゲットスピーカーでトレーニングされておらず、ランダムな発話を一つだけプロンプトとして使用しているにもかかわらず、話者の類似性(SECS)と可読性(CER)の点で特定話者のRVCv2モデルを一貫して上回っています。これは、Seed-VCの優れたボイスクローン能力とロバスト性を示しています。
しかし、Seed-VCの音質(DNSMOS)がRVCv2よりもわずかに低いことが観察されています。この欠点を真剣に受け止め、将来的には音質の改善を最優先します。
この比較が不公平または不正確であると感じた場合、PRやissueを歓迎します。
中国語ASR結果は SenseVoiceSmall によって計算されました
話者埋め込みは resemblyzer モデルによって計算されました
男性から女性への変換には+12セミトーンのピッチシフトを設定し、女性から男性への変換には-12セミトーンのピッチシフトを設定しました。それ以外の場合はピッチシフトは0に設定しました
WindowsまたはLinuxでのPython 3.10を推奨します。
pip install -r requirements.txt
初めて推論を実行する際には、最新のモデルリリースのチェックポイントが自動的にダウンロードされます。
コマンドライン推論:
python inference.py --source <source-wav>
--target <referene-wav>
--output <output-dir>
--diffusion-steps 25 # 歌声変換には50〜100を推奨
--length-adjust 1.0
--inference-cfg-rate 0.7
--f0-condition False # 歌声変換にはTrueを設定
--auto-f0-adjust False # ソースのピッチをターゲットのピッチレベルに自動調整するにはTrueを設定、通常は歌声変換には使用しません
--semi-tone-shift 0 # 歌声変換の半音シフト
ここで:
source
はリファレンス音声に変換するための音声ファイルのパスですtarget
はリファレンスとして使用する音声ファイルのパスですoutput
は出力ディレクトリのパスですdiffusion-steps
は使用する拡散ステップ数です。デフォルトは25で、最高品質には50〜100を使用し、最速の推論には4〜10を使用しますlength-adjust
は長さ調整係数です。デフォルトは1.0で、<1.0は音声を加速し、>1.0は音声を遅くしますinference-cfg-rate
は出力に微妙な違いがあります。デフォルトは0.7ですf0-condition
は出力のピッチをソース音声のピッチに条件付けるフラグです。デフォルトはFalseで、歌声変換にはTrueを設定しますauto-f0-adjust
はソースのピッチをターゲットのピッチレベルに自動調整するフラグです。デフォルトはFalseで、通常は歌声変換には使用しませんsemi-tone-shift
は歌声変換の半音シフトです。デフォルトは0です
Gradioウェブインターフェース:
python app.py
その後、ブラウザを開いて http://localhost:7860/
にアクセスしてウェブインターフェースを使用します。
- コードのリリース
- v0.1の事前トレーニング済みモデルのリリース:
- Huggingfaceスペースデモ:
- HTMLデモページ(他のVCモデルとの比較を含む場合があります): Demo
- ストリーミング推論(現在の実装では品質低下を防ぐために1〜2秒の遅延が必要で、受け入れがたいほど高いです...😥)
- 歌声変換
- ソースおよびリファレンス音声のノイズ耐性
- ソース音声はノイズ耐性があります
- 潜在的なアーキテクチャの改善
- U-ViTスタイルのスキップ接続
- 入力をOpenAI Whisperに変更
- カスタムデータでのトレーニング用コード
- 歌声デコードにNVIDIAのBigVGANを使用
- 歌声変換用のWhisperバージョンモデル
- 歌声変換の客観的評価とRVC/SoVITSとの比較
- オーディオ品質の向上
- 追加予定の項目
- 2024-10-25:
- 歌声変換に関する徹底的な評価結果とRVCv2との比較を追加
- 2024-10-24:
- OpenAI Whisperを音声内容入力として使用した44kHzの歌声変換モデルを更新
- 2024-10-07:
- v0.3の事前トレーニング済みモデルを更新し、音声内容エンコーダをOpenAI Whisperに変更
- v0.3の事前トレーニング済みモデルの客観的評価結果を追加
- 2024-09-22:
- 歌声変換モデルをNVIDIAのBigVGANに更新し、高音部分の変換が大幅に改善
- Web UIで長い音声ファイルのチャンク処理とストリーミング出力をサポート
- 2024-09-18:
- 歌声変換用のf0条件付きモデルを更新
- 2024-09-14:
- v0.2の事前トレーニング済みモデルを更新し、同じ品質を達成するために拡散ステップが少なく、サイズが小さくなり、韻律保持の制御能力が追加
- コマンドライン推論スクリプトを追加
- インストールと使用方法の説明を追加