2019年9月7日,一知智能受邀参加由AICUG人工智能技术社区主办的AI 先行者大会(AI Pioneer Conference),大会聚焦国际AI前沿技术、产业落地,汇聚中美AI行业领袖与技术大咖,共同探讨人工智能行业的发展与未来。
大会现场,一知智能联合创始人、技术负责人李一夫与来自阿里巴巴、Intel、Airbnb、云从等国内外AI尖端企业的智能技术专家,聚焦NLP、语音技术、AI解决方案、AI 新零售、CV、推荐算法、无人驾驶、人工智能平台等众多前沿主题,共话AI技术与行业落地实践,展现智能技术的独有魅力。
作为一家技术核心驱动的AI公司,李一夫分享了主题为“智能语音交互在客服场景的技术演进之路”的精彩演讲,详细解读了一知智能在语音交互技术方面的探索研究以及在智能客服领域的应用突破。
以下是经整理的分享内容:
Part1-智能语音交互
Part2-客服场景的智能语音交互
Part3-智能语音交互的三驾马车
01智能语音交互
我们先看⼀下智能语⾳交互,从命令行到windows的点击拖拽,从功能机的按键交互到智能机的触摸交互。人与机器的交互方式一直在变化。
近几年来随着技术逐渐成熟,智能语音成了⼈机交互的热门方式,也有了非常多的应用。从四年前iphone的智能语音助手siri,到智能音箱、智能家居、智能车载,人机语音交互在越来越多的场景落地,催生出崭新的增量市场。据统计,2019年全球语音交互市场规模达到13亿美元,预计2025年全球语音交互市场规模将69亿美元。
很好理解,语音交互本质上是通过语音输入来理解用户需求,并对其进行反馈的一种交互模式。它先将用户的对话语音通过ASR转换成文字,再利用NLP的部分对文字进行理解,结合上下文生成或检索出答案,再通过TTS合成语音回答用户。
图2-智能语音交互的技术实现原理概括图
实际上,影响用户语音交互体验的因素有很多,比如AI唤醒的准确率与召回率[ 召回率 = 机器人能回答的问题数 / 问题总数]、TTS输出语音的拟人度等,其中最重要的是输入内容的语义理解和答案生成,AI的回复是不是用户想要的。其次是AI的响应时长。如果AI回答过快,我会觉得很有压迫感。反之,如果AI回答过慢,我会没有耐心。
这张图描绘的是智能⾳箱场景,⽤户请求反馈的响应时间与⽤户舒适度的关系,数据是百度⼈⼯智能交互设计院在2017年收集的。横轴是响应时间,纵轴是5种⽤户舒适度的类别。⼤家可以看到,⼩于1300ms的响应时间,超过6成的⽤户觉得体验很好,2150ms以内,9成以上的⽤户都是能接受的,部分⽤户会觉得有些许延迟感,再⻓⼀些时间,体验就很差了,⽤户⽆法接受,所以语⾳交互的响应时间⾄少应该控制在2150ms以内。
02客服场景下的智能语音交互
接下来我们来看客服场景,近年来随着人工智能技术的发展,语音识别、语音交互及语音合成等技术的日渐成熟,越来越多的企业开始引入智能客服,以填补由于人力成本剧增,用户需求不断增长等原因造成的人工客服缺口。
智能客服能够成为率先落地,而且技术比较成熟的AI应用。其中的一个关键因素是:客服场景具有相对明确的路径特征。
我们日常生活中都或多或少都接到过智能客服的电话,对客服场景不会陌生。智能客服的语⾳交互基于电话终端,简⾔之就是机器⼈拨打或者接听电话,和用户展开对话。
从技术原理来说,它⽐图2多了PSTN和VOIP,怎么理解?简单的说,PSTN是Public Switched Telephone Network的缩写,指的是公共交换电话网络,也就是我们日常生活中常用的电话网。而VOIP是Voice Over IP的缩写,该技术将电话⽹的语⾳通过互联网进行传输,是Call Center中常⻅的一种技术。⽆论是AI主动外呼,还是AI被动接听,AI与⽤户之间的语⾳传输都会经过PSTN与VOIP这两层。如果结合上述提及的2150ms响应时长上限,那么在客服场景下,人机语音交互能否有恰如其分的用户体验,就取决于在2150ms的时间内,上图的交互流程是否可以完整实现。
2150ms,AI能分到多少?
那我们来分析一下这⼀套交互流程的响应时间,我们看看有多少时间是留给AI的。
PSTN-VOIP耗时800ms
⾸先,⽤户拿⼿机给智能客服打电话,语音通过无线电传输到达基站,PSTN再转发,这个环节需要大概200ms的时间,⼈与⼈之间打电话也会有这个延时,无法主观去缩短。然后经过VOIP语⾳交换机,会再花掉200ms左右的时间。
语音识别耗时600ms
在客服场景,一般采用的是流式语⾳识别,即连续识别⽽⾮断句识别,全程采集⽤户的语⾳流,让AI 边听边想,利⽤中间结果进⾏预测性识别。
我们做过⼀个实验,⼀台本地机器调用ASR服务,从我对着PC上的⻨克⻛开始说话,到ASR程序吐出第⼀个字,中间⼤概需要100ms时间。也就是说,ASR模型本身需要100ms的运算时间。
刚刚我们讲了ASR是在连续识别的,那什么时候我认为⽤户说完了呢,ASR怎么断句。这⾥有⼀个参数叫最⼤静默时间,即在这个时间内用户一直没说话,我就认为⽤户说完话了,这个时间不宜太⻓或太短,太⻓了反应太慢,太短了反应太灵敏,我呼吸⼀下就认为我说完了,机器⼈要抢着回答,这⾥我们⼀般设为500ms。因此,100ms的模型运算时间加上500ms的用户最大静默时间,就得到了上图中ASR环节的600ms。
语义理解耗时10-300ms
在AI对语音文本进行语义理解的NLP环节,它的时长取决于语义理解的方式。如果运用正则表达式,所需时间是很短的,仅仅需要10ms左右。如果运用深度学习模型,则需要100-300ms之间。
语音合成耗时0-300ms
这⾥涉及到客服场景的⼀个特点,客服场景是需要有标准话术的,客服⼈员需按照一套规范的话术和客户对话,超过业务范畴的交流是不允许的,所以回复的内容是一个有限集。因此在语音合成模块,因此这⾥我们不会⽤generation,⽽是retrieval的形式,所以TTS⼤概率也是不需要的,只有需在话术中植入变量的时候才会用到,比如姓名、金额、地点等等。⼀般TTS在300ms之内可以完成,看答案的⻓短而定。
智能客服的苛刻条件
在语音合成完成后,会再依次经过VOIP与PSTN,把语⾳传输回给⽤户。所以我们可以看到,800ms用在通信侧,600ms用在ASR ,再加上NLP、TTS,完成流程闭环的最短时间是1500ms。那如果通信侧信号再差⼀些,⽹络时延再⻓⼀些,那可能就奔着3000ms去了。
刚刚我们说到,为了好的⽤户体验,语⾳交互需要控制在2000ms以内,那其实留给AI的计算时间真的很紧凑,AI厂商很难施展手脚去引入非常deep的NLP model,而且需要花不少经历在模型压缩、蒸馏与计算加速上;TTS如果要实时调⽤,也就⽤不了端到端的,因为它的速度⼀直被⼈诟病;ASR的最⼤静⾳时间500ms还是会有很多没讲完的断句,还得⽤其他的⼀些⽅法给它弥补,⼜不能影响响应速度。
因此从整体上说,客服场景的智能语⾳交互,条件更加苛刻⼀些。
03智能语⾳交互的三驾⻢⻋
1. 语音识别(ASR)
接下来我们来看下智能语⾳交互三驾⻢⻋:ASR、NLP、TTS。
⾸先是ASR,ASR可分为声学模型、语音模型、解码器这三个部分。其中,声学模型通俗地理解是将语音转换为因素,语⾳模型需要转化为单词,主要是N-Gram和NNLM两种。解码器实际上是⼯程化的内容,将声学模型和语⾔模型组合成WFST⽹络去搜索最优路径,得到答案。
这张图是语⾳识别的发展史。人类对于ASR的研究,从上世纪的50年代初就已经开始了,此后相关技术不断突破发展,经历了从英文数字孤立词,到人工神经网络,再到连续词汇以及统计模型⽅法。目前,行业主流的是DNN-HMM的基础模型结构,它有效地降低了AI的识别错误率。
说到ASR⼤家最先想到的就是准确率,目前⼤家都普遍认为ASR准确率到达了98%。在⼀些安静的理想环境,说话⼈发⾳标准,语速均匀的情况下,是可以达到的。但是在客服场景,80%的准确率都很难达到。
最⼤的原因是采样率的问题,电话通道制定的采样率是8K,⽽业内ASR采样率⼀般是16K,在早期我们只有16K的语音识别模型的时候,研发的同学去人为地对8K语音进行“人工重采样扩充”,即在8K语音每两个采样点之间去人为添加一个采样点,数值为左右两个点的均值,这样可以转化为16K的音频,再传给ASR去识别,这种方式实际上是对语音的分布进行了一个假设,显然这种方法的效果肯定会⽐直接采样16K的音频要差。
那么近年来,8K的需求日益旺盛,大家也都标注了相应的8K场景的数据,训练了8K的语音识别模型,但是8K的模型肯定是不如16K的准确率高的,很好理解,首先你8K的语音,数据采样点少了,对原始的数据的分布描述更弱;其次8K语⾳识别的标注数据相对较难获得,数据主要来源于企业客服中⼼,容易受到客户的地域、口音、行业等差异的影响,数据的全面性、覆盖率是一个挑战。
另外就是在智能客服场景,客户不知道你是机器人,不会像智能音箱这种场景,事先知道你是AI,会尽量标准化自己的发音,标准化说话的内容与指令,而客服的场景,⽤户的表达相对⼝语化,沟通环境也较为复杂,⽐如用户在开⻋、⽤蓝⽛,开免提等等,都会造成一定的噪音干扰。
如何优化客服场景下的语音识别?
1设置热词
在语音识别服务中,如果在用户业务领域有一些特有的词,AI默认识别不出来时就可以考虑使用热词功能。它通过改变解码时搜索最优路径是热词的权重,以提升该词被解码出来的概率,帮助我们去解决⼀些场景中由于同音词问题造成的识别干扰,但毕竟中⽂的同⾳词太多了,这⾥我举了⼀些例⼦。
在使⽤热词的时候,有⼀些需要注意的地⽅,⾸先不是什么词加⼊热词都能够生效,前提是在ASR词库⾥得有这个词。而且,热词也不能随意添加,添加过多会影响到其他词的识别,⼀般情况下热词都会有个数限制,我们内部限定是100个。
2语音模型自学习、声学模型
语⾔模型⾃学习是指给AI提供足量的语料,对特定领域的⽂本数据进⾏语⾳模型的重新训练,技术实现原理和热词相仿,都是在解码的时候调整语⾔模型,他们的主要差别是,前者是基于单词去训练调整,而后者基于句子。
另外,针对用户口音和方言的问题,⼀般需要重新训练⼀个声学模型了。
2.自然语言处理(NLP)
接下来我们看看NLP部分,NLP和ASR、TTS不同,它与业务以及使⽤场景⾼度相关。⾸先我们看看客服场景下的智能语⾳交互,我把它分成两类,⼀类是呼入,AI接待用户的来电。⼀类是外呼,AI给用户打电话。
呼⼊场景的智能客服为了解决某一类型任务而设计的对话机器人,这类任务一般带有比较明确的场景和条件,比如问题咨询,业务办理等,也就是我们常说的任务型多轮对话和FAQ。
外呼分为两类,⼀类是营销类外呼,相对简单,对话轮次较少,有很多公司会采取类似“万⾦油”的回复对NLP的要求较低。很多只做外呼类的公司,其实技术⻔槛⾮常的低,企业只要有VOIP技术,在ASR和TTS部分调用第三方服务,以及在NLP部分采用关键词就能快速上线业务 。另⼀种是确认信息类的,通过与用户的多轮复杂对话收集相关信息,对NLP的要求较⾼。
为⽅便运营,同时平衡效率和成本,我们在解决这两类对NLP要求有明显差异的需求时,采⽤了两种不同的NLP的⽅案。
首先,针对简单的营销场景外呼,我们采⽤了树状的流程模式。在每一个正常话术节点下,智能客服的后台都可以设置肯否模型,通过正则表达式匹配客户意图,是“肯定”还是“否定”,再对应流转到下一节点。如果对话内容没有命中当前任何节点的分⽀,则会流转到默认分⽀,这样保证了对话过程的流畅完整。
整体来说这种⽅案简单快捷,对于⼀些营销类的、或者通知类的业务⾮常实⽤,因为这⾥机器⼈是主动⽅。
而针对呼⼊场景,或者复杂类的外呼业务,基于关键词的NLP模式已无法有效支持。⼀⽅⾯关键词、正则表达式容易打架,另⼀⽅⾯结构本身有缺陷,上下⽂全靠穷举配置。以某大型国有银行的查账单场景为例,我们采⽤的是流程图的配置,⾸先以用户意图为条件进⼊多轮对话,⽤NER抽取时间信息,然后将卡号设置为必须填充的槽位,填槽失败需要反问,意图不明可以澄清,还可以在多轮对话内部实现意图继承,直到我们成功采集到用户的有效信息。
其实在复杂客服场景下,保证NLP的易⽤性和可控性还是核⼼原则,在NLP优化上也有三个⽅向,⼀是提升准确率,⼆是提⾼泛化度,降低数据标注成本,三是纠偏ASR错误。目前,我们在意图识别和FAQ识别引⼊了Ensemble Method,多个模型并行跑,再⽤Voting机制来提⾼可信度,提⾼泛化能⼒。此外,基于知识图谱的NLP应用也即将上线。
3.语音合成TTS
最后我们看下TTS,简单来说,它的技术主要分为三块,首先前端将⽂本进⾏特征提取,然后模型部分将⽂本特征转化为⾳频特征,最后声码器利用⾳频特征⽣成⾳频⽂件。
目前,业内主流的TTS⽅法主要有三种:
1拼接法
拼接法需要事先录制庞⼤的语⾳库,覆盖的⾳素单元要求尽可能全⾯,费用成本十分高昂,我们没有使⽤过这种⽅法。
2参数法
参数法将时延模型与声学模型分开,先预测时延模型,再预测声学模型,方法⽐较成熟,合成速度也较快,但是机械感⽐较重,⾳⾊有明显偏差,⾮常依赖于对于任务⼀⽂字特征⼯程的建⽴,尤其是韵律预测模块。
3端到端合成
端到端的合成,是直接将⽂本特征序列转化为⾳频特征,⽆需像参数法在过程中间⼿动提取特征,流程简洁、韵律感强,但是⼯程化仍有挑战,语音合成也很容易出现偏差。
前⾯提到,客服场景的话术都是固定的,⼤多数可以⽤真人录⾳代替TTS,但是为了满足千人千面的个性化沟通,还是需要在话术里面植入变量,⽐如客户名称、家庭住址、到期还款金额等信息。
目前,TTS技术在变量合成上的应用,主要分以下三个阶段:
第⼀阶段,采用真⼈录⾳ 第三方TTS,百度的、阿⾥的、讯⻜的,拼接效果很差,语音合成的突⺎感很重。
第⼆阶段,采用全TTS,基于逐渐成熟的端到端语音合成技术,包括变量部分,整套话术完全采用TTS。
第三阶段,使⽤同⼀个发⾳⼈的录⾳ 变量拼接的⽅式,变量部分可以适当得拓展。
在客服场景下,未来TTS的发展主要有三个⽅向:
图12-客服场景的TTS发展方向
第⼀,依托端到端的⼯程化解决,实现提速,在商业领域有更大的落地空间。
第⼆,TTS情感化,实现拟人化、情感化、场景化的语音交互,为用户创造“感受愉悦”的交互体验。
第三,语⾳克隆,或者叫定制化语音服务,通过录少量的音,能够⽣成一个定制的TTS,它需要公司先建立起多个音⾊的音库。
总结⼀下,以ASR、NLP、TTS为核心的智能语音交互,落实到客服场景中的服务质量与用户体验上,其实并不完美,需要人工结合具体的落地案例去不断调优。
虽然目前的语音交互技术在智能客服领域得到了比较成熟的应用,但现实是,市面上的AI客服的智能化程度还远不及人工客服,如果给人工客服打100分,那么AI客服智能化大概只能打到40分至60分。即便如此,智能客服行业由于有着巨大的商业应用价值,帮助企业节省人力成本投入、提高客户服务质量、实现企业智能化营销等等,因此催生出旺盛的市场需求。在可见的未来,业内厂商的相关技术还是应该聚焦于特定应⽤场景,一些重复性强、足够闭环且任务不简单的场景,使得一个40分至60分的AI客服能够提供80分的服务水准。
实际上,围绕着三⼤技术,除了外呼、呼⼊的交互模式,智能客服还提供⼈机协作、智能质检、智能培训等全流程的泛语音服务,对作业效率和作业质量的提升明显。我们通过技术底层为场景应⽤提供能⼒支撑,应⽤层为核⼼能⼒提供数据积累,形成双向反馈,构建出成熟、完善的企业AI能力平台,为客服⾏业的降本增效提供智能化引擎。
在智能客服领域,一知智能作为领跑行业的一员,应用技术快而新,通过与浙大、微软等人工智能前沿研究机构的深层次合作和交流,又使其走在前沿。把这种AI能力提供给整个行业,必将驱动传统企业的智能化变革。