目录
语音识别的定义
语音识别的重要性
语音交互
语音识别的挑战性
语音识别的发展历史
语音识别的深度学习时代
现代语音识别框架
语料库与工具包
语音识别的定义
语音识别:Automatic Speech Recognition(ASR)或Speech to Text(STT),将语音转换为文本的任务。
语音识别主要解决以下问题:
- 将语音转换成文本。
- 解决机器“听清”问题。
- 处理声学和(部分)语言上的混淆。
- 解决共性问题:每个人的语音都能识别出正确的文本。
狭义上的语音识别不解决以下问题:
- 说话人识别。
- 副语言信息的分析与识别。
- 语言理解。
语音识别的常用评估标准:
- Accuracy(准确率)
- 音素错误率(Phone Error Rate)
- 词错误率(Word Error Rate,WER)
- 字错误率(Character Error Rate,CER)
- 句错误率(Sentence Error Rate,SER)
- Efficiency(效率)
- 实时率(Real-time Factor,RTF)
错误率计算实例:
Ref: | THE | CAT | IN | THE | HAT | ||
Hyp: | CAT | IS | ON | THE | GREEN | HAT | |
DEL | SUB | INS | INS |
该实例中,第一行为正确抄本,第二行为识别结果,第二列为一个删除错误,第四列为一个替换错误,第五列、第七列为插入错误,错误率:。
在错误率计算过程中,一般关注插入错误、替换错误和删除错误三种错误,实际计算过程中的错误率有可能大于100%。
语音识别系统常见分类:
- 说话人:特定人、非特定人
- 语种:单一语种、多语种
- 词汇量:大、中、小
- 设备:云侧、端侧
- 距离:近讲、远讲
语音识别的重要性
语音识别是极具挑战性的任务,被誉为“镶嵌在人工智能皇冠上的明珠”。
语音识别具有快、易、Hands-Free的优点。
文字转写是音频内容分析与理解的第一步。
语音识别是AIoT、只能服务的入口。
语音识别的技术与应用及其广泛,可满足自然人机交互和内容理解与生成的需求。
语音交互
语音交互中存在一个链条,叫Speech Chain,至少涉及两个人,具体如图所示。
涉及三个Level:
语音生成
Speech Production:大脑神经肌肉命令发音器官运动。
发音由声门的快速打开与关闭产生不同的声音。
- 声门震动快慢决定声音的基本频率。
- 口腔、鼻腔、舌头的位置、嘴型等决定声音的内容。
- 肺部压缩空气力量的大小决定音量。
浊音是由声带震动引起的,其波形具有明显周期性,人们可以感受到稳定的高音存在。
清音产生时声带不会震动,其波形类似白噪声,人们无法感受到稳定的高音存在。
音素(Phonemes)时一种语言中语音的“最小”单元。音素可以分为辅音(consonants)音素和元音(vowels)音素,不同的语言中音素的数量不完全相同。
音素的声学实现受到上下文的影响,一个音素往往会有不同的实现,这种现象叫做同位异音(Allophone)。
词\语素(morpheme):一种语言中最小的具有语义的结构单元。
共振峰(formant)指在声音的频谱中能量相对集中的一些区域。
- 共振峰不但是音质的决定因素,也反映了声道的物理特征。
- 共振峰是被声道特别放大的频带,不同元音会产生不同种类的放大或共振。
协同发音(Coarticulation),人的发音过程中,受类似惯性的影响,每一个发音都会受到前面发音和后面发音的影响,这种影响被称为协同发音。音素在声学上的实现和上下文是强相关的,所以在语音识别的建模中常常会建立上下文相关模型。
音素抄本(Phonetic Transcription):一段语音对应的音素列表。音素抄本可以带或不带边界,其中的时间信息可以有人工标注或自动对齐获得。音素抄本是非常重要的,可服务于语音识别的声学建模。
音节是一个更大颗粒度的单位,元音和辅音结合构成一个音节。
- 元音之前的辅音叫音节头或声母。
- 音节头之后的元音及随后的子音叫韵母。
- 韵母里的元音叫音节核。
- 随后的子音叫音节尾。
在中文中,一个汉字读音为一个带调音节,普通话约1300多个带调音节,如果去掉声调,即基础音节,普通话约400个基础音节。
语音感知
Speech Perception:人耳大脑。
人耳由外耳、中耳、内耳构成:
- 外耳:声源定位,对声音进行放大。
- 中耳:进行声阻抗变换,放大声压,保护内耳。
- 内耳:向神经发放信号转换,把声压刺激变成神经冲动。
语音感知的物理特性与人耳的听觉特性:
Phyisical Quantity物理量 | Perceptual Quantity感知量 |
Intensity声强 | Loundness响度 |
Fundamental Frequency基频 | Pitch音高或音调 |
Spectral Shape频谱形状 | Timbre音色或音品 |
Onset/offset time | Timing |
Phase difference in binaural hearing双耳听觉上的相位差 | Location定位 |
其中,Loundness响度、Pitch音高或音调和Timbre音色或音品为声音三要素(主观心理量)。
响度:人主观感受不同频率成分声音的物理量。
- 人耳对不同频率声音的响应是不平坦的。
- 闻阈:人耳刚好能听见的声音响度。
- 痛阈:声音使人耳疼痛时的响度。
音色:又称音品,由声音波形的谐波频谱和包络决定。
- 声音波形的基频产生的能听得最清楚的音称为基音,各次谐波的微小震动所产生的音称为泛音。
- 单一频率的音称为纯音,具有谐波的音称为复音。
- 每个基音都有固有的频率和不同响度的泛音。
- 声音波形各次谐波的比例和随时间的衰减大小决定了各种声源的音色特征。
音调:人耳对于频率的感知,是非线性的,近似对数函数。
音调和频率之间的近似关系:。
为物理频率,为音调,单位是美(Mel)。
掩蔽效应(Masking):一种心理声学现象,是由人耳对声音频率分辨机制决定的。是指一个较强声音的附近,相对较弱的声音使不易被人耳察觉,即被强音所掩蔽。
- 同时掩蔽:一个强纯音会掩蔽其附近频率同时发生的弱纯音。
- 异时掩蔽:在时间上相邻的声音之间也有掩蔽现象。
- 掩蔽阈值是时间、频率和声压级上的函数。
语音识别的挑战性
语音识别是一个非常具有挑战性的任务,在众多方面具有很强的可变性。如下表所示。
因素 | 可变性 |
规模 | 词表大小,复杂/困惑度,书面化或口语化? |
说话人 | 倾向于特定说话人?适应到某个(群)说话人的特性 |
声学环境 | 噪声,干扰人声,信道条件(麦克风、传输空间、空间声学) |
讲话风格 | 连续或孤立词?有计划有准备?即兴对话?大声或轻声细语? |
口音/方言 | 识别各种口音? |
语种 | 中文,英文,5000+语种,混杂等 |
说话人之内和之间的可变性,说话人之内由讲话方式、状态等可变性,说话人之间有口音、说话风格等可变性。
信道存在不同特性麦克风、不同采样率、传输编码等可变性。
环境存在距离衰减、噪声、混响、干扰人声等可变性。
此外还有更加具有挑战性的场景,以CHiME-5为例,该场景具有多说话人完全自由对话、实际家具声学场景、远讲、说话人移动、语音交叠等特点。
语音识别的发展历史
早期:1950-1960年代,该阶段处于语音识别的研究早期。研究人员提出了一些个别方法,引入了许多重要的思想和概念。受限于方法、计算能力、数据等因素,该阶段主要针对小词表语音识别进行研究,且缺乏大规模测试。
现代语音识别的诞生:1970-1980年代,这个阶段将语音识别做成了统计学习的任务,几乎忽略了所有有关于语音学和语言学的专家知识。这个阶段提出了许多语音识别的关键技术,如EM算法、N-gram等等。此阶段,语音识别开始尝试中大词表的系统。
平稳发展期:1990-2000年代,GMM-HMM框架成为语音识别的主导框架,声学建模开始考虑基于上下文相关的模型,语言模型使用n-gram从大量文本中统计概率关系,数据量逐步增大,任务复杂程度逐步增大。此外,判别式学习/区分性训练技术也推动了语音识别的进步。
在平稳发展期及平稳发展期之后的一段时间,技术一直在进步,但语音识别的准确率鲜有提升,一直到2006年,语音识别进入深度学习时代。
语音识别的深度学习时代
2006年,多伦多大学Geoffrey Hinton教授在Nature上发表论文,为神经网络提供了有效的预训练算法,标志着语音识别进入深度学习时代。
这个阶段,声学架构从GMM-HMM转变为DNN-HMM,语言模型也转变为ngram+NNLM。
在深度学习时代,语音识别错误率在众多Benchmark上取得新低,目前在IBM,Switchboard数据集上词错误率已达到5.0%,此外,语音系统开始逐步从混合系统(Hybrid)发展到端到端系统。
现代语音识别框架
统计模型:
如果是指声学特征向量(观测向量)的序列,表示一个单词序列,则最有可能的单词序列由以下公式计算而来:
应用贝叶斯定理推导:
其中,为声学模型,为语言模型。
现代的统计模型使用声学模型、语言模型、发音词典,通过给定的声学特征向量X,获取最有可能的词序列。
端到端系统:用一个神经网络直接讲输入声学特征向量X映射为词序列。
语料库与工具包
英文数据:
- TIMIT:音素识别,LDC版权
- WSJ:新闻播报,LDC版权
- Switchboard:电话对话,LDC版权
- Librispeech:有声读物,1000小时,开源(http://openslr.org/12/)
- AMI:会议,开源(http://openslr.org/16/)
- TED-LIUM:演讲,开源(http://openslr.org/19/)
- CHiME-4:平板远讲,需申请
- CHiME-5/6:聚会聊天,需申请
中文数据:
- THCHS-30,30小时,开源(http://openslr.org/18/)
- HKUST,150小时,电话对话,LDC版权
- AIShell-1,178小时,开源(http://openslr.org/33/)
- AIShell-2,1000小时,开源需申请(http://www.aishelltech.com/aishell_2)
- aidatatang_200zh,200小时,开源(http://openslr.org/62/)
- MAGICDATA,755小时,开源(http://openslr.org/68/)
工具包:
- HTK:http://htk.eng.cam.ac.uk/(C)
- Kaldi:http://kaldi-asr.org/(C++,Python)(目前使用最广泛的工具包)
- ESPNet:https://github.com/espnet/(Pytorch based)(主要针对端到端系统)
- Lingvo:https://github.com/tensorflow/lingvo.git(Tensorflow based)
另附:语音识别入门第一节:思维导图-深度学习文档类资源-CSDN下载文章来源:https://www.toymoban.com/news/detail-444097.html
如需转载敬请声明。文章来源地址https://www.toymoban.com/news/detail-444097.html
到了这里,关于语音识别入门第一节:语音识别概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!