PLATO-2: Towards Building an Open-Domain Chatbot via Curriculum Learning论文学习

news2025/1/22 19:09:31

一、概述

Motivation:直接提升PLATO的size训练不work

Methods:

  1. 通过curriculum learning技术来构建一个高质量的开放领域机器人
  2. 第一阶段:coarse-gained generation model:再简单的one-to-one框架下学习粗力度的回复生成模型
  3. 第二阶段:精调的模型来提高多样性和选择best的回复
    1. latent variables:提高多样性
    2. evaluation model:选择最好的回复

Conclusion:

  • 在中文以及英文数据集上,PLATO-2都获得了实质的提升
  • 在人类评估指标上非常不错,计算指标上与小冰差一点,小冰可能是检索型的方法来实现的
  • 在2020年DSTC9开放域,任务型,知识型对话任务上,都取得了第一名的成绩

二、大纲 

三、详细内容

  • Introduction

    • ​预训练模型在开放域对话取得了不错的进展

    • 竞品

      • GPT-2,DialoGPT在Reddit comments数据上预训练

      • ​meena,参数量提升到2.6B + 跟多社交媒体数据 => 回复质量有很大的提升

      • ​Blender:通过在人工标注的数据集上fine-tune来降低toxic,bias,并且强调环境、知识、同理心和个性等理想的对话技能

      • ​PlATO v1: 132M 参数 + 8M samples,提升PLATO参数规模会有训练不稳定以及效率问题

    • ​本文:

      • ​尝试去提升PLATO的size,并且通过curriculum learning技术来提高训练效率。

      • ​第一阶段:粗粒度生成模型,具备生成典型的多样性的回复能力,也可能造成典型而沉闷的回复,可能会有安全问题,但是对通用生成的概念的学习还是非常有用的

        • ​latent variables + evaluation => 聚焦于特定的任务,

      • ​对比v1版本,通过课程学习来逐渐学习回复生成,先从one-to-one,然后做成one-to-many,并且将模型的参数提高到billions的量级

      • ​在闲聊,任务型对话,知识型对话都取得不错的效果,在DSTC9上做了验证

  • Methodology

    • ​transformer结构 + pre-normalization,与seq2seq不同,没有独立的encoder和decoder网络

    • ​bi-directional上下文编码 + uni-directional 回复生成

  • Experiments

    • ​training

      • ​训练是在64个Nvidia Tesla V100 32G GPU卡上进行的。1.6B参数模型完成课程学习过程大约需要3周时间。

      • ​1.2B (context, response) samples in the training set, 0.1M samples in the validation set, and 0.1M sam- ples in the test set

      • ​Chinese vocabulary, it contains 30K BPE tokens

      • ​standard version of 1.6B parameters, a small version of 314M parameters, and a tiny version of 93M parameters

    • ​Evaluation Metrics

      • ​automatic:​distinct-1/2:评估词的多样性,不同的gram的词/生成词的总数

      • ​human

        • ​utterance-level(话语层次):

        • ​coherence:衡量是上下文的相关性和一致性

        • ​informativeness:衡量回复的信息量

        • ​dialogue-level(对话层次):

        • engagingness:​是否想聊更长的对话

        • humanness:是否像人类​

        • ​[0,1,2]的分数,分数越高越好

        • 机器和自己对话结果

  • ​选择经典的200个话题来作为topic

  • ​小冰在distinct指标表现比较好,他可能用了检索的方式来做的

  • ​PLATO-2在人工指标上比较好

  • ​PLATO-2在DSTC9比赛的开放域对话、知识型对话以及任务型对话的任务上都拿到了第一名的成绩

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/434197.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Micropython】ESP8266驱动mpu6050读取数据

【Micropython】ESP8266驱动mpu6050读取数据 📌相关篇《【MicroPython ESP32】ssd1306驱动0.96“I2C屏幕mpu6050图形控制》 ✨本案例基于Thonny平台开发。✨ 🔖esp8266固件版本:MicroPython v1.19.1 on 2022-06-18 📍本篇需要使…

2023 年打破认知,这个开源 API 管理工具你应该知道

关于 API 管理工具,如今的市场已经把用户教育的差不多了,毫不夸张地说,如果我随机抽取一位幸运读者,他都能给我罗列出一二三四款大家耳熟能详的工具,但我今天还是要推荐这一款我上手后,亲测觉得不错的开源 …

深入浅出OpenGL三维渲染管线

1 前言 在计算机图形学中,渲染是根据模型描述在显示器上生成图像的过程。3D图形渲染管线输入根据图元顶点(如三角形、点、线和四边形)对3D模型的描述,并为显示器上的像素生成颜色值。 如下图所示的是3D图形渲染管线的流程。 3D图形渲染管线主要包含以…

JVM知识

类加载机制 虚拟机把class文件加载到内存,并对数据进行校验,转换解析和初始化,形成虚拟机可以直接使用的Java类型,即java.lang.class 装载(Load) ClassFile -> 字节流 ->类加载器 查找和导入class文件 1:通…

解决方案|以大数据为抓手,打造粮食安全智慧监管平台

食为政首,粮安天下,粮食问题一直深受总书记记挂,总书记多次提到:“中国十三亿多人口,吃饭主要靠自己,不能靠外面来解决。” 近年来粮食安全事件频发,中央纪委国家监委在全国开展粮食购销领域腐败…

程序员的那些事儿

作者主页:爱笑的男孩。 持续分享:机器学习、深度学习、python相关内容、日常BUG解决方法及Windows&Linux实践小技巧。 如发现文章有误,麻烦请指出,我会及时去纠正。有其他需要可以私信我或者发我邮箱:zhilong666foxmail.com 目…

编译后的hue 替换cdh默认版本hue步骤

基于hue源码编译的hue 进行替换cdh6.x.x默认带的hue版本,主要解决hue滚动条 拉的时候,一下就到末尾的bug,通过源码编译githu上的hue解决问题 一. 拷贝编译好的hue到cdh目录替换原来hue目录 三.启动hue报错 问题一:没有pip命令 pip list -bash: pip: command not found …

4.17、TCP三次握手

4.17、TCP三次握手 1.TCP三次握手2.TCP通信具体流程①三次握手②服务器客户端进行通信 1.TCP三次握手 TCP 是一种面向连接的单播协议,在发送数据前,通信双方必须在彼此间建立一条连接。所谓的“连接”,其实是客户端和服务器的内存里保存的一…

热点数据监测方法

在日常开发中,我们需要着重注意一种场景-热点数据。他可能是一种请求,每次请求的数据类型都是一样的;可能是同一个数据,比如页面上公用的类型数据;可能是同一个用户大量的请求。他们都有着同一个特点,瞬时爆…

Redis---哨兵服务

一、配置哨兵服务 1、哨兵服务介绍 监视 master 服务器,发现 master 宕机后,将 slave 服务器提升为 master 服务器 主配置文件:sentinel.conf 模板文件:redis-4.0.8/sentinel.conf 哨兵服务:类似于mha的管理节点&#…

ELK日志

思维导图 一、ELK介绍 ELK是Elasticsearch、Logstash、Kibana首字母大写缩写,后续加入了Beats(Beats是负责单一用途数据采集并推送给Logstash或Elasticsearch的轻量级产品),就更名为 Elastic Stack。 Elastic Stack技术栈的功能…

JVM-GC回收机制

目录 1.判定垃圾 1.引用计数 2.可达性分析 2.清理垃圾 1.标记清除 2.复制算法 3.标记整理 4.分代回收 上文讲述的Java运行时内存划分,对于程序计数器,虚拟机栈,本地方法栈来说,生命周期是和线程有关的,随着线程而生,随线程而灭,当方法结束或者线程结束时,它们的内存就自…

细讲const与引用的关系

目录 先了解语言层面的权限 进入正题引用与const权限关系 引用权限的概念 const引用返回值时错误情况 一:返回到临时空间时权限问题 二:临时空间到调用处保存问题 结论:如果不对子函数内部数据修改、那么在父函数变量ret的类型可以设置…

vite+vue3+ts开发流程

目录 vue页面开发 数据类型开发 组件开发 API开发 页面中使用组件、API、数据类型 vue页面开发 <template><!-- 卡片区域--><el-card style"padding:0px;"><!-- 搜索与添加区域--><div style"margin-bottom: 15px;&quo…

SAP ABAP selection screen 动态获取字段名不需要回车触发

SAP ABAP selection screen &#xff0c;get field vaule without click Enter key. 有个需求&#xff0c;界面上几个字段的搜索帮助需要根据已输入值联动&#xff0c;比如AOP version 根据已输入的BU 过滤。 但尴尬的是在事件AT SELECTION-SCREEN ON VALUE-REQUEST FOR 中&a…

.Net中的标识框架Identity

中间件&#xff1a; 1、Authentication对访问者的用户身份进行验证&#xff0c;“用户是否登录成功”。 2、Authorization验证访问者的用户身份是否有对资源访问的访问权限&#xff0c;“用户是否有权限访问这个地址”。 简单描述 1、标识&#xff08;Identity&#xff09;框架…

TCP协议二:TCP状态转换(重要)

TCP状态转换分析https://www.bilibili.com/video/BV1iJ411S7UA?p44&spm_id_frompageDriver&vd_sourced239c7cf48aa4f74eccfa736c3122e65 TCP状态转换图 粗实线&#xff1a;主动端 虚线&#xff1a; 被动端 细实线&#xff1a;内核操作 状态分析 CLOSED&#xff1…

RabbitMQ:消息中间件

文章目录 概念管理界面简介4中常见交换器类型1.Direct交换器:2.Fanout交换器3.Topic交换器4.headers交换器 对象类型消息传递同步等待使用代码创建队列待续...... 概念 在微服务架构中项目之间项目A调用项目B 项目B调用项目C项目C调用项目D。。 用户必须等待项目之间内容依次的…

后端太难了,不 All in 了

作者&#xff1a;阿秀 校招八股文学习网站&#xff1a;https://interviewguide.cn 这是阿秀的第「256」篇原创 小伙伴们大家好&#xff0c;我是阿秀。 欢迎今年参加秋招的小伙伴加入阿秀的学习圈&#xff0c;目前已经超过 2200 小伙伴加入&#xff01;去年认真准备和走下来的基…

Segment Anything Model代码讲解(二)之image_encoder

image_encoder代码解析 在transformer的结构中&#xff0c;编码是非常重要的部分。接下来看image_encoder的代码部分目录 class ImageEncoderViT def initdef forward class Block def initdef forward class Attention def initdef forward def window_partitiondef window_…