赞
踩
近日,小米传来好消息~
在Magichub重口音对话语音识别挑战赛中,以小米集团技术委员会简称命名的MITC团队,凭借最低的CER(即Character Error Rate,字符错误率)获得了一等奖。
在7月6日的颁奖仪式上,小米AI实验室语音团队的陈俊杰和新一代Kaldi团队的康魏受邀进行了主题分享。
什么是重口音对话挑战赛?小米凭借什么技术拿下冠军?这些技术又能应用于哪些方面?且听小编缓缓道来......
01
高手云集的挑战赛
共同探索重口音AI语音识别
6月16日,“Magichub重口音对话ASR挑战赛”圆满结束。与其说这是一场吸引了无数企业、高校的队伍报名的技术赛事,不如说这是一次对重口音AI语音识别共同探索的旅程。
随着人工智能领域的发展,人们的确享受到了智能产品带来的生活便利,尤其在语音识别领域,从移动端聊天的语音转写到重大会议的实时翻译,我们可以从中获取专注力和效率,但在幅员辽阔的中国,不同地域的人们对于相同的字、词,却有着不同的发音,而这对机器语音识别来说是一个巨大的挑战。
使用何种数据、如何训练机器,对于它们领会说话人的指令是十分重要的。所以此次挑战赛才以“重口音对话”为主题,携各位“技术高手”共同探索重口音对话ASR*。
此次挑战赛采用传统Hybrid的建模方式,基于Kaldi开源工具搭建了简易的重口音对话ASR 赛道的基线系统。参赛者提交模型和推理结果,限制48小时之内识别结果反馈。以最终得出的字错误率(标点符号、非语言符不参与)计算排名。小米AI实验室的参赛团队(MITC)最终以12.64的成绩拔得头筹。
ASR*:指自动语音识别技术(Automatic Speech Recognition),是一种将人的语音转换为文本的技术。
02
如此低的字符错误率
在这次比赛中,我们使用了与目前小米线上语音服务相同的基于Hybrid CTC/attention结构的conformer端到端建模方法。我们针对比赛数据进行了全面分析,并针对数据特点针对性的数据扩充,使用了基于kalid的数据増广方式,并对个性化语音合成的方式进行了尝试。
由于这次比赛的数据属于口语对话领域,所以我们借鉴了在过往产品上使用的算法优化的经验,在短时间内就实现了比较好的实验结果。另外在最终模型解码中,我们使用了k2提供的TLG和attention rescore的解码方式,为我们最终获得第一名提供了重要保证。
Hybrid CTC/attention conformer
此处的 k2 是新一代Kaldi项目的简称,新一代Kaldi项目中包含了三个子项目,他们分别是k2,Lhotse,Icefall。
k2是其中最核心的部分,所以一般也会以 k2 代指新一代Kaldi。
这三个子项目分别承担不同的角色,他们的关系如下图所示:
新一代Kaldi项目中各个子项目的关系图
在新一代Kaldi项目中,k2是核心算法库,其实现了可微分的有限状态自动机及RNN-T损失函数等序列建模工具;Lhotse则负责语音数据处理工作;Icefall是数据集示例脚本,其基于Pytorch、k2和Lhtose构建了完整的语音识别系统。
狭义的k2算法库中的核心部分包含两大模块。
一个是在GPU上实现的FSA(Ragged Tensor);
另一个是基于可微分FSA的通用序列建模框架 (能实现诸如CTC/MMI等)和RNN-T等损失函数。
在前者的基础上我们可以实现高效的GPU解码,提升产品化部署的效率。在后者的基础上我们可以构建优异的语音识别系统,进行多种序列建模方式的选择,并快速地搭建ASR原型。
广义来说,新一代Kaldi的核心目标是使用简洁高效的方法构建优异的可落地的ASR系统,依托于Pytorch和k2优秀的算法实现,我们已经在Icefall中实现了完整的语音识别系统,既包括CTC的系统也包括RNN-T的系统,他们都在开源数据集上取得了顶尖的效果。
k2 相较其他算法主要有三个优势:简洁、高效、通用。
k2 目前建立在Pytorch生态,跟Pytorch框架无缝结合,并提供了Python接口。用户在使用FSA算法时就好像在使用Pytorch script一样,非常简单;
除此之外,k2 又是建立在 GPU上的,所以其无论用于解码还是用于训练都非常高效。k2中实现了可微分的FSA,可以非常便捷的实现各种序列建模方式,给开发者尝试新想法提供了非常大的便捷。
03
k2助力普惠智能生活
语音识别属于后端引擎,需要搭配各种使用场景才能跟用户见面,k2对智能语音的开发者及公司工作的推进有诸多益处,它可以使构建语音识别系统的工作更加简单且低成本。
当然,k2对于普通用户而言也并非那么遥远,因为开发者和公司可以利用它为用户们提供更便捷的服务,用户则可以拥有更好的语音识别体验,例如语音识别的准确率更高了,识别速度更快了。
k2对于整个行业的意义,在于推动智能语音的更广泛的普及。
k2作为开源项目,其本质是技术共享,它包含了数据处理、模型训练、高效解码和运行时等个模块的高效实现,提供了便捷的一站式智能语音部署方案,有望将智能语音的进入门槛进一步降低,使智能语音更加普惠。
04
冠军团队分享,精华一览
在挑战赛颁奖礼上,小米AI实验室的陈俊杰代表MITC团队分享了在比赛中进行的一些工作,主要包括比赛数据分析、数据扩充实验、模型训练优化和模型解码优化。
在比赛数据分析方面,此次MITC团队先对比赛的数据特点进行了分析,随后针对比赛数据特点进行了相应的数据増广,并且尝试了语音合成在比赛数据上的应用。
在模型训练上,借鉴了在MIX Fold和小米平板5上会议系统的优化方式,节省了许多模型优化上的耗时,使团队在比赛数据上快速实现了比较好的模型效果。
值得一提的是,比赛最终使用了k2中提供的解码方案,这是一套高效易用的方案,也是由于k2才使MITC获得第一名。
在分享会上,陈俊杰表示:“这次比赛为我们带来很多启发,在后续会进行更多的尝试来优化我们的产品”。
除了团队夺冠分享外,小米AI实验室的康魏也分享了k2中核心算法——可微分有限状态自动机的原理及应用,以及团队在RNN-T模型上的一些研究进展。
第一部分,康魏详细介绍了k2中FSA的特点及其作用,并且通过一个简单的CTC建模的例子阐明了使用可微分有限状态自动机进行序列建模的原理,最后讲解了使用k2框架进行高效解码的方法。
第二部分,主要围绕团队在RNN-T训练和解码上做的优化和改进,例如团队提出的Pruned RNN-T损失函数,使RNN-T模型的训练速度得到了极大的提升,同时,团队自研的基于GPU的RNN-T并行解码方法也让RNN-T类模型的部署更加高效。
最后,康魏分享了团队在RNN-T模型上做的一系列探索演进,实验结果表明,RNN-T模型在各大开源数据集上都取得了业内最好效果。
-
未来,相信伴随着k2的逐渐落地,更多“高效解码+低字符错误率”的智能产品将走入千家万户,为每一个用户、每一个家庭带来更加美好的语音识别产品体验。
小米工程师们对技术的钻研并非是出于单纯的竞技式突破,而是专注于如何让更好的技术惠及每一位使用者,带来更好的产品体验。悉心打磨技术,只为使用的那一刻,触手可及。
End
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。