前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SFFAI分享 | 罗玲:From Word Representation to BERT【附PPT,视频】

SFFAI分享 | 罗玲:From Word Representation to BERT【附PPT,视频】

作者头像
马上科普尚尚
发布2020-05-11 17:10:51
9570
发布2020-05-11 17:10:51
举报

关注文章公众号 回复"SFFAI24"获取PPT资料 视频资料可点击下方阅读原文在线观看

导读


在自然语言处理任务中,词向量技术是将自然语言中的词转化为稠密的向量,语义相似的词会有相似的向量表示。Word2Vec等传统的词向量预训练模型都是静态且上下文无关的,不能很好的处理同一个词不同语义。Google发表的论文《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》提出了BERT模型解决了这样的问题。作为刷新GLUE榜单11项NLP任务(句子关系判断,分类任务,序列标注任务等)成绩的预训练模型,BERT不仅沿袭将词向量和下游任务结合在一起实现上下文相关的优点,并且通过masked语言模型实现了真正的深度双向模型。同时BERT不仅能更好的处理sentence-level的任务,在token-level的语言任务上也达到了不错的效果。BERT不仅带来了研究的热潮,它对NLP任务的影响也在持续发酵中。

自我介绍


罗玲,2018年获南开大学工学学士学位,专业计算机科学与技术,现保送至中国科学院计算科学技术研究所智能信息处理实验室,研究兴趣为自然语言处理、语义分析,意⻅挖掘,文本摘要等。2018年在IJCAI会议一作发表论文1篇,大四于计算所实习期间参与债券舆情分析与金融风险感知等多个项目,并于2018年暑期入选腾讯犀牛鸟精英人才计划,赴腾讯AI Lab交流合作。

正文


在自然语言处理任务中,词向量技术是将自然语言中的词转化为稠密的向量,语义相似的词会有相似的向量表示。生成词向量的方法从一开始基于统计学(共现矩阵、SVD分解)到基于神经网络的语言模型(Word2Vec等)。但是这些训练得到的词向量都是静态且上下文无关的,不能很好的处理同一个词不同语义的情况(例如同一个“苹果”的词向量不能同时表达“我买了一个苹果手机”以及“我买了一斤苹果”中的“苹果” )。

2018年Google发表的论文《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》,提出了BERT模型,旨在通过预训练语言模型来得到动态上下文相关的词向量(“苹果”一词的词向量在“我买了一个苹果手机”和“我买了一斤苹果”中不同)。如图所示,BERT是多层双向Transformer的encoder块:

BERT首先在大规模的语料库中pre-train,然后将下游任务输入,进行比较轻量级的fine-tuning

(1)pre-train: 与普通的预训练语言模型不同的是,BERT的预训练目标是Mask Language Model加上Next Sentence Prediction。Mask Language Model是受到完形填空的启发,它不同于传统的语言模型,它盖住整篇文章15%的词,然后用其他的词预测这15%的词。被盖住的词用[mask]这样的一个标记代替,但是由于下游任务中没有[mask]这个符号,为了削弱这个符号的影响,15%被盖住的词中,80%的词就用[mask]符号盖;10%的词保留原来真实的词;10%的词用随机的一个词替代。因为Mask Language Model只获得了Token级别的特征,但是对于一些句间关系的推理,对话系统、问答系统需要捕捉一些句子的特征,BERT同时也采用给定2个句子,判断它们是否是连续的句子的方式捕捉句子级别的特征,该训练目标为Next Sentence Prediction。

(2)fine-tuning:BERT是一种fine-tuning的方法,预训练好的BERT直接接入下游任务随着下游具体任务进行精调。如下图所示,对于句子关系类的任务,每个句子加上起始和结束的符号,句子之间加入分割符号,经过BERT模型它起始位置的输出连接上一个softmax的分类器即可。对于序列标注的模型,加入起始与结束的符号后,对于最后BERT每个位置的输出都加入一个线性的分类器。

NLP一共有4大类的任务:

1) 序列标注:分词/词性标注/命名实体识别...

2) 分类任务:文本分类/情感分析...

3) 句子关系判断:自然语言推理/深度文本匹配/问答系统...

4) 生成式任务:机器翻译/文本摘要生成...

BERT为这4大类任务的前3个都设计了简单的下游接口,实验效果全面取得了大幅度的提升。截止2018年10月,刷新了GLUE榜单上11项NLP任务,为NLP的研究带来了热潮。

除了BERT能动态获得上下文相关的词向量以外,[Peters et al., 2017] 提出了一种Feature-based的ELMo的模型,它是通过训练基于LSTM的两个不同方向的语言模型进行目标优化的。[Radford et al., 2018]提出基于单向Transformer的GPT模型,也取得了不错的效果。与ELMo相比,BERT能够更能高效捕捉更长距离的依赖,同时能捕捉到真正意义上的双向上下文信息,用Transformer取代LSTM使得模型的并行化程度更高。与OpenAI GPT相比,BERT的训练时长和词典数量更大,优化目标是MLM和NSP两个任务,且它在fine-tuning时的学习率是根据任务变换的。

BERT的成功让我们不禁思考未来的发展方向在哪里,我们还能做什么?

1. BERT在机器翻译等生成式任务上表现还没有那么好的提升效果,未来如何将其运用机器翻译等生成式任务上值得我们探索。

2. 对预训练模型在下游任务的Fine-tuning阶段需要大量标注数据,当标注数据很少,如何提升模型的表现效果呢?微软提出了MT-DNN模型,利用多任务学习来进行模型精调,减少了单个任务对于标注数据的需求,而在MT-DNN模型9/11项任务超越了BERT。

3. BERT本身的设计也值得我们借鉴以及思考。由于预训练语言模型只获得了Token级别的特征,但是对于一些句间关系的推理,对话系统、问答系统需要捕捉一些句子的特征,所以BERT采用了训练Next Sentence Prediction的任务。这样的额外训练任务不仅在句子层面带来了良好的效果,它也不需要额外的标注信息,充分利用了无监督数据。在我们日常的训练任务中,我们也可以考虑我传统的训练目标是否真正合理从而来提升我们的效果。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 人工智能前沿讲习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档