大数据 > > 正文

针对“小度”体验问题,聊聊语音交互解决方案

2020-05-21

近几年来,智能音箱的普及度非常高,不少人都会选择购置智能音箱并通过语音进行简单的交互。然而,也有很多人在使用过程中,发现智能音箱存在着一些“听不懂人话”的缺点……

作为小度音箱(无屏基础版)的用户,本文针对使用中的一个体验细节进行分析,并尝试给出语音交互的解决方案。

一、CASE示例 场景1

用户:小度小度,播放金玟岐的《十三》/播放SHE的《十七》

小度:好的,播放金玟岐的《岁月神偷》/好的,播放SHE的《super star》

用户:小度小度,播放金玟岐的《十三》/播放SHE的《十七》

小度:好的,播放金玟岐的《岁月神偷》/好的,播放刘德华的《十七岁》

……

无限循环

场景2

用户:小度小度,播放邓紫棋、艾热的《光年之外》/播放邓紫棋的《光年之外》热爱版

小度:好的,播放邓紫棋的的《光年之外》

用户:小度小度,播放艾热的《光年之外》/播放邓紫棋的《光年之外》热爱版

小度:好的,播放邓紫棋的的《光年之外》

……

无限循环

二、问题抽象 问题1:当播放音乐的语音指令有2到3个甚至多个约束条件的时候,DuerOS有时会回应错误 问题2:即使用户”字正腔圆、咬牙切齿“的反复重复同一条指令,DuerOS仍会在多个错误回应之间循环切换,反复给出错误的回应

三、问题可能原因分析 1. ASR(自动语音识别)识别错误或NLU(自然语言处理)分词、忽略关键条件等错误

也就是说,在系统看来,它所收到的指令,前者可能类似于”播放SHE的’时期‘“,后者则类似于”播放SHE的十/七“或者“播放SHE”(忽略了“《十七》”之类,理解的错误造成了小度无法正确播放。

2. 版权问题

经验证小度的音乐版权服务方,百度音乐和QQ音乐都没有金玟岐的《十三》的版权,但有其他几首歌的版权,因此版权理应也不是这个体验洼地的主要原因。

3. 策略问题:小度的语音交互什么时候应该进入“对话模式”?

相比问题1,问题2才是造成这个体验洼地的关键。这是因为,在小度已经无法正确识别用户意图的同时,没有通过进入对话模式给用户提供更多解决问题的方案,而是机械的重复系统里置信度最高的操作,这无疑会使得用户火冒三丈。

所谓“对话模式”通常有多轮的语音交互,并且AI能够理解用户的上下文含义,从而更“聪明”地做出回应,举个经典的例子:

用户:谁是美国的第16任总统 AI:林肯 用户:他去世时多大? AI:林肯享年65岁

对话模式中,AI承接了上文的“他”指的是“林肯”;而如果是非对话模式,AI则会对用户的第二句“他”不知所措。

目前的策略,一般情况下小度与用户之间的交互是单轮命令式的,即用户“小度小度”唤醒后给予小度指令,小度会做出单次回应。

但有以下两种情况(记忆中观察到的,因为疫情影响手边没有产品,应该会有情况遗漏)小度会切换到对话模式:

    当用户主动说出“进入极客模式”或者“来聊聊天吧”之类的指令 当小度“不自信”的时候。比如给予的指令小度理解不清楚、小度为了消除指令的歧义、或者出现打断对话等异常情况时,小度会采用各种确认策略,反复确认用户的指令,这样也就进入了多轮对话

所以在现有常规的交互策略下,当小度“自信”的时候,比如他自信地忽略掉了一些限定词(例如艾热、热爱版),从而自信地认为用户就是想听邓紫棋原版的《光年之外》,这时它一般不会进入对话模式。

尽管用户火冒三丈地多次重复同样的“播放《光年之外》艾热版”的指令,小度依然会我行我素地播放邓紫棋原版的《光年之外》。

我不清楚这种策略设置的决策依据是什么,可能是这种case比较极端没有被注意到,可能是技术限制,也可能是出于成本考虑,在此不做判断,但不影响从体验优化的角度给出建议。

四、尝试给出解决方案 问题1的解决

结论:出于可能的成本考虑,“版权问题”的情况自动进入对话模式,其他由于AI能力问题造成的错误,交由问题2的解决方案一并解决。

示例对话:

用户:小度小度,播放金玟岐的《十三》

小度:对不起,暂时没有相关歌曲的播放版权,是否为您播放金玟岐的《岁月神偷》

用户:好的

GUI原型:无

VUI交互流程:

问题2的解决 结论:当用户反复唤醒小度重复相同指令时(先为“播放下一曲”之类的命令加白,不在此讨论之列),自动进入对话模式。 功能逻辑:

这里有几个概念需要解释:

1)确认策略

AI在回应用户指令时,会有一系列备选答案,按置信度高到低排列,形成N-Best列表。在使用列表中不同置信度的答案回应用户时,AI需要使用不同的确认策略。高置信度的答案采用隐性确认,低置信度的答案采用显性确认(举例见下方示例对话)。

2)消除歧义策略

当用户给出模糊不清的指令或冗余的指令时,AI向用户反复确认、拆解或补充,以形成确定的指令。

示例对话:

//进入对话模式//

用户:小度小度,播放邓紫棋和艾热的《光年之外》 小度:(置信度大于80%,隐性确认)好的,为您播放邓紫棋的《光年之外》 ……(若循环上述对话,则进入对话模式,触发确认策略)

//进入确认策略//

小度:(置信度大于65%小于80%,显性确认)您是希望播放邓紫棋的歌曲《光年之外》现场版吗? 用户:不是 小度:(置信度大于50%小于65%,显性确认)您是希望播放邓紫棋、华晨宇的歌曲《光年之外》吗?

……(置信度递减)//进入消除歧义策略//

小度:(置信度小于45%)对不起,请问您想听哪谁的歌? 用户:邓紫棋和艾热 小度:能说一下主要是哪位歌手吗? 用户:艾热 小度:好的,在艾热的歌曲中找到了23首歌曲,请问歌曲的名字是? 用户:《光年之外》 小度:好的,为您播放,邓紫棋、艾热《光年之外》

GUI原型:无

VUI交互流程:略

五、结论

新的问题:

短期来看,这个解决方案有肉眼可见的需要改变的代码量,因为第一步执行判断“是否用户重复了m次相同指令”应该是要在整个代码架构上加一次判断,有一定的工程量。

但是长期来看,对用户体验的提升是值得的。站在用户的角度,无疑希望体验能够优化的更好。是否要为了优化这个体验细节而付出这个开发成本(用户有其他临时替代方案,比如打开小度app手动搜寻歌曲,比如有屏音箱),需要更多的数据论证相关收益和优先级,作为非内部人士,缺乏相应的决策依据,这里不做判断。

在重新看这个体验问题中,由于场景的复杂和AI能力的不足,用户扮演了一个“帮助系统修正错误”的反馈角色。

因为我的水平有限,相关思考多来自于工作的语音项目和学术论文设计,但没有完整实操过复杂的语音助手项目落地,理解有误的地方请不吝指正和批评。

本文由 @eason 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

-

-

相关阅读

kzhuaiming资讯网