对话智能挑战与非目标导向人机对话数据集分析
1 引言
在评估聊天机器人时,任务往往缺乏明确规范,其测试结果会因对话主题、长度以及用户行为限制等因素产生显著差异。为探索评估的可能场景,我们创建了对话智能挑战(Conversational Intelligence Challenge,ConvAI)。
2 相关工作
2.1 与其他评估活动对比
ConvAI并非唯一的聊天机器人评估活动,其著名的对手是Alexa Prize。Alexa Prize在2017年首次举办,并在2018年继续开展。它与ConvAI有以下不同:
- Alexa Prize不定义聊天机器人的通用场景,各团队可自由选择,这使得竞赛更加多样化。
- Alexa Prize由评审团选出获胜者,而ConvAI通过众包进行人工评估。评审团虽了解对话系统开发的主要挑战,但他们对聊天机器人质量的看法可能与普通用户不同。ConvAI邀请普通公众中的志愿者和付费工人评估聊天机器人,这种场景更接近聊天机器人的实际使用情况。
2.2 评估方式的局限性与需求
目前聊天机器人的评估只能手动进行,虽对改进先进对话系统有用,但对于其高效开发而言还不够。手动评估耗时且昂贵,即使通过众包进行也是如此,因此除非有大量用户基础,否则无法频繁进行。所以,有必要能够快速且低成本地对模型进行评分,以评估每个小变化和新特性的影响。
在自然语言处理(NLP)和机器学习(ML)的其他应用中,如果能为给定任务定义唯一的真实答案,评估就相对容易。但在自然语言生成(NLG)任务中,存在多个正确答案,评估更具挑战性。一些自动指标,如用于机器翻译的BLEU、METEOR,用于文本摘要的ROUGE,基于系统答案应与真实答案共享一些单词和/或含义的假设,在一定程度上有效。然而,这些指标在对话系统评估中失败,因为聊天机器人的好答案不一定在任何方面都与真实答案相似。因此,现有的NLG指标都不适合评估对话系统。
不过,我们仍希望能够自动评估聊天机器人的输出。由于NLG指标无法用于此目的,一种替代解决方案是开发一个可以训练来预测对话质量的系统。目前存在一些用于评估对话、机器翻译和NLG的此类系统示例,但训练这样的模型需要标注数据,而现有的此类数据集很少且规模小,无法训练出性能良好的模型。我们对聊天机器人的手动评估产生了一系列由人类评估者在不同粒度级别评估的人机对话,这有助于自动评估指标的开发。
3 对话智能挑战(ConvAI)
3.1 目标
ConvAI的目标包括:
- 为聊天机器人制定标准评估设置。
- 评估最先进的聊天机器人,以确定聊天机器人开发的最佳实践。
- 开发任务以解决最先进聊天机器人的弱点。
- 创建一个开源聊天机器人池,可作为进一步研究的基线。
- 收集人机对话数据集。
3.2 评估方式与流程
我们提出评估场景,对提交的聊天机器人进行自动和手动评估。竞赛获胜者必须将其模型开源,其他参与者也被鼓励这样做。评估期间生成的对话会被发布。
3.3 历届情况
- ConvAI 2017 :聊天机器人需要与人类讨论维基百科文章的摘录,旨在测试系统理解文本并在对话中适当使用的能力。评估聊天机器人质量的唯一方式是用户在对话后给出的评分。为使评估更具信息性,我们要求用户评估对话的三个方面:广度(就主题覆盖而言)、同伴参与度和整体质量。但此设置对人类和聊天机器人都过于具有挑战性,文本对人类来说往往太难且无聊,他们不愿讨论,聊天机器人也无法把握文本主题。
- ConvAI 2018(ConvAI2) :采用不同场景,用户和聊天机器人需要就共同话题(如爱好、家庭、宠物、喜欢的食物等)进行对话。使用PersonaChat数据集为每次对话提供一个新的、未见过的角色描述,双方在对话开始时收到角色描述,并在整个对话中模仿该角色。此设置为聊天机器人提供了一致的个性,还测试了其文本理解能力和保持长上下文的能力。与第一次ConvAI类似,主要评估方式是人类提供的评分,但在竞赛早期,我们使用自动指标选择了7个表现最佳的系统,指标包括困惑度、hits@1和F1分数。
3.4 数据集情况
在ConvAI竞赛过程中,我们收集了四个数据集:
- ConvAI数据集(2017)
- ConvAI2数据集(2018):
- 官方人工评估数据集(通过亚马逊机械土耳其人收集)
- 付费工人的人工评估数据集(通过Yandex.Toloka收集,这些用户被称为tolokers)
- 志愿者的“野生”评估数据集
2018年的官方评估数据集与其他三个有显著差异。它使用1 - 4的评分尺度,而其他实验使用1 - 5的评分尺度。此外,其对话长度分布与其他数据集明显不同,该数据集中绝大多数对话的长度在4 - 6轮之间。而我们与志愿者的实验中未限制对话长度,导致有大量极短对话无法用于分析,但其余对话比官方评估数据中的对话长得多。通过Yandex.Toloka收集对话时,我们未指定对话的期望长度,对话也比通过MTurk收集的长,这种设置更接近志愿者生成对话的场景。由于官方人工评估数据集与其他三个数据集差异太大,我们将其排除在分析之外,并比较其余三个数据集。
4 数据集
4.1 任务描述
ConvAI的目标是创建一个既让用户参与又对聊天机器人具有挑战性的评估设置,同时不应过于具有挑战性,以免系统无法完成任务。为了刺激聊天机器人改进其常见缺点,如缺乏一致的个性、缺乏明确的长期记忆、倾向于产生非特定答案,我们为不同届的ConvAI选择了不同任务:
-
ConvAI 2017
:要求聊天机器人和人类评估者讨论对话开始时给出的短文,目标是将讨论限制在一个主题上,使其更有针对性和趣味性,隐式识别用户意图,检查聊天机器人的文本理解能力。但实际情况是,讨论的文本来自SQuAD数据集中的维基百科文章摘录,对人类用户来说往往太难或太无聊,他们回到无特定主题的开放域对话。
-
ConvAI 2018(ConvAI2)
:为提高用户参与度,选择了不同任务,用户和聊天机器人就常见话题进行对话。使用PersonaChat数据集为每次对话提供新的角色描述,双方在对话开始时收到描述并模仿该角色。这种设置为聊天机器人提供了一致的个性,测试了其文本理解能力和保持长上下文的能力,并且我们认为闲聊比讨论维基百科文章更能吸引用户。
4.2 数据收集设置
- 官方人工评估 :通过ParlAI框架进行,该框架专为对话系统开发而设计,集成了亚马逊机械土耳其人,可轻松建立众包场景。
- 其他数据集收集 :通过我们的数据收集框架进行,该框架启动对话系统,随机将其与用户连接,保存他们的对话和评估。外部用户可通过Telegram和Facebook Messenger消息服务连接到该框架,与随机选择的聊天机器人聊天并在对话后完成评估任务。
为吸引用户参与评估,我们通过Facebook宣传竞赛,约120K Facebook用户在3周内收到广告。我们针对年龄在18 - 40岁,对聊天机器人、人工智能、在线聊天、信息技术或机器学习感兴趣,位于加拿大、印度和美国的人群。对话统计显示,评估者中95%为男性,5%为女性,年龄大多在18 - 24岁之间。
此外,在Deep - Hack.Chat黑客马拉松期间,我们让付费用户参与数据收集,通过Yandex.Toloka服务收集对话,该服务类似于亚马逊MTurk,但主要在俄罗斯和前苏联国家运营。在这些实验中,我们要求用户通过Telegram聊天。
2017年的实验与上述两种场景类似,我们吸引志愿者进行评估,主要在俄罗斯大学的计算机科学学生中宣传数据收集。第一届ConvAI决赛的对话由从NIPS 2017会议参与者中招募的志愿者生成。
大多数为数据集做出贡献的用户是非英语母语者。通过Yandex.Toloka收集数据时,我们要求工人在完成对话生成任务前通过英语测试;吸引志愿者时,我们未检查他们的英语水平,因为我们假设他们没有报酬,若不懂英语就没有理由假装与机器人聊天。
4.3 ConvAI2数据统计
实验中收集的一些对话太短,无法用于分析,我们将其丢弃,只分析每个参与者至少有三次发言的对话,称为长对话。表1展示了2017年和2018年收集数据的统计信息:
|年份|志愿者|Tolokers|志愿者|总计|
|----|----|----|----|----|
|对话数量|4750|3197|1209|4406|
|长对话数量(占比)|2640(56%)|1696(53%)|537(44%)|2233(51%)|
|平均每对话发言次数|17.16|21.41|23.97|22.03|
|平均每发言单词数 - 人类|5.73|6.26|5.17|5.96|
|平均每发言单词数 - 机器人|8.88|10.19|10.41|10.26|
|平均每发言单词数 - 总计|7.38|8.37|7.77|8.21|
从表中可以看出,大约50%的对话需要丢弃,这表明短对话在众包实验中不可避免,为获得N个有意义的对话,大约需要收集2N个对话。所有数据集的另一个共同特征是人类参与者和聊天机器人生成的发言长度存在差异,聊天机器人产生的答案更长。人类倾向于使用省略结构,可能产生极短的答案,这在新数据集中仍然存在,表明这是人机对话的固有特征。
4.4 对话验证
在2017年的实验中,我们发现对话长度并不总是表明其质量,有些长对话可能毫无意义,因为用户没有尝试与聊天机器人进行有意义的对话,而是输入随机话语、重复自己或骂人。
在2018年与付费工人(tolokers)的实验中,我们手动检查了一些对话的有效性。我们要求评估者阅读对话,并将包含以下情况的对话标记为无效:
- 短对话(任何一方发言少于3次)
- 无意义的答案
- 过长的答案
- 重复的答案
- 非英语答案
- 脏话或侮辱性语言
这些仅适用于人类答案。如果聊天机器人产生了无意义、重复或过长的答案,我们不会将此类对话从数据集中排除,只有当人类参与者不诚实时才会丢弃对话。我们在手动分析2017年对话后发现人类在数据收集过程中倾向于作弊,简单的启发式方法,如对话和发言长度、语言识别和黑名单单词搜索,无法过滤掉所有无效对话,因此我们聘请人类评估者对对话中人类同伴的表现进行评分,并指出“糟糕”的对话。
由于我们只对2018年部分对话进行了此评估,无法将数据集分为有效和无效两部分,因此我们将有效对话与整个数据集和无效对话进行比较:
-
有效对话与无效对话对比
:评估者从所有对话子集中标记出481个有效对话和369个无效对话。有效和无效对话存在鲜明对比,对话和发言的长度差异巨大,平均每个对话的发言次数分别为21.74和4.77,平均每个发言的单词数分别为8.89和6.61。91%的无效对话因长度不足而被丢弃。
-
有效对话与所有对话对比
:与无效对话相比,有效对话与未标记有效性的其余长对话相比,差异不显著。有效对话的平均发言次数略多于整个数据集的平均发言次数(21.74 vs 21.14),平均发言长度也有类似的微小增加(8.89 vs 8.36)。因此,过滤掉短对话可以合理近似有效性检查。
以下是对话验证流程的mermaid流程图:
graph LR
A[收集对话] --> B[初步筛选长对话]
B --> C[人工评估]
C --> D{是否符合无效标准}
D -- 是 --> E[标记为无效对话]
D -- 否 --> F[标记为有效对话]
综上所述,我们通过ConvAI活动和相关实验,对聊天机器人的评估进行了多方面的探索,收集了大量人机对话数据,并对数据进行了分析和验证,为聊天机器人的研究和开发提供了有价值的参考。
5 有效对话与无效对话的深入分析
5.1 有效对话的特征
有效对话在长度和内容上都有一定的特点。从长度来看,平均每个对话的发言次数达到21.74次,平均每个发言的单词数为8.89个。这表明有效对话具有一定的连贯性和丰富性,双方能够持续交流,并且表达的内容较为充实。
在内容方面,有效对话往往围绕着设定的主题展开,无论是讨论维基百科文章还是基于角色的闲聊,参与者都能够保持话题的一致性,避免出现无意义的话语。例如,在基于角色的对话中,双方能够根据给定的角色描述,展现出该角色的特点和风格,进行有针对性的交流。
5.2 无效对话的原因
无效对话主要有以下几种原因:
-
长度不足
:91%的无效对话是因为任何一方发言少于3次,导致对话无法深入进行,缺乏足够的信息和交流。
-
内容无意义
:包括随机话语、重复自己的内容,这些对话没有实际的交流价值,无法推动对话的发展。
-
语言问题
:非英语答案、脏话或侮辱性语言等不符合对话规范的内容,也会使对话被标记为无效。
5.3 对话有效性对评估的影响
对话的有效性对聊天机器人的评估结果有着重要的影响。如果大量无效对话存在于数据集中,会导致评估结果不准确,无法真实反映聊天机器人的性能。例如,一些短对话可能无法充分展示聊天机器人的能力,而包含无意义内容的对话则会干扰评估指标的计算。因此,在评估聊天机器人时,需要对对话的有效性进行严格筛选,以确保评估结果的可靠性。
以下是有效对话和无效对话特征对比的表格:
|对比项|有效对话|无效对话|
| ---- | ---- | ---- |
|平均发言次数|21.74|4.77|
|平均发言单词数|8.89|6.61|
|内容特征|围绕主题,有连贯性|随机、重复、无意义|
|语言规范|符合英语表达,无侮辱性语言|可能包含非英语、脏话等|
6 评估指标与挑战
6.1 现有评估指标的局限性
目前,手动评估虽然能够提供较为真实的用户反馈,但存在耗时且昂贵的问题,无法频繁进行。而现有的自动评估指标,如BLEU、METEOR和ROUGE等,在聊天机器人评估中并不适用,因为聊天机器人的好答案不一定与真实答案在单词或含义上相似。
例如,在对话中,用户的问题可能有多种合理的回答方式,而这些指标往往只关注与参考答案的相似度,无法全面评估聊天机器人的表现。此外,这些指标也无法考虑到对话的上下文、情感和语义等因素。
6.2 开发新评估指标的需求
为了更准确地评估聊天机器人的性能,开发新的评估指标是必要的。新的评估指标应该能够综合考虑对话的多个方面,如对话的连贯性、话题的相关性、回答的质量等。同时,还需要能够适应不同类型的对话场景,如基于文本的对话、基于角色的对话等。
我们通过ConvAI活动收集的大量人机对话数据,为开发新的评估指标提供了宝贵的资源。可以利用这些数据进行训练和验证,以提高评估指标的准确性和可靠性。
6.3 自动评估系统的发展方向
自动评估系统的发展方向主要包括以下几个方面:
-
结合深度学习模型
:利用神经网络等深度学习模型,对对话进行建模和分析,提取对话的特征和语义信息,从而更准确地评估对话的质量。
-
考虑上下文信息
:在评估过程中,不仅要考虑当前的回答,还要考虑对话的上下文,以更好地理解回答的合理性和连贯性。
-
融合多模态信息
:除了文本信息外,还可以考虑融合语音、表情等多模态信息,以更全面地评估聊天机器人的表现。
7 未来展望
7.1 聊天机器人的改进方向
基于我们在ConvAI活动中发现的聊天机器人的常见缺点,未来聊天机器人的改进方向主要包括:
-
建立一致的个性
:通过使用角色描述等方式,为聊天机器人赋予一致的个性,使其在对话中能够表现出独特的风格和特点。
-
增强长时记忆能力
:开发具有明确长期记忆的机制,使聊天机器人能够记住对话历史,更好地理解上下文,提供更连贯的回答。
-
减少非特定答案
:提高聊天机器人的语义理解能力,避免产生“我不知道”等非特定的回答,提供更具体、有针对性的答案。
7.2 评估方法的优化
未来评估方法的优化需要结合手动评估和自动评估的优点。一方面,继续改进手动评估的流程和方法,提高评估的效率和准确性;另一方面,加大对自动评估指标和系统的研究和开发,使其能够更全面、准确地评估聊天机器人的性能。
例如,可以将人工评估的结果作为训练数据,用于自动评估系统的训练,以提高自动评估系统的性能。同时,也可以将自动评估的结果作为参考,辅助人工评估,减少人工评估的工作量。
7.3 数据集的进一步利用
我们收集的大量人机对话数据集具有很高的价值,可以在多个方面进行进一步的利用:
-
模型训练
:将数据集用于聊天机器人模型的训练,以提高模型的性能和泛化能力。
-
算法研究
:利用数据集进行新的对话算法和技术的研究,探索更有效的对话策略和方法。
-
评估指标开发
:如前文所述,利用数据集开发更准确、可靠的评估指标,为聊天机器人的评估提供更科学的依据。
以下是未来发展方向的mermaid流程图:
graph LR
A[聊天机器人改进] --> B[建立一致个性]
A --> C[增强长时记忆能力]
A --> D[减少非特定答案]
E[评估方法优化] --> F[结合手动与自动评估]
F --> G[提高自动评估性能]
F --> H[辅助人工评估]
I[数据集利用] --> J[模型训练]
I --> K[算法研究]
I --> L[评估指标开发]
综上所述,通过ConvAI活动和相关研究,我们对聊天机器人的评估和开发有了更深入的认识。未来,我们需要不断改进聊天机器人的性能,优化评估方法,并充分利用数据集的价值,以推动聊天机器人技术的发展。
超级会员免费看
849

被折叠的 条评论
为什么被折叠?



