1.encoder-decoder机制
中间会产生一个语义编码向量c,而这个c是固定长度的,且不变的。引入attention就是为了根据输出y来调整c。
2.attention的计算
encoder中存在隐藏状态h,c就是关于h的加权和
3.self attention
探索序列内部的关系
attention中的softmax
attention score 被称为相似度(匹配度、影响得分)
输入中的隐藏状态h1,h2,…对输出的影响不同,各自占有的权重应该是不一样的。
将得分映射到概率上就可以表示权重了。
进一步理解
1.首先隐藏状态的可以通过一些模型得到,比如由RNN encoder 输入(x1,x2,…)得到,同样输出y也是如此,它的隐藏状态可以设为s(有的资料为H),encoder的最后一个隐藏状态就是decoder的第一个隐藏状态。
st=f(st-1,yt-1,ct)
ct指的是context vector
权重是由st-1和h之间的相关性softmax得到的
求p(yi|y1,y2,…yi-1,si,ci)进行预测