SMLTA: 百度流式多级截断注意力模型(2019年1月发布)
2019年1月,百度语音团队提出了流式多级的截断注意力模型 SMLTA。该方案采用 CTC 模型和 SMLTA 模型相结合的办法,利用 CTC 的 peak 对连续语音流进行截断,然后在截断的语音流上做截断的注意力模型。这是全世界范围内,第一次基于 Attention(注意力技术) 的在线语音识别服务的大规模上线。该技术显著提升了线上语音交互的语音识别的准确率,同时实现了语音语言的一体化建模,为云端语音识别技术的全面端侧芯片化打下了基础。2020 年,SMLTA 技术全面应用于百度语音识别全线产品:语音输入法、语音搜索、地图语音交互、智能音箱、汽车导航、智能呼叫中心、会议在线翻译等产品上,都能看到 SMLTA 技术对语音交互性能的持续提升。
2. 近些年随着 5G 的万物互联概念的普及,中国社会对智能设备的远场语音交互需求日益增加。在远场环境下,目标声源距离拾音器较远,致使目标信号衰减严重,加之环境嘈杂干扰信号众多,最终导致信噪比较低,语音识别性能较差。为了提升远场语音识别准确率,一般会使用麦克风阵列作为拾音器,然后利用数字信号处理领域的多通道语音信号处理技术,增强目标信号,最终产生一路清晰信号,送给后面的语音识别系统进行语音识别。这时候数字处理信号系统和语音识别系统是级联方式,数字信号处理系统是以信号的清晰度为优化目标,语音识别声学建模是以云识别率为建模目标,两个系统优化目标不统一,错误也会级联放大,最终的交互体验相比于近场识别差很多。国际上,Google 试图采用端到端建模技术解决这个问题,一套模型解决远场麦克阵列信号处理和语音识别声学建模问题。谷歌的解决方案采用的深度学习模型结构,借鉴了数字信号处理领域的类似于 filtering and sum 的数字信号处理思想,模型结构设计模拟经典数字信号处理过程。这种借鉴使得深度学习进行端到端建模更容易收敛,但是后期我们通过实验证明,这种借鉴严重影响了深度学习技术在该方向上的发挥和延伸,限制了深度学习模型的模型结构的演变,制约了技术的创新和发展。

基于复数 CNN 的语音增强和语音识别一体化的端到端建模
百度语音团队研发出完全不依赖于任何先验假设的信号、语音一体化的适合远场语音交互的深度学习建模技术。该深度学习模型以复数 CNN 为核心,利用复数 CNN 网络挖掘生理信号本质特征的特点,采用复数 CNN、复数全连接层以及 CNN 等多层网络,直接对原始的多通道语音信号进行多尺度多层次的信息抽取,期间充分挖掘频带之间的关联耦合信息。在保留原始特征相位信息的前提下,同时实现了前端声源定位、波束形成和增强特征提取。该模型底部 CNN 抽象出来的特征,直接送入百度独有的端到端的流式多级的截断注意力模型中,从而实现了从原始多路麦克信号到识别目标文字的端到端一体化建模。整个网络的优化准则完全依赖于语音识别网络的优化准则来做,完全以识别率提升为目标来做模型参数调优。目前该方法已经被集成到百度最新发布的百度鸿鹄芯片中。


百度鸿鹄芯片结构图
2020 年,百度在智能音箱、车载导航和智能电视控制方面,落地了百度鸿鹄语音芯片。研发了以远场语音交互为核心的鸿鹄芯片解决方案,一颗芯片解决远场阵列信号处理和语音唤醒的问题,打造了云端芯一体化的语音交互解决方案。百度鸿鹄语音芯片设计,变革传统芯片设计方法,推出 AI 算法即软件定义芯片的全新设计思路。百度鸿鹄芯片采用双核 Hifi4 架构自定义指令集,2M 以上超大内存,台积电 40nm 工艺,在此硬件规格上,100mw 左右平均工作功耗,即可同时支持远场语音交互核心的阵列信号处理和语音唤醒能力,满足车规可靠性标准。同时,百度鸿鹄芯片为远场语音交互算法量身定制了芯片架构,完全契合 AI 算法需求的核内内存结构设计、分级的内存加载策略、依据 AI 算法调教的 Cache 设计和灵活的双核通信机制,最终实现了深度学习计算过程和数据加载的高度并行。百度鸿鹄芯片是中国行业内唯一一颗能够承载全部远场阵列信号处理和智能音箱唤醒技术的语音芯片,也已经完成了业内首个支持电视熄屏唤醒的 AI 芯片解决方案并实现工业产品落地。
百度鸿鹄芯片之后,贾磊团队又将整个语音交互的复杂算法、逻辑和数据模型耦合的语音交互技术,利用百度全新研发的端到端语音建模技术,抽象成多个单纯的深度学习计算过程,从而可以几乎在性能无损的情况下将整个语音识别过程从云端搬到客户端。基于以上思路的百度鸿鹄芯片二代也正在紧锣密鼓的研发中,一颗芯片解决远场语音识别和合成问题将不再遥远。5G 时代的云端定义语音交互功能,端侧执行语音交互功能,云端一体的语音交互,很快会成为现实。
