浅谈语音交互界面设计

人机交互除了触控屏交互以外,语音交互越来越普遍,那么怎样才能设计出符合人性更智能的语音用户界面(Voice User Interface)呢?传统的语音交互都是单轮对话,而随着技术的发展,多轮对话将成为语音交互的趋势。单轮对话中一问一答就结束对话,没有更多交流衍生。而多轮对话,更像是你和某人聊天,一问一答的同时衍生出新的问题和新的回答,从而无限接近用户的真实诉求。那怎样设计多轮对话?机器通过用户信息及算法支持分析用户意图,分解出用户接下来的提问方向,让语音系统及用户产生更多轮对话成为可能。为此,需要尽可能将用户对话记录备份,这样系统才能有上下文的用户信息作为参考。虽然有时候用户只需要单轮对话就能达到他们的目的,即使用户决定不发生二次对话,聪明的系统还是会去思考下一步会发生什么。

VUI设计工具

示例对话:为VUI挑选最常见的使用场景,为这些场景写一系列最优路径的示例对话以及异常情况的示例对话。我们可以通过Celtxl来书写示例对话,当写完后,最好能将所写的示例对话读出来,会发现有些语句过于书面化或者不够口语化或者奇怪的地方。在开发前就做这些事,有助于直接让我们知道开发后的结果和对话愿景。

视觉原型图:(如果是多模态的系统,需要考虑界面和语音结合) 若是语音和图形界面混合的交互,则早期的线框图及原型是非常重要的。视觉原型图可将用户体验可视化,结合VUI,让用户产生更完整的视听体验。

流程图:在IVR中流程图被命名为呼叫流程图(call flow),用于展示VUI系统所有可能发生的路径图示,流程图需要列出用户进入下一个状态分支的所有方式。在开发语境中,流程图可根据交互类型分成多组:如日历、天气、搜索、电话、播放音乐等......根据不同的目的进行分组,对于具体事务组再细分画出流程图 (画流程图的工具有很多种:比如YED、Omnigraffle、Google Draw、Vision......针对VUI和自然语言理解NLU的流程工具也已经出现,如:Pull String、Wit.ai、Api.ai、Nuance Mix等......)

VUI的关键设计包含以下几个概念:

确定策略:需要明确应该使用控制式还是对话式。确认策略时可参考:1、错误的后果是什么?2、系统将以什么形式进行反馈?3、以什么形式来确认?

命令:控制模式、对话模式

目前主流的是命令控制模式,而随着AI的发展,更流畅自然的轮流对话设计模式将变得更普遍。控制模式最简单的例子是,当我们要和Siri对话时,我们必须长按Home键(push-to-talk),才可唤醒Siri。而对话模式则不会有控制键告诉机器用户要开始说话了,而是用更自然的对话技巧进行话轮转换;比如问一个问题,使用眼神交流,给出明确的提示等...... 需要强调的是不要强迫用户在不合适的情况下进行话轮转换。让VUI更加人性化或更具吸引力的方式是使用对话标识。对话标识能对用户的信息有正面反馈,或者是提问前让用户能有所预期。对话标识包括:时间线、接受回馈、积极反馈等

置信度阈值:VUI主要通过语音来反馈结果,确认信息对于体验非常重要,要做到这一点需要使用置信度阈值。使用三级置信度时,系统将一定的阈值内以明确的形式确认信息,若是信息置信度小于45%,则系统会通过显性确认信息。若是信息置信度大于80%,则系统将以隐性置信度来确认。

显性确认:需要强制用户确认信息,比如是否确定支付某一笔金额时,必须用户确认才可以,而且必须留有历史语音记录。

隐性确认:用户只需要接受信息,但无需强制确认,若是隐性确认,则允许用户撤销;

非语言式确认:仅需行动反馈,无需口头响应。就比如你说“打开窗帘”,此时智能家居系统就直接把窗帘打开了,无需再经过语音系统来反复确认。另外非语言式确认包含了特定音乐来反馈结果,比如洗衣机洗完衣服,会用一段美妙的音乐告知用户.....

通用确认:通用确认并不需要用户确认具体项目,而是开放式的聊天,从中我们可以了解用户的心情和状态等。这类反馈需要一些通用性的回答。

视觉确认:通常用户一次性不能记住超过大约7个听觉项目,语音交互稍纵即逝,对于用户的认知提出了新挑战,可视化列表可降低用户的认知难度。使用屏幕的另一个好处,我们能让用户快速确认某一件事情,但语音确认就会遇到置信度阈值问题。

异常处理:语音交互因环境噪声或用户声音的轻重,都有可能导致系统出错,VUI出错的情况有:未检测到语音信息;检测到了语音,但未识别出结果;语音被正确识别了,但系统不能处理这些信息的反馈;部分语音信息识别出错。

记录对话的上下文,为后续的语音输出提供信息和线索。尽量多的记录用户和语音的交互信息,这些信息可以帮助系统了解用户是谁,以及用户的一些角色行为特征。

在VUI中每种状态都包含一组通用组件:重复、主菜单、帮助、操作、退出。对于新手用户来说"帮助"组件是非常重要的,通常当他们不知道怎么操作语音系统时,快速呼出"帮助"可以让这类新用户获得有用的信息。另外全局的"退出"机制也很重要。在现有的界面设计中,退出是每个APP都有的操作;而人们与人会面或电话结束,也会非常自然的说"再见",所以"退出"是一项很重的语音组件。

相对于原有的GUI设计来说,语音系统设计更为复杂。我们需要让用户明白,不管什么时候,什么地方他们都能与语音系统进行交互。比如当环境嘈杂时,语音识别因为信噪比而导致更多的出错情况,或者无法清晰识别信息,此时巧妙的异常处理就显得尤为重要。再比如当系统与用户进行语音交互,发现用户情绪非常糟糕时,语音系统是否能根据用户情绪的改变,而用更智能更舒适的方式来进行交互,也是设计师需要思考的事情。随着AI人工智能的发展,也许未来我们真的能遇到像电影《Her》中"萨蔓莎"这样迷人又善解人意的语音机器人,而这一切需要更多的设计师和技术投身于语音用户交互的研究中。

你可能感兴趣的:(浅谈语音交互界面设计)