理解NLP迁移学习/Transformers/GPT/Bert中遇到的难点和笔记

NLP深度学习解析:Seq2Seq、Transformers与迁移学习实践
这篇笔记探讨了NLP中的难点,包括Seq-to-Seq模型、Transformers和迁移学习的应用,如ELMo、OpenAI GPT和Bert。Seq2Seq模型通过Attention机制解决长句编码问题;Transformers采用非顺序处理,通过自注意力进行词与词的关系建模;而GPT和Bert通过预训练和微调提升NLP任务性能,Bert引入双向上下文增强表示。

这篇笔记主要是我在学习这些算法的过程中,遇到难以理解的地方之后去查询资料,然后记录下了我自己的一些针对这些难点的理解,并不是对大标题中的概念进行一个基础地介绍,如果你完全没有听说过这些概念,建议先去百科一下,或者看看原文,然后如果有卡壳的地方,希望这篇笔记能帮助到你。

Seq-to-Seq model

  1. 以Neural Machine Translation来说,seq1的每个字依次进入encoder被encode成一个个hidden states(也可以称context——越是往后的hidden states/context,包含句子的内容越多),当最后一层hidden states被算出来,这个last hidden states就包含了seq1句子所有的context,并且被送入decoder,decoder开始output seq2的每个字,并且在decoding的过程中,不断地产生hidden states(即so far目前被decode了的所有context)。
  2. context vector,即最后一层的hidden layer,会比较有问题,因为没办法处理过长的句子的所有信息(毕竟要把一整个句子的含义全部encode到一个vector里),后来出现了Attention这种结构,作为弥补RNN的hidden layers的解决办法。
  3. Seq-to-Seq with Attentions:
    1)不同于之前只把最后一层encoder生成的hidden layer递给decoder,现在encoder生成的所有的hidden layers都要递给decoder,然后让decoder自己来判断当它想翻译一个字(例如f3 -> e3)的时候,它会更多更多地参考哪个fi,i≠3f_i, i \ne 3fi,i=3词向量,所以decoder的第一层hidden states其实是一个weighted sum of encoder hidden states。
    2)所以整个流程是:
    - encoder生成所有的hidden layers, h1eh_1^eh1e,…,hneh_n^ehne
    - decoder接收到<END><END><END>的词向量,和一个initial decoder hidden layer hinitdh^d_{init}hinitd,生成hn+1dh_{n+1}^dh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值