语音交互(Voice User Interface, VUI)技术其实离我们很近,我们日常使用的很多产品和应用,都离不开语音交互技术。
语音交互技术是人工智能技术的重要组成部分,通俗地说,就是用人类最自然的语言(开口说话)给机器下达指令,达成使用者目的的过程。
语音交互技术是基于语音输入的新一代交互模式,通过说话就可以得到反馈结果。
1)政策+市场(天时):国家政策的大力扶持,5G与V2X通信技术飞速发展。
2)载体(地利):数据驱动的智能化硬件的普及,多种智能服务的App应用。
3)模型(人和):深度学习算法提升模型识别准确度,中央处理器(CPU)+图形处理器(GPU)的并行计算加速模型迭代,语音数据库提供更丰富的训练样本。
(1)智能语音市场的主流企业 语音交互是非接触经济中一项重要的人工智能技术,是人机交互的入口,它将成为未来最主流的人机交互方式。如今,科大讯飞、亚马逊Alexa、谷歌、微软小娜、苹果Siri、小智、小米小爱同学、智能360和腾讯等各大企业都在积极布局语音交互技术,如图1-1所示。
图1-1 各大语音交互技术企业
(2)智能语音市场的发展现状 伴随着人工智能行业的快速发展,中国在智能语音这个细分市场的发展速度也将会持续增长,目前国内在智能语音市场的技术已经相对成熟。
目前,中国智能语音市场的份额主要由科大讯飞、百度以及苹果分割。
当下,几乎所有技术巨头都在为汽车提供智能驾驶解决方案。例如,苹果、谷歌、亚马逊、Nuance、阿里巴巴、百度和华为都为智能座舱创建了平台和操作系统。
(1)第一时期 20世纪90年代,诞生了第一个可行的、非特定的(每个人都可以对它说话)的语音识别系统——交互式语音应答(Interactive Voice Response, IVR)。此时通过电话拨号的方式进行语音的问答还存在很多的缺点。它的主要特点如下:
1)优点:擅长识别和播报长字符。
2)缺点:用户很少有机会暂停系统,系统占主动地位。
如订火车票,我们通过输入身份证号等,让系统进行身份与指令识别,系统也会播报各个站点如“1北京、2天津、3山东……”长语音让我们选择。回想一下那个过程,我们必须不断地与系统进行交互,如果中间出现错误,则只能挂断重来,因此整个交互过程容易让用户处在谨慎、局促的状态下。
(2)第二时期 当前我们所处的阶段就是第二时期。目前,移动端像Siri、Google这类集成了视觉和语音信息的App,以及Amazon Echo这类纯语音的设计产品,逐步发展并成为主流,而车机端也有了各大主机厂自身定制化的语音产品。随着语音识别技术、人工智能(AI)技术、互联网技术的发展,我们已经可以在驾驶场景和非驾驶场景中用语音处理很多事情,让用户在使用汽车的过程中更加快捷和高效地去处理一些任务,有利于驾驶安全以及提供更好的用户体验。此时的语音交互可以同时使用语音和屏幕交互,是一种多模态的交互设计。发展到这个阶段就有了多轮对话的可能性,但是如何对用户的语音进行理解就成为语音交互的技术瓶颈了。
(3)第三时期 随着人工智能的发展,语音识别和语义理解也相对成熟起来,语音交互在人工智能时代已经有了先发优势,正在被逐渐落地并且有望大规模应用。目前,语音交互已经加速在智能家居、手机、车载、智能穿戴、机器人等行业渗透和应用。
开车过程中,我们能做的事非常有限,就连打电话都很不方便。语音交互技术进入汽车领域,不仅可以解放驾驶员双手,方便驾驶,还能让驾驶员将注意力转回路面,提高安全性。
车载常用语音功能有接听电话、开关车窗、播放广播和音乐、设置目的地和路线导航,以及开闭空调、部分灯光、刮水器等等。
(1)语音交互的解析过程 语音交互解析过程(图1-2和图1-3)是在人发出语音指令后,系统经过解析、执行指令并反馈的过程。
图1-2 语音交互解析过程(1)
图1-3 语音交互解析过程(2)
(2)语音交互技术模块构成 在《统计自然语言处理》中有更细致和完整的人机对话系统组成结构,主要包括如下6个技术模块(图1-4)。
图1-4 人机对话系统组成结构
1)语音识别模块(Speech Recognizer)。实现用户输入语音到文字的识别转换,识别结果一般以得分最高的前 n ( n ≥1)个句子或词格(Word Lattice)形式输出(把用户说的语音转成文字)。
2)语言解析模块(Language Parser)。对语音识别结果进行分析理解,获得给定输入的内部表示(即把用户说的语言转换成机器理解的语言)。
3)问题求解模块(Problem Resolving)。依据语言解析器的分析结果进行问题的推理或查询,求解用户问题的答案(即解决用户问题的模块,比如调用的百度搜索)。
4)对话管理模块(Dialogue Management)。一个理想的对话管理器应该能够基于对话历史调度人机交互机制,辅助语言解析器对语音识别结果进行正确的理解,为问题求解提供帮助,并指导语言的生成过程。可以说,对话管理机制是人机对话系统的中心枢纽(能够记录历史对话数据,通过训练能够给到用户更好的回答)。
5)语言生成模块(Language Generator)。根据解析模块得到的内部表示,在对话管理机制的作用下生成自然语言句子(把回答的机器语言再转换成口语语言)。
6)语音合成模块(Speech Synthesizer)。将生成模块生成的句子转换成语音输出(把口语语言再转化成语音)。
(3)语音交互的基础技术链路 语音交互技术的基础技术流程有以下几个关键处理阶段:语音唤醒、语音识别(ASR/STT)、自然语言理解(NLU)、对话管理(DM)、自然语言生成(NLG)、语音合成(TTS)和命令反馈。其中,语音识别、自然语言理解和语音合成是语音交互技术的3个单点核心技术(图1-5)。
图1-5 语音交互技术的基础技术流程
1)语音唤醒:设备在节能休眠或者锁屏状态下,检测到用户设定的唤醒词,从休眠状态进入激活状态,并开始等待新的指令。
几乎很多带有语音交互功能的设备都需要语音唤醒技术作为人机交互的一个入口,如汽车、手机、可穿戴设备和智能家居等。不同的产品会有不同的唤醒词,如小鹏汽车的“你好,小P”和蔚来汽车的“嗨,NOMI”等,如图1-6和图1-7所示。当用户需要唤醒设备时,需要说出特定的唤醒词。大部分的唤醒词都是三四个音节,音节覆盖多,音节差异大,相对唤醒效果会比较稳定。
图1-6 小鹏汽车“你好,小P”
图1-7 蔚来汽车“嗨,NOMI”
语音唤醒的评判指标主要有4个,即召回率、虚警率、实时率和功耗(图1-8)。
图1-8 语音唤醒的评判指标
语音唤醒可以看作小型关键词检索(Key Word Spotting, KWS)。但是识别算法要运行在终端设备上,有处理器频率和内存大小的瓶颈(目前主流的语音识别方案中识别算法都运行在云端,通过深度学习来提高识别率)。
由于召回率/准确率特别重要,主流厂商不仅在设备端做一次确认,还会在云端做二次确认,缺点是实时率差了一些,如图1-9所示。
图1-9 语音唤醒的实现框图
2)语音识别(ASR):机器接收到用户语音后,首先通过语音识别将语音(Voice)转换为文本(Text),并且保留语速、音量、停顿等语音本身的特征信息。
语音识别技术主要包括特征提取、模式匹配以及模型训练算法3个方面,如图1-10所示。
图1-10 语音识别技术
语音识别的流程(图1-11),首先是声音的输入,这个声音需要经过一些预处理,比如端点检测、降噪、回声消除等,让处理过的声音信号能够更加真实地反映语音的状态;然后进行声音的特征提取,因为在整个语音中有很多的特征是语音识别并不关注的,所以我们只会把关注的语音特征提取出来,提取到关键特征后,就会进入真正的语音识别(或者称为模式匹配)过程。
图1-11 语音识别的流程
首先进行的是声学模型的匹配,它输入的是前面得到的语音特征,输出的是一个发声的信号,即声学模型能够把这些特征转化为发声信息,如图1-11中声学模型部分所示,可以看到它有点类似于拼音的音标。得到这样的发声信息后,再到语言模型,比如到中文的语言模型中去查询有哪个词或者字是最匹配这样的发声特征的。最后得到的识别结果就是“科大讯飞”。
语音识别的核心就是声学模型和语言模型模式匹配的过程如图1-12所示。
图1-12 声学模型和语言模型模式匹配的过程
①声学模型:给定某个音,计算输入语音匹配哪一个声母或者韵母的概率。
②语言模型:计算不同文本序列搭配的概率。
影响语音识别技术性能的因素主要有两类,一类是影响模型准确率的因素,另一类是影响模型整体性能的因素。影响模型准确率的因素如图1-13所示。
图1-13 影响模型准确率的因素
影响模型整体性能的因素主要有延迟、算力和鲁棒性3个方面。
①延迟:延迟是指从用户说完语言到完成转录的时间。较高的延迟会极大地降低用户的体验。例如,在语音搜索中,实际的搜索行为必须在语音识别以后进行。
②算力:算力的占用直接与耗能及延迟性挂钩,如果只是为了提升1~2个百分比的准确率而增加几倍的计算任务,这是不合适产品化的。因此要根据具体的应用场景选择合适的模型。
③鲁棒性:不同于智能手机的个人智能助理和语音输入法,在汽车上搭载的产品对安全性和鲁棒性有着更严格的车规级要求。模型鲁棒性测试如图1-14所示。
图1-14 模型鲁棒性测试
3)自然语言理解(NLU):机器通过自然语言理解从文本中理解用户意图。自然语言处理(NLP)和自然语言理解(NLU)如图1-15所示。NLP依靠机器学习通过分析文本语义和语法从人类语言中获得意义,NLU负责理解某个文本所呈现的含义。
图1-15 自然语言处理和自然语言理解
自然语言理解是基于自然语言处理的相关技术实现的(图1-16)。自然语言处理的流程如图1-17所示。
自然语言处理目前的主要技术难点有:
①表达的多样性。语言具有创造性,会不断产生新的流行语和新词汇。每个用户的用语习惯不一样,有人简练,有人啰嗦,再加上千变万化的方言,迫使机器在大数据学习之外,还要进行小样本的学习和预测。
图1-16 自然语言理解与自然语言处理之间的关系
图1-17 自然语言处理的流程
②理解的鲁棒性。在多字、少字、错字的情况下仍然能够保证理解准确度。在停顿、重复、改正的情况下仍然能够正确分割词义。
③内容的依赖性。语言理解基于环境和前文(短时间前提到的内容),有一定的知识依赖。
4)对话管理(DM):机器通过对话管理决策接下来的动作,并更新对话状态。
对话管理控制着人机语音交互的过程,负责维护、更新对话状态,并决策接下来的动作。对话管理接收来自自然语言理解的语义结果,并结合当前的语义环境(上下文环境),基于预设的对话状态,决策接下来的动作,并对语义环境进行更新,然后循环往复,直到结束交互。预设的对话状态即对话规则,例如对话流程、动作判断等多种形式的结合。
由于语音交互的复杂性和随机性,导致对话管理难度很大。具体表现为预设对话状态的主观性、多轮对话的容错性、偏离对话状态的合理化处理、多场景切换与恢复等。与自然语言理解类似,当前对话管理在垂直领域和闲聊的部分场景应用较好,但是要应用到全场景交互中,挑战同样非常大。
5)自然语言生成(NLG):机器通过自然语言生成将决策后的动作生成为回复给用户的文本。
6)语音合成(TTS):语音合成是人机交互的出口,机器通过语音合成将回复给用户的文本转换为语音,完成一次交互,合成语音的自然度直接关系到交互体验。
语音合成能将任意文字信息实时转化为标准流畅的语音朗读出来,涉及声学、语言学、数字信号处理、计算机科学等多个学科技术。如果语音识别是“机器的耳朵”,自然语言理解是“机器的大脑”,那么语音合成可以比作“机器的嘴巴”,使人能够听到机器的反馈。与语音识别相比,语音合成技术相对来说要成熟一些。目前的突破点在于如何根据用户需求快速定制新的声音包。语音合成技术主要包括语言处理、韵律处理、声学处理3个方面。
语音合成的过程相对于语音识别刚好是相反的,它的输入是文字,输出是对应内容的音频。语音合成的历史相对于语音识别要长很多,已经有超过200多年的历史。最开始人们考虑怎么让机器发出像人一样的声音,主要有两个不同的学派:一种认为可以造一台和人的声学结构完全类似的机器去发出与人类似的声音;另一种认为完全没必要做得这么复杂,把说话人的声音录下来,对录音按字、按音素裁剪成一个个单元,然后根据需要合成的文本进行排列和拼接。从目前的发展情况来看,历史已经证明第二种方式是通用性最好的,也是现在主流的合成技术采用的方式。
现在的语音合成主要包含两部分,首先制作一个音库,需要有说话人进行录音,然后对质量较好的录音进行裁剪,裁剪完之后将对应的音素音节存储到对应的单元中。这个技术之所以到现在才流行起来,一定程度上是因为不管何种语言,其音素、音节实在是太多了,在计算机出现之前我们很难找到一个系统来存储和计算这样的排列和音素的拼接。
语音合成的过程如图1-18所示。首先,它的输入肯定是文本,文本输入进来后不会立即去合成,而是会先按照字典规则进行语言处理,主要就是进行断句。这里举一个比较典型的例子,就是“武汉市长江大桥”。如果在第一步断句有问题的话,后面的合成肯定是错的,它的停顿、韵律肯定是不符合我们预期的;之后是韵律的处理,需要规划整个合成语音的音阶、音高、音长、音强等因素,使合成的语音能够正确地表达说话人所要表达的意图,使其听起来更加自然;最后根据前两部分处理的结果,找到对应的音素单元,提取出来进行拼接,拼接完后进行一个简单的处理就可以输出合成的语音了。
图1-18 语音合成的过程
语音合成应用场景也很多,比如读书App、导航播报、进行人机交互的语音机器人等,另外也可以帮助视障人士进行特殊的阅读。
(4)人机语音交互的升级技术链路 目前语音交互技术的应用,大多采用升级技术链路,已在原有基础技术之上做了更优处理(图1-19)。比如在语音识别的前端,叠加一些语音信号预处理,也就是声学处理部分,包括回音消除、定向拾音和远场降噪;为了提高语音识别的准确率,也植入了离线命令词、端点检测和无效拒识等技术。
图1-19 语音交互技术的升级技术链路
1)回音消除:机器内置有音响和传声器,机器在与人交互过程中,不仅能听到人的声音,机器自身的响声也能听到,回音消除就是用来消除机器的噪声。
2)定向拾音:这个技术发展较晚,主要是用来判断声源的位置,接收固定方向的声音,主要应用在近场和远场交互上。例如,我们家里有好几个小爱音箱,离我们最近的小爱音箱才会做识别。
3)离线命令词:语音交互里的词库。
4)端点检测(VAD):判断人说的一段话,是从哪里结束。
5)无效拒识:语音交互设备在实时接收我们的声音,即我们的声音会被设备随时录音,当设备识别出关键词的时候,才会真正分析处理这段命令,无效的会拒识,有效的会进行语义理解。
(5)语音识别的其他技术
1)语音通信传输方式。
①单工:数据只能进行单向传输——录音机、收音机。
②半双工:数据可以在信号载体的两个方向上传输,但是不能同时传输——对讲机。
③全双工:同一时间既可以作为接收设备,也可以作为发送设备——手机、电话。即语音交互过程是双向、持续和可打断的,设备可以边听边思考。全双工技术就相当于双向车道,来往车辆可以畅通无阻。
全双工特点如下:
a)交流是双向的:我们和设备说话,设备也能和我们说话。
b)交流是持续的:我们可以和设备持续说话,不需要每次都唤醒或提醒设备,可以不依赖于唤醒词。
c)交流是可打断的:我们在与设备交流过程中,中途也能与身边的朋友交流(交互被打断),接着再和设备延续交流。
2)声纹识别。声纹识别是一种根据说话人语音波形识别说话人身份的生物识别技术。相比于人脸识别、虹膜识别、指纹识别等技术,声纹识别可以进行远程身份识别,用户不必和生物特征采集设备接触,即可完成识别过程。在智能音响中,可采用声纹识别进行用户身份识别(爸爸、妈妈、孩子),针对不同用户提供个性化服务。
3)知识图谱。知识图谱是一种描述知识实体、实体与实体之间关联的结构化知识管理技术。知识图谱相比于传统的知识管理技术,能够将零散的知识有效聚合起来,方便检索、提取、调用、管理。知识图谱在人机语音交互中的应用,可以有效提升知识检索、知识生成的速度和准确度,如果结合自然语言生成技术,则其提供给用户的结果也更接近于人类表达。
语音交互技术的优势如图1-20所示。
图1-20 语音交互技术的优势
语音交互技术的劣势如图1-21所示。
图1-21 语音交互技术的劣势
语音交互技术和视觉交互技术是在不同维度上的互补,在不同的场景选择最合适的交互技术,通过适当的协作机制为用户提供更好的用户体验。
(1)普遍化 语音交互技术可以作为智能设备实现人机交互的一种方式。
(2)信息去中心化 语音智能设备作为一个接口,可以衔接其他应用的接口共用。
(3)情感化的语音 相比于单击屏幕,语音更加自然,可以根据不同用户在不同情景下,使用更情感化的语音进行交互。
(4)数据库和模型算法优化 更多的数据库,比如兼容更多种国家语言,方言、多语言混杂的识别率;模型算法的优化,可以占用更少的算力,做到更加精准的识别。