1 摘要
1.1 核心
提出一個(gè)僅需要self attention + linear組合成encoder+decoder的模型架構(gòu)
2 模型架構(gòu)
2.1 概覽
2.2 理解encoder-decoder架構(gòu)
2.2.1 對(duì)比seq2seq,RNN
Self Attention
- 輸入token轉(zhuǎn)為特征輸入
- shape [n(序列長(zhǎng)度), D(特征維度)] 輸入
- 進(jìn)入attention模塊
- 輸出 shape [n(序列長(zhǎng)度), D1(特征維度)] 此時(shí)每個(gè)D1被N個(gè)D做了基于attention weight的加權(quán)求和
- 進(jìn)入MLP
- 輸出 shape [n(序列長(zhǎng)度), D2(輸出維度)] 此時(shí)每個(gè)D2被D2和MLP weight矩陣相乘
- 每個(gè)D2轉(zhuǎn)換為輸出token
RNN
- 34步去除,并將每次MLP的輸入修改為前一個(gè)Kt-1組合Kt輸入
2.2.2 我的理解
把卷積核的滑動(dòng)窗口修改成了不用滑動(dòng)的全局大小窗口,但同時(shí)能高效的進(jìn)行(1次矩陣乘法)特征提取。
CNN可以多通道拓展(增加)特征表征方式(修改卷積核個(gè)數(shù)),自注意力需要增加多頭機(jī)制。
3. Sublayer
3.1 多頭注意力 multi-head self-attention
3.1.1 縮放點(diǎn)乘注意力 Scaled Dot-Product Attention
得到query和字典KV里的softmax相似度矩陣
3.1.2 QKV
Q: 描述特征
K: 特征編號(hào)
V: 特征值
Attention(Q,K): 表示Query和Key的匹配程度(系統(tǒng)中商品(Key)很多,其中符合我的描述(Query)的商品的匹配程度會(huì)高一點(diǎn))
鍵是唯一標(biāo)識(shí) 值是該positional input的隱式特征 query是一個(gè)新的positional input 找到和query比較相似的值 解放局部特征提取 實(shí)現(xiàn)全局特征提取 輸出最后的query的最后一層特征向量 加上需要的head 構(gòu)建模型
Q,K點(diǎn)積之后會(huì)得到相似度矩陣 再和V點(diǎn)積后會(huì)得到加權(quán)的V
理解自注意力和QKV
3.1.3 multi-head
原因
1.attention可學(xué)習(xí)參數(shù)太少,增加線性層學(xué)習(xí)參數(shù)
2.類比CNN擴(kuò)展通道數(shù)
使得輸出的相似度矩陣是考慮了多種特征形式的。
3.1.4 masked
3.2 線性層 MLP
3.3 embedding and softmax
Label Smoothing
0 - 1 標(biāo)簽,softmax很難趨近為1。很soft,輸出值很大,才會(huì)激活為1。
正確的詞,softmax的輸出為 0.1 即可,剩下的值是 0.9 / 字典大小
損失 perplexity,模型的困惑度(不確信度)、log(loss)做指數(shù)。因?yàn)檎_的標(biāo)簽只需要給到 10 %。
模型不那么精確,可以提高 accuracy and BLEU score
3.4 positional encoding
輸入的token在經(jīng)過(guò)特征編碼后,會(huì)和位置編碼相加,我的理解是位置編碼就是一種特征,是一種和特征編碼等價(jià)的東西,所以直接做加法。
具體的加上了cos/sin函數(shù),將值縮到0-1(?)之間,和特征編碼的最大最小值相同,然后相加。
這個(gè)是對(duì)2D的位置編碼,其中考慮的行列分別進(jìn)行編碼為2/d組合成d。
3.5 dropout
線性層用了大量dropout(0.1-0.3)
總結(jié)
從語(yǔ)言模型來(lái)說(shuō),通過(guò)全局注意力機(jī)制,優(yōu)化掉RNN的短記憶缺點(diǎn)。
從模型架構(gòu)來(lái)說(shuō),通過(guò)全局注意力機(jī)制,得到一個(gè)每個(gè)權(quán)重都考慮到所有輸入特征的模型架構(gòu)/特征提取機(jī)制/backbone。
附
李沐b站 對(duì)該論文理解的一些題目和答案
歸一化,標(biāo)準(zhǔn)化,正則化
歸一化(Normalization):
使用方法: 歸一化通常指對(duì)輸入數(shù)據(jù)進(jìn)行縮放,使其值在特定的范圍內(nèi),例如將輸入歸一到0,1范圍或?1,1范圍。
意義: 歸一化有助于提高模型訓(xùn)練的穩(wěn)定性,避免梯度爆炸或梯度消失問(wèn)題。常見(jiàn)的歸一化方式包括最小-最大歸一化和Z分?jǐn)?shù)歸一化。
標(biāo)準(zhǔn)化(Standardization):
使用方法: 標(biāo)準(zhǔn)化是指對(duì)輸入數(shù)據(jù)進(jìn)行平移和縮放,使其均值為0,標(biāo)準(zhǔn)差為1。
意義: 標(biāo)準(zhǔn)化有助于使輸入數(shù)據(jù)更易于訓(xùn)練,使得模型更容易收斂。在某些情況下,標(biāo)準(zhǔn)化也有助于降低不同特征的權(quán)重對(duì)模型訓(xùn)練的影響。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-789148.html
正則化(Regularization):
使用方法: 正則化是通過(guò)在模型的損失函數(shù)中引入附加項(xiàng)來(lái)減小模型的復(fù)雜度。L1正則化和L2正則化是兩種常見(jiàn)的正則化方法。
意義: 正則化有助于防止過(guò)擬合,通過(guò)對(duì)模型參數(shù)的大小進(jìn)行懲罰,避免模型過(guò)度依賴訓(xùn)練數(shù)據(jù)中的噪聲或特定模式。L1正則化傾向于產(chǎn)生稀疏權(quán)重,而L2正則化傾向于產(chǎn)生較小且平滑的權(quán)重。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-789148.html
到了這里,關(guān)于論文閱讀 Attention is all u need - transformer的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!