【论文摘要】A Pre-training Based Personalized Dialogue Generation Model with Persona-sparse Data

本文仅为个人对论文的一点理解,如果有不对的地方烦请指正

戳我看论文原文

前置知识

1.大型预训练模型如GPT2的构造、原理、训练过程
2.Huggingface做的对大型预训练模型进行的fine-tune过程 戳我看论文

如果这两个知识你都有了解的话这篇论文就不难理解了。

论文背景:

\quad 1.为了让对话模型生成出更加human-like的回复,给模型以特定的性格背景等作为参考信息是必要的。
\quad 2.大型预训练模型比如GPT2和BERT由于使用了大量的语句做训练,它们的语言能力非常的强大,生成出的语句非常的流畅。虽然大型预训练模型并没有针对某一个领域进行训练,但是人们通过在预训练的基础上再在目标数据集上进行二次训练,得到的结果大多好过只用目标数据集训练的结果。
\quad 3.数据集PERSONA-CHAT是一个为了应对该任务而提出的一个数据集,数据集采用人工收集,在构造数据集时人们被要求按照给定的性格信息来进行模拟对话,由此造成参与者在短短的几句对话中包含了相当多的个人信息,论文称这种现象为"persona-dense"。

论文想要解决的问题:

\quad 1.真实的对话中,只有很少的对话会涉及到个人信息,我们称现实生活中的对话是“persona-sparse”的,上述persona-dense的数据集并不符合真实情况。
\quad 2.如果直接用大型预训练模型在PERSONA-CHAT类似的数据集上进行训练,那么模型很有可能过分的注重个人信息,从而造成句句都离不开个人信息,这在上述数据集上可能会得到很好的结果,但是却并不真实。
\quad 3.由于真实的对话中,涉及到个人信息的语句非常的少,所以直接在persona-sparse的数据集上训练很有可能模型更注重那些不包含个人信息的语句,个人信息在训练的过程中成了噪音。

论文的贡献:

\quad 提出了一个可以在persona-sparse的数据集上训练的预训练模型,实验显示效果不错。

\quad 提出了一种通过模型自动计算persona比重的方法

方法:

【论文摘要】A Pre-training Based Personalized Dialogue Generation Model with Persona-sparse Data_第1张图片
【论文摘要】A Pre-training Based Personalized Dialogue Generation Model with Persona-sparse Data_第2张图片
【HINT】下面有没看懂的字母可以在上面的图里找一下

\quad 训练数据集来自微博,收集了微博的评论内容以及发布评论的用户的性别、位置、喜好的信息,将这些信息的类别扩充到预训练模型的embedding中,比如性别分为<男>和<女>,位置信息分为各大城市,喜好信息分为不同的标签,性别位置比较好办,因为每个人只会有一个这样的信息。喜好信息比较特殊,一个人可能有多个喜好,文章的解决方法是将多个喜好信息的embedding加起来做一个平均。

\quad 将多个不同种类的信息的embedding加在一起作为历史对话信息中每个单词最终的embedding(如上面第二个图片所示),将embedding通过Encoder层就可以得到历史Dialogue的Encoding,然后将bot的目标性格当成特殊单词构成句子,也通过同样的Encoder得到persona的Encoding。

【论文摘要】A Pre-training Based Personalized Dialogue Generation Model with Persona-sparse Data_第3张图片
在这里插入图片描述
\quad 现在的问题就变成了,拥有历史对话的信息和目标性格的信息,目标是生成一个回复,这个回复可以包含很多个人信息,也可以完全不包含,那么这个度该如何把握呢?论文设计了一个二元分类器,他会根据之前的对话历史得到的encoding E c E_c Ec 得到一个0到1之间的persona参数 α \alpha α,模型将会按照这个参数调整输出feature的比重,最后得到一个混合的输出feature,看上面的公式不难发现, α \alpha α越大目标persona的输出 O T O_T OT占的比重就越大。为了训练这个二分分类器,论文对训练数据用脚本进行的标注,通过回答中是否包含个人信息的关键词来断定是否是一个persona的回答,有的话 α \alpha α的ground truth就是1,否则就是0,二分分类器的loss与模型生成回复的loss一起按照一定比例加和作为整个模型的loss。

\quad 由此整个论文的方法就介绍完了,至于效果,论文中case study很能说明问题,和其它模型的对比也很能说明问题,对这部分感兴趣的话请看原论文。

个人总结

论文切入角度非常棒,选取了一个非常不错的话题。把历史对话和性格分开来做,通过调整最后的比例来控制性格占比个人认为是一个非常神奇的想法。通过一个分类器来自动学习性格占比的方法学到了学到了。

你可能感兴趣的:(AAAI2020论文选读,人工智能,机器学习,nlp,AAAI)