Implementation of "MOSNet: Deep Learning based Objective Assessment for Voice Conversion" https://arxiv.org/abs/1904.08352
Linux Ubuntu 16.04
- GPU: GeForce RTX 2080 Ti
- Driver version: 418.67
- CUDA version: 10.1
Python 3.5
- tensorflow-gpu==2.0.0-beta1 (cudnn=7.6.0)
- scipy
- pandas
- matplotlib
- librosa
For example,
conda create -n mosnet python=3.5
conda activate mosnet
pip install -r requirements.txt
conda install cudnn=7.6.0
cd ./dataand runbash download.shto download the VCC2018 evaluation results and submitted speech. (downsample the submitted speech might take some times)- Run
python mos_results_preprocess.pyto prepare the evaluation results. (Runpython bootsrap_estimation.pyto do the bootstrap experiment for intrinsic MOS calculation) - Run
python utils.pyto extract .wav to .h5 - Run
python train.py --model CNN-BLSTMto train a CNN-BLSTM version of MOSNet. ('CNN', 'BLSTM' or 'CNN-BLSTM' are supported in model.py, as described in paper) - Run
python test.pyto test on the pre-trained weights with specified model and weight.
The experimental results showed in the paper were trained on Keras with tensorflow 1.4.1 backend. However, the implementation here is based on tf2.0.0b1, so the results might vary a little. Additionally, the architectures showed in the paper were meta-architectures, any replace CNN/BLSTM with more fancy modules (ResNet etc.) would improve the final results. Tuning the hyper-parameters might result in the same favour.
- Put the waveforms you wish to evaluate in a folder. For example,
<path>/<to>/<samples> - Run
python python ./custom_test.py --rootdir <path>/<to>/<samples>
This script will evaluate all the .wav files in <path>/<to>/<samples>, and write the results to <path>/<to>/<samples>/MOSnet_result_raw.txt. By default, the pre_trained/cnn_blstm.h5 pretrained model is used. If you wish to use other models, please specify a different --pretrained_model and also change from model import <model_to_be_used>.
If you find this work useful in your research, please consider citing:
@inproceedings{mosnet,
author={Lo, Chen-Chou and Fu, Szu-Wei and Huang, Wen-Chin and Wang, Xin and Yamagishi, Junichi and Tsao, Yu and Wang, Hsin-Min},
title={MOSNet: Deep Learning based Objective Assessment for Voice Conversion},
year=2019,
booktitle={Proc. Interspeech 2019},
}
This work is released under MIT License (see LICENSE file for details).
The model is trained on the large listening evaluation results released by the Voice Conversion Challenge 2018.
The listening test results can be downloaded from here
The databases and results (submitted speech) can be downloaded from here