Learning from Easy to Complex: Adaptive Multi-curricula Learning for Neural Dialogue Generation
论文信息:地址, [代码](https://github.com/hengyicai/Adaptive Multi-curricula Learning for Dialog)
概述
许多最新的对话生成方法都遵循数据驱动的范式:通过大量查询-响应对训练后,使模型模仿人类对话。因此,数据驱动方法严重依赖于用于训练的问答对。
但是,由于人类对话的主观性和开放性,训练对话的复杂性差异很大。它们中有些容易学习,有些过于复杂,甚至可能还含有噪声。问答对伴随的噪声和不均匀的复杂性阻碍了学习效率和学习效果。
受到人类从易到难进行学习的启发,该文决定引入课程学习(curriculum learning)到对话生成模型中,让模型首先学习简单对话,然后逐渐学习复杂对话。要做到这样,还是有两个问题需要解决:1)如何自动评估对话的复杂性;2)对话复杂性不能只由单属性决定,而是由多属性决定。
总的来说,该文提出了一个基于强化学习范式的自适应多课程学习(multi-curricula learning)框架,可以根据神经对话生成模型的学习状态在不同的学习阶段自动选择不同的课程。
课程合理性(Curriculum Plausibility)
论文从五个方面考虑对话的复杂性,同时对PersonaChat,DailyDialog,OpenSubtitle三个数据集的对话进行了分析。
对话属性
特异性,为了避免产生通用无意义的回复,回复中生词越多则认为特异性越强。对于每个单词
其中,
重复性,顾名思义就是回复中是否包含很多重复的词,回复
其中,
问句相关性,通过问句和对应答复的余弦相似度来衡量:
其中,
连续性,在多轮对话中,当前回复还会触发下一个问句。因此除了计算回复与之前问句的相关性,还应该计算它与后续对话的相关性。
模型置信度,使用模型学习能力区分易学习样本和学习不足样本。论文采用预训练模型下的对话样本的负损失值作为模型置信度度量。
对话分析
依据上面提到的五个属性,从两方面对三个数据集中的对话进行分析。一个方面是利用小提琴图(violin plot)对五个属性进行密度分布分析,另一方面是通过Kendall相关系数分析属性之间的独立性。最终论文得出了一些有趣的结论,这里就直接上图表。
课程对话学习
单课程对话学习
首先以单课程对话学习为例,数据集中所有样本按照一个属性进行排序。在训练时间步
其中
自适应多课程学习
论文根据对话的五个属性,将训练集分别排序成五组,也就是所谓的五个不同的学习课程。自适应多课程学习就是要在不同学习阶段自动选择不同课程。下图展示了基于强化学习的整个学习过程,在时间步
课程的选择依据的是验证集指标。调度策略
具体而言,模型的学习状态包括mini-batch序号、历史平均训练损失、当前训练损失、预测概率与验证集度量的间隔,学习状态构成强化学习的状态。为了感知在每个课程
其中
其中
课程策略通过最大化奖励进行训练,论文使用REINFORCE方法进行优化:
其中
实验
改论文选用了多个对话生成模型进行实验,包括:SEQ2SEQ,CVAE,Transformer,HRED,DialogWAE。同时论文还选取了多个评价指标,包括BLEU,基于嵌入的指标,基于熵的指标等。具体的实验细节参见原文,实验结果如下图。其中a,b,c分别代表三个数据集,实心三角表示论文提出的方法。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
· 本地部署 DeepSeek:小白也能轻松搞定!
· 如何给本地部署的DeepSeek投喂数据,让他更懂你
· 从 Windows Forms 到微服务的经验教训
· 李飞飞的50美金比肩DeepSeek把CEO忽悠瘸了,倒霉的却是程序员
· 超详细,DeepSeek 接入PyCharm实现AI编程!(支持本地部署DeepSeek及官方Dee