第四届“小牛杯”幽默计算——聊天机器人幽默感挑战赛
对话场景下的幽默识别与幽默回复生成评测
一、任务介绍
幽默是一种特殊的语言表达方式,在日常生活中扮演着化解尴尬、活跃气氛、促进交流的重要角色。而幽默计算是近年来自然语言处理领域的新兴热点之一,其主要研究如何基于计算机技术对幽默进行识别、分类与生成,具有重要的理论和应用价值。
随着自然语言处理和情感分析技术的快速发展,人机对话系统逐渐成为近年来的研究热点,并受到越来越高的关注与期待。人们希望机器可以与人进行更深入的交流,这就要求机器在理解输入语句的基础上,产生更具有具有人类情感特征的回复,包括生成幽默风趣的回复。然而,赋予机器幽默感是一项具有挑战性的工作。为了生成具有幽默感的回复,机器一方面需要识别对话中的铺垫,找准合适的时机,另一方面也需要在其回复中引入幽默。因此,如何在对话中识别幽默和生成幽默,是人机对话和幽默计算领域面临的新的机遇和挑战。
在对话中,对每段话语(Utterance)的幽默识别不简单等同于对单个句子的幽默识别,而是需要综合考虑对话中的背景、上下文、说话人等信息,这些都是对话幽默识别(生成)任务中存在的独特挑战。情景喜剧通过运用各种引人发笑的表现方式与手法产生幽默艺术效果。不同的场景和不同的人物交流构成了一个个小剧场,是研究对话幽默的天然素材。本次评测以其作为载体,共设立两个子任务,从幽默理解与幽默生成两个角度评估参赛系统的“幽默感”,详细信息如下:
任务 1:对话场景下的幽默识别
使人机对话系统能够识别对话中的幽默是提升其幽默智能水平的第一步。相较于传统的幽默识别,识别对话中的幽默需要考虑背景、上下文和说话人等信息,具有更高的难度。本任务将对话划分为Dialogue和Utterance两个层级,一个Dialogue包含若干个有序出现的Utterance,要求参赛队伍提交系统识别每个Utterance是否幽默。
任务 2:对话场景下特定角色的幽默回复生成
在日常生活中,幽默不经意间在对话过程中产生,起着调节气氛、消除尴尬、缩短人与人之间距离的重要作用。使人机对话系统在聊天过程中生成具有幽默感的回复是提升其实用性和智能性的重要组成部分。在特定的语境下,人类很容易给出合适的幽默风趣的回复。但对于大多数的对话系统而言,其幽默领域的适用性相对较弱,通常无法给予用户具有幽默感的回复。本任务旨在探索对话系统的幽默生成,通过给予一定的对话铺垫,要求参赛系统生成特定角色的具有幽默感的回复。
二、数据介绍
任务 1:对话场景下的幽默识别
本次评测任务的原始数据均为英文数据,来自情景喜剧《老友记》与《查莉成长日记》。根据场景变换,情景剧的对话结构被分为Dialogue和Utterance两个层级,其中一个Dialogue包含若干个有序出现的Utterance。每个Utterance均进行了人工幽默标注,标签“0”表示非幽默,“1”表示幽默。《老友记》全部作为训练集提供,约包含700个Dialogue,10000个Utterance;《查莉成长日记》按一定比例划分为训练集、验证集和测试集提供,其数据规模正在统计中,具体细节将在评测正式开始前公布。所有数据均为csv格式。
数据样例字段如下(验证集和测试集无标签):
Field | Type | Description |
---|---|---|
id | int | Utterance 唯一编号 |
Dialogue_id | int | 对话编号 |
Utterance_id | int | 段内对白编号 |
Sentence | string | 对话文本 |
Speaker | string | 说话者名称 |
Label | int | 幽默标签 |
数据样例如下(验证集和测试集无标签):
ID | Dialogue_id | Utterance_id | Speaker | Sentence | Label |
---|---|---|---|---|---|
2540 | 191 | 1 | Ross | I can’t believe you’d rather go out with him than me. | 1 |
2541 | 191 | 2 | Rachel | Would you excuse me, please? I’m trying to have a date here. | 0 |
2542 | 191 | 3 | Ross | Fine, just stop thinking about me. | 0 |
2543 | 191 | 4 | Ross | Can’t do it, can you? | 1 |
任务 2:对话场景下特定角色的幽默回复生成
任务2与任务1共享同一数据集,该任务的训练集、验证集与测试集的规模和格式与任务1的训练集、验证集与测试集相同。但任务2的验证集与测试集的每个Dialogue的最后一个幽默句子(Label为1)空缺,由参赛系统生成特定角色的幽默回复。
验证集和测试集数据的格式如下表所示:
ID | Dialogue_id | Utterance_id | Speaker | Sentence | Label |
---|---|---|---|---|---|
2540 | 191 | 1 | Ross | I can’t believe you’d rather go out with him than me. | 1 |
2541 | 191 | 2 | Rachel | Would you excuse me, please? I’m trying to have a date here. | 0 |
2542 | 191 | 3 | Ross | Fine, just stop thinking about me. | 0 |
2543 | 191 | 4 | Ross,Rachel | NULL | 1 |
三、评价方式
任务 1:对话场景下的幽默识别
结合本次评测的特点,任务1采用以下评价指标进行评价:
(1)Utterance级评价指标:参赛者需要预测每个Utterance的幽默标签,即幽默(label=1)、非幽默(label=0)。该级别评价可视为二分类任务,采用F1分数进行评价,具体公式如下,其中P、R分别代表精确率(Precision)和召回率(Recall):
(2)Dialogue级评价指标:由于每个Dialogue长短(包含的Utterance个数)不同,参赛系统需要对不同长度的对话中的标签都能进行有效的预测。因此,Dialogue级别使用准确率进行评价。即首先计算每个Dialogue的准确率,再对所有Dialogue计算均值得到该级别评价指标。具体公式如下:
任务1的最终得分由上述两个指标综合决定,即:
任务 2:对话场景下特定角色的幽默回复生成
任务2为文本生成任务,此任务将从语言流畅度,雷同度、幽默感以及角色风格符合程度四个层次对参赛队伍对测试语料生成的回复进行评估。参赛队伍生成的回复被称为“候选回复”,测试集的真实回复被称为“标准回复”,下同。
(1)为了对参赛队伍生成候选回复的语言流畅度进行度量,将使用预训练好的2-gram概率语言模型计算候选回复文本的得分,得分记为P,得分越高,流畅度越高,具体公式如下,其中L为候选句子经分词后的长度:
(2)幽默具有多样性和灵活性的特点,我们不希望候选回复与标准回复过于雷同,为了对候选回复进行雷同度的评价,规定评价指标为BLUE,BLEU值越高,代表雷同度越高,具体公式如下:
其中$N=4$;$w_n=1/4$;$p_n$为候选回复的n-gram精度,即候选回复的n-gram词组在标准回复中出现的次数与候选回复的n-gram词组总数量的比值。$\mathrm{BP}$为简短惩罚因子,公式如下,其中$lc$为候选回复,$lr$为标准回复:
(3)为了度量候选句子的幽默程度,该任务选择计算候选回复和标准回复之间的语义相似度,相似度越高,候选回复越符合人们预期的幽默效果,因此会将候选回复和标准回复分别送入预训练好的语言模型获得编码表示后使用余弦相似度度量,相似度值记为$\mathrm{sim}$,如下图所示。
(4)由于我们要求生成特定角色的幽默回复,所以我们同样关注角色风格符合程度。因此我们设计了一个分类器来进行角色风格符合程度的判断,符合程度值$\mathrm{same}$的范围为0-1,分值越高越符合给定角色的语言风格。
任务2的最终得分由上述评价指标综合决定,其定义如下,式中$D$为任务2测试集样本总数。
队伍最终排名成绩依据综合任务1与任务2的分数
四、报名方式及赛程安排
报名时间
2022.7.4-2022.7.31
报名方式:
本次评测采用电子邮件进行报名,邮件标题为:“CCL2022-幽默计算-参赛单位”,例如:“CCL2022-幽默计算-大连理工大学”;邮件内容为:“参赛队名,参赛队长信息(姓名,邮箱,联系电话),参赛单位名称”。请参加评测的队伍发送报名邮件至相应邮箱:humorcomputing@163.com。
赛程安排:
本次评测分为两个阶段。
第一阶段:持续8周(2022.7.18-2022.9.11)。
比赛训练集、验证集将于7月18日发布。在该阶段,参赛队伍可在每周提交一次验证集结果,组织方会根据参赛队伍在验证集上的得分进行排名,并每周在GitHub上公布该周各个队伍的排名及分数信息。第一阶段成绩不作为最终成绩,仅为参赛队伍迭代模型提供参考。
第二阶段:持续2周(2022.9.12-2020.9.25)。
比赛完整测试集将于9月12日发布,参赛队伍需在最终截止日期前(含9月25日)提交完整测试集结果。同第一阶段,每个队伍每周有一次提交机会,组织方每周在Github上公布该周各个队伍的排名及分数信息,取两周中最好成绩作为参赛队伍的最终成绩。组织方将根据完整测试集上的得分对参赛队伍进行排名,同时该排名结果将会在CCL2022官方网站公布。
提交方式:
比赛的两个阶段均使用邮箱提交结果。参赛队伍需要将包含结果文件的邮件发送至邮箱humorcomputing@163.com,邮件的标题为“CCL2022-参赛队名”,邮件附件为两个子任务的结果文件。结果文件为无BOM的以utf-8为编码格式的csv文件,使用逗号“,”作为分隔符,使用“\n”作为每行结尾的换行符,命名格式为:参赛队名_任务x.csv。
例如:参赛队名为“CCL2022”,则提交文件名为“CCL2022_任务1.csv”和“CCL2022_任务2.csv”的两个结果文件。两个子任务提交结果的样例格式如下(提交的结果文件格式不正确不予计算成绩):
任务 1:对话场景下的幽默识别
ID | Label |
---|---|
1000 | 0 |
1001 | 1 |
… | … |
任务 2:对话场景下特定角色的幽默回复生成
Dialogue_id | Speaker | Sentence |
---|---|---|
191 | Ross | … |
191 | Rachel | … |
… | … | … |
五、奖项设置
- 本届评测将评选出如下奖项,颁发奖金和荣誉证书。
- 本评测奖金由小牛翻译独家赞助。
- 由中国中文信息学会为获奖队伍提供荣誉证书。
奖项 | 一等奖 | 二等奖 | 三等奖 |
---|---|---|---|
数量 | 一名 | 两名 | 三名 |
奖励 | ¥ 10,000 + 荣誉证书 | ¥ 3,500 + 荣誉证书 | ¥ 1,000 + 荣誉证书 |
六、注意事项
-
本次评测使用的数据集由网络获取,仅限于本次技术评测及学术研究使用,未经许可不能作为商业用途或其他目的。
-
训练集数据用于模型的学习,验证集和测试集用于模型的效果评测。其中验证集和测试集的标签信息不公开发布,用于组委会进行最终评测。
-
如需使用本数据集进行课题研究及论文发表,请联系:humorcomputing@163.com。
-
数据集的具体内容、范围、规模及格式以最终发布的真实数据集为准。最终解释权归于 CCL2022 与 DUTIR。
-
仅允许使用所有参赛者均可获得的开源代码、工具以及外部数据。
-
算法与系统的知识产权归参赛队伍所有,要求最终结果排名前 6 的队伍提供算法代码与系统报告(包括方法说明、数据处理、参考文献和使用开源工具等信息),供会议交流。