BERT

BERT生成文本摘要

孤者浪人 提交于 2020-07-24 07:21:40
作者|Daulet Nurmanbetov 编译|VK 来源|Towards Data Science 你有没有曾经需要把一份冗长的文件归纳成摘要?或者为一份文件提供一份摘要?如你所知,这个过程对我们人类来说是乏味而缓慢的——我们需要阅读整个文档,然后专注于重要的句子,最后,将句子重新写成一个连贯的摘要。 这就是自动摘要可以帮助我们的地方。机器学习在总结方面取得了长足的进步,但仍有很大的发展空间。通常,机器摘要分为两种类型 摘要提取:如果重要句子出现在原始文件中,提取它。 总结摘要:总结文件中包含的重要观点或事实,不要重复文章里的话。这是我们在被要求总结一份文件时通常会想到的。 我想向你展示最近的一些结果,用BERT_Sum_Abs总结摘要,Yang Liu和Mirella Lapata的工作Text Summarization with Pretrained Encoders: https://arxiv.org/pdf/1908.08345.pdf BERT总结摘要的性能 摘要旨在将文档压缩成较短的版本,同时保留其大部分含义。总结摘要任务需要语言生成能力来创建包含源文档中没有的新单词和短语的摘要。摘要抽取通常被定义为一个二值分类任务,其标签指示摘要中是否应该包含一个文本范围(通常是一个句子)。 下面是BERT_Sum_Abs如何处理标准摘要数据集:CNN和Daily Mail

Pretraining a language model on a small custom corpus

烂漫一生 提交于 2020-07-21 07:55:47
问题 I was curious if it is possible to use transfer learning in text generation, and re-train/pre-train it on a specific kind of text. For example, having a pre-trained BERT model and a small corpus of medical (or any "type") text, make a language model that is able to generate medical text. The assumption is that you do not have a huge amount of "medical texts" and that is why you have to use transfer learning. Putting it as a pipeline, I would describe this as: Using a pre-trained BERT

Pretraining a language model on a small custom corpus

筅森魡賤 提交于 2020-07-21 07:55:05
问题 I was curious if it is possible to use transfer learning in text generation, and re-train/pre-train it on a specific kind of text. For example, having a pre-trained BERT model and a small corpus of medical (or any "type") text, make a language model that is able to generate medical text. The assumption is that you do not have a huge amount of "medical texts" and that is why you have to use transfer learning. Putting it as a pipeline, I would describe this as: Using a pre-trained BERT

解密飞桨多任务学习框架PALM,让你的模型开启“学霸”模式

蹲街弑〆低调 提交于 2020-05-09 20:39:04
随着预训练技术的到来,作为深度学习重要应用领域之一,自然语言处理也迎来了新的春天。通过使用预训练模型可以大大减少模型训练对数据的依赖,仅需要使用少量数据在下游任务中微调(Fine-tune),就可以获得效果非常优秀的模型。不过如果希望获得更好的效果,该怎么办呢?有人也许会说:多训练几个epoch嘛!但是对于这种单一任务且有监督学习的微调方式,单独增加训练epoch并不是一个好方法,过度的训练容易损害模型的泛化能力,发生过拟合现象。 ​ 要知道训练一个模型就像在养育一个孩子一样。在子女的教育问题上,每个家长都会投入尽可能多的人力和资源,希望把自己孩子教育成才,能够举一反三、触类旁通,成为一个“学霸”。 但是如果到考试时发现自己的孩子只会做课本上的原题,题目稍微改改就做不好,我想家长一定会欲哭无泪吧。相比模型训练又何尝不是呢?开发者不仅要投入大量的服务器硬件资源,还要辛辛苦苦写代码,结果最后训练出的模型泛化能力极差,跳出训练数据的范围,就啥也干不了,相信这绝对不是任何一个开发者希望看到的。 那么有什么方法可以提高模型的泛化能力,让模型可以更加聪明呢?其实可以在微调阶段引入辅助任务信号,通过多任务学习的方式,即将多个目标任务场景联合学习,就可以显著提高模型所学到的表征的通用性,使得模型具备更强的泛化能力。 但是基于传统的深度学习框架,多任务学习方式的代码实现门槛较高,策略调整不够灵活

DeFormer:分解预先训练的Transformers,以更快地回答问题

我的梦境 提交于 2020-05-09 14:22:08
这篇paper在去年盲审的时候就读过,这次终于读完了。 FASTER AND JUST AS ACCURATE: A SIMPLE DECOMPOSITION FOR TRANSFORMER MODELS( 更快且同样准确:Transformer模型的简单分解 ) https://openreview.net/pdf?id=B1gKVeBtDH ​ openreview.net Introduction 文本的研究基于先前的研究: @张俊林 AI科技大本营:张俊林:BERT和Transformer到底学到了什么 | AI ProCon 2019 ​ zhuanlan.zhihu.com 较低的层次倾向于对局部现象建模(如词性、句法范畴),而较高的层次倾向于对依赖于任务的语义现象建模(如词性、句法范畴),可以以很小的效率成本提供加速。 DeFormer引入一个简单的分解预训练的基于转换的模型,在分解的模型中,较低的层独立地处理问题和上下文文本,而较高的层联合地处理它们。假设我们允许n层模型中的k个更低的层独立地处理问题和上下文文本。DeFormer通过k个较低的层离线处理上下文文本,并缓存第k层的输出。在运行时,首先通过模型的k层处理问题,然后从缓存加载第k层的文本表示。这两个第k层表示被作为输入输入到第(k + 1)层,并通过与原始模型相同的更高的层继续进行进一步的处理。

这个神秘的炼丹所如何拿下JDDC多轮对话比赛冠军......

爱⌒轻易说出口 提交于 2020-05-08 15:29:15
作者:家牛 筱豪 莫残 简枫 关于老和山炼丹所 大家好,我是炼丹师 家牛 ,来自 老和山炼丹所 ,我们所坐落于 西子湖畔美丽的老和山脚 下,平日 专职炼制各种NLP灵丹妙药,包括对话系统、问答系统、图学习、强化学习、对抗学习等。 这是我们炼丹所第一篇文章,讲述我们去年在智源 BAAI-JDDC 多轮对话比赛的夺冠历程。 前言 去年国庆节前夕,我们在网上看到智源主办京东承办的 多轮对话比赛 ,想到我们所主要的业务就是在炼制多轮对话的丹药,和这方向挺接近的,并且也想将之前做的技术创新在这份数据上验证下,就联合所里几个炼丹师报了名。基本都是晚上及周末业余时间在做,可能是这次多轮比赛题目和我们平时做的业务场景比较匹配,最后在参赛的254支队伍中以较大优势夺得了冠军。 比赛介绍 京东提供了100万条已脱敏的用户与在线客服对话数据,比赛分为初赛复赛和决赛三个阶段。 初赛是只提供了 用户与客服对话的前三轮为要预测的对话前文 ,从第四轮对话开始只提供用户问题,需要程序输出针对每个问题的回复,由系统自动计算程序输出与真实人工回复之间的 BLEU 值。如下图所示,在给定的前三轮对话前文里面,针对每一个客户的问题,给出 一个或者多个 候选的客服回答。赛题详细说明可以参考 http:// jddc.jd.com/description 。 比赛数据格式介绍 复赛则是采用人工评测的方式

印度小哥在《我的世界》搭建神经网络,火爆全网!

旧巷老猫 提交于 2020-05-05 17:53:34
可能是疫情吧,大家在现实中行动受限,就越来越多去游戏世界中释放天性。 前有《我的世界》举办毕业典礼,后有《动物森友会》举办 AI 会议。最近《我的世界》又被大神带来了硬核玩法: 你以为他在涂鸦?不!其实他在进行神经网络的推理。 你如果是一个熟悉神经网络的人,想必已经猜出来了。 图片里这位玩家做的正是 MNIST 手写数字分类网络。 只需用剑在墙壁上画出数字,神经网络就能知道你写的是几。不仅仅如此,神经网络在推理过程中,哪些神经元被激活,都可以在这里看得一清二楚。 这个脑洞大开的玩家是一位来自印度的小哥 Ashutosh Sathe ,游戏项目叫做 Scarpet-nn 。 Sathe 不仅放出了试玩视频,还开源了代码,如果你是《我的世界》玩家 + 神经网络炼丹师,那么你也可以把自己的网络放在游戏里。 Scarpet-nn 支持卷积层和完全连接层,允许在单个世界中运行多个神经网络。而且可以展示中间张量的逐块激活,甚至还能一次运行多个神经网络。 Sathe 小哥到底是怎么想到用《我的世界》来搭建神经网络的呢? 像素风和神经网络是绝配 我的世界里那一个个像素色块简直就是显示 3 维数组的神器。如果一个长方体的每个小块都用不同颜色来展示数值,那么一个长方体就可以表示一个张量。 但是用表示的范围有限,我的世界地图里的资源也有限,在神经网络中显示 BERT 什么的显然不切实际。

深度学习两巨头LeCun、Bengio预言:自我监督学习是让AI接近人类智能的关键

吃可爱长大的小学妹 提交于 2020-05-04 13:21:21
  在 4 月 26 日至 5 月 1 日举行的国际表征学习大会 ICLR 2020 期间,深度学习三巨头中的 Yoshua Bengio 和 Yann LeCun 表示, 自我监督学习可能会让 AI 在推理上更像人类 ,他们坦率地谈到了一些最新的研究趋势。   监督学习需要在标记的数据集上训练人工智能模型,LeCun 认为随着自我监督学习的广泛应用,监督学习的作用将越来越小。自监督学习算法不依赖注释,而是通过暴露数据各部分之间的关系,从数据中生成标签,这一步骤被认为是实现人类智能的关键。      图|深度学习三巨头(来源:Fortune)   “ 我们作为人类学习的大部分知识和动物学习的大部分知识都是在自我监督的模式下,而不是强化的模式。 基本上是通过观察世界,并与之进行一些互动,主要是以独立于测试的方式进行观察,这是我们不知道如何用机器复制的(学习)类型。”    但不确定性是阻碍自主学习成功的主要障碍。   深度学习里的 “ 特征分布 ” 至关重要,它们能将变量的每个可能值与该值出现的概率联系起来,也能很好地表示变量离散的不确定性,这就是为什么像 Google 的 BERT 模型这样的架构会比较成功的原因。    不幸的是,研究人员还没有找到一种有效的方法来表示变量是连续的分布,也就是说,它们只能通过测量获得。   LeCun 指出

Transformers 多语言模型 | 十一

梦想的初衷 提交于 2020-05-01 14:21:17
作者|huggingface 编译|VK 来源|Github 该库中可用的大多数模型都是单语言模型(英语,中文和德语)。有一些多语言模型可用,并且与单语言模型具有不同的机制。本页详细介绍了这些模型的用法。 当前支持多种语言的两个模型是BERT和XLM。 XLM XLM共有10个不同的checkpoints,其中只有一个是单语言的。剩下的9个模型checkpoints可以分为两类:使用语言嵌入的checkpoints和不使用语言嵌入的checkpoints XLM和语言嵌入 本节涉及以下checkpoints: xlm-mlm-ende-1024 (掩码语言建模,英语-德语) xlm-mlm-enfr-1024 (掩码语言建模,英语-法语) xlm-mlm-enro-1024 (掩码语言建模,英语-罗马尼亚语) xlm-mlm-xnli15-1024 (掩码语言建模,XNLI语言) xlm-mlm-tlm-xnli15-1024 (掩码语言建模+翻译,XNLI语言) xlm-clm-enfr-1024 (因果语言建模,英语-法语) xlm-clm-ende-1024 (因果语言建模,英语-德语) 这些checkpoints需要语言嵌入,这些语言嵌入将指定推理时使用的语言。这些语言嵌入表示为张量,其形状与传递给模型的输入idS相同。这些张量中的值取决于所使用的语言

详解百度ERNIE进化史及典型应用场景

余生长醉 提交于 2020-04-30 20:05:39
上个月,全球规模最大的语义评测比赛 SemEval 2020 结果出炉,百度基于飞桨平台自研的语义理解框架 ERNIE 一举斩获 5 项世界冠军,囊括视觉媒体的关键文本片段挖掘、多语攻击性语言检测和混合语种的情感分析。去年,ERNIE先后完成两版重大升级:ERNIE 1.0 提出知识增强的语义表示模型, ERNIE 2.0 则构建了持续学习语义理解框架,在中英文 16 个任务上超越业界最好模型。本文将为开发者详细解读ERNIE的进化史。 ERNIE 1.0 ERNIE: Enhanced Representation through Knowledge Integration[1] 是百度在2019年4月的时候,基于BERT模型,做的进一步优化,在中文的NLP任务上得到了state-of-the-art的结果。 它主要是在mask的机制上做了改进,它的mask不是基本的word piece的mask,而是在pretrainning阶段增加了外部的知识,由三种level的mask组成,分别是basic-level masking(word piece)+ phrase level masking(WWM style) + entity level masking。在这个基础上,借助百度在中文社区的强大能力,中文的ERNIE还使用了各种异质(Heterogeneous)的数据集