Attention
- 注意力焦点更多专门获取某一区域的注意力资源,以获取更多所需要关注目标的细节信息,而抑制其他无用信息
- Encoder-Decoder框架:在<Source,Target>结构中,encoder通过对source的非线性变化转变成语义信息,一般采用CNN结构;decoder根绝语义信息和已生成的历史信息(先前信息的decoder输出)来生成当前时刻信息,采用RNN模型
y1 = f©; y2 = f(c,y1); y3 = f(c, y1,y2) - attention模型:传统的encoder-decoder是分心模型,无论生成哪一个单词y1,y2,y3,在y4的影响力都是相同的。句子中每一个词都学会对应的原句子中单词的注意力分配概率信息,相同的中间语义表示c会替换成根据当前生成单词而不断变化的ci
y1 = f(c1); y2 = f(c2,y1); y3 = f(c3, y1,y2)…ci = sum(aijhj)
attention机制假设encoder与decoder均采用RNN形式,在生成yi之前,target隐藏节点i-1时刻的输出是Hi-1,source每个隐藏节点i-1时刻hj,经过f函数来获得目标单词yi和没输入单词对应对齐的可能性(方法各样),最后经过softmax操作归一化得到符合概率分布区间的注意力分配概率数值
yi = softmax(Q * K)* V - self-attention模型,也称作intra-attention,attention机制发生在target的元素Q和source所有元素之间,然而self-attention发生source内部元素之间或者target内部元素之间发生的attentin机制,也可以理解成为target=source特殊情况下的注意力机制。self-attention可以捕获一个句子中单词之间的语法特征或者语义特征,更容易捕获句子汇总长距离的相互特征,对于RNN和LSTM需要依次序列计算,对于长距离的相互易拉特征,要经过若干时间步骤信息积累才能联系,self-attention直接讲句子中任意两个单词联系,极大缩短长距离依赖
- 描述任务中的encoder-decoder:encoder采用CNN对图片进行特征抽取,decoder采用RNN或者LSTM输出自然语言句子
- attention机制原因:计算能力的限制:计算力无法满足模型的复杂性;优化算法的限制:LSTM一定程度上缓解RNN的长距离依赖问题
- https://blog.csdn.net/weixin_44538273/article/details/86501056
- https://zhuanlan.zhihu.com/p/265108616?utm_source=wechat_session
- attention的优点:参数少、速度快:attention结局的RNN以及其变体的并行计算问题、效果好:长距离的信息弱化问题。