0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解读NLPCC最佳学生论文:数据和预训练模型

深度学习自然语言处理 来源:深度学习自然语言处理 作者:王义达 2020-11-03 17:58 次阅读

在2020年初开始的新冠病毒蔓延影响下,NLPCC 2020采取线上+线下的会议方式,线上线下共缴费注册496人,其中现场参会总人数达372人,线上参会人数124人,另有15个赞助单位参展。汇聚了众多国内外NLP领域的知名学者。 本次会议总投稿数是445篇,会议有效投稿404篇。其中,主会有效总投稿377篇,Workshop有效投稿27篇。 在主会377篇有效投稿中,英文论文315篇,中文论文62篇;接收Oral论文83篇,其中英文论文70篇,中文论文13篇,录用率为22%;接收Poster 论文30篇。Workshop共计录取14篇论文。 在本次会议上评选出最佳论文、最佳学生论文各1篇,并进行了颁奖仪式。 来自清华大学朱小燕、黄民烈团队的王义达作为一作发表的《A Large-Scale Chinese Short-Text Conversation Dataset》获得了最佳学生论文,以下是王义达本人对获奖论文的亲自解读。

基于Transformer的大规模预训练语言模型极大地促进了开放领域对话的研究进展。然而目前这一技术在中文对话领域并未被广泛应用,主要原因在于目前缺乏大规模高质量的中文对话开源数据。 为了推动中文对话领域的研究,弥补中文对话语料不足这一问题,我们发布了一个包含1200万对话的大规模中文对话数据集LCCC,并开源了在LCCC上预训练的大规模中文对话生成模型CDial-GPT。 开源地址:https://github.com/thu-coai/CDial-GPT 1

LCCC数据集的构建

LCCC(Large-scale Cleaned Chinese Conversation)数据集有LCCC-base与LCCC-large两个版本,其中LCCC-base和LCCC-large中各包含6.8M和12M对话。这些数据是从79M原始对话数据中经过严格清洗得到的,也是目前所开源的规模最大、清洗最严格的中文对话数据集。

表1. 被过滤掉的噪音数据 开放领域对话数据的构建通常有三种方式:1、抽取剧本对话;2、人工众包构建对话;3、爬取社交媒体上用户的交流记录。 使用第一种方式构建的对话在内容上依赖于特定剧情和场景,与日常对话有较大差异。使用第二种方式构建的对话质量最高,但是由于人力成本过高,无法使用这一方式构建大规模数据集。使用第三种方式可以较为廉价地获取大规模对话数据,因此LCCC数据集中的原始数据主要使用第三种方式收集。 我们同时注意到,来自社交媒体的对话数据中存在各种各样的噪音(表1),为了保证LCCC中对话数据的质量,我们设计了如下数据获取和清洗策略:

1. 数据获取我们的数据获取流程分为两个阶段。在第一个阶段,我们挑选了微博上由专业媒体团队运营的新闻媒体账号,然后收集了一批在这些新闻媒体下留言互动的活跃用户。在第二个阶段中,我们收集了这些活跃用户微博下的留言互动,并将其作为我们的原始数据。微博下的留言回复一般以一个树形结构展开,我们将这一树形回复结构中每一条从根节点到叶子节点的路径作为一个完整对话,最终共收集到了79M对话数据。

2. 数据清洗为了保证数据质量,我们对收集到的原始对话数据进行了两个阶段的清洗。 第一阶段的清洗主要基于手工规则。这一阶段的主要目的是为了过滤掉对话数据中的明显噪声,如脏话、特殊符号、病句、复读机句式、广告、违法暴力信息等。在这一阶段中,我们花费了数周时间使用人工排查的方式优化规则。

第二阶段的清洗主要基于分类器过滤。在这一阶段中,我们基于BERT训练了两个文本分类器,第一个分类器主要用于甄别那些无法通过规则检测的噪音,如:1、语义模糊、语法错乱或有严重拼写错误的语句;2、时效性太强的对话;3、与上下文语义不相关的回复。 第二个分类器主要用于甄别那些需要依赖额外上下文信息,如图片或视频等,才能理解的对话。这两个分类器均使用人工标注数据训练,我们为其标注了共计11万对话数据,最终的分类器在人工标注的测试集上分别达到了73.76%和77.60%的准确率。我们通过F1-score选择阈值来过滤得到高质量的对话数据。

表2. 数据统计信息,左侧为LCCC-base,右侧为LCCC-large 最终我们基于上述原始对话数据过滤得到了6.8M高质量的对话数据LCCC-base。此外,我们还收集了目前已公开的其他对话数据,并使用同样的清洗流程,结合LCCC-base构造了包含12M对话的数据集LCCC-large。表2展示了这两个数据集中单轮对话和多轮对话的详细统计信息。 2

中文对话预训练模型CDial-GPT

为促进中文对话预训练模型的发展,我们基于LCCC数据集预训练了大规模中文对话生成模型CDial-GPT。该模型的训练过程包含两个阶段,首先,我们在总计5亿字符、包含各类题材的小说数据上训练得到了一个中文小说GPT预训练模型,然后在该模型的基础上,我们使用LCCC中的对话数据继续对模型进行训练,最终得到了中文对话预训练模型CDial-GPT。

图1. 输入编码示例 该模型拥有12层Transformer结构,我们按字分词,字典大小13088,字向量维度768,最长上下文长度为513。我们沿用TransferTransfo的方式对对话进行建模,即把对话历史拼接为长文本,并使用段分割向量加以区分。具体来说:我们使用[CLS]字符标志文本起始,在段落后使用[SEP]字符表示段落结束,在段落中对相邻轮次对话使用[speaker1]、[speaker2]交替分割,并在segment embedding中使用[speaker1]、[speaker2]进行编码。图1为输入数据示例。 3

模型效果评测

为了评估对话预训练模型的质量,我们在440万规模的中文对话数据集STC上对其进行了评测实验,并对比了现有的中文对话预训练模型和一些经典的非预训练对话模型。我们主要通过PPL这一指标来反映模型的拟合能力,PPL越低表示模型的拟合能力越强。我们通过基于n-gram重合度的指标BLEU和基于Embedding相似度的指标Greedy Matching 和Embedding Average来衡量对话回复与真实回复的相关性,并通过Dist-n指标来衡量生成回复的多样性。实验结果展示在表3中。可以看到我们的模型在绝大多数指标上达到了最好的效果。由于自动指标无法完全反映生成对话的质量,于是我们对各模型生成的对话进行了人工评测。

表3. 自动指标评估

表4. 人工评价 在人工评测中我们主要考虑3个方面:1、语法性,也就是生成语句的流畅性;2、相关性,即生成语句与对话上文的相关性;3、信息量,即生成结果自身含有的信息量。具体来说,不符合语法性或与对话上文不相关的生成结果我们给予0分;语句流畅、和对话上文相关但信息量不足的生成结果给予1分;语句流畅、和对话上文相关并且信息量充足的生成结果给予2分,我们将人工评测结果展示在表4中。实验结果显示,我们的预训练模型拥有出色的生成质量,可以在生成信息量充足的回复的同时,保持较高的流畅性与相关性,优于其他基线模型,一些生成例子展示在表5,6中。

表5. 人机交互示例 (左)和 模型互相交互示例(右)

表6.在STC微调的生成结果示例 目前CDial-GPT模型以及LCCC数据集都已公开,我们提供了训练以及微调代码,可以方便地应用于各种数据和下游任务上。

责任编辑:xj

原文标题:一作解读NLPCC最佳学生论文:1200万中文对话数据和预训练模型CDial-GPT

文章出处:【微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    6512

    浏览量

    87601
  • nlp
    nlp
    +关注

    关注

    1

    文章

    463

    浏览量

    21823
  • 训练模型
    +关注

    关注

    1

    文章

    35

    浏览量

    3755

原文标题:一作解读NLPCC最佳学生论文:1200万中文对话数据和预训练模型CDial-GPT

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【书籍评测活动NO.30】大规模语言模型:从理论到实践

    多种形式和任务。这个阶段是从语言模型向对话模型转变的关键,其核心难点在于如何构建训练数据,包括训练数据
    发表于 03-11 15:16

    谷歌模型训练软件有哪些?谷歌模型训练软件哪个好?

    谷歌在模型训练方面提供了一些强大的软件工具和平台。以下是几个常用的谷歌模型训练软件及其特点。
    的头像 发表于 03-01 16:24 279次阅读

    如何基于深度学习模型训练实现工件切割点位置预测

    Hello大家好,今天给大家分享一下如何基于深度学习模型训练实现工件切割点位置预测,主要是通过对YOLOv8姿态评估模型在自定义的数据集上训练
    的头像 发表于 12-22 11:07 346次阅读
    如何基于深度学习<b class='flag-5'>模型</b><b class='flag-5'>训练</b>实现工件切割点位置预测

    如何基于深度学习模型训练实现圆检测与圆心位置预测

    Hello大家好,今天给大家分享一下如何基于深度学习模型训练实现圆检测与圆心位置预测,主要是通过对YOLOv8姿态评估模型在自定义的数据集上训练
    的头像 发表于 12-21 10:50 684次阅读
    如何基于深度学习<b class='flag-5'>模型</b><b class='flag-5'>训练</b>实现圆检测与圆心位置预测

    【KV260视觉入门套件试用体验】Vitis AI 通过迁移学习训练自定义模型

    :这种方法是在训练模型的基础上,修改最后一层或几层,并且对整个网络进行微调训练。这种方法适用于新数据集和原
    发表于 10-16 15:03

    大语言模型(LLM)预训练数据集调研分析

    model 训练完成后,使用 instruction 以及其他高质量的私域数据集来提升 LLM 在特定领域的性能;而 rlhf 是 openAI 用来让model 对齐人类价值观的一种强大技术;pre-training dataset 是大
    的头像 发表于 09-19 10:00 570次阅读
    大语言<b class='flag-5'>模型</b>(LLM)预<b class='flag-5'>训练</b><b class='flag-5'>数据</b>集调研分析

    使用OpenVINO优化并部署训练好的YOLOv7模型

    在《英特尔锐炫 显卡+ oneAPI 和 OpenVINO 实现英特尔 视频 AI 计算盒训推一体-上篇》一文中,我们详细介绍基于英特尔 独立显卡搭建 YOLOv7 模型训练环境,并完成了 YOLOv7 模型
    的头像 发表于 08-25 11:08 923次阅读
    使用OpenVINO优化并部署<b class='flag-5'>训练</b>好的YOLOv7<b class='flag-5'>模型</b>

    模型分布式训练并行技术(一)-概述

    数据并行是最常见的并行形式,因为它很简单。在数据并行训练中,数据集被分割成几个碎片,每个碎片被分配到一个设备上。这相当于沿批次(Batch)维度对
    的头像 发表于 08-24 15:17 664次阅读
    大<b class='flag-5'>模型</b>分布式<b class='flag-5'>训练</b>并行技术(一)-概述

    卷积神经网络模型训练步骤

    模型训练是将模型结构和模型参数相结合,通过样本数据的学习训练
    的头像 发表于 08-21 16:42 1064次阅读

    关于领域大模型-训练Trick&amp;落地的一点思考

    现有大模型在预训练过程中都会加入书籍、论文数据,那么在领域预训练时这两种数据其实也是必不可少的
    的头像 发表于 08-09 11:43 1249次阅读
    关于领域大<b class='flag-5'>模型</b>-<b class='flag-5'>训练</b>Trick&amp;落地的一点思考

    训练好的ai模型导入cubemx不成功怎么解决?

    训练好的ai模型导入cubemx不成功咋办,试了好几个模型压缩了也不行,ram占用过大,有无解决方案?
    发表于 08-04 09:16

    MCU人脸识别模型的设计注意事项和最佳实践

    本指南介绍了在训练和量化MCU友好的人脸识别模型时需要考虑的一些设计注意事项和最佳实践。近年来,面部识别技术在日常生活中变得无处不在。它让我们的生活变得更轻松的方式有很多,包括: ·电子护照控制门
    发表于 08-02 08:58

    如何使用TensorFlow将神经网络模型部署到移动或嵌入式设备上

    。 使用TensorFlow对经过训练的神经网络模型进行优化,步骤如下: 1.确定图中输入和输出节点的名称以及输入数据的维度。 2.使用TensorFlow的transform_graph工具生成优化的32位
    发表于 08-02 06:43

    图解大模型训练之:Megatron源码解读2,模型并行

    前文说过,用Megatron做分布式训练的开源大模型有很多,我们选用的是THUDM开源的CodeGeeX(代码生成式大模型,类比于openAI Codex)。选用它的原因是“完全开源”与“清晰的
    的头像 发表于 06-07 15:08 2613次阅读
    图解大<b class='flag-5'>模型</b><b class='flag-5'>训练</b>之:Megatron源码<b class='flag-5'>解读</b>2,<b class='flag-5'>模型</b>并行

    什么是预训练AI模型

    训练 AI 模型是为了完成特定任务而在大型数据集上训练的深度学习模型。这些模型既可以直接使用,
    的头像 发表于 05-25 17:10 636次阅读