NLP小白学习路线(4)——Contextual Word Embeddings

上一篇我们介绍了Subword Models 模型
这一篇将介绍ELMO,GPT &BERT

Subword Models 模型是为了解决单词不存在于词汇库中的情况OOV(out-of-vocabulary)。并且对于单词的变换,比如副词,加-ed,-ing这种单词的变形(morphology)处理的问题。
并在Word embedding最小单位为单词的基础上,进一步缩小粒度为Character embedding 以单词字符为最小粒度

ELMO

我们会发现word2vec无法解决一词多义的问题,比如‘apple’这个词在不同的上下文中语义是不同的:
Jobs was the CEO of apple.
He ate the apple.

解决方法:
1.前面文章提到过的char-level models
Hey, we just learned about char-level models to build
vectors! Let’s do that!
2. ELMO模型,能够对多义词进行建模,使用语言模型获得一个上下文相关的预训练表示。
使用一个双向的LSTM语言模型,由一个前向和一个后向语言模型构成,目标函数就是取这两个方向语言模型的最大似然。

ELMo的整体图。第一使用了多层LSTM,第二增加了后向语言模型(backward LM)。
在这里插入图片描述
Note:
1.输入是一个句子的embedding E1~En,输出是T1~Tn(分别对应其上下文)
2.从图中箭头可以看出,目标T1生成的逻辑是,第1个lstm encoding的第1个输出(即E1对应)+ 第2个lstm encoding的最后一个输出(即En->E1)[即只使用了自己和下文];目标T2生成的逻辑是,第1个lstm encoding的第1-2个输出(即E1->E1对应)+ 第2个lstm encoding的倒数第2个输出(即En->E2)[即使用了上下文]。

OpenAI GPT

OpenAI Transformer是一类可迁移到多种NLP任务的,基于Transformer的语言模型,其利用Transformer的结构来进行单向语言模型的训练。它的基本思想同ULMFiT相同,都是在尽量不改变模型结构的情况下将预训练的语言模型应用到各种任务。不同的是,OpenAI Transformer主张用Transformer结构,而ULMFiT中使用的是基于RNN的语言模型。

OpenAI GPT的整体图
在这里插入图片描述

BERT模型

BERT的全称Bidirectional Encoder Representation from Transformers,即双向Transformer的Encoder。模型的主要创新点都在pre-train方法上,即用了Masked LM和Next Sentence Prediction两种方法分别捕捉词语和句子级别的representation。作为一个Word2Vec的替代者,其在NLP领域的11个方向大幅刷新了精度,可以说是近年来自残差网络最优突破性的一项技术了。

Bert模型的主要特点:
BERT的网络架构使用的是《Attention is all you need》中提出的多层Transformer结构,其最大的特点是抛弃了传统的RNN和CNN,通过Attention机制将任意位置的两个单词的距离转换成1,有效的解决了NLP中棘手的长期依赖问题,能更彻底的捕捉语句中的双向关系。
使用了Mask Language Model(MLM) [Wilson L Taylor. 1953. cloze procedure: A new tool for measuring readability.] 和 Next Sentence Prediction(NSP) 的多任务训练目标;
使用更强大的机器训练更大规模的数据,使BERT的结果达到了全新的高度,并且Google开源了训练好的多语言BERT模型代码,用户可以直接使用BERT作为Word2Vec的转换矩阵并高效的将其应用到自己的任务中。

Bert模型的模型结构
在这里插入图片描述
参考博客:深度学习:ELMO、GPT和BERT模型

有待填坑:Transformer, attention

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值