所以,想要打造一个智能助理,可以先设定一个能够实现的“小目标”:找到一个可以自动化完成的任务,用与任务相关的数据训练模型,利用任务的特点提高自然语言理解和智能决策能力。做一个垂直领域“小而美”的智能助理往往更容易成功。 自救方法二:指导用户 对开发者来说,什么最珍贵?用户的耐心! 当前,用户对于智能助理最大的失望与不满(DSAT)在于智能助理难以准确理解用户的请求。通常,大多数用户没有耐心一遍又一遍地尝试让机器能理解自己的请求,当他们有几次DSAT之后,基本就会放弃使用该“智能”助理了。
对话式服务和对话机器人与传统的基于GUI(图形用户界面)的交互方式的最大区别在于,基于GUI的交互方式通过对页面元素的限制,输入空间是有限的,因此机器可以枚举有限的输入组合完全理解用户的请求。而对于对话式交互服务来说,用户的输入空间是无限的,用户可以输入各种各样的请求(如上图)。因此,通过合理的方式对用户进行指导,告诉及指导用户机器可以理解的请求,用户只要依样画葫芦——在样例示范的基础上进行个性化的发挥,此举将用户输入空间大大缩小,智能助理从而就可以完成对应的任务(如下图)。这对用户和机器来说是两全其美的事情。依样画葫芦并不是要求用户输入的请求必须和我们的样例一模一样,否则大家都会更习惯传统GUI的交互方式。因为用户几乎不可能记住样例的每一个词以及它们的顺序。人工智能助理必须要能够理解这些样例模板的绝大部分等价表示(下图中的用户请求)。
EDI利用统计滚雪球(Statistical Snowball)的方法[1]在海量数据(Bing,Cortana)中学习每个词语、短语的可替换表达,建立语义词典(Semantic Dictionary),并在语义词典的基础上进一步生成语言模板(Semantic Pattern)。在一个局部空间内,该方法理论上可以枚举自然语言中的所有等价表示。将指导用户的样例(如,schedule a meeting at 4pm)作为种子,通过该方法可以得到用户基于样例所输入请求所有的可能变换(Book a meeting at 1pm, Find me a room at 11am, Arrange an appointment tomorrow等)。 不仅如此,该方法在碰到有歧义或不能理解的请求时还可以利用语义词典生成动态提示,帮助用户快速完成任务。例如用户提到“schedule a meeting 4”,这里的“4”可以理解为时间,地点或人数,“4”在语义词典(通过海量数据挖掘得到)中对应的替换表达有“4pm”, “4th floor”, “4 people”, “4 years old”, “4 players”等,进一步结合句子“schedule a meeting”,利用语义模板挖掘的方法可以发现有意义的模板为“schedule a meeting at 4pm”, “schedule a meeting on the 4th floor”, “schedule a meeting for 4 people”。EDI会将这些可能的模板提供给用户进行选择。动态提示的方法不仅帮用户快速完成了请求,也提示了用户规范的样例。
通过对EDI的历史数据进行分析,我们还发现了两个有趣的现象:1. 随着使用时间的增加,越来越多的用户使用和样例相似的请求格式来完成任务;2. 有些用户会探索自己的模式,当他发现行之有效的请求格式后,在今后的使用中会一直沿用该模式。这也说明,当用户发现智能助理真的在某些任务上可以帮助自己节省时间、提高效率,他们就会尽可能用容易理解的请求去适应智能助理。 自救方法三:借助知识图谱 (责任编辑:本港台直播) |