智能机器人语音识别技术
图2检测结果的效果示意图
当话者带有呼吸噪声,或周围环境出现持续时间较短能量较高的噪声,或者持续时间长而能量较弱的噪声时,能零积门限检测算法就不能对这些噪声进行滤除,进而被判作语音进入识别模块,导致误识。图2(a)所示为室内环境,正常情况下采集到的带有呼气噪声的数字“0~9”的语音信号,利用能零积门限检测算法得到的效果示意图。最前面一段信号为呼气噪声,之后为数字“0~9”的语音。
从图2(a)直观的显示出能零积算法在对付能量较弱,但持续时间长的噪音无能为力。由此引出了双门限能零积检测算法。
所谓的双门限能零积算法指的是进行两次门限判断。第一门限采用能零积,第二门限为单词能零积平均值。也即在前面介绍的能零积检测算法的基础上再进行一次能零积平均值的判决。其中,第二门限的设定依据取决于所有实验样本中呼气噪声的平均能零积及最小的语音单词能零积之间的一个常数。如图2(b)所示,即为图2(a)中所示的语音文件经过双门限能零积检测算法得到的检测结果。可以明显看到,最前一段信号,即呼气噪声已经被视为噪音滤除。
1.2隐马尔可夫模型HMM
隐马尔可夫模型,即HMM是一种基于概率方法的模式匹配方法。它的应用是20世纪80年代以来语音识别领域取得的重要成果。
一个HMM模型可以表示为:
式中:π为初始状态概率分布,πi=P(q1=θi),1≤i≤N,表示初始状态处于θi的概率;A为状态转移概率矩阵,(aij)N×N,aij=P(qt+1=θj|qt=θi),1≤i,j≤N;B为观察值概率矩阵,B={bj(ot)},j=1,2,…,N,表示观察值输出概率分布,也就是观察值ot处于状态j的概率。
1.3模型训练
HMM有多种结构类型,并且有不同的分类方法。根据状态转移矩阵(A参数)和观察值输出矩阵(B参数)的不同有不同类型的HMM。
对于CHMM模型,当有多个观察值序列时,其重估公式由参考文档给出,此处不再赘述。
1.4概率计算
利用HMM的定义可以得出P(O|λ)的直接求取公式:
式(2)计算量巨大,是不能接受的。Rabiner提出了前向后向算法,计算量大大减小。定义前向概率:
那么有
(1)初始化
(2)递推
(3)终止
式(2)表示的是初始前向概率,bi(o1)为观察值序列处于t=1时刻在状态i时的输出概率,由于它服从连续高斯混合分布,故此值往往极小。根据大量实验观察,通常小于10-10,此值在定点DSP中已不能用Q格式表示。分析式(3)可以发现,随着时间t的增加,还会有大量的小数之间的乘法加法运算,使得新的前向概率值at+1更小,逐渐趋向于0,定点DSP采用普通的Q格式进行计算时便会负溢出,即便不发生负溢出也会大大丢失精度。因此必须寻找一种解决方法,在不影响DSP实时性的前提下,既不发生负溢出,又能提高精度。
2DSP实现语音识别
孤立词语音识别一般采用DTW动态时间规整算法。连续语音识别一般采用HMM模型或者HMM与人工神经网络ANN相结合。
为了能实时控制机器人,首先需要考虑的是能够实现实时地语音识别。而考虑到CHMM的巨大计算量以及成本因素,采用了数据处理能力强大,成本相对较低的定点数字信号处理器,即定点DSP。本实验采用的是TI公司多媒体芯片TMS320DM642。定点DSP要能准确、实时的实现语音识别,必须考虑2点问题:精度问题和实时性问题。
精度问题的产生原因已经由1.4节详细阐述,这里不再赘述。因此必须找出一种可以提高精度,而又不会对实时性造成影响的解决方法。基于以上考虑,本文提出了一种动态指数定标方法。这种方法类似于科学计数法,用2个32b单元,一个单元表示指数部分EXP,另一个单元表示小数部分Frac。首先将待计算的数据按照指数定标格式归一化,再进行运算。这样当数据进行运算时,仍然是定点进行,从而避开浮点算法,从而使精度可以达到要求。
对于实时性问题,通常,语音的频率范围大约是300~3400Hz左右,因而本实验采样率取8kHz,16b量化。考虑识别的实现,必须将语音进行分帧处理。研究表明,大约在10~30ms内,人的发音模型是相对稳定的,所以本实验中取32ms为一帧,16ms为帧移的时间间隔。
解决实时性问题必须充分利用DSP芯片的片上资源。利用EDMA进行音频数据的搬移,提高CPU利用率。采用PING—PONG缓冲区进行数据的缓存,以保证不丢失数据。CHMM训练的模板放于外部存储器,由于外部存储器较片内存储器的速度更慢,因此开启CACHE。建立DSP/BIOS任务,充分利用BIOS进行任务之间的调度,实时处理新到的语音数据,检测语音的起止点,当有语音数据时再进入下一任务进行特征提取及识别。将识别结果用扬声器播放,并送入到机器人的控制模块。
实验中,采用如图3的程序架构。
图3机器人识别软件框图
3机器人控制
机器人由自然条件下的语句进行控制。这些语句描述了动作的方向,以及动作的幅度。为了简单起见,让机器人只执行简单命令。由手机进行遥控,DSP模块识别出语音命令,送控制命令到ARM模块,驱动左右机械轮执行相应动作。
3.1硬件结构
机器人的硬件结构如图4所示。
图4机器人硬件结构
机器人主要有2大模块,一个是基于DSP的语音识别模块;另一个是基于ARM的控制模块,其机械足为两滑轮。由语音识别模块识别语音,由控制模块控制机器人动作。
3.2语音控制
首先根据需要,设置了如下几个简单命令:前、后、左、右。机器人各状态之间的转移关系如图5所示。其中,等待状态为默认状态,当每次执行前后或左右转命令后停止,即回到等待状态,此时为静止状态。
图5机器人状态
语音的训练模板库由4个命令加10个阿拉伯数字共14个组成,如下所示。
命令:“前”、“后”、“左”、“右”;
数字:“0~9”。
命令代表动作的方向,数字代表动作的幅度。当执行前后命令时,数字的单位为dm,执行左右转弯命令时,数字的单位为角度单位的20°。每句命令句法为命令+数字。例如,语音“左2”表示的含义为向左转弯40°,“前4”表示向前直行4dm。
机器人语音控制的关键在于语音识别的准确率。表1给出了5个男声样本的识别统计结果。
表1识别统计结果
4结语
工作中,成功地将CHMM模型应用于定点DSP上,并实现了对机器人的语音控制。解决了CHMM模型巨大计算量及精度与实时性之间的矛盾。提出了一种新的端点检测算法,对于对抗短时或较低能量的环境噪音具有明显效果。同时需要指出的是,当语音识别指令增多时,则需要定义更多的句法,并且识别率也可能会相应降低,计算量也会相应变大。下一步研究工作应更注重提高大词汇量时的识别率及其鲁棒性。返回搜狐,查看更多
智能对话机器人的应用场景有哪些
一、适用的业务场景本产品适用于存在交互式对话的业务场景,支持文本、语音等对话形式。如下是具体业务场景示例。在线智能客服您可以通过本产品构建“在线智能客服机器人”,并部署在APP、Web、微信等渠道。在线智能客服机器人可以自动识别并回复用户问题,您可以通过本产品,自助完成机器人对话能力及知识库设置、分析对话数据并通过多种工具持续优化效果,从而降级人工客服成本、提高服务质量和品质。在线智能辅助您可以将本产品集成在您购买或自研的人工客服工作台上,当人工客服收到用户问题时,调用本产品服务获得机器人回复或推荐结果,辅助人工客服更快、更好的接待用户。在此场景下,您需要在本产品控制台或通过API,维护机器人对话能力及知识库,并在人工客服工作台上进行服务集成。热线智能语音您可以将本产品集成在您购买或自研的呼叫中心产品上,针对“呼入”、“呼出”两类行为,由您自行调用ASR(语音转文本)与TTS技术(文本转语音)服务转为文本,再调用本产品服务获得机器人回复结果。在此场景下,您需要在本产品维护机器人对话能力及知识库,并在呼叫中心等系统上进行对话服务集成、业务逻辑开发等工作。此类场景,您也可以直接使用阿里云智能语音导航、阿里云智能外呼机器人产品。在线商品导购您可以通过本产品,在“用户有购买意图,但是没有清晰的目标商品“等营销类场景,通过配置多轮对话流等方式,实现机器人引导用户明确诉求并通过算法给用户推荐合适的商品。在线业务办理您可以通过本产品,构建对话式任务办理流程,比如:订机票、提工单等。您可以自定义业务场景意图及办理流程,可以在对话流程中集成您自研或购买的业务系统服务。语音控制您可以将本产品部署在硬件设备终端上,比如服务机器人、车载语音助手、智能音箱、语音交互式电视盒等。您可以根据业务需求,自定义对话配置。在此场景下,您需要自助完成硬件系统接入适配。二、支持的用户渠道您可以将本产品,部署在需要提供交互式对话服务的用户渠道上,从而实现用户触达及对话消息收发。如下是具体用户渠道示例。系统内置部署渠道本产品系统内置支持APP、Web网页、微信、支付宝部署能力。您可以通过控制台“渠道部署”功能,自助创建部署配置,包括但不限于:对话窗样式设置、对话窗首页功能配置(如问题推荐、置顶公告、活动卡片等)、机器人形象等功能。在APP及Web网页渠道,创建完毕后,您将获取一个聊天窗URL,您可以按需将上述URL的入口部署在您的业务场景上,用户点击该入口即可进入聊天窗、发起会话。在微信及支付宝渠道,可按系统指引完成授权绑定。系统内置在线部署能力已打通“阿里云客服工作台”产品,如果您使用了该产品,则机器人可以无缝实现转人工。请注意,系统内置在线部署能力当前暂未支持其他人工客服工作台,即:使用系统内置在线部署能力+非云客服产品情况下,无法实现转人工能力。自定义部署渠道您可以通过PaaSAPI对接方式,自助将对话机器人能力部署在任意渠道上。在此情况下,您需要自助完成渠道对话消息收发服务,并调用对话机器人ChatAPI获取机器人识别及回复结果。您需要自助开发聊天窗界面,或接入渠道原生聊天窗界面。部分高级对话能力需要您做二次开发,比如“答案卡片”,您需要自助解析并渲染对应样式。三、支持的业务系统本产品可以搭配其他产品使用,共同构建一套完善的对话服务解决方案。如下是可对接业务系统示例:对接人工客服工作台本产品可无缝对接阿里云客服工作台,此时可使用系统内置渠道部署功能并实现知识互通。也可通过API集成方式对接其他人工客服工作台,实现人机协同接待。对接呼叫中心本产品可无缝对接阿里云云呼叫中心、智能外呼产品。也可以由您自行集成到其他呼叫中心产品上。对接工单系统您可以通过本产品“多轮对话流”功能实现工单意图识别与信息搜集,并通过外部服务接入实现和工单系统数据互通。四、智能服务解决方案企业可以基于本产品及关联产品,构建一套7X24小时全天候在线、支持人机联动、多渠道统一服务、多模态服务输出的全方位智能服务业务系统,给用户带来更好的服务体验。
什么是智能语音交互
说明全新的智能语言交互2.0版本现已发布。您可以使用自学习平台等工具改善语音识别效果,而且我们为您提供了功能更丰富的管理控制台和更易用的SDK,欢迎开通体验。从0到1入门视频一句话识别对时长较短(一分钟以内)的语音进行识别,适用于较短的语音交互场景,如语音搜索、语音指令、语音短消息等,可集成在各类App、智能家电、智能助手等产品中。更多信息,请参见一句话识别接口说明。实时语音识别对不限时长的音频流做实时识别,达到“边说边出文字”的效果,内置智能断句,可提供每句话开始结束时间。可用于视频实时直播字幕、实时会议记录、实时法庭庭审记录、智能语音助手等场景。更多信息,请参见实时语音识别接口说明。录音文件识别对用户上传的录音文件进行识别,可用于呼叫中心语音质检、庭审数据库录入、会议记录总结、医院病历录入等场景。更多信息,请参见录音文件识别接口说明。重要针对免费用户,系统可在24小时内完成识别并返回识别文本;针对付费客户,系统可在3小时之内完成识别并返回识别文本,一次性上传大规模数据(半小时内上传超过500小时时长的录音)的除外。有大规模数据转写需求的客户,可与售前专家另行沟通。语音合成通过先进的深度学习技术,将文本转换成自然流畅的语音。目前有多种音色可供选择,并提供调节语速、语调、音量等功能。适用于智能客服、语音交互、文学有声阅读和无障碍播报等场景。更多信息,请参见语音合成接口说明。语音合成声音定制(企业版)为您提供深度定制的TTS(TexttoSpeech)声音功能:使用先进的深度学习技术,用更少的数据量,更快速高效地定制高表现力的TTS声音,将自然流畅的声音输出到服务或设备上。如果您想体验定制的声音、了解定制流程,请查看语音合成声音定制(企业版)。如有任何需求和疑问,请联系:nls_support@service.aliyun.com。灵积语音模型服务灵积模型服务平台中的语音服务——Paraformer语音识别API是基于达摩院新一代非自回归端到端模型,提供对输入的各类音视频文件进行语音识别的能力,可被应用于客服质检、内容理解分析、字幕生成等。自学习平台您可以使用自学习平台提升识别效果,它提供了训练热词和自学习语言模型两种方式。语音识别服务中,通过添加热词和使用热词模型来改善识别结果。在司法、金融等领域,利用语言模型定制进行优化,提高该业务场景下的识别准确率,更多信息,请参见自学习平台。学习路线快速入门:快速体验智能语音交互服务,掌握相关术语、获取AccessToken等内容。产品计费:了解智能语音交互服务的计费情况。接口参考选择需要的服务:一句话识别、实时语音识别、录音文件识别、语音合成等。自学习平台:通过自学习平台的热词、语言模型定制提升识别效果。最佳实践:了解智能语音交互服务的最佳实现方式。常见问题:查询常见问题的解决方案。