猜你喜欢
语音识别:原理与应用(第2版)

语音识别:原理与应用(第2版)

书籍作者:洪青阳 ISBN:9787121446337
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:9337
创建日期:2023-05-26 发布日期:2023-05-26
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

本书系统地介绍了语音识别的原理与应用。全书共15章,原理部分涵盖声学特征、隐马尔可夫模型(HMM)、高斯混合模型(GMM)、深度神经网络(DNN)、语言模型和加权有限状态转换器(WFST),重点描述了GMM-HMM、DNN-HMM和端到端(E2E)三种语音识别框架;应用部分包含Kaldi、ESPnet、WeNet和工业应用实践介绍,内容主要来自工程经验,极具实用性。


作者简介

洪青阳,厦门大学副教授,天聪智能创始人,主要研究方向是语音识别、声纹识别,先后主持国家自然科学基金两三项,科技部创新基金两项。牵头组建厦门大学智能语音实验室,带领xmuspeechXMUSPEECH团队连续两届获东方语种识别(OLR)竞赛第one名,成功研发国内第一套闽南语合成系统。具有丰富的工业界研发经验,与华为、云从、掌数科技、鼎桥等知名企业合作,承担过大量的智能语音项目,核心技术应用到华为智能手机和全国十五几个省市的司法/社保/证券/电力系统。长期从事本科生、研究生的语音识别教学工作,从最早的动态时间规整(DTW)、隐马尔可夫模型(HMM)到最新的端到端(E2E)语音识别框架,与时俱进更新教学内容,积累了丰富的教学经验。



李琳,厦门大学副教授,博士生导师,主要研究方向为语音信号处理、声纹识别、智能系统设计,主持国家自然科学基金一项,负责国家科技部重点研发计划项目子课题一项、省级科研项目一项,作为第一合作者参与国家自然基金两项,曾获福建省科技进步奖二等奖、福建省教学成果奖二等奖、厦门市科技进步奖一等奖。参与指导XMUSPEECHxmuspeech团队连续两届获东方语种识别竞赛第one名。国际IEEE学会会员,CCF高级会员,NCMMSC常设机构委员会委员,CCF语音对话与听觉专业组委员会委员,NCMMSC常设机构委员会委员。




编辑推荐
适读人群 :本书可以作为普通高等学校人工智能、计算机科学与技术、电子信息工程、自动化等专业的本科生及研究生教材,也适合作为从事智能语音系统的科研和工程技术人员的参考用书。

√华语原创重磅升级版

√增补内容超20%

√配合大量彩色插图,兼顾基础理论、关键技术与技术前沿

√更易懂的表达,十多年高校教学经验,深知学习痛点

√更完善的工程项目,如Kaldi、ESPnet和WeNet等

√配套PPT、部分视频,以及课后作业答案


前言

本书围绕语音识别的原理和应用讲解,理论结合实际,采用大量插图,辅以实例,力求深入浅出,让读者能较快地理解语音识别的基础理论和关键技术。为了帮助读者动手操作,提高实战技能,本书最后还结合Kaldi、ESPnet和WeNet等开源工具,介绍了具体的工程实践方法。本书包含以下章节:


第1章 语音识别概论,介绍人类语音的产生和感知过程,语音识别的关键技术、发展历史等。

第2章 语音信号基础,介绍声音的采集和量化过程,以及编码和存储格式。

第3章 语音特征提取,介绍语音信号的频域分析、倒谱分析、声学特征提取过程等。

第4章 HMM,介绍双重随机过程,以及HMM的三大问题。

第5章 GMM-HMM,介绍高斯混合模型的定义和重估计公式,并结合例子讲解GMM如何与HMM结合,以及对应的具体参数形式。

第6章 基于HMM的语音识别,介绍单音子声学模型和Viterbi解码过程,以及音素的上下文建模,包括双音子和三音子模型。

第7章 DNN-HMM,介绍深度学习在语音识别中的应用,包括CNN、LSTM、TDNN等网络。

第8章 语言模型,介绍语言模型的训练过程及其在语音识别中的作用。

第9章 WFST 解码器,介绍动态和静态的解码网络,以及WFST、HCLG等关键技术。

第10章 序列区分性训练,介绍 MMI/BMMI、MPE/sMBR等准则,以及Lattice-free MMI训练方法。

第11章 端到端语音识别,介绍CTC、RNN-T、Attention和Transformer等端到端语音识别系统。

第12章 Kaldi实践,首先介绍Kaldi的下载与安装步骤,然后以aishell-1中文数据库为例,介绍如何训练和测试模型。

第13章 ESPnet实践,介绍使用ESPnet进行目前主流的端到端语音识别模型的训练和解码过程。

第14章 WeNet实践,介绍使用WeNet进行CTC/Attention模型的训练和解码过程。

第15章 工业应用实践,介绍如何封装语音识别动态库,如何调用和调优,以及嵌入式移植和端侧部署过程。


本书由洪青阳完成主要章节的编写,李琳负责第3章的编写,洪青阳和李琳对全书进行了审校。特别感谢赵淼、李松、张宁、夏仕鹏、刘凯、胡文轩、李涛、余洪涌对本书的贡献,赵淼、李松、胡文轩和李涛分别对Kaldi、ESPnet和WeNet的实践过程等内容做了深入细致的整理,他们的协助使得本书顺利完成。

感谢厦门大学智能语音实验室的童峰老师、许彬彬老师和同学们,为本书的创作提供了良好的学术氛围和精益求精的驱动力。

感谢语音学术和产业界的赵庆卫、王东、余洪涌、李明、张超、谢磊、张卫强、张鹏远等专家和学者,他们的指导和启发令本书增色不少。

感谢电子工业出版社的郑柳洁等老师的大力支持,她们认真细致的工作保证了本书的质量。


目录

第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 本章小结

产品特色