🚀 WSJ0 - 3Mixデータセットで訓練されたSepFormerモデル
このリポジトリは、SepFormer モデルを使用した音声ソース分離に必要なすべてのツールを提供します。このモデルはSpeechBrainを使用して実装され、WSJ0 - 3Mixデータセットで事前学習されています。より良い使用体験を得るために、SpeechBrain をさらに学ぶことをおすすめします。このモデルのWSJ0 - 3MixデータセットのテストセットにおけるSI - SNRi指標は19.8 dBです。
バージョン公開日 |
テストセットSI - SNRi |
テストセットSDRi |
2021年3月9日 |
19.8dB |
20.0dB |
🚀 クイックスタート
SpeechBrainのインストール
まず、以下のコマンドを使用してSpeechBrainをインストールしてください。
pip install speechbrain
SpeechBrain についてさらに学ぶために、関連するチュートリアルを読むことをおすすめします。
独自の音声ファイルでソース分離を行う
from speechbrain.inference.separation import SepformerSeparation as separator
import torchaudio
model = separator.from_hparams(source="speechbrain/sepformer-wsj03mix", savedir='pretrained_models/sepformer-wsj03mix')
est_sources = model.separate_file(path='speechbrain/sepformer-wsj03mix/test_mixture_3spks.wav')
torchaudio.save("source1hat.wav", est_sources[:, :, 0].detach().cpu(), 8000)
torchaudio.save("source2hat.wav", est_sources[:, :, 1].detach().cpu(), 8000)
torchaudio.save("source3hat.wav", est_sources[:, :, 2].detach().cpu(), 8000)
このシステムは、入力される録音のサンプリングレートが8kHz(モノラル)であることを想定しています。サンプリングレートが異なる信号を使用する場合は、インターフェースを使用する前にリサンプリングを行ってください(例えば、torchaudioまたはsoxを使用)。
GPUで推論を行う
GPUで推論を行う場合は、from_hparams
メソッドを呼び出す際に run_opts={"device":"cuda"}
を追加してください。
訓練
このモデルはSpeechBrain(fc2eabb7)を使用して訓練されています。最初から訓練を行う場合は、以下の手順に従ってください。
- SpeechBrainリポジトリをクローンします。
git clone https://github.com/speechbrain/speechbrain/
- 依存関係をインストールします。
cd speechbrain
pip install -r requirements.txt
pip install -e .
- 訓練スクリプトを実行します。
cd recipes/WSJ0Mix/separation
python train.py hparams/sepformer.yaml --data_folder=your_data_folder
注意:yamlファイルの num_spks
を3に変更してください。
訓練結果(モデル、ログなど)は こちら で見ることができます。
制限事項
SpeechBrainチームは、このモデルが他のデータセットでの性能を保証するものではありません。
📚 ドキュメント
SpeechBrainの引用
@misc{speechbrain,
title={{SpeechBrain}: A General-Purpose Speech Toolkit},
author={Mirco Ravanelli and Titouan Parcollet and Peter Plantinga and Aku Rouhe and Samuele Cornell and Loren Lugosch and Cem Subakan and Nauman Dawalatabad and Abdelwahab Heba and Jianyuan Zhong and Ju-Chieh Chou and Sung-Lin Yeh and Szu-Wei Fu and Chien-Feng Liao and Elena Rastorgueva and François Grondin and William Aris and Hwidong Na and Yan Gao and Renato De Mori and Yoshua Bengio},
year={2021},
eprint={2106.04624},
archivePrefix={arXiv},
primaryClass={eess.AS},
note={arXiv:2106.04624}
}
SepFormerの引用
@inproceedings{subakan2021attention,
title={Attention is All You Need in Speech Separation},
author={Cem Subakan and Mirco Ravanelli and Samuele Cornell and Mirko Bronzi and Jianyuan Zhong},
year={2021},
booktitle={ICASSP 2021}
}
📄 ライセンス
このプロジェクトはApache 2.0ライセンスの下で提供されています。
📋 SpeechBrainについて
- 公式サイト:https://speechbrain.github.io/
- コードリポジトリ:https://github.com/speechbrain/speechbrain/
- HuggingFaceページ:https://huggingface.co/speechbrain/