书籍详情
语音识别:原理与应用(第2版)
作者:洪青阳
出版社:电子工业出版社
出版时间:2023-01-01
ISBN:9787121446337
定价:¥138.00
购买这本书可以去
内容简介
本书系统地介绍了语音识别的原理与应用。全书共15章,原理部分涵盖声学特征、隐马尔可夫模型(HMM)、高斯混合模型(GMM)、深度神经网络(DNN)、语言模型和加权有限状态转换器(WFST),重点描述了GMM-HMM、DNN-HMM和端到端(E2E)三种语音识别框架;应用部分包含Kaldi、ESPnet、WeNet和工业应用实践介绍,内容主要来自工程经验,极具实用性。本书可以作为普通高等学校人工智能、计算机科学与技术、电子信息工程、自动化等专业的本科生及研究生的教材,也适合作为从事智能语音系统的科研人员和工程技术人员的参考书。
作者简介
洪青阳,厦门大学副教授,天聪智能创始人,主要研究方向是语音识别、声纹识别,先后主持国家自然科学基金两三项,科技部创新基金两项。牵头组建厦门大学智能语音实验室,带领xmuspeechXMUSPEECH团队连续两届获东方语种识别(OLR)竞赛第一名,成功研发国内第一套闽南语合成系统。具有丰富的工业界研发经验,与华为、云从、掌数科技、鼎桥等知名企业合作,承担过大量的智能语音项目,核心技术应用到华为智能手机和全国十五几个省市的司法/社保/证券/电力系统。长期从事本科生、研究生的语音识别教学工作,从最早的动态时间规整(DTW)、隐马尔可夫模型(HMM)到最新的端到端(E2E)语音识别框架,与时俱进更新教学内容,积累了丰富的教学经验。 李琳,厦门大学副教授,博士生导师,主要研究方向为语音信号处理、声纹识别、智能系统设计,主持国家自然科学基金一项,负责国家科技部重点研发计划项目子课题一项、省级科研项目一项,作为第一合作者参与国家自然基金两项,曾获福建省科技进步奖二等奖、福建省教学成果奖二等奖、厦门市科技进步奖一等奖。参与指导XMUSPEECHxmuspeech团队连续两届获东方语种识别竞赛第一名。国际IEEE学会会员,CCF高级会员,NCMMSC常设机构委员会委员,CCF语音对话与听觉专业组委员会委员,NCMMSC常设机构委员会委员。
目录
第1章 语音识别概论 1
1.1 语音的产生和感知 1
1.2 语音识别过程 4
1.3 语音识别发展历史 8
1.4 国内语音识别现状 15
1.5 语音识别建模方法 18
1.5.1 DTW 19
1.5.2 GMM-HMM 19
1.5.3 DNN-HMM 20
1.5.4 E2E模型 22
1.6 语音识别开源工具 22
1.7 常用语音识别数据库 23
1.8 语音识别评价指标 24
1.9 参考资料 25
第2章 语音信号基础 28
2.1 声波的特性 28
2.2 声音的接收装置 29
2.2.1 麦克风的性能指标 30
2.2.2 麦克风阵列 31
2.3 声音的采样 32
2.4 声音的量化 33
2.5 语音的编码 35
2.6 WAV文件格式 39
2.7 WAV文件分析 40
2.8 本章小结 43
思考练习题 43
第3章 语音特征提取 44
3.1 预处理 44
3.2 短时傅里叶变换 48
3.3 听觉特性 51
3.4 线性预测 54
3.5 倒谱分析 55
3.6 常用的声学特征 56
3.6.1 语谱图 57
3.6.2 FBank 58
3.6.3 MFCC 59
3.6.4 PLP 60
3.7 本章小结 62
思考练习题 63
第4章 HMM 64
4.1 HMM的基本概念 66
4.1.1 马尔可夫链 67
4.1.2 双重随机过程 68
4.1.3 HMM的定义 69
4.2 HMM的三个基本问题 70
4.2.1 模型评估问题 71
4.2.2 最佳路径问题 74
4.2.3 模型训练问题 76
4.3 本章小结 78
4.4 参考资料 79
思考练习题 79
第5章 GMM-HMM 80
5.1 概率统计 81
5.2 高斯分布 82
5.3 GMM 85
5.3.1 初始化 86
5.3.2 重估计 87
5.4 GMM与HMM的结合 88
5.5 GMM-HMM的训练 94
5.6 模型自适应 96
5.6.1 MAP 96
5.6.2 MLLR 97
5.6.3 fMLLR 97
5.6.4 SAT 98
5.7 本章小结 98
5.8 参考资料 98
思考练习题 99
第6章 基于HMM的语音识别 100
6.1 建模单元 100
6.2 发音过程与HMM状态 103
6.3 串接HMM 104
6.4 固定语法的识别 108
6.5 随机语法的识别 113
6.6 音素的上下文建模 119
6.6.1 协同发音 120
6.6.2 上下文建模 121
6.6.3 决策树 122
6.6.4 问题集 123
6.6.5 三音子模型的训练 128
6.7 本章小结 129
思考练习题 130
第7章 DNN-HMM 131
7.1 深度学习 131
7.2 DNN 132
7.2.1 激活函数 133
7.2.2 损失函数 135
7.2.3 梯度下降算法 136
7.3 DNN与HMM的结合 138
7.4 不同的DNN结构 142
7.4.1 CNN 143
7.4.2 LSTM 147
7.4.3 GRU 147
7.4.4 TDNN 148
7.4.5 TDNN-F 151
7.5 本章小结 154
7.6 参考资料 155
思考练习题 155
第8章 语言模型 156
8.1 n-gram模型 158
8.2 评价指标——困惑度 162
8.3 平滑技术 163
8.3.1 Good-Turing折扣法 163
8.3.2 Witten-Bell折扣法 165
8.3.3 Katz回退法 166
8.3.4 Jelinek-Mercer插值法 169
8.3.5 Kneser-Ney插值法 170
8.4 语言模型的训练 172
8.5 神经网络语言模型 175
8.6 本章小结 180
8.7 参考资料 180
思考练习题 181
第9章 WFST解码器 183
9.1 基于动态网络的Viterbi解码 184
9.2 WFST理论 189
9.3 HCLG构建 193
9.3.1 H的构建 194
9.3.2 C的构建 195
9.3.3 L的构建 196
9.3.4 G的构建 197
9.3.5 HCLG合并 200
9.4 WFST的Viterbi解码 202
9.4.1 Token的定义 202
9.4.2 Viterbi算法 203
9.5 Lattice解码 210
9.5.1 主要数据结构 211
9.5.2 令牌传播过程 212
9.5.3 剪枝策略 215
9.5.4 Lattice 216
9.6 本章小结 218
9.7 参考资料 218
思考练习题 218
第10章 序列区分性训练 219
10.1 区分性准则 220
10.1.1 MMI 220
10.1.2 BMMI 221
10.1.3 MPE/sMBR 221
10.2 MMI求导过程 222
10.3 Lattice-based MMI 224
10.4 Lattice-free MMI 226
10.5 Kaldi Chain模型 228
10.6 本章小结 230
10.7 参考资料 230
思考练习题 231
第11章 端到端语音识别 232
11.1 CTC 233
11.1.1 损失函数 234
11.1.2 前向算法 238
11.1.3 后向算法 241
11.1.4 求导过程 242
11.1.5 CTC解码 244
11.2 RNN-T 247
11.3 基于Attention的Encoder-Decoder模型 250
11.4 Hybrid CTC/Attention 253
11.5 Transformer 255
11.6 Conformer 258
11.7 本章小结 259
11.8 参考资料 259
思考练习题 261
第12章 Kaldi实践 262
12.1 下载与安装Kaldi 263
12.1.1 获取源代码 263
12.1.2 编译 264
12.2 创建和配置基本的工程目录 265
12.3 aishell语音识别工程 266
12.3.1 数据集映射目录准备 267
12.3.2 词典准备和lang目录生成 269
12.3.3 语言模型训练 271
12.3.4 声学特征提取与倒谱均值归一化 273
12.3.5 声学模型训练与强制对齐 275
12.3.6 解码测试与指标计算 277
12.4 本章小结 279
第13章 ESPnet实践 280
13.1 数据准备 280
13.1.1 映射文件准备 280
13.1.2 特征提取 281
13.1.3 数据扩增 282
13.1.4 词典生成 282
13.1.5 数据打包 283
13.2 ESPnet配置文件 284
13.3 语言模型训练 286
13.4 声学模型训练 287
13.4.1 声学模型训练脚本 287
13.4.2 CTC声学模型训练 288
13.4.3 Attention声学模型训练 289
13.4.4 RNN-T模型训练 290
13.4.5 Transformer模型训练 292
13.5 语音识别解码 293
13.6 ESPnet训练解码可视化 294
13.6.1 ESPnet训练参数可视化 294
13.6.2 ESPnet中的Attention可视化 295
13.6.3 ESPnet解码结果可视化 296
13.7 ESPnet2 297
13.7.1 ESPnet2与ESPnet 297
13.7.2 数据准备 298
13.7.3 配置文件 299
13.7.4 模型训练 300
13.7.5 训练日志与可视化 303
13.7.6 性能对比 304
13.8 本章小结 305
13.9 参考资料 305
第14章 WeNet实践 306
14.1 数据准备 306
14.1.1 映射文件准备 306
14.1.2 CMVN计算 307
14.1.3 词典生成 307
14.1.4 数据打包 307
14.2 WeNet配置文件 308
14.3 声学模型训练 309
14.3.1 声学模型训练脚本 309
14.3.2 Transformer模型训练 310
14.3.3 Conformer模型训练 313
14.3.4 Unified Conformer模型训练 314
14.3.5 U2 Conformer模型训练 315
14.4 Python环境解码 315
14.5 WeNet 模型部署 317
14.5.1 模型导出 317
14.5.2 语言模型训练 317
14.5.3 结合语言模型的解码 318
14.6 WeNet 解码结果可视化 318
14.7 本章小结 319
14.8 参考文献 319
第15章 工业应用实践 320
15.1 应用场景 321
15.2 引擎优化 323
15.2.1 Kaldi方案 323
15.2.2 WeNet方案 327
15.3 工程部署 330
15.3.1 SDK封装 330
15.3.2 语音云平台 338
15.3.3 Kaldi嵌入式移植 342
15.3.4 WeNet端侧部署 344
15.4 本章小结
1.1 语音的产生和感知 1
1.2 语音识别过程 4
1.3 语音识别发展历史 8
1.4 国内语音识别现状 15
1.5 语音识别建模方法 18
1.5.1 DTW 19
1.5.2 GMM-HMM 19
1.5.3 DNN-HMM 20
1.5.4 E2E模型 22
1.6 语音识别开源工具 22
1.7 常用语音识别数据库 23
1.8 语音识别评价指标 24
1.9 参考资料 25
第2章 语音信号基础 28
2.1 声波的特性 28
2.2 声音的接收装置 29
2.2.1 麦克风的性能指标 30
2.2.2 麦克风阵列 31
2.3 声音的采样 32
2.4 声音的量化 33
2.5 语音的编码 35
2.6 WAV文件格式 39
2.7 WAV文件分析 40
2.8 本章小结 43
思考练习题 43
第3章 语音特征提取 44
3.1 预处理 44
3.2 短时傅里叶变换 48
3.3 听觉特性 51
3.4 线性预测 54
3.5 倒谱分析 55
3.6 常用的声学特征 56
3.6.1 语谱图 57
3.6.2 FBank 58
3.6.3 MFCC 59
3.6.4 PLP 60
3.7 本章小结 62
思考练习题 63
第4章 HMM 64
4.1 HMM的基本概念 66
4.1.1 马尔可夫链 67
4.1.2 双重随机过程 68
4.1.3 HMM的定义 69
4.2 HMM的三个基本问题 70
4.2.1 模型评估问题 71
4.2.2 最佳路径问题 74
4.2.3 模型训练问题 76
4.3 本章小结 78
4.4 参考资料 79
思考练习题 79
第5章 GMM-HMM 80
5.1 概率统计 81
5.2 高斯分布 82
5.3 GMM 85
5.3.1 初始化 86
5.3.2 重估计 87
5.4 GMM与HMM的结合 88
5.5 GMM-HMM的训练 94
5.6 模型自适应 96
5.6.1 MAP 96
5.6.2 MLLR 97
5.6.3 fMLLR 97
5.6.4 SAT 98
5.7 本章小结 98
5.8 参考资料 98
思考练习题 99
第6章 基于HMM的语音识别 100
6.1 建模单元 100
6.2 发音过程与HMM状态 103
6.3 串接HMM 104
6.4 固定语法的识别 108
6.5 随机语法的识别 113
6.6 音素的上下文建模 119
6.6.1 协同发音 120
6.6.2 上下文建模 121
6.6.3 决策树 122
6.6.4 问题集 123
6.6.5 三音子模型的训练 128
6.7 本章小结 129
思考练习题 130
第7章 DNN-HMM 131
7.1 深度学习 131
7.2 DNN 132
7.2.1 激活函数 133
7.2.2 损失函数 135
7.2.3 梯度下降算法 136
7.3 DNN与HMM的结合 138
7.4 不同的DNN结构 142
7.4.1 CNN 143
7.4.2 LSTM 147
7.4.3 GRU 147
7.4.4 TDNN 148
7.4.5 TDNN-F 151
7.5 本章小结 154
7.6 参考资料 155
思考练习题 155
第8章 语言模型 156
8.1 n-gram模型 158
8.2 评价指标——困惑度 162
8.3 平滑技术 163
8.3.1 Good-Turing折扣法 163
8.3.2 Witten-Bell折扣法 165
8.3.3 Katz回退法 166
8.3.4 Jelinek-Mercer插值法 169
8.3.5 Kneser-Ney插值法 170
8.4 语言模型的训练 172
8.5 神经网络语言模型 175
8.6 本章小结 180
8.7 参考资料 180
思考练习题 181
第9章 WFST解码器 183
9.1 基于动态网络的Viterbi解码 184
9.2 WFST理论 189
9.3 HCLG构建 193
9.3.1 H的构建 194
9.3.2 C的构建 195
9.3.3 L的构建 196
9.3.4 G的构建 197
9.3.5 HCLG合并 200
9.4 WFST的Viterbi解码 202
9.4.1 Token的定义 202
9.4.2 Viterbi算法 203
9.5 Lattice解码 210
9.5.1 主要数据结构 211
9.5.2 令牌传播过程 212
9.5.3 剪枝策略 215
9.5.4 Lattice 216
9.6 本章小结 218
9.7 参考资料 218
思考练习题 218
第10章 序列区分性训练 219
10.1 区分性准则 220
10.1.1 MMI 220
10.1.2 BMMI 221
10.1.3 MPE/sMBR 221
10.2 MMI求导过程 222
10.3 Lattice-based MMI 224
10.4 Lattice-free MMI 226
10.5 Kaldi Chain模型 228
10.6 本章小结 230
10.7 参考资料 230
思考练习题 231
第11章 端到端语音识别 232
11.1 CTC 233
11.1.1 损失函数 234
11.1.2 前向算法 238
11.1.3 后向算法 241
11.1.4 求导过程 242
11.1.5 CTC解码 244
11.2 RNN-T 247
11.3 基于Attention的Encoder-Decoder模型 250
11.4 Hybrid CTC/Attention 253
11.5 Transformer 255
11.6 Conformer 258
11.7 本章小结 259
11.8 参考资料 259
思考练习题 261
第12章 Kaldi实践 262
12.1 下载与安装Kaldi 263
12.1.1 获取源代码 263
12.1.2 编译 264
12.2 创建和配置基本的工程目录 265
12.3 aishell语音识别工程 266
12.3.1 数据集映射目录准备 267
12.3.2 词典准备和lang目录生成 269
12.3.3 语言模型训练 271
12.3.4 声学特征提取与倒谱均值归一化 273
12.3.5 声学模型训练与强制对齐 275
12.3.6 解码测试与指标计算 277
12.4 本章小结 279
第13章 ESPnet实践 280
13.1 数据准备 280
13.1.1 映射文件准备 280
13.1.2 特征提取 281
13.1.3 数据扩增 282
13.1.4 词典生成 282
13.1.5 数据打包 283
13.2 ESPnet配置文件 284
13.3 语言模型训练 286
13.4 声学模型训练 287
13.4.1 声学模型训练脚本 287
13.4.2 CTC声学模型训练 288
13.4.3 Attention声学模型训练 289
13.4.4 RNN-T模型训练 290
13.4.5 Transformer模型训练 292
13.5 语音识别解码 293
13.6 ESPnet训练解码可视化 294
13.6.1 ESPnet训练参数可视化 294
13.6.2 ESPnet中的Attention可视化 295
13.6.3 ESPnet解码结果可视化 296
13.7 ESPnet2 297
13.7.1 ESPnet2与ESPnet 297
13.7.2 数据准备 298
13.7.3 配置文件 299
13.7.4 模型训练 300
13.7.5 训练日志与可视化 303
13.7.6 性能对比 304
13.8 本章小结 305
13.9 参考资料 305
第14章 WeNet实践 306
14.1 数据准备 306
14.1.1 映射文件准备 306
14.1.2 CMVN计算 307
14.1.3 词典生成 307
14.1.4 数据打包 307
14.2 WeNet配置文件 308
14.3 声学模型训练 309
14.3.1 声学模型训练脚本 309
14.3.2 Transformer模型训练 310
14.3.3 Conformer模型训练 313
14.3.4 Unified Conformer模型训练 314
14.3.5 U2 Conformer模型训练 315
14.4 Python环境解码 315
14.5 WeNet 模型部署 317
14.5.1 模型导出 317
14.5.2 语言模型训练 317
14.5.3 结合语言模型的解码 318
14.6 WeNet 解码结果可视化 318
14.7 本章小结 319
14.8 参考文献 319
第15章 工业应用实践 320
15.1 应用场景 321
15.2 引擎优化 323
15.2.1 Kaldi方案 323
15.2.2 WeNet方案 327
15.3 工程部署 330
15.3.1 SDK封装 330
15.3.2 语音云平台 338
15.3.3 Kaldi嵌入式移植 342
15.3.4 WeNet端侧部署 344
15.4 本章小结
猜您喜欢