習(xí)】Attention注意力機(jī)制的公式解析)
文章目錄Attention注意力機(jī)制的公式解析一、基本形式二、組成部分解釋三、作用機(jī)制四、應(yīng)用價(jià)值A(chǔ)ttention注意力機(jī)制的公式解析P.S. 關(guān)于Self-Attention自注意力機(jī)制的更詳細(xì)信息可以看我的這一篇文章Self-Attention機(jī)制詳解Transformer的核心引擎。一、基本形式A t t e n t i o n ( Q , K , V ) s o f t m a x ( Q K T d ) V Attention(Q,K,V)softmax(\frac{QK^T}{\sqrtgv5xshg9wyt})VAttention(Q,K,V)softmax(d?QKT?)V二、組成部分解釋輸入?yún)?shù)Q (Query):查詢矩陣K (Key):鍵矩陣V (Value):值矩陣d: 鍵向量的維度可以把注意力機(jī)制理解成一個(gè)信息檢索過程名稱中文作用直觀理解Q (Query)查詢向量表示當(dāng)前 Token 想找什么信息我想知道什么K (Key)鍵向量表示每個(gè) Token 可以通過什么特征被匹配我有什么信息值得關(guān)注V (Value)值向量表示每個(gè) Token 實(shí)際提供的信息我能提供什么內(nèi)容核心思想是使用 Q 和 K 計(jì)算注意力權(quán)重再利用這些權(quán)重對 V 進(jìn)行加權(quán)求和。e.g.①假設(shè) Transformer 正在處理這句話“小明買了一臺電腦因?yàn)樗\(yùn)行速度很快?!蹦P托枰斫狻八敝复裁础想尋找自己指代的對象的內(nèi)容即“它”。K“小明”“電腦”等 Token 提供各自的匹配特征。V這些 Token 攜帶著可供提取的語義信息。如果“它”的 Q 與“電腦”的 K 匹配程度很高模型就會給“電腦”對應(yīng)的 V 較大的注意力權(quán)重。這樣“它”的新表示就能融合更多與“電腦”相關(guān)的信息。②或者還有一種理解Q就像鑰匙想要找對應(yīng)的保險(xiǎn)柜K像保險(xiǎn)柜與鑰匙配套的鎖V是想找到的保險(xiǎn)柜里面的東西。上述①②兩種說法都是直觀解釋真實(shí)模型的 Q、K、V 是通過訓(xùn)練得到的高維數(shù)值向量不一定具有如此明確的人類語義。計(jì)算步驟a.計(jì)算注意力分?jǐn)?shù)Q K T d \frac{QK^T}{\sqrtgv5xshg9wyt}d?QKT?將Q與K的轉(zhuǎn)置相乘除以縮放因子d \sqrtgv5xshg9wytd?以防止梯度消失b.歸一化s o f t m a x ( Q K T d ) softmax(\frac{QK^T}{\sqrtgv5xshg9wyt})softmax(d?QKT?)使用softmax函數(shù)將分?jǐn)?shù)轉(zhuǎn)換為概率分布關(guān)于softmax函數(shù)的相關(guān)信息可以參見Softmax 函數(shù)詳解確保所有權(quán)重和為1c.加權(quán)求和將歸一化后的權(quán)重與V相乘得到最終的注意力輸出三、作用機(jī)制相關(guān)性計(jì)算Q K T QK^TQKT計(jì)算查詢和鍵之間的相關(guān)性高相關(guān)性會得到更大的權(quán)重縮放處理d \sqrtgv5xshg9wytd?用于縮放點(diǎn)積結(jié)果防止維度d較大時(shí)softmax函數(shù)梯度消失權(quán)重分配softmax確保權(quán)重為正且和為1實(shí)現(xiàn)對不同位置信息的軟性選擇四、應(yīng)用價(jià)值信息篩選自動識別重要信息忽略不相關(guān)信息長距離依賴捕捉序列中的長距離依賴關(guān)系克服傳統(tǒng)RNN的局限性并行計(jì)算支持并行處理提高計(jì)算效率