
提示该精读文章纯手搓无AI就是为了以人能看懂的视角讲清楚论文有问题或质疑尽情反馈文章内引用基本都来源于原论文依旧结构清晰的目录噢~论文相关信息1. 对于ERC这篇论文为什么值得一看先看一眼 o(〃▽〃)o 1.1 首先它不是直接的 ERC 阵营的论文1.2 它证明了规模和干净可以兼得1.3 它也有可能被误解2. WHY为什么已有的数据集还不“够”2.1 一类是太小域内任务型数据2.2 一类是太吵社媒发帖-回复数据2.3 还有一类是太长太散开放式电话/字幕语料2.4 从ERC 的视角补刀2.5 三类旧数据与DailyDialog 对照表3. 从对话例子开始DailyDialog 到底长什么样3.1 原论文示例对话原论文明确已被缩短3.2 例子想说明什么3.3 又可惜这个例子好得过分3.4 数据从哪来——最关键的一点缺陷3.5 基本统计3.6 两套手工标签意图情绪可谓DailyDialog 的灵魂3.7 话题分布、对话流规律和多轮流模式4. HOW那这套标注是怎么得来的4.1 标注流程4.2 从ERC 看这意味着什么5. 论文用它做了什么实验5.1 实验设置5.2 检索派4 种方法5.3 预训练教训最有价值的一段5.4 论文最后6. 术语表论文相关信息项目内容英文题目DailyDialog: A Manually Labelled Multi-turn Dialogue Dataset中文参考译名DailyDialog一个手工标注的多轮对话数据集作者Yanran Li、Hui Su、Xiaoyu Shen、Wenjie Li、Ziqiang Cao、Shuzi Niu香港理工大学计算系、中科院软件所、萨尔大学口语系统实验室LSV年份2017年发表出处IJCNLP 2017 长篇论文pp. 986–995论文链接https://aclanthology.org/I17-1099.pdf主要数据集DailyDialog1. 对于ERC这篇论文为什么值得一看先看一眼 o(〃▽〃)o 1.1 首先它不是直接的 ERC 阵营的论文论文作者写它时的目标读者本来是做对话系统chatbot开放域闲聊的人2017年前后大家正在为没有像样的开放域多轮训练数据发愁。与此同时文本ERC 仍然是一个小众方向——主流ERC 都是音频视频文本的多模态。但后来文本 ERCEmotion Recognition in Conversation流行起来后研究者们开始回眸存在的数据集——IEMOCAP 是音视频多模态的MELD 是电视剧本的EmoryNLP 是电视剧对话而 DailyDialog 是干净、纯文本、每句都带情绪标注、13118 段大规模多轮对话—— 简直是文本 ERC 的现成基准。所以现在刷文本 ERC 榜单时它没有宣称自己是ERC 数据却成了ERC 的事实标准数据之一。而有趣的事实是论文的用途从来不是原作者说了算的而是取决于研究者将其运用到何处。1.2 它证明了规模和干净可以兼得与社交网络“嘈杂”的对话话题噪声、缩写、口语垃圾和电影长篇对话每段对话1000轮、话题散漫相比DailyDialog 是一份有话题聚焦、平均8轮就结束、语言工整的日常对话数据——这才是贴近真实聊天的形态。它的语言是“human-written and less noisy”人写的且更干净这对当时的对话系统研究是难能可贵的别的开放域数据要么是机器转写的、要么是社交媒体垃圾、要么是电影台词。1.3 它也有可能被误解被当成方法论文它没有任何模型方法只是一个数据集 一圈 baseline 评测。被当成和 IEMOCAP【论文精读】 一样的高密度情绪语料IEMOCAP 几乎每轮都有情绪而 DailyDialog 有83.10% 的句子没有情绪labeled “Other”。情绪是点缀而不是主菜这是两者最本质的区别。被当成真实录音对话它的口语感反而是官方腔——因为它的语料本身是从英语学习者练习网站爬的。被当成ERC 论文它并没有跑过任何情绪分类实验。但恰恰因为作者没做后来者却把它当 ERC 基准时就更需要理清它与ERC的关系了。总的来说阅读该论文是为了合理使用对这块数据而不是学新方法。同时它也定义了文本 ERC 干净但稀疏基线数据的形态。2. WHY为什么已有的数据集还不“够”很显然在2017年想要一份像真人聊天一样的开放域多轮对话数据是基本没有的。作者在引言里把旧数据分成了三类每一类都有致命伤2.1 一类是太小域内任务型数据TRAINS货运调度、DBOX人机口语对话这类数据集说的是在某个具体场景里帮用户完成任务。原文“Traditional dialogue systems are often trained with domain-specific spoken dialogue datasets, which are often small-scale and oriented to complete a specific task.”它们规模小、绑定特定任务比如 TRAINS 必须聊火车货运训练出来的模型只能当客服不能闲聊更别提用来训练情绪——任务型对话里大家忙着办事情绪也逐渐沦为次要考虑因素。2.2 一类是太吵社媒发帖-回复数据Twitter Dialog CorpusRitter et al. 2011、中文新浪微博数据集Wang et al. 2013、Reddit 对话Al-Rfou’ et al. 2016。原文“Twitter Dialog Corpus and Chinese Weibo dataset are comprised of posts and replies on social networks, which are noisy, informal and different from real conversations.”发帖-回复结构没有真正的对话轮次约束人不一定回复语言极口语化缩写、错字、表情符号满天飞经常还有 3 个及以上的人混进来导致对话流完全散掉。2.3 还有一类是太长太散开放式电话/字幕语料Switchboard真实电话通话约150轮、OpenSubtitles电影字幕1000轮。原文“…comprise approximately 150 turns in a ‘conversation’ and thus are too disperse to capture the main topic.”一场对话里能聊吃、聊工作、聊八卦机器根本没法聚焦主题字幕对话更是电影台词——和你自己聊天完全是两个物种角色在讲故事不在交流信息。2.4 从ERC 的视角补刀以上三类里没有一类有像样的、人工的、逐句情绪标注域内数据不闲聊自然没情绪社媒数据情绪混乱不规范且多为中文噪点字幕对话情绪服务于剧情不是服务于表达自己。也就是说2017年想训练文本对话情绪识别几乎只能去多模态IEMOCAP 那类或者把电影字幕硬凑。它们要么没有情绪标签要么情绪标签不是围绕对话中的人的情感设计的。2.5 三类旧数据与DailyDialog 对照表数据类别代表数据集规模与形态情绪标注主要问题域内任务型TRAINS、DBOX、bAbI、Movie Dialog、Ubuntu小/中固定场景无规模小、绑定任务社媒发帖-回复Twitter、新浪微博、Reddit大但噪声大无/零散无轮次约束、语言噪声、混多人字幕/通话大语料OpenSubtitles、Switchboard大150~1000轮/段无话题太散、电影台词≠真实对话本论文 DailyDialog——13118段平均7.9轮/段逐句人工标注意图情绪教材腔、无说话者ID等该对照表说明DailyDialog 并没有完美解决所有问题——它解决的是语言干净有标注多轮这一组问题代价是牺牲了真实口语录音的自然度。真实世界中二者常常不可兼得。3. 从对话例子开始DailyDialog 到底长什么样3.1 原论文示例对话原论文明确已被缩短本例子源于原论文图一3.2 例子想说明什么先回应、再推进是真实交流的常态说话人 B 先对 A 的困扰做出反馈“That’s annoying…”然后才提出自己的建议“Just breathe deeply…”, “Is there anything else…”。B 的这些建议是原创的、紧跟上下文的——它证明了人的回答不是机械地一问一答而是先回应、再提出自己的问题/建议。实话说我个人并不认为驱动人在对话中的表达是可被完全预测的因为在IEMOCAP数据集论文中有另一套对话驱动框架这表明起码有两种驱动方式同时也有可能可以将二者结合而且对话本身的情绪表达就十分复杂原文“In the fourth speaker turn, speaker B first expresses his/her feeling on what he/she has heard from speaker A, which reveals his/her understanding. Then, speaker B suggests by saying ‘Just breathe deeply when you feel yourself getting upset.’ Following the direct response towards A, B’s suggestion is original yet context-dependent.”对话里情绪很丰富A 的 worried、traffic 带来的 frustrationB 的 sympathetic “That’s annoying”A 结尾的 relief “Thanks!”——正是这些情绪让对话有了人情味。3.3 又可惜这个例子好得过分可以注意到这个例子的结构完整性每一句都对得上、情绪转折自然、信息流转顺畅——这恰恰也是问题所在它是教科书级的自然而不是生活里的自然。生活中谁会把我堵车了“学校叫我代课”“周末有其他安排”要交论文这些信息编织得这么工整这正是这批语料的教材腔背景。3.4 数据从哪来——最关键的一点缺陷原文“To construct a multi-turn dialog dataset, we crawl the raw data from various websites which serve for English learner to practice English dialog in daily life.”数据是从英语学习者练日常对话的网站爬来的这就解释了为什么语言这么干净、正式、无噪声“human-written and less noisy”——因为它本质上是一批人工撰写/编辑的教学对话带教材腔而不是真实街头录音。预处理三连去重 → 过滤掉超过两人的对话三个及以上说话者的删掉→ 用 autocorrect 包自动纠正拼写。在我看来这是双刃剑。好处是标注人员省心、情绪边界清晰、不需要去噪坏处是它离真人碎片化聊天还有距离后人在上面做过学术上很干净、生活上被质疑的模型往往吃亏在这一点上。3.5 基本统计图二对比Switchboard 约150轮、OpenSubtitles 1000轮 → 它短、聚焦、话题集中更贴近真实两人闲聊的节奏。作者认为这种短对话更适合训练紧凑的对话模型。但从ERC 视角看7.9 轮的跨度意味着前文信息量是有限的——这对所有长程上下文建模的方法比如要管 20 轮历史的状态跟踪模型来说上下文不够长没有发挥空间。3.6 两套手工标签意图情绪可谓DailyDialog 的灵魂第一套四类对话意图dialog act标注意图依据 Amanova et al. (2016)本身适配国际标准 ISO 24617-2Petukhova, 2011也和 TRAINS、DBOX 等已有标注数据集一致。四类及分布类别中文解释定义论文概括数量占比Inform 告知在告知对方某事包含所有提供信息的陈述句包括以陈述形式给出信息的问句46,53245.2%Questions 提问想知道某事说话人想要知道什么、寻求信息29,42828.6%Directives 指令请对方做某事请求、指示、建议、接受/拒绝提议17,29516.8%Commissive 承诺回应做不做接受/拒绝请求或建议、应答提议9,7249.4%论文把前两类归为信息传递类后两类归为行动讨论类。从ERC 视角看意图和情绪是两条独立标注轴。后来很多 ERC 工作证明意图信息可以给情绪做辅助特征但在这篇论文里意图只是附加标注没被用来做任何情绪实验。第二套七类情绪BigSix Other情绪清单照搬 Ekman 的大六理论Anger, Disgust, Fear, Happiness, Sadness, Surprise外加第 7 类 Other。原文“Following (Wang et al., 2013), we adopt the ‘BigSix Theory’ (Ekman, 1992) to label each utterance in DailyDialog… we find it necessary to add additional category to represent other emotions. Hence, we have seven emotion categories in DailyDialog.”分布极其离谱地不均匀EU 仅统计六大类内部Total 占全部句子情绪句数占六类%占全部%Anger 愤怒1,0225.870.99Disgust 厌恶3532.030.34Fear 恐惧741.000.17Happiness 快乐12,88574.0212.51Sadness 悲伤1,1506.611.12Surprise 惊讶1,82310.471.77Other 其他85,572—83.1083.10% 的句子是Other/无情绪—— 日常闲聊中情绪本来就稀疏虽然这还算真实但这也意味着六大类情绪的合计占比才16.9%而且情绪类里Happiness 一个类就占了 74%在六类内部恐惧只有 74 句——训练出的情绪分类器很可能是一个快乐分类器 一个什么都算其他。论文自己在脚注里也坦白了原文“The imbalanced emotion categories suggest that it might be improper to label the emotion following ‘BigSix’ Theory (Ekman, 1992). However, we keep it in this work to follow previous work (Wang et al., 2013). To propose a novel emotion theory is beyond this work.”或许可以依此判断六类基本情绪并非日常对话的自然类别——日常对话里更多是微情绪无情绪的组合。3.7 话题分布、对话流规律和多轮流模式话题 10 类最大三类是 Relationship 关系33.33%、Ordinary Life 日常生活28.26%、Work 工作14.49%——论文表明这符合真实经验“我们常常邀请人社交、聊聊最近发生的事、八卦一下工作”。下图三对话流规律四类 dialog act 的两两组合显示出Questions→Inform你问我就答和Directives→Commissive你提议我应答这两种双轮流模式出现的频率明显更高说明日常交流不是乱序的而是有成对结构。Pattern 118.3%2,398 段一个说话人在同一轮里先回答对方的问题再反手抛出一个新问题让自己重新变成信息寻求者——比如 A 回答了 B 的问题后又问 B你呢。Pattern 29.2%1,203 段提议-被反驳-再提议-承诺形成Directives→Directives→Commissive型流。两个人往往观点不同通过互相抛出不同提议来说服对方。图三原文“The two patterns shed light on our daily communications style, which are merely found in single-turn datasets or task-oriented datasets like Ubuntu (Lowe et al., 2015) and restaurant reservation datasets (Bordes and Weston, 2016).”从ERC 角度看话题集中意味着场景情绪模式可能重复比如 Relationship 话题里很多客套喜乐情绪后来有文章指出 DailyDialog 上话题泄漏会影响情绪预测的来源之一。而 Pattern 1 的反手提问往往是情绪风向的转向点比如从烦躁变成好奇Pattern 2 的互相说服则是冲突情绪的温床——当然从始至终论文都没有做任何情绪-模式联合分析也为ERC的研究奠定了基础。本节小结简单地说 DailyDialog 是 教材级干净的 13,118 段双人多轮日常对话4 类意图7 类情绪10 类话题两套对话流模式和28% 结合的数据集。它就是一份文本对话的情绪密度稀疏版 IEMOCAP规模更大、纯文本、而语音和动作多模态完全缺席。4. HOW那这套标注是怎么得来的4.1 标注流程原文“To guarantee the annotation quality, we recruit three experts who have good knowledge in dialog and communication theory. After teaching them the criteria, we sample 100 dialogues for them to annotate and reduce the discrepancy by discussion among them. Then, they independently annotate the whole dataset and achieve the inter annotator agreement of 78.9%. When the disagreement happens, we follow the majority rule or let them re-annotate to find a ‘common’ annotation.”3 位懂对话和交流理论的专家不是随意招募的普通人员第一步教会标注标准后先抽100 段对话做预标注不一致的地方当面讨论、压缩分歧第二步三人独立标注全量13,118 段、约 10.3 万句第三步互评一致率 78.9%不一致时少数服从多数或让他们重标到共同为止。4.2 从ERC 看这意味着什么“情绪标签反映的是这个句子单独表达的情绪而不是说话者在整段对话语境中的真实情感状态”——后者才是 ERC 的核心对象。所以拿 DailyDialog 做 ERC 时务必分清是训分类器而不是在推情绪状态。如果追求DailyDialog 上能做状态跟踪需要注意“标注里什么是状态”但对于该数据集很显然没有它只有句子级离散标签。5. 论文用它做了什么实验5.1 实验设置划分训练/验证/测试 11,118 / 1,000 / 1,000 段对话词表 25,000越界词映射为 UNK300 维 Word2VecGoogle News 语料预训练编码/解码 RNN 均为1 层 GRU512 隐藏单元batch 128学习率 0.0002Adam交叉熵损失。全部用 TensorFlow 实现。评测对象响应检索4 种方法和响应生成基于序列到序列的 9 种方法全部是对话系统视角的评测——可惜且显然没有一个是情绪分类评测。5.2 检索派4 种方法Embedding嵌入相似度用 GRU 编码上下文按 cosine/Jaccard/Euclidean 距离的平均值选候选。是当时最常见的说话即向量做法类似 Luo and Li 2016。Feature特征相似度先用 TF-IDF 粗筛 1,000 个候选再用 fuzzywuzzy 的三个模糊串匹配特征QRatio、WRatio、Partial ratio精排。I-Rerank意图重排把候选回复的来源对话的意图历史如 {2,1,3}与测试上下文的意图历史比对越相似越排前。例如果测试意图历史是 {2,1,3}那么意图历史同样是 {2,1,3} 的候选回复会被加权。I-E-Rerank意图情绪重排同上只是额外加上情绪历史作为重排特征。结果表一感到意外的是加了意图/情绪重排后BLEU 反而没赢Feature 本身的 0.258 是被拉下的。论文后面还补了个标签等价率实验意图约 46.3 ~ 47.3%、情绪约 72.3 ~ 74.3%下表原文“Though subtle improvements can be seen when using labels, we speculate it as not a very strong evaluation metric. It is unsafe to conclude that the higher the ‘equivalence’ percentage is, the better (more coherent, more suitable) the retrieved response will be.”案例研究表二说明标签其实是有用的例一测试上下文意图是 {3,3}Directives-Directives真值是Thanks.“。带意图重排的 I / I-E 都检索出About how long will it take me to get there?”——它的来源上下文是问路→指路意图流 {3,3} 完全一致是对上号的回复而纯特征方法 F 检索出We’ve got some great mangoes on sale.完全答非所问。例二测试上下文情绪历史是 {1,0,0}愤怒→无→无真值 I will. Thank you, Mummy.“I-E 检索出Now we get along very well…”——它的来源上下文的情绪历史是 {6,0,0}惊讶→无→无情绪轨迹相似前面有情绪、后面回归平静。这说明情绪历史相似度确实有助于找到情绪流吻合的回复。表二关键结果表三表三中基座里 HRED 最好BLEU-1 0.396 Attn 0.335 Seq2Seq 0.352作者的解释是它考虑了历史信息——这也是 HRED 当初被发明出来吸引人之处标签增强有效尽管只是最朴素的 one-hot 用法LAttn-Seq2Seq 亮出了全场最高 BLEU-10.464和 BLEU-20.220连最弱的 LSeq2Seq 也比原始版本强原文“Furthermore, label information is effective even though we utilize them in the simplest way. These findings are consistent with previous work (Sordoni et al., 2015; Serban et al., 2016b).”预训练翻车了PPL 全线变低35.01 对比 55.94收敛更快epoch 只需 10~18但BLEU 全线崩塌而且最严重的 PreHRED 只剩 BLEU-1 0.153这意味着它基本在重复模板。5.3 预训练教训最有价值的一段作者的解释领域错配原文“OpenSubtitle dataset is constructed by movie lines, whereas our datasets are daily dialogues. Moreover, OpenSubtitles has approximately 1000 speaker turns in one conversation, while our dataset has in average 8 turns. To pretrain a model by corpus from different domain will harm its performance on the target domain.”案例研究表四上下文我要退房请把账单早 10 点前准备好 / 没问题先生真值Thank you.“——Attn无预训练生成all right, sir.”HRED 生成here you are.“都有模有样而 PreAttn 和 PreHRED 都生成how long will it take to get there?”——把酒店的对话生成了问路电影字幕里最常见的场景。预训练不是万金油领域的角色-场景错配会带来副作用。表四从ERC 的迁移看这个教训对 ERC 同样可以成立——想拿电影字幕/社媒文本大规模预训练情绪模型再直接上日常对话数据微调有理由怀疑会出现越训越糟的情况领域错配与数据规模具有区别。2019 年之后 BERT 系的大规模预训练之所以能在 DailyDialog 上大杀四方恰恰是因为预训练领域中性、覆盖面极广而不是靠电影台词这类窄域堆规模。5.4 论文最后原文“The evaluation results in Section 4 are initial but indicative.”全文没有任何情绪分类实验。但也正因如此后来者把它当 ERC 基准时所有的基准数字都是自己补的这既是自由同样也是风险与责任。6. 术语表术语中文说明ERC对话中的情绪识别dialog act对话行为一句话的交际功能BigSixEkman 六基本情绪Ekman 提出的六种普适情绪情绪密度有情绪的句子占总句子的比例bi-turn 对话流两句相互呼应的交际模式Pattern 1/2该论文发现的两种多轮流模式预训练领域错配用别领域数据预训练反而伤目标领域Inter-annotator agreement标注者间一致率Happiness-dominant快乐情绪在标注中占比压倒性utterance vs turn单句 vs 说话人轮次