从Attention到Transformer再到bert的理解
1.最原始的attention
[1] Lin, Zhouhan, et al. ”A structured self-attentive sentence embedding.” arXiv preprint arXiv:1703.03130 (2017).
2. attention is all you need
QKV:其实也是一个attention,求出来的还是权重,只是计算的方式不同:
- 1.加了mask
- 2.感觉有点像交叉特征的权重
QKV,都是由原始input乘以一个矩阵变化来的。
详情可以看这个:
Transformer模型详解:https://terrifyzhao.github.io/2019/01/11/Transformer%E6%A8%A1%E5%9E%8B%E8%AF%A6%E8%A7%A3.html
Transformer模型笔记:https://zhuanlan.zhihu.com/p/39034683
3.Transformer 结构拆解
就是多个attention组合在一起。
如何看待transformer
- 利用了残差结构,学cnn的,解决了lstm层数不能太多的尴尬,让nlp慢慢开始追赶上了cnn在图像特征提取的地位,但是还有差距,nlp语义理解还是比较难的。
- 层数可以叠加很多层了,nlp终于也可以做出比较深的网络结构了。
- 解决每个单词位置问题뻟把位置encoder也直接加到了embedding中
- 利用了mask
Young, Tom, et al. ”Recent trends in deep learning based natural language processing.” ieee Computational intelligenCe
magazine 13.3 (2018): 55-75.
4 bert与transformer的关系
预训练也和原来的语言模型类似
但是是双向的概念
微调任务
- 用位置编码解决rnn的时序问题
- 相对于GPT,是双向的,利用了上下文的信息
- 利用了attention+位置编码,解决了lstm或者说rnn抽取文本特征的能力,既能提取盖个单词与其他单词的相互关系的特征,果然是交叉特征比较重要啊,又能提取时序的特征。
自然语言处理中的Transformer和BERT https://zhuanlan.zhihu.com/p/53099098