使用Quartznet和Pytorch实现语音文字转换(speech-to-text)

使用QuartzNet和Pytorch实现语音文字转换(speech-to-text)

QuartzNet介绍

QuartzNet是Nvidia推出的一个轻量级的端到端语音识别模型,即使在5x15版本上仅包含18.9M个参数,在LibriSpeech-dev其他数据集上也能有超过95%的准确率。因此,凭借高吞吐量和高精度,QuartzNet可以提供帧级语音到文本推理,相比于大多数GB级别的ASR模型,QuartzNet适用于存储和计算能力有限的边缘设备上使用。

QuratzNet预训练模型

Nvidia提供了QuartzNet15x5的预训练NeMo模型,在 8xV100 GPU上以Apex/Amp O1优化级别进行训练。训练使用了LibriSpeech和Mozilla的EN Common Voice进行训练。在不使用其它语言模型的情况下,仅使用贪婪解码器,该模型在LibriSpeech 测试的WER(word error rate)为4.19%,在其他测试中的WER为 10.98%。

预训练模型使用

为了更好的将QuartzNet15x5模型应用在多种类、跨平台的应用上,我们将模型迁移到了Pytorch上,并将原来的代码尽可能解耦,以方便不同领域简单能够复用。以下为Demo的使用教程:

  1. 将代码克隆至本地:

    git clone https://github.com/youjunl/Quartznet-pytorch.git

  2. 进入到代码文件夹:

    cd Quartznet-pytorch

  3. 安装Python依赖:

    pip install -r requirements.txt

  4. 运行Demo,这里我们将audio文件夹下的一段demo音频转化为文本:
    python try_model.py

  5. 输出结果:
    as i approached the city i heard bells ringing and a little later i found the street a stir with throngs of well dressed people in family groups winding their way thither and thither

相关推荐
_一条咸鱼_1 小时前
Python 数据类型之可变与不可变类型详解(十)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 入门之基本运算符(六)
python·深度学习·面试
_一条咸鱼_1 小时前
Python 语法入门之基本数据类型(四)
人工智能·深度学习·面试
2201_754918411 小时前
卷积神经网络--手写数字识别
人工智能·神经网络·cnn
_一条咸鱼_1 小时前
Python 用户交互与格式化输出(五)
人工智能·深度学习·面试
_一条咸鱼_1 小时前
Python 流程控制之 for 循环(九)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 语法入门之流程控制 if 判断(七)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 流程控制之 while 循环(八)
人工智能·python·面试
_一条咸鱼_1 小时前
Python 垃圾回收机制 GC 深度解析(三)
人工智能·深度学习·面试
HtwHUAT2 小时前
实验四 Java图形界面与事件处理
开发语言·前端·python