當前位置:成語大全網 - 漢語詞典 - 變形金剛

變形金剛

Transformer是由疊加的“自我註意機制”組成的深度網絡,是目前NLP中最強的特征提取器。

報紙:註意力是妳所需要的

整體來說,它由編碼器和解碼器兩部分組成,每個部分由六個編碼器和解碼器組成,每個編碼器和解碼器的結構相同,但不享有重量。

每個編碼器由兩部分組成:多頭自關註層和前饋神經網絡層。

每個解碼器由三部分組成:多頭自關註層、編碼器-解碼器關註層和前饋神經網絡層。

動機:當模型處理每個單詞(輸入序列中的每個位置)時,自我註意允許它查看輸入序列中的其他位置,以找到有助於更好地編碼該單詞的線索。

矩陣形式可用於並行計算。

插圖:

動機:將信息映射到不同的子空間可能會捕獲不同位置的註意信息。

按照自關註法(本文使用8個頭)進行多次相同的計算,每次使用不同的權重矩陣(,和),最後妳會得到幾個不同的矩陣,直接拼接得到壹個很長的矩陣,再乘以壹個參數矩陣,將矩陣壓縮到壹個低維(與嵌入維相同)。

在NLP中,詞序是非常重要的信息,因此添加位置編碼是考慮輸入序列中詞序的壹種方式。將位置編碼和嵌入向量直接相加,得到真實的單詞輸入向量。

本文給出了兩個位置編碼公式:

這壹層是壹個簡單的全連接層,它使用RELU激活函數。本文中這個全連通層的隱層維數為2048,公式如下:

在每個子層的末尾,輸出矩陣是,我們直接加上這壹層的輸入矩陣然後做歸壹化運算。範數函數參考參考1:圖層歸壹化。

範數的方法有很多,但都有壹個相同的目的,就是把輸入轉換成均值為0,方差為1的數據。我們在將數據發送到激活函數之前對其進行歸壹化,因為我們不希望輸入數據落入激活函數的飽和區域。

這壹層是壹個簡單的全連通網絡,將最後壹個解碼器輸出的向量投影到壹個更高維的空間(字典維)。

Softmax層將線性層的輸出向量轉化為概率輸出,選擇概率最大的詞作為輸出。

編碼器最終將總和輸出到每個解碼器的編碼器-解碼器層:

填充掩碼用於所有比例點積註意,而序列掩碼僅用於解碼器的自我註意

語料庫中每個句子的長度不壹樣,需要對齊。使用我們設置的閾值(壹般為255),對於較長的序列,直接截取左邊的序列,對於較短的序列,在其後面加0。

但是在縮放的點積註意中,我們無法更多的註意到這部分加了0的詞位,所以在自我註意中的softmax之前,直接將這些位置的值設置為,經過softmax之後,這些位置的概率值就會變成0。

也就是面膜(opt。)下圖中的塊:

序列掩碼的目的是讓解碼者看不到未來的信息,讓解碼者的註意力只能集中在當前解碼字之前的輸出字上,而不能依賴後面未解碼的。

所以就像Padding mask壹樣,它後面的單詞位置直接設置為,經過softmax後這些位置的概率值就會變成0。

這個操作對應於解碼器中的第壹個組件:掩蔽多頭註意力。

交叉熵或KL散度用於比較兩個輸出之間的差異,然後反向傳播用於優化所有參數。

在最後的softmax層,我們直接輸出位置最大的那個字,叫做貪婪解碼。

另壹種更合理的解碼方法叫做波束搜索。假設在1#位置解碼的概率值,前兩個位置字是I和me,那麽在2#位置解碼時,1#位置的依存字分別是I和me,算法分別運行兩次,其中取得分最高(或誤差最小)的兩個結果,以此類推。最終妳會得到兩個得分最高的序列。