| | | | |
FastPitch [1] 是一个具有音调控制和单个音素持续时间的完全并行变压器架构。此外,它还使用了一个无监督的语音文本对齐器[2]。有关完整的架构细节,请参见模型架构部分。
它还与NVIDIA Riva兼容,用于生产级服务器部署。
该模型可在NeMo工具包[3]中使用,并可用作用于其他数据集上的预训练检查点的推断或微调。
要训练、微调或操作该模型,您需要安装 NVIDIA NeMo 。我们建议在安装最新的PyTorch版本后再安装它。
pip install nemo_toolkit['all']
注意:此模型只生成声谱图,需要使用声码器将声谱图转换为声波。此示例中使用的是HiFiGAN。
# Load FastPitch from nemo.collections.tts.models import FastPitchModel spec_generator = FastPitchModel.from_pretrained("nvidia/tts_en_fastpitch") # Load vocoder from nemo.collections.tts.models import HifiGanModel model = HifiGanModel.from_pretrained(model_name="nvidia/tts_hifigan")
import soundfile as sf parsed = spec_generator.parse("You can type your sentence here to get nemo to produce speech.") spectrogram = spec_generator.generate_spectrogram(tokens=parsed) audio = model.convert_spectrogram_to_audio(spec=spectrogram)
# Save the audio to disk in a file called speech.wav sf.write("speech.wav", audio.to('cpu').detach().numpy()[0], 22050)
此模型接受文本批次。
此模型生成梅尔频谱图。
FastPitch是基于FastSpeech的完全并行文本到语音模型,以基频轮廓为条件。该模型在推断过程中预测基频轮廓。通过改变这些预测,生成的语音可以更富有表现力,更好地匹配话语的语义,并且最终更能吸引听众。FastPitch基于完全并行的Transformer架构,其典型话语的梅尔频谱图合成的实时因子远高于Tacotron2。它使用了一个无监督的语音文本对齐器。
NeMo工具包[3]用于训练模型进行1000个epochs。这些模型是使用 example script 和 base config 进行训练的。
该模型是在22050Hz的LJSpeech上进行训练的,并且已经在生成具有美式口音的女性英语声音上进行了测试。
目前没有可用的性能信息。
此检查点只适用于在22050Hz数据上进行训练的声码器。否则,生成的音频可能会听起来刺耳或有杂音。
为了获得最佳的实时准确性、延迟和吞吐量,将模型与 NVIDIA Riva 一起部署, NVIDIA Riva 是一种加速的语音AI SDK,可在本地、所有云、多云、混合云、边缘和嵌入式环境中部署。此外,Riva提供: