JusperLee / Deep-Clustering-for-Speech-Separation

Pytorch implements Deep Clustering: Discriminative Embeddings For Segmentation And Separation
124 stars 25 forks source link
deep-clustering pytorch segmentation speech-separation

Deep Clustering for Speech Separation

Deep clustering in the field of speech separation implemented by pytorch

Demo Pages: Results of pure speech separation model

Hershey J R, Chen Z, Le Roux J, et al. Deep clustering: Discriminative embeddings for segmentation and separation[C]//2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2016: 31-35.

Requirement

Code writing log

2019-12-27 Friday. It is currently being refined and is not yet complete.

2020-01-02 Thursday. The training code is currently complete and the code bug is being tested.

Training steps

  1. First, you can use the create_scp script to generate training and test data scp files.
python create_scp.py
  1. Then, in order to reduce the mismatch of training and test environments. Therefore, you need to run the util script to generate a feature normalization file (CMVN).
python ./utils/util.py
  1. Finally, use the following command to train the network.
python train.py -opt ./option/train.yml

Inference steps

  1. Use the following command to start testing the model
python test.py -scp 1.scp -opt ./option/train.yml -save_file ./result
  1. You can use the this code to calculate the SNR scores.

Thanks

  1. Pytorch Template