在 2017 年底结束的第一届亚马逊 Alexa Prize 比赛上,由华盛顿大学博士生方昊担任领队的 Sounding Board 团队在全球上百支队伍中突出重围,一举夺得冠军。
亚马逊 Alexa Prize 比赛面向全球各地的学生,旨在创造一个能与人进行自然对话和互动的社交对话系统,为用户提供新鲜、有趣的对话体验。比赛分为初赛和决赛两个阶段,在初赛阶段,选手需要创造出一个社交对话系统,而在决赛阶段,他们会对系统进行不断改进。
据主办方亚马逊介绍,「通过比赛中学生们的创新工作,Alexa 的客户将会有全新的、有趣的对话体验,而来自 Alexa 用户的大量互动和反馈将帮助学生们比以前更快地改进他们的算法。」
亚马逊为优胜团队提供的奖金高达 50 万美元,如果哪个团队设计出一款可以与人持续聊天达到 20 分钟的对话系统,那么这个团队将获得高达 100 万美元的 Grand Prize 奖。
在最后的决赛中,Sounding Board (https://sounding-board.github.io/)团队的平均对话持续时间为 10 分 22 秒,远超第二名的 3 分 55 秒。雷锋网 AI 科技评论第一时间联系到团队成员——华盛顿大学的在读博士生方昊和程浩,针对此次比赛的个中细节对其进行采访。
据方昊介绍,初次接触这次比赛,是在华盛顿大学的 Mailing List 上看到有教授在进行推广。参加这次比赛的原因也很简单,「我看到之后,觉得看起来很有意思,于是和程浩商量了一些想法,再向导师咨询了一些意见,决定参加这次比赛。」
「Sounding Board 是一个 5 人团队,除了我和程浩,其他 3 名成员分别是 Elizabeth Clark,Ari Holtzman,Maarten Sap,他们也都是华盛顿大学的博士生。」方昊对 AI 科技评论表示,「我们在比赛中的主要指导老师是 Mari Ostendorf,她同时也是我和程浩的博士生导师。此外,在比赛过程中,Yejin Choi 和 Noah Smith 作为其他三人的博士生导师,也为团队提供了很多指导意见。」
上图从左至右:方昊,程浩,Ari,Mari,Maarten,Elizabeth,Yejin
雷锋网 AI 科技评论了解到,Sounding Board 团队中每个人的研究都有不同的侧重点,涵盖机器学习、深度学习、人机协作、心理语言学,不过有一个共同点,大家都共同关注自然语言处理。
那么,集合了这么多不同背景的博士生团队,在此次比赛中的策略是什么?为了打造这样一个开放式的聊天机器人,他们的方法又有哪些?以下为雷锋网 AI 科技评论与 Sounding Board 团队的对话详情,相信大家可以从中一窥究竟:
图:Sounding Board 对话系统
1、比赛从初赛到结束持续了多久?在初赛和复赛过程中,你们整体的时间点规划如何?
比赛持续了大概一年。因为我们队伍没有任何已有的对话系统,所以我们的规划是一边实现一个可以上线的对话系统,一边尝试各种各样的新功能。
2、在这次的比赛中,你们主要面临的难点有哪些?你们的系统主要由自然语言理解(NLU)、对话管理(DM)和自然语言生成(NLG)这三个模块组成,在构建这三个模块的过程中,分别有哪些挑战?
一个很大的难点在于之前基本上没有任何人机社交对话的数据,很多已有数据集都是任务导向的或者纯闲聊式的。所以我们需要很谨慎地构建自己的数据集和模型。
在自然语言理解方面,主要的挑战在于系统需要从多方面理解用户,包括用户的目的(intent)、问题、命令、情感、提到的话题等,同时我们还需要考虑到语音交互和文本交互的不同。
在对话管理方面,主要的挑战在于设计最优的策略来响应用户的需求并且吸引用户与系统进行更多的有意思的对话。
而自然语言生成方面的挑战在于如何使生成的回复更加人性化,比如我们经常需要明示或者暗示用户我们听到了用户的问题、命令,或者他们表达的情绪,而不是生硬的说出一个问题的答案。
除了以上提到的三个模块,在我们的系统中,还有一个至关重要的模块--内容管理模块。
Sounding Board 的一个主要策略是进行以内容为导向的对话,所以我们的内容管理模块会在网上爬取大量有意思的,适合语音交互的内容,然后选取相关的内容来进行对话。这里的挑战在于我们需要排除掉很多争议性的,歧视性的,或者不适合家庭对话的内容。
3、在此次比赛中,亚马逊为你们提供的数据有哪些?除了亚马逊提供的数据,你们提到一开始尝试过电影和研讨会上的文本,但它们和实际用户有很大的差别,你们是怎么处理的呢?在决赛中又引入了其他数据吗?
在此次比赛中,亚马逊为我们提供免费的 AWS 资源和一些云计算方面的技术支持,此外,在数据方面亚马逊还提供华盛顿邮报的 API。
我们发现很多已有的对话文本数据集和实际用户的交互有非常大的区别,所以我们转而构建自己的数据集。这里就涉及到前面提到的内容管理模块,我们在网上爬取各种适合对话的内容之后,进而构建自己的知识图谱(Knowledge Graph)。
我们在使用各种数据的时候非常谨慎,对爬取的内容会进行很多处理,例如风格转换以及简化,从而使得它们适合于语音交互。并且我们会通过实时的用户对话的反馈来改进我们的内容管理模块。
在决赛阶段中,一个很重要的工作是由程浩完成的——根据网上爬取的关于电影的知识图谱来进行一小段比较有深度的对话。同时,在决赛阶段,我们也改进了内容管理模块,包括扩展内容爬取范围,部署新的内容处理模型。
4、聊天机器人分为开放式和特定任务式,你们这次构造的聊天机器人需要既能同时满足用户的闲聊需求(开放式),又能解决用户在特定领域的专业回答(特定任务式)吗?
Alexa Prize 的目标是开发一个社交对话系统,从而使得机器人可以与用户进行连贯的、吸引人的对话,比较偏向于开放式的对话。
Sounding Board 的策略是进行以用户为中心,以内容为导向的对话。
以用户为中心主要表现在我们会尽可能的响应用户的命令或者问题,同时 Sounding Board 还会通过一些问题来了解用户的性格,从而更好的规划对话。
以内容为导向表现在系统会不断通过抛出新的内容来吸引用户将对话进行下去。比如当用户提了一个问题的时候,我们不仅仅会给出这个问题的答案,还会尝试推荐和这个问题相关的其他内容。
5、为了构造这种能进行开放式话题的聊天机器人,你们是怎么做的呢?
在开放式话题上,我们需要涵盖很广的内容,并且需要区分领域(domain)和话题(topic)。运动、政治、娱乐、技术都属于「领域」,此外还要涵盖各种各样的话题(比如世界杯比赛,奥斯卡颁奖典礼等)。
我们使用了一些文本分析模型来对爬取的内容进行索引,并把他们组建成知识图谱。同时,当用户提出一些话题但是知识图谱中暂时没有相关的内容时,Sounding Board 会尝试推荐相关的其他话题来吸引用户。
总的来说,为了进行开放式的社交对话,Sounding Board 的对话管理模块(DM)会首要响应用户的需求,同时将内容推荐作为潜在任务来推进对话的进行。
6、由于用户具有多样性,为了让产生的回答更符合用户的喜好,这其中又面临哪些挑战?你们是如何处理的?
Sounding Board 的内容管理模块会尽可能的剔除掉不适合对话的内容,保留有意思的内容。同时对话管理模块会根据对话的历史以及内容的属性来选取最优的策略进行对话。
另外,Sounding Board 有一个用户性格分析模块,这个模块会通过一些心理学的问题来了解用户的性格从而更好地进行内容推荐。
7、除了以上提到的功能:能和用户在多个话题上交谈,产生出吸引用户兴趣的回答,这个系统还需要能满足其他什么功能,对于对话时长、对话轮数是否有要求?是否需要设计出一个具备「情感」的机器人?
主办方对于对话时长和轮数没有特别的要求。Grand Prize 奖要求系统能进行 20 分钟的对话,今年还没有队伍达到这个目标。
由于这个系统是面向客户的,一个很重要的要求是不能使用户产生不适感,比如不能使用带有咒骂或歧视性的语言,也不能产生对小孩或者宗教不友好的话题。
机器人的「情感」是一个开放的问题,大家普遍会为机器人设计一个背景故事,从而使得它能回答用户的一些特定问题(比如它最喜欢的颜色、歌曲等)。
8、你们的工作结合了以前的哪些研究,具体做了什么优化和改进?目前深度学习的方法应用很广泛,你们在比赛中是否有用到深度学习的方法?
我们的工作结合了我们以前关于社交媒体、数据挖掘、语音处理、心理语言学的研究,其中一个主要的工作在于把这些研究应用到对话系统上。
在没有足够并且合适的数据前,深度学习的优势很难被利用。我们在线下部署了一些深度学习的模型,但是由于比赛的时间限制,我们还没有将它们部署到最终系统里面。Sounding Board 采用了模块化的设计,通过这次比赛,我们得到很多宝贵的交互数据,我们正在探索和开发新的模型来改进现有的各个系统模块。
9、你们在决赛上平均得分是 3.17 分,排名第一,这个分数是依据哪些指标来评判的呢?
在决赛阶段,亚马逊邀请了 3 位裁判和 3 位交互者(interactor)。每位交互者会和每个系统进行 2 次对话,但是他们不知道系统是来自哪个队伍。交互者会尽可能的和系统进行交流,3 位裁判会通过耳机听到对话,然后会在他们觉得不需要再继续进行对话的时候按下停止键。当有 2 位裁判按下停止键的时候,对话会被强制终止。3 位裁判会根据对话的质量给出 1-5 之间的一个分数。
10、你们团队平均对话持续时间是 10 分 22 秒,而第二名的平均时间是 3 分 55 秒,在这里你们占据了压倒性的优势,在这里能远远领先的关键是什么?
这里主要涉及到前面提到的 Sounding Board 的策略:以用户为中心,以内容为导向。
用户能够控制对话的走向,随时转化话题,给出命令。
Sounding Board 会不断推荐新的、高质量的内容,响应用户的各种需求,回应用户的情绪。
构建了为对话设计的知识图谱,里面涵盖了比较多样化,高质量的内容,所以能进行一些风格多样化的对话。
11、目前想要创造这种聊天机器人,你认为最大的难点在哪里?而如果想要在工业中应用,你认为 Sounding Board 还有哪些需要改进和完善的地方?
现在对这种聊天机器人的研究还刚刚起步,所以存在很多挑战。我们认为其中的一个难点在于理解用户的语言和情绪,另一个难点在于组建高质量的知识图谱。
Sounding Board 在这两个方面还存在很大的改进空间。
此外,如何进行更加深度的对话也是一个很大的挑战。虽然我们尝试了一些方法,但离目标还有一段距离。
12、今年是第一届比赛,你认为今年的比赛对能力的考察主要侧重在哪些方面?对于接下来参加类似比赛的同学,有什么好的建议和经验分享呢?
想要在比赛中取得满意的结果,首先需要注重用户分析。我们在分析用户交互方式和需求方面花了很多精力。
而想要打造像 Sounding Board 这样的系统,大家需要掌握自然语言处理和数据挖掘这两个比较重要的技能。
同时,也需要一定的系统工程方面的基础——可以在短时间内开发一个能部署在云端的系统,并且能够响应海量用户请求。
我们的策略是让系统尽早上线,从而可以分析用户的交互模式,进而对系统进行迭代更新。
13、今年主办方提供给第一名的奖金是 50 万美元,你们的奖金打算如何分配呢?接下来打算如何利用这些奖金?
根据比赛主办方的规定,50 万美元会平分给 5 个学生。我们暂时还没有计划如何使用这些奖金。
这个阶段我们更注重在现有的系统上做出一些高质量的研究。
14、未来会考虑往什么方向发展?
方昊:我大概在今年夏天毕业,我的研究方向主要是自然语言处理、对话系统和机器学习。未来会考虑往工业界发展,做更多比较前沿的,和用户、产品有紧密联系的研究。
程浩:在这次比赛中,我们队伍积累了很多宝贵的资源和经验,我希望继续在机器学习和自然语言处理方向做一些深入的研究,准备明年毕业。
(完)