En nuestro artículo, propusimos Hifi-Gan: un modelo basado en GaN capaz de generar un habla de alta fidelidad de manera eficiente.
Proporcionamos nuestra implementación y modelos previos al estado previo como código abierto en este repositorio.
Resumen: Varios trabajos recientes sobre síntesis del habla han empleado redes adversas generativas (GAN) para producir formas de onda sin procesar. Aunque tales métodos mejoran la eficiencia de muestreo y el uso de la memoria, la calidad de su muestra aún no ha alcanzado la de los modelos generativos autorregresivos y basados en el flujo. En este trabajo, proponemos Hifi-Gan, que logra la síntesis de habla eficiente y de alta fidelidad. Como el audio del habla consiste en señales sinusoidales con varios períodos, demostramos que modelar patrones periódicos de un audio es crucial para mejorar la calidad de la muestra. Una evaluación humana subjetiva (puntaje de opinión media, MOS) de un solo conjunto de datos de altavoces indica que nuestro método propuesto demuestra similitud con la calidad humana al tiempo que genera un audio de alta fidelidad de 22.05 kHz 167.9 veces más rápido que en tiempo real en una sola GPU V100. Además, mostramos la generalidad de Hifi-Gan a la inversión del espectrograma MEL de hablantes invisibles y síntesis de habla de extremo a extremo. Finalmente, una pequeña versión de huella de Hifi-Gan genera muestras 13.4 veces más rápido que en tiempo real en CPU con calidad comparable a una contraparte autorregresiva.
Visite nuestro sitio web de demostración para ver muestras de audio.
LJSpeech-1.1/wavs python train.py --config config_v1.json
Para entrenar el generador V2 o V3, reemplace config_v1.json con config_v2.json o config_v3.json .
Los puntos de control y la copia del archivo de configuración se guardan en el directorio cp_hifigan de forma predeterminada.
Puede cambiar la ruta agregando la opción --checkpoint_path .
Pérdida de validación durante el entrenamiento con el generador V1. 
También puede usar modelos previos a la petróleo que proporcionamos.
Descargar modelos previos a la aparición
Los detalles de cada carpeta son como lo siguiente:
| Nombre de carpeta | Generador | Conjunto de datos | Afinado |
|---|---|---|---|
| LJ_V1 | V1 | Ljspeech | No |
| LJ_V2 | V2 | Ljspeech | No |
| Lj_v3 | V3 | Ljspeech | No |
| LJ_FT_T2_V1 | V1 | Ljspeech | Sí (Tacotron2) |
| LJ_FT_T2_V2 | V2 | Ljspeech | Sí (Tacotron2) |
| LJ_FT_T2_V3 | V3 | Ljspeech | Sí (Tacotron2) |
| VCTK_V1 | V1 | VCTK | No |
| VCTK_V2 | V2 | VCTK | No |
| VCTK_V3 | V3 | VCTK | No |
| Universal_v1 | V1 | Universal | No |
Proporcionamos al modelo universal pesos discriminadores que pueden usarse como base para transferir el aprendizaje a otros conjuntos de datos.
.npy . Audio File : LJ001-0001.wav
Mel-Spectrogram File : LJ001-0001.npy
ft_dataset y copie los archivos de espectrograma MEL generados en ella. python train.py --fine_tuning True --config config_v1.json
test_files y copie archivos WAV en el directorio. python inference.py --checkpoint_file [generator checkpoint file path]
Los archivos WAV generados se guardan en generated_files de forma predeterminada.
Puede cambiar la ruta agregando la opción --output_dir .
test_mel_files y copie los archivos de espectrograma generados en el directorio. python inference_e2e.py --checkpoint_file [generator checkpoint file path]
Los archivos WAV generados se guardan en generated_files_from_mel de forma predeterminada.
Puede cambiar la ruta agregando la opción --output_dir .
Nos referimos a Wavlow, Melgan y Tacotron2 para implementar esto.