iT邦幫忙

2021 iThome 鐵人賽

DAY 24
0
自我挑戰組

30天初步了解自然語言處理-自學筆記系列 第 24

[Day24] NLP會用到的模型(七)-transformer encoder

一. encoder

架構如下:
https://ithelp.ithome.com.tw/upload/images/20210924/20140426epZ2CyJks5.png

encoder的動作在於對input進行編碼,在一開始input會產生Q、K、V這三個矩陣,由上圖可知道,他會先進行多頭的self-attention得到新的一組編碼,這個地方他有多做一個處理就是殘差連接(Residual connection),這邊作者是用到 ResNet 的概念,能夠讓深度學習訓練更深的網路,避免造成梯度爆炸或梯度消失,公式如下:
Residual(x) = x + Sublayer(x)

就是將經過多頭 self-attention的值與原本input的值進行相加,以圖示來說如下:
https://ithelp.ithome.com.tw/upload/images/20210924/201404260NjPxQr20H.png

各位可以看上圖,他有一塊add&norm,add就是做上述的殘差相加,norm是Layer normalization,對每一層做正規化的意思(詳細部分未來再補QQ),最後殘差與正規化的公式如下:
Add & Norm(x) = LayerNorm(x + Sublayer(x))

在encoder的最後最後,會將K與V(兩者長一樣)傳給decoder,與decoder的Q做attention,明天會再介紹decoder的部分


上一篇
[Day23] NLP會用到的模型(六)-transformer架構
下一篇
[Day25] NLP會用到的模型(八)-transformer decoder
系列文
30天初步了解自然語言處理-自學筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言