Automatic speech recognition toolkit on PaddlePaddle
Project description
PPASR流式与非流式语音识别
本项目将分三个阶段分支,分别是入门级 、进阶级 和最终级 分支,当前为最终级,持续维护版本。PPASR中文名称PaddlePaddle中文语音识别(PaddlePaddle Automatic Speech Recognition),是一款基于PaddlePaddle实现的语音识别框架,PPASR致力于简单,实用的语音识别项目。可部署在服务器,Nvidia Jetson设备,未来还计划支持Android等移动设备。
别忘了star
在线使用
本项目使用的环境:
- Anaconda 3
- Python 3.7
- PaddlePaddle 2.2.0
- Windows 10 or Ubuntu 18.04
更新记录
- 2022.08.04: 发布1.0版本,优化实时识别流程。
- 2022.07.12: 完成GUI界面的录音实时识别。
- 2022.06.14: 支持
deepspeech2_big
模型,适合WenetSpeech大数据集训练模型。 - 2022.01.16: 支持多种预处理方法。
- 2022.01.15: 支持英文语音识别。
- 2022.01.13: 支持给识别结果加标点符号。
- 2021.12.23: 支持pip安装。
- 2021.11.30: 全面修改为流式语音识别模型。
- 2021.11.09: 增加制作WenetSpeech数据集脚本和文档。
- 2021.10.10: 提供三个公开数据集的DeepSpeech2预训练模型下载。
- 2021.09.30: 在导出模型时,把归一化放在模型用,推理时直接在模型中完成数据归一化,不需要额外对数据归一化再输入到网络模型中。
- 2021.09.18: 初步完成基本程序。
视频讲解
模型下载
数据集 | 使用模型 | 预处理方式 | 语言 | 测试集错率(词错率) | 下载地址 |
---|---|---|---|---|---|
aishell (179小时) | deepspeech2 | linear | 中文 | 0.077042 | 点击下载 |
free st chinese mandarin corpus (109小时) | deepspeech2 | linear | 中文 | 0.137442 | 点击下载 |
thchs_30 (34小时) | deepspeech2 | linear | 中文 | 0.062654 | 点击下载 |
超大数据集(1600多小时真实数据)+(1300多小时合成数据) | deepspeech2 | linear | 中文 | 0.056835 | 点击下载 |
超大数据集(1600多小时真实数据)+(1300多小时合成数据) | deepspeech2_big | linear | 中文 | 0.05262 | |
Librispeech (960小时) | deepspeech2 | linear | 英文 | 0.10855 | 点击下载 |
说明:
- 这里字错率是使用
eval.py
程序并使用集束搜索解码ctc_beam_search
方法计算得到的。 - 中文解码参数为:
alpha=2.2,beta=4.3,beam_size=300,cutoff_prob=0.99,cutoff_top_n=40
。 - 英文解码参数为:
alpha=1.9,beta=0.3,beam_size=500,cutoff_prob=1.0,cutoff_top_n=40
。 - 除了aishell数据集按照数据集本身划分的训练数据和测试数据,其他的都是按照项目设置的固定比例划分训练数据和测试数据。
- 下载的压缩文件已经包含了
mean_std.npz
和vocabulary.txt
,需要把解压得到的全部文件复制到项目根目录下。
有问题欢迎提 issue 交流
文档教程
快速预测
python infer_path.py --wav_path=./dataset/test.wav
输出结果:
----------- Configuration Arguments -----------
alpha: 1.2
beam_size: 10
beta: 0.35
cutoff_prob: 1.0
cutoff_top_n: 40
decoding_method: ctc_greedy
enable_mkldnn: False
is_long_audio: False
lang_model_path: ./lm/zh_giga.no_cna_cmn.prune01244.klm
mean_std_path: ./dataset/mean_std.npz
model_dir: ./models/infer/
to_an: True
use_gpu: True
use_tensorrt: False
vocab_path: ./dataset/zh_vocab.txt
wav_path: ./dataset/test.wav
------------------------------------------------
消耗时间:132, 识别结果: 近几年不但我用书给女儿儿压岁也劝说亲朋不要给女儿压岁钱而改送压岁书, 得分: 94
- 长语音预测
python infer_path.py --wav_path=./dataset/test_vad.wav --is_long_audio=True
- Web部署
- GUI界面部署
相关项目
- 基于PaddlePaddle实现的声纹识别:VoiceprintRecognition-PaddlePaddle
- 基于PaddlePaddle静态图实现的语音识别:PaddlePaddle-DeepSpeech
- 基于Pytorch实现的语音识别:MASR
特别感谢
- 感谢 JetBrains开源社区 提供开发工具。
参考资料
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
ppasr-1.0.0-py3-none-any.whl
(69.3 kB
view hashes)