1.1 语音识别的定义与发展


1.1 语音识别的定义与发展

语言识别 Automatic Speech Recognition,ASR 的任务不是"听清",而是"听懂并转写":把一段连续的人类语音信号,转成一段符合语法的文字序列。它是语音技术中最老、最硬的一张牌,也是今天语音交互、字幕、助听、会议纪要背后的那台发动机。本节先给出可操作的定义,再用一条时间线把它六十多年的演变串起来。

学习目标

  1. 能给出语音识别的准确定义,并分清它与声纹识别、语音合成的边界。
  2. 能指出 ASR 输入是声学观测、输出是词序列,中间隔着一层语言先验。
  3. 能按时代说出孤立词识别、连续语音识别、深度端到端三个阶段的关键转折。
  4. 能解释为什么"口语识别"与"语音识别"不是一回事。

一、先给问题画个圈

把"语音识别"和它的近亲放到一起,边界立刻变清楚。声纹识别回答"谁在说",它关心说话人的身份;语音合成回答"把文字念出来",方向刚好反过来;而语音识别只回答一件事:"这段声音说的是哪几个字"。这三者常被混在一起,但它们连输入输出都不一样:ASR 让声音进、文字出;合成让文字进、声音出;声纹让声音进、身份出。

值得多提一句的是"口语理解(Spoken Language Understanding)"和 ASR 的关系。ASR 的标准产出只是文字本身,并不负责回答"这台咖啡机能不能退货"。真正把"识别出的话"再拧出"用户意图"的,是下游的口语理解模块。这个边界没分清,很多工程师会把"识别错"误当成"理解错",调试方向就歪了。

二、一句话里的两层难题

一段语音"请帮我订明天的机票",从物理到文字要跨两道墙。第一道墙是声学墙:同样一句话,有人说快有人说慢,有人带口音有人含着糖,背景有空调声也有地铁声,同一句话的波形天差地别。第二道墙是语言墙:声音本身几乎无法区分同音字,"订票"和"定票"在波形上可能就是同一个音,"请帮我订票"和"请帮我订去北京的票"之间的合法性差异,只有靠语言规律才知道。

ASR 之所以难,正在于它同时要翻这两道墙。稳固的做法不是让一个模型硬闯,而是把它拆成两个部件各翻一堵:声学模型对付声学墙,语言模型对付语言墙,第四、五章再讨论两者在解码处如何配合。

上图把"一句话里的两层难题"画成了两道墙。声学模型先压缩出候选,语言模型再在候选里挑出最像真话的一句。

三、一条时间线:这问题是如何长大的

孤立词识别时代是 ASR 的童年。系统词表只有几十到几百个词,每个词预存一个模板,识别时把新声音和每个模板比对,取最像的。它听不出"字与字怎么连",只认"整块整块的声音",于是对付不了自然流利的连续语音。这个阶段模型朴素,但把"模式比对"的种子种了下来。

连续语音识别时代,统计方法接管了战场。上世纪八十年代起,隐马尔可夫模型 HMM 与高斯混合模型 GMM 的组合成为主流,因为它终于能建模"字和字之间会怎么自然过渡"。再到九十年代,训练语料扩大,连续语音识别从实验室真正走向了电话语音、听写等产品。这一阶段的特点是:不再背模板,而是用统计概率给"这句语音该是这些字"打分。

深度端到端时代是最近十几年。神经网络先是替换掉 GMM 做发射概率(DNN-HMM),随后连接时序分类 CTC、注意力机制 Attention、以及序列到序列结构直接把"声学特征"映射到"文字序列",把中间的音素、词典、状态一层层省掉。模型变复杂了,但思路反而更接近"整句整句地认"。

三个阶段对到一张表,各自的问题、招牌、软肋都清楚了:

时代 建模对象 招牌手法 最吃不消的事
孤立词 整词模板 模板比对 连读、流利语音
统计连续 音素状态时序 HMM+GMM 打分 语料少时撑不起
深度端到端 声学帧到字符映射 CTC / Attention 数据与算力胃口大

这张表值得反复回看:它把"谁更强"的争论,拉回到"它在对什么建模、代价是什么"的理性坐标上。

四、这三步转折背后的共同主线

把时间线收拢成一句话:每一步转折,都是在回答"我们究竟要对哪个对象建模"。孤立词时代对"整词模板"建模,连续语音时代对"音素状态的时序"建模,端到端时代对"声学帧到字符的映射"建模。对象越抽象、越接近语言本身,系统能处理的语音就越自然、越多样,但代价是对数据和算力的胃口也越大。理解这条主线,就不会被"谁吊打谁"的报道带偏,而会问:它建模的对象变了吗?数据够不够?

五、拿一句真实的话把边界跑通

光背定义,不如让一句真实的命令同时过四种机器,边界一下就亮。设有人说"小度,把客厅的灯开到最亮"。语音识别给出的是文字"把客厅的灯开到最亮",它不理会话里的命令语气,也不去执行开灯;口语理解再从这句文字里拧出意图是"开灯"、槽位是"客厅灯、最亮";语音合成则把目标文字念出声;声纹识别只回答"这句是谁说的"——哪怕说的内容完全一样,四台机器盯着同一段音频,问的却是四个不同的问题。把这组对照写进脑子里,排错时就不会把"理解错了"赖到"识别错了"头上,那是两层完全不同的账。

再补一句现实里很常见的错觉:有人觉得只要听写足够准,系统就当得起"听懂"二字。可记住,ASR 的合同条款里只写了"转成文字",没写"理解意思"。同样是"回上海"三个字,在订票语境里是目的地,在请假语境里是去向,文字本身分辨不出,要靠下游意图模块或读上下文。正因如此,判断一套 ASR 有没有达标,永远要用"这一段话说出来的字跟参考文本对不对得上"来度量,而不是问它"懂没懂你"。这个度量习惯先立起来,后面第 5 章讲 WER、CER 时才有落点。

本节要点回顾

  • 定义:ASR 把一段语音信号转成文字序列,声音进、文字出。
  • 边界:语音识别、声纹识别、语音合成、口语理解四件事各有各的问题域。
  • 两层难题:一堵声学墙(声音千差万别)、一堵语言墙(同音字靠语言规律裁决)。
  • 本品拆法:声学模型翻声学墙、语言模型翻语言墙,本册第 2、3 章各讲一边。
  • 三大阶段:孤立词识别、统计连续语音识别、深度端到端。
  • 共通主线:每次进步都在追问"对哪个对象建模",对象越接近语言越强,也越吃数据。

下一步,我们把"一句话里两层难题"落成一张机器能跑的流水架构图。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U