最后,如果我们想做一个全双工的语音对话的话,很重要的我们必须要有一个核心对话的引擎,它其实也是微软小冰从2014年发布以来,可能最为广大用户所熟知的强项,就是它的通用的语音对话的能力。那么我们在这个里面也就是说微软小冰的语音对话技术,其实最开始我们使用的是检索模型,就是用一个像搜索的方法,把人类以前说过的话用搜索的方法来寻找一个答案。在大概两三年前,渐渐地去转向由深度学习进行的生成模型。至今比如说我们在像微信、QQ,或者那些以消息进行交互的平台上,我们至今使用的是检索模型和生成模型的一个混合。但是在全双工语音环境下,事实上我们发现单纯地使用生成模型它的效果更好。这里边主要的原因是检索模型,大家学过搜索的话,它其实是对一些特别不常见的生僻的词最敏感,哪个词TFIDF最高,它实际上在搜索上就表达得非常显著。但是,对于语音识别引擎来讲,它如果不小心犯一个错误,实际上确实有可能把一个很常见的话,由于我说的不太清楚,经常大家会看到把一个常见的东西会错误地识别成一个不那么常见的东西。由于检索模型它天生的特性,事实上它可能会放大语音识别的错误。而生成模型,由于它深度学习,事实上还是主要学习它一些常见的模板,它对于语音识别结果的容错性会更高。这其实也是微软小冰从对话到全双工语音的探索中得到的一个非常有趣,也希望能跟大家分享的一个经验。
除此之外,由于你是一个长程的对话,就需要一个更好的对于上下文的理解。然后还有,比如你需要开始去判断一些在语音消息中不需要判断的东西,比如说我什么时候应该挂断这个电话?因为可能用户已经不再跟我聊或者说他已经聊的意兴阑珊了,这个智能音箱就应该自觉地把自己关掉。这些是我们会在全双工中遇到的一些新问题。
未来我们会有各种各样的发展方向,我们会从个人的场景,比如说打电话这是一个个人的场景,家庭的场景就是我们现在已经发布的Yeelight盒子,车载场景也是我们发布的。但是再往前走可能在公共场合,比如说一个商场里有一个导购的设备或者有一个大屏幕的设备,甚至说也许未来的某一天,我们试衣的模特是这样,也可以跟你进行交互,但是商场里可能不光你一个顾客,有很多其他的顾客,在公共的场景中他的交互会变得更加复杂。如果你家里同时有多个人,多台设备,他们之间的联动也会非常复杂。
最后一个非常有意思的事情,就是说如果这个机器还有一个眼睛,那么如何跟视觉的感官去结合?如果你有一双眼睛,你看到用户已经在盯着你看说话的时候,可能我们唤醒第一次打通这个电话的唤醒词都不再需要了。或者说我可以借助我的眼睛来察觉你的情绪,察觉你是不是在对我说话,去察觉你的对话应该如何进行调整。这里边都有很多有意思的事情。
刚才黑色的部分其实更多的是给大家介绍了像产品经理也都会感兴趣的,比如对于全双工的一个新的产品形态,它能为人机语音交互带来怎样的不同?它实际上是一个更加复杂,但是拥有更高天花板的一个交互方式。后面我会在剩下的时间,再尽量多讲几点,就是白色底色的就是给技术人员看的更多的全双工的对话技术的细节。
前面也主要介绍了它的一些主要模块,我们现在可以看到这个对比,当我们只需要实现一个以消息作为交互的半双工的时候,事实上我们基本上只需要三个模块:语音识别、对话引擎和文字到语音的转换TTS。而全双工这边事实上至少需要有六个模块,连续的语音识别、语言的对策、对话引擎,然后从文字到语音的转换,我们有一个叫每轮的控制器和节奏的控制器,至少需要这么六个模块。
下面这一个图,应该是说这个技术介绍中最重要的一个图,它会给你去展示全双工是怎么进行连续的识别,进行语言的预测和瓶颈的处理。如果大家今天能看懂这一幅图的话,我觉得今天就没白来,我试图给大家去解释清楚这个图是什么意思。