Attention机制的简要介绍

    科技2024-06-06  76

    attention机制说白了就是加权求和。

    attention机制之所以看上去繁复冗杂是因为有很多的种类,按照不同的分类标准,可以分为以下几种类型:

    1、计算区域

    soft attention:对所有key求权重概率,参考所有key进行加权求和。hard attention:精准定位到某个key,此key权重概率为1,其余key为0。local attention:上述两者折中。先基于hard定位到某key,然后在key的一个窗口内应用soft。

    2、所用信息:假设要对一段原文进行attention处理,可能会用到内部信息和外部信息。

    general attention:用到了外部信息,常见于用来构建两段文本关系的任务。query一般包含了外部信息,根据外部query对原文进行对齐。 l2. ocal attention:只使用内部信息,即query、key、value都只和输入原文有关系,如:self attention。

    3、结构层次

    单层attention:用一个query对一段原文进行一次attention。多层attention:比如把一个文档划分成多个句子。第一层对每个句子使用attention计算一个句向量,第二层对所有句向量执行attention生成文档向量进行后续使用。多头attention:可参考《attention is all you need》中的multihead attention。

    4、模型结构

    CNN+attention:可对卷积层输出做attention或者可用attention替换max pooling。LSTM+attention:如对所有step的hidden state进行加权,把注意力集中到整段文本中比较重要的hidden state信息。纯attention:最经典的方案,如《attention is all you need》就属于这种。

    参考: https://zhuanlan.zhihu.com/p/124218197 https://zhuanlan.zhihu.com/p/35739040

    Processed: 0.035, SQL: 8