Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
models
提交
c29f3343
M
models
项目概览
PaddlePaddle
/
models
大约 1 年 前同步成功
通知
222
Star
6828
Fork
2962
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
602
列表
看板
标记
里程碑
合并请求
255
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
models
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
602
Issue
602
列表
看板
标记
里程碑
合并请求
255
合并请求
255
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c29f3343
编写于
6月 25, 2018
作者:
Y
Yibing Liu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Upload learning curves for DeepASR doc
上级
696aa339
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
108 addition
and
19 deletion
+108
-19
fluid/DeepASR/README_cn.md
fluid/DeepASR/README_cn.md
+108
-19
fluid/DeepASR/images/learning_curve.png
fluid/DeepASR/images/learning_curve.png
+0
-0
未找到文件。
fluid/DeepASR/README_cn.md
浏览文件 @
c29f3343
DeepASR (Deep Automic Speech Recognition) 是一个基于PaddlePaddle FLuid与kaldi的语音识别系统。其利用PaddlePaddle Fluid完成声学模型的配置和训练,集成kaldi的解码器完,方便已对kaldi的较为熟悉的用户实现声学模型的快速、大规模训练,并利用kaldi完成复杂的解码过程
。
运行本目录下的程序示例需要使用 PaddlePaddle v0.14及以上版本。如果您的 PaddlePaddle 安装版本低于此要求,请按照
[
安装文档
](
http://www.paddlepaddle.org/docs/develop/documentation/zh/build_and_install/pip_install_cn.html
)
中的说明更新 PaddlePaddle 安装版本
。
###目录
---
DeepASR (Deep Automatic Speech Recognition) 是一个基于PaddlePaddle FLuid与kaldi的语音识别系统。其利用Fluid框架完成声学模型的配置和训练,并集成kaldi的解码器。旨在方便已对kaldi的较为熟悉的用户实现语音识别中声学模型的快速、大规模训练,并利用kaldi完成复杂的语音数据预处理和最终的解码过程。
### 目录
-
[
安装
](
#installation
)
-
[
数据预处理
](
#data-reprocessing
)
-
[
模型训练
](
#training
)
-
[
训练过程性能分析
](
#perf-profiling
)
-
[
预测和解码
](
#infer-decoding
)
-
[
Aishell示例
](
#aishell-example
)
-
[
如何贡献更多的实例
](
#how-to-contrib
)
### 安装
#### PaddlePaddle
运行DeepASR需要PadddlePaddle Fluid v0.13.0或以上的版本。如果你的运行环境中的PaddlePaddle低于此版本,请根据
[
安装文档
](
http://www.paddlepaddle.org/docs/develop/documentation/zh/build_and_install/pip_install_cn.html
)
中的说明来更新PaddlePaddle。
####kaldi
DeepASR所用的解码器依赖于
[
kaldi
](
https://github.com/kaldi-asr/kaldi
)
, 按其中的命令安装好kaldi后设置环境变量:
#### kaldi
DeepASR所用的解码器依赖于
[
kaldi
](
https://github.com/kaldi-asr/kaldi
)
环境, 按其中的命令安装好kaldi后设置环境变量:
```
shell
export
KALDI_ROOT
=
<kaldi的安装路径>
```
####解码器的安装
#### 解码器的安装
进入解码器源码所在的目录
```
shell
cd
models/fluid/DeepASR/decoder
```
运行安装脚本
```
shell
sh setup.sh
```
即完成解码器的编译和安装
### 数据预处理
### 声学模型的训练
可选择在CPU或GPU模式下进行声学模型的训练,例如在GPU模式下的训练
```
shell
CUDA_VISIBLE_DEVICES
=
0,1,2,3 python
-u
train.py
\
--train_feature_lst
train_feature.lst
\
--train_label_lst
train_label.lst
\
--val_feature_lst
val_feature.lst
\
--val_label_lst
val_label.lst
\
--mean_var
global_mean_var
\
--parallel
```
实际训练过程中要正确指定建模单元大小、学习率等重要参数。关于这些参数的说明,请运行
```
shell
python train.py
--help
```
获取更多信息。
### 训练过程性能分析
获取每个op的执行时间
```
shell
git clone https://github.com/PaddlePaddle/models.git
cd
models/fluid/DeepASR/decoder
sh setup.sh
CUDA_VISIBLE_DEVICES
=
0 python
-u
tools/profile.py
\
--train_feature_lst
train_feature.lst
\
--train_label_lst
train_label.lst
\
--val_feature_lst
val_feature.lst
\
--val_label_lst
val_label.lst
\
--mean_var
global_mean_var
```
### 预测和解码
```
CUDA_VISIBLE_DEVICES=0,1,2,3 python -u infer_by_ckpt.py \
--batch_size 96 \
--checkpoint deep_asr.pass_1.checkpoint \
--infer_feature_lst test_feature.lst \
--infer_label_lst test_label.lst \
--mean_var global_mean_var \
--parallel
```
### Aishell 实例
本小节以Aishell数据为例,展示如何完成从数据预处理到解码输出。
[
Aishell数据集
](
http://www.aishelltech.com/kysjcp
)
```
cd examples/aishell
```
提供已经预处理好的数据集供下载
```
sh prepare_data.sh
```
下载数据完成后,执行训练
```
sh train.sh
```
训练过程中损失和精度的变化曲线如下图所示
<p
align=
"center"
>
<img
src=
"images/learning_curve.png"
height=
480
width=
640
hspace=
'10'
/>
<br
/>
Aishell数据集上训练声学模型的学习曲线
</p>
执行预测
```
sh infer_by_ckpt.sh
```
评估误差
```
sh score_cer.sh
```
完成解码器的编译和安装
###模型训练
###预测和解码
利用经过20轮左右训练的声学模型,可以在Aishell的测试集上得到CER约10%的识别结果。
###Aishell示例
###如何贡献更多的实例
### 如何贡献更多的实例
欢迎贡献更多的实例
fluid/DeepASR/images/learning_curve.png
0 → 100644
浏览文件 @
c29f3343
41.7 KB
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录