NLPSeq2seq/Attention
Posted sybil-hxl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NLPSeq2seq/Attention相关的知识,希望对你有一定的参考价值。
导论
自然语言处理,NLP,接下来的几篇博客将从四方面来展开:
自然语言处理,NLP,接下来的几篇博客将从四方面来展开:
(一)基本概念和基础知识
(二)Embedding
(三)Text classification
(四)Language Models
(五)Seq2seq/Attention
(六)Expectation-Maximization
(七)Machine Translation
(五)Seq2seq/Attention
一、Seq2seq
二、Transformer
1.Attention机制
(1)
attention可以知道大概内容,需要更详细内容适合,去Decoder找。
attention可以认为是一种Soft对齐。
(2)缺点
顺序依赖,无法并行,速度慢;
单向信息流。编码一个词的时候,需要看前后。
普通attention需要外部“驱动”,来做内容提取。
2.Self-attention
(1)
①自驱动,编码第t个词,用当前状态驱动。
②Self-attention和全连接网络FNN区别
Self-attention每一个输出需要全部输入,而FNN不需要全部输入,只要有a1就可以计算b1,不需要a2。
③Self-attention与普通attention对比
可以认为普通attention是Self-attention的一种特例。
普通attention中,query是decoder的隐状态。key和value是encoder的输出。
Self-attention中,query、key和value都是来自当前的向量,都是通过变换矩阵来学习的。
(2)self-attention layer做了什么?
(2) 写成矩阵乘法形式
3. 变形muti-head self-attention
(1)原理
①多个Attention(Q,K,V)。
②也可能一种Attention head是给it做消解的,一种关注上下位的,一种关注首都国家对应关系的。每一种attention都可以把向量变成Q K V。
③如果有8个head,3个输入单词a1 a2 a3,则有8个bi1~bi8,拼成一个8维的向量,信息有冗余,需要降维。需要乘一个8*1的矩阵,压缩成1个数bi,最后输出是3个数b1 b2 b3。
④下图是2个head的示意图。
(2)好处
①不同head关注点不一样,每个head可以专注于自己的任务。下图,有的attention head关注local的邻居的资讯,有的关注的是global的长时间的资讯。
4.positional encoding
Self-attention不考虑顺序/位置因素,因此需要加入位置信息。
(1)Original paper
把ei加到ai里面。ei是手动设计的。
(2)另一种解释
每一个xi接上一个one-hot向量pi,W·xi之后,就得到ai+ei,而Wp需要手工设计。
5.Seq2Seq model中的self-attention
(1)RNN的Seq2Seq (2)Self-attention的Seq2Seq
6.Transformer
(1)
多层Encoder和Decoder,可以并行计算,因此可以训练很深。
每一层有,Encoder,Decoder。Encoder有Self-Attention层和Feed Forward全连接层;Decoder比Encoder多一个普通的Encoder-Decoder Attention,翻译时候用来考虑Encoder输出做普通Attention。
(2)Transformer结构
(3)Decoder Mask
7.Universal Transformer
横向,时间上是m个Transformer,纵向是RNN。
8.Transformer用于图像处理
9.Transformer优缺点
RNN问题:没有双向信息流,不能并行计算。Transformer通过Self-attention和Positional encoding解决了RNN的问题。
缺点:数据稀疏问题仍然未解决
三、BERT
1.Contextual Word Embedding(今天主题)
数据稀疏仍是个问题。机器翻译可以有很多语料,但是其他任务没有语料,Transformer可以学习,但是需要监督数据来驱动,数据还是太少。
问题:Word Embedding无上下文;监督数据太少。
解决方案:用Contextual Word Embedding。考虑上下文的Embedding;无监督。
参考:
https://www.bilibili.com/video/BV1GE411o7XE?from=search&seid=8158434315525640721
https://www.bilibili.com/video/BV1H441187js?p=4
以上是关于NLPSeq2seq/Attention的主要内容,如果未能解决你的问题,请参考以下文章