注意力機制

Attention機制是什麼?

說到底attention實際上是一個加權求和,用於計算每個與attention關注的對象(其實是一個向量)的相關程度。

step1 設計一個打分函數fif i,針對每個hihi,計算出一個scoresisi 。而sisi打分的依據,就是hihi與attention所關注的對象(其實就是一個向量)的相關程度,越相關,所得sisi越大。
step2 對所得到的k個score si(i=1,2,…,k),通過一個softmax函數,得到最後的權重αiαi,即:
αi=softmax(si)αi=softmax(si)
step3αiαivalueivaluei對應相乘再求和,得到最終的attention value.

打分函數主要有以下幾種,如dot、general、concat和MLP等。公式如下:
在這裏插入圖片描述

Attention的設計

對於打分函數fifi 在論文”Dynamic Attention Deep Model for Article Recommendation by Learning Human Editors’Demonstration”中的Attention Mechanism章節給了較爲全面的概括。大體分爲三類:

  1. Location-based Attention
  2. General Attention
  3. Concatenation-based Attention

Location-based Attention

關注的圖像僅一個重要特徵
Location-based的意思就是,這裏的attention沒有其他額外所關注的對象,即attention的向量就是hihi本身,因而ff的設計如下:
si=f(hi)=activation(WThi+b)si=f(hi)=activation(WThi+b)

其種WRdW∈Rd,bRb∈R, siRsi∈R,這裏的激活函數activation,常見的有三種:1)tahn,2)relu,3)y=x(即沒有激活函數)

參考文獻 [1]中有具體的例子,都有着明顯的套路。

General Attention 不常見略過

Concatenation-based Attention

關注的圖像有多個特徵情況
ff就是被設計出來衡量hihihtht之間相關性的函數。一般是這麼設計的:
si=f(hiht)=vTactivation(W1hi+W2ht+b)si=f(hi,ht)=v^Tactivation(W1hi+W2ht+b)

這裏W1RddW1∈Rd∗d,W2RddtW2∈Rd∗dt,bRdb∈Rd,vRdv∈Rd,siRsi∈R,一般情況下dt=ddt=d
函數的描述的意思就是,希望通過W1,W2的對齊操作,使得hihihtht的特徵能夠對應上。然後再通過v計算score。
參考文獻 [1]中有具體的例子,都有着明顯的套路。

多層attention

多爲兩層,一層用於針對多個不同特徵對原始圖像打分,另一層用於結合多個特徵分攤權重。

參考文獻

  1. Attention Model(mechanism) 的 套路
  2. 論文閱讀: 圖像分類中的注意力機制(attention)
  3. Attention機制【圖像】
  4. 刁宇峯 AAAI2018中的自注意力機制(Self-attention Mechanism)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章