《人工智能技術基礎》課件 王科俊 第5、6章 注意力機制、變形金剛_第1頁
《人工智能技術基礎》課件 王科俊 第5、6章 注意力機制、變形金剛_第2頁
《人工智能技術基礎》課件 王科俊 第5、6章 注意力機制、變形金剛_第3頁
《人工智能技術基礎》課件 王科俊 第5、6章 注意力機制、變形金剛_第4頁
《人工智能技術基礎》課件 王科俊 第5、6章 注意力機制、變形金剛_第5頁
已閱讀5頁,還剩93頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

人工智能技術基礎注意力機制第五章

注意力機制(AttentionMechanism)是人類特有的大腦信號處理機制。例如,人類視覺通過快速掃描全局圖像獲得需要重點關注的目標區域,也就是一般所說的注意力焦點,而后對這一區域投入更多注意力資源,獲取更多需要關注目標的細節信息,抑制其他無用信息,人類的聽覺也具有同樣的功能。5注意力機制簡介5注意力機制簡介

注意力機制是利用有限的注意力資源從大量信息中快速篩選出高價值信息的手段,所以說注意力機制中最跟本的問題,其實就是“選擇”。

在深度神經網絡學習中,一般而言模型的參數越多則模型的表達能力越強,模型所存儲的信息量也越大,但這會帶來信息過載的問題。那么通過引入注意力機制,在眾多的輸入信息中聚焦于對當前任務更為關鍵的信息,降低對其他信息的關注度,甚至過濾掉無關信息,就可以解決信息過載問題,并提高任務處理的效率和準確性。下圖為計算機視覺中的注意力機制:紅色表示需要重點關注的部分,藍色表示可以酌情忽略的部分。1.

了解注意力機制的定義和分類;2.掌握軟注意力機制原理及計算過程;3.掌握卷積網絡中常用的通道注意力和空間注意力的特性和應用,以及常見的方案和改進措施;4.了解自注意力機制的輸入方式及特性,了解自注意力機制在視覺領域的應用;5.了解互注意力機制的特性。5注意力機制學習目標目錄Contents5.1軟注意力機制的原理及計算過程通道注意力和空間注意力自注意力機制互注意力機制本章小結5.25.35.45.501軟注意力機制的原理及計算過程5.1軟注意力機制的原理及計算過程軟注意力機制的計算過程包括3個步驟:5.1軟注意力機制的原理及計算過程軟注意力機制的計算過程包括三個步驟:5.1軟注意力機制的原理及計算過程軟注意力機制的計算過程包括三個步驟:5.1軟注意力機制的原理及計算過程軟注意力機制的計算過程包括三個步驟:5.1軟注意力機制的原理及計算過程軟注意力值計算過程圖5-1軟注意力值的計算過程5.1軟注意力機制的原理及計算過程常見的廣義軟注意力(鍵值對方式)值的計算過程鍵1鍵1鍵1鍵1F(Q,K)F(Q,K)F(Q,K)F(Q,K)s1s2s3s4類Softmax()歸一化a1a2a3a4××××值1值1值1值1注意力值查詢階段1階段2階段302通道注意力和空間注意力5.2通道注意力和空間注意力5.2.1通道注意力

在卷積神經網絡中,特征圖代表了原始圖像數據的特征,在同一層中,不同的特征圖代表了不同的屬性。顯然,不同屬性對于卷積神經網絡要完成的工作貢獻程度不同,應該給予不同的重視程度。由于在卷積神經網絡中,特征圖所在的位置稱為通道,因此,反映對通道重視程度的給通道加權的方法被稱為通道注意力。5.2通道注意力和空間注意力5.2.1通道注意力(1)ECA-Net圖5-3ECA-Net的結構5.2通道注意力和空間注意力5.2.1通道注意力(2)SK-Net圖5-4多分支通道注意力SK-Net5.2通道注意力和空間注意力5.2.1通道注意力(2)SK-Net圖5-5SK-Net中Fuse操作5.2通道注意力和空間注意力5.2.1通道注意力(2)SK-Net(a)Split-Attention(b)ResNeSt模塊圖5-6SK-Net在ResNeSt模塊中的應用5.2通道注意力和空間注意力5.2.2空間注意力

空間注意力類似通道注意力,不同在于它的全局平均池化(GAP)和全局最大值池化(GMP)不是針對通道(特征圖),而是針對同一層內的所有特征圖中相同位置的像素進行GAP和GMP,并將得到的均值特征圖和最大值特征圖并在一起進行卷積操作,卷積生成特征圖的每一個像素對應的神經元激活函數選取Sigmoid函數,得到針對每個像素加權值構成的特征圖,最后將這一特征圖的像素與原所有特征圖的對應像素相乘,為所有特征圖的每個像素加權。圖5-7空間注意力模塊及使用5.2通道注意力和空間注意力5.2.3混合注意力

CBAM(ConvolutionalBlockAttentionModule)是著名的混合注意力模塊,它實質上是通道注意力和空間注意力的串行使用,圖5-8給出CBAM模塊及其組成。CBAM的使用方法與SE-Net一樣,圖5-9給出了它的使用方式。圖5-9CBAM的使用5.2通道注意力和空間注意力5.2.3混合注意力5.2通道注意力和空間注意力5.2.3混合注意力

通道注意力和空間注意力既然可以串行構成混合注意力,當然也可以并行構成混合注意力,如圖5-10所示。其使用方式與圖5-9的CBAM相同。圖5-10通道注意力和空間注意力并行構成的混合注意力5.2通道注意力和空間注意力5.2.3混合注意力

2021年的論文《CoordinateAttentionforEfficientMobileNetworkDesign》針對輕量化網絡設計提出的CA注意力就是融合了通道和位置信息的混合注意力,它與通道注意力SE-Net、CBAM的區別如圖5-11所示。圖5-11CA模塊與SE模塊、CBAM模塊的區別03自注意力機制5.3自注意力機制

自注意力機制概念5.3自注意力機制5.3.1自注意力機制的輸入方式及特性應用中自注意力機制存在兩種輸入方式:全輸入和掩膜輸入。1.全輸入5.3自注意力機制5.3.1自注意力機制的輸入方式及特性1.全輸入圖5-12全輸入自注意力機制的計算過程5.3自注意力機制5.3.1自注意力機制的輸入方式及特性2.逐項輸入(掩膜輸入)5.3自注意力機制5.3.1自注意力機制的輸入方式及特性2.逐項輸入(掩膜輸入)圖5-13掩膜輸入自注意力機制的計算過程5.3自注意力機制5.3.1自注意力機制的輸入方式及特性

圖5-14給出了全輸入自注意力機制和掩膜輸入自注意力機制所建立的輸出輸入關系圖,圖中虛線代表的是虛擬連接。

(a)全輸入

(b)掩膜輸入圖5-14自注意力機制的虛擬連接圖5.3自注意力機制5.3.1自注意力機制的輸入方式及特性

全連接網絡建立的輸入輸出關系不是輸入序列與輸出序列之間的關系,而是單一輸入和輸出之間的關系,其連接邊數是固定不變的(與矢量的個數,即特征長度相關),它是實體模型(圖5-15(a)),因而不能處理長度可變的序列。(a)全連接模型

(b)自注意力模型圖5-15全連接模型與自注意力模型的區別5.3自注意力機制5.3.2自注意力機制與RNN區別

圖5-16給出了普通RNN按輸入信息順序展開的結構圖(a)和其對應的簡圖(b)。圖5-17給出了雙向RNN按輸入信息順序展開的結構圖(a)和其對應的簡圖(b)。(a)

(b)

圖5-16普通RNN按輸入時序展開結構圖及簡圖5.3自注意力機制5.3.2自注意力機制與RNN區別

對比自注意力機制的虛擬連接圖5-14和RNN按輸入時序展開的結構簡圖,可以看到全輸入的自注意力機制和雙向RNN,掩膜輸入的自注意力機制和普通RNN在形式上基本一致。但是它們本質上是不同的,從神經網絡角度看,自注意力機制模型是依據輸入數據的自相關性的線性前向神經網絡,而RNN是有隱層反饋連接的循環神經網絡。圖5-17雙向RNN按輸入時序展開結構圖及簡圖5.3自注意力機制5.3.3自注意力機制在視覺領域的應用

圖5-18是視覺中自注意力的基本結構,FeatureMaps是由基本的深度卷積網絡得到的特征圖,如ResNet、Xception等,這些基本的深度卷積網絡被稱為backbone,通常將最后ResNet的兩個下采樣層去除,使獲得的特征圖是原輸入圖像的1/8大小。圖5-18自注意力機制在卷積神經網絡中的應用5.3自注意力機制5.3.3自注意力機制在視覺領域的應用

2017年,何凱明等人提出的Non-localNeuralNetworks(圖5-19)是著名的視覺自注意力方法,本質上就是在卷積網絡中的某一位置加入自注意力,再加一個殘差連接的模塊。這種方法在卷積網絡中的應用可以建立某層所有特征之間的聯系,提高卷積網絡的性能。由于計算需求大,建議盡量在卷積網絡的高層應用。圖5-19Non-localNeuralNetworks5.3自注意力機制5.3.3自注意力機制在視覺領域的應用DANet(DualAttentionNetworks)(圖5-20)則是將視覺通道自注意力和空間自注意力并行相加,它在語義分割中取得了良好效果。DANet中的空間自注意力模塊和通道自注意力模塊都是Non-localblock。圖5-20DANet(DualAttentionNetworks)5.3自注意力機制5.3.3自注意力機制在視覺領域的應用

圖5-21給出了兩種視覺注意力的細節,空間注意力模塊中B、C、D均由輸入A經過CNN獲得,維度均為C×H×W,然后將它們都Reshape(塑形)成C×N(N=H×W),然后將B的轉置與C相乘得到N×N的矩陣,矩陣的每個元素表示所有特征圖上的不同像素點之間的關系,提取的是空間信息。(a)空間自注意力模塊(b)通道自注意力模塊圖5-21DANet中的兩種視覺自注意力模塊5.3自注意力機制5.3.3自注意力機制在視覺領域的應用

自注意力不僅能在處理圖像的卷積神經網絡中應用,還可以在處理視頻的CNN-RNN中應用。圖5-22給出了處理視頻序列的CNN-RNN中的自注意力機制,由于這種自注意力是加在時間維度上,針對時序任務的,也被稱為時間注意力機制。圖5-22CNN-RNN中的自注意力機制5.3自注意力機制5.3.3自注意力機制在視覺領域的應用

圖5-22是以行人視頻序列為例展示的時間自注意力。行人序列中的個別幀通常會出現遮擋問題,為此要對視頻序列中的每一幀進行加權,更準確的獲取針對整個序列的行人特征。(a)K和V的生成(b)q的生成(c)注意力權重的生成與時間注意力機制的實現圖5-23時間注意力的實現過程5.3自注意力機制5.3.3自注意力機制在視覺領域的應用04互注意力機制5.4互注意力機制

如果軟注意力機制中的K和V來自輸入信息,Q來自輸出信息,由于既用到輸入信息,又用到輸出信息,因此稱為互注意力機制。互注意力機制是一種通用的思想,本身不依賴于特定框架,但是常結合Encoder-Decoder(編碼器#譯碼器)框架使用,用來處理與時間相關或與順序相關的信息。圖5-24使用RNN實現的Encoder-Decoder框架中的互注意力的計算過程5.4互注意力機制05本章小結5.5本章小結

本章在介紹注意力機制原理及計算過程的基礎上,從查詢量的有無和來自何處,分別引出了卷積網絡中常用的通道注意力和空間注意力、能解決長程依賴關系的自注意力機制和N-M結構的循環神經網絡中的互注意力。在介紹上述三種注意力機制的過程中,重點討論了它們的各種特性和應用,常見的方案和改進措施,以利于讀者靈活應用注意力機制。感謝您的觀看!人工智能技術基礎

變形金剛第六章

變形金剛(Transformer)是谷歌公司的VaswaniA等人在2017年發表的文章《Attentionisallyouneed》中提出解決Seq2Seq(序列到序列)問題的一種深度神經網絡模型。自它提出后,自然語言處理(NaturalLangnageProcessing,NLP)研究取得了巨大進步。

2018年后人工智能逐漸走進了大模型時代,2022年11月30日OpenAI發布的ChatGPT在郵件撰寫、視頻腳本編寫、文本翻譯、代碼編寫等任務上的強大表現(大多不比人類差),被稱為與AlphaGo一樣轟動的事件,是人工智能“奇點”來臨的初顯。而Transformer正是這些大語言模型的基礎。6變形金剛簡介目錄Contents6.1Transformer的結構和工作原理Transformer在NLP中的應用Transformer在視覺領域中的應用小結6.26.36.41.學習Transformer的基本結構和原理,掌握Transformer的位置編碼、編碼器和解碼器結構和多頭自注意力機制,了解訓練方式和特點,應用所學內容分析和解釋其工作機制,理解和分析Transformer的優勢和局限性;2.學習Transformer在自然語言處理中的應用方法,理解并掌握BERT和GPT的基本原理和訓練方法;3.學習Transformer在視覺中的應用方法,掌握ViT的基本結構和訓練方法,理解PiT、CvT、DeiT、TNT和S-T等模型的結構,了解受ViT啟發的MLP-Mixer和AS-MLP的結構。6變形金剛(Transformer)學習目標01Transformer的結構和工作原理6.1Transformer的結構和工作原理編碼器(Encoder)由6個編碼模塊組成,包括殘差自注意力(Self-Attention)和殘差連接的前向神經網絡(FFNN)組成;譯碼器(Decode)由6個譯碼模塊組成。包括殘差自注意力,殘差互注意力(Encoder-DecoderAttention)以及殘差連接的前向神經網絡;編碼器最后一個Block的輸出作為譯碼器每一個Block的輸入。

Transformer本質上是一個Encoder-Decoder的結構。6.1Transformer的結構和工作原理

(a)模型組成

(b)模型結構

圖6-1Transformer概貌6.1Transformer的結構和工作原理

Transformer的工作流程大體可分為3步:獲取輸入序列中的每個輸入的表示向量X,X由輸入的編碼和所在位置的編碼相加得到。將輸入序列所有輸入的表示向量放在一起,構成Transformer的輸入向量矩陣;將得到輸入向量矩陣送入Encoder中,經過6個Encoderblock后可以得到所有輸入的編碼信息矩陣C;將Encoder輸出的編碼信息矩陣C傳遞到Decoder中,Decoder依次會根據當前輸出的前面所有輸出來產生下一個輸出。6.1Transformer的結構和工作原理

語言翻譯問題示例:將“我是一名學生”譯為英文。圖6-2輸入矩陣的生成圖6-3編碼過程6.1Transformer的結構和工作原理

語言翻譯問題示例:將“我是一名學生”譯為英文圖6-4譯碼預測輸出6.1Transformer的結構和工作原理6.1.2多頭自注意力多頭注意力(Multi-HeadAttention),是由多個自注意力(Self-Attention)或多個互注意力(Encoder-DecoderAttention)組成的。Transformer中的注意力機制即自注意力和互注意力,相似度計算采用的是縮放點積模型。(6-2)6.1Transformer的結構和工作原理6.1.2多頭自注意力實例:以“我是一名學生”為例,以矩陣運算的方式說明注意力機制的計算過程1.計算K、Q、V將輸入矩陣X與線性變陣矩陣WK,WQ,WV(實質為線性神經網絡層,它們的連接權通過對Transformer的訓練得到)相乘得到K,Q,V。注意:

X,K,Q,V的每一行都表示一個詞元(token)。圖6-6計算K、Q和V6.1Transformer的結構和工作原理6.1.2多頭自注意力2.根據公式計算注意力分布K的轉置乘以Q后,得到的矩陣行列數都為n(此例中為4),n為句子單詞數,矩陣可以表示單詞之間的注意力強度。(b)逐行使用Softmax計算注意力系數(a)計算相似度矩陣圖6-7計算注意力分布矩陣6.1Transformer的結構和工作原理6.1.2多頭自注意力3.將注意力分布矩陣與V矩陣相乘,得到最終的注意力輸出矩陣Z。(a)計算最終輸出Z

(b)Z1的計算過程圖6-8計算注意力模塊的最終輸出6.1Transformer的結構和工作原理6.1.2多頭自注意力多頭注意力是由多個注意力組合形成的。圖6-9多頭注意力(Multi-HeadAttention)結構圖Z1

Z2Z86.1Transformer的結構和工作原理6.1.2多頭自注意力h=8時候的情況,會得到8個輸出矩陣Z。Multi-HeadAttention將8個輸出矩陣Z1到Z8拼接(Concat)在一起,然后傳入一個線性(Linear)神經網絡層,得到最終的輸出Z。Multi-HeadAttention輸出的矩陣Z與其輸入的矩陣X的維度是一樣的。6.1Transformer的結構和工作原理6.1.3編碼器結構

Transformer的Encoderblock結構是由Multi-HeadSelf-Attention,Add&Norm,FeedForward,Add&Norm組成的。6.1Transformer的結構和工作原理6.1.3編碼器結構1.Add&Norm

Add&Norm層由Add和Norm兩部分組成,計算公式如下。

LayerNorm(X+MultiHeadAteetion(X))

LayerNorm(X+FeedForward(X))

(6-3)

Add指X+Multi-HeadAttention(X),是一種殘差連接,在ResNet中經常用到,通常用于解決多層網絡訓練的問題,可以讓網絡只關注當前差異的部分。

Norm指LayerNormalization,常用于RNN結構,LayerNormalization會將每一層神經元的輸入轉成均值方差一致的輸入,這樣可以加快網絡訓練的收斂速度。X+F(x)F(x)+x6.1Transformer的結構和工作原理6.1.3編碼器結構2.FeedForward

FeedForward層比較簡單,是一個兩層的全連接層,第一層的激活函數為ReLU,第二層不使用激活函數,對應的公式如下:

max(0,XW1+b1)W2+b2

(6-4)

6.1Transformer的結構和工作原理6.1.4譯碼器結構

Transformer的Decoderblock結構,包含兩個Multi-HeadAttention層,最后有一個Softmax層,計算下一個輸出(翻譯的單詞)的概率。第1個Multi-HeadAttention層采用Masked掩膜操作,是掩膜輸入的多頭自注意力。第2個Multi-HeadAttention層的K,V矩陣使用Encoder的編碼信息矩陣C進行計算,而Q使用上一個Decoderblock的輸出計算,是多頭互注意力。6.1Transformer的結構和工作原理6.1.4譯碼器結構1.第1個Multi-HeadAttention

采用了掩膜(Masked)輸入。通過Masked操作可以防止第i個單詞知道i+1個單詞之后的信息。下面以“我是一名學生”翻譯成“Iamastudent”為例說明Masked操作。圖6-12掩膜輸入示意圖6.1Transformer的結構和工作原理6.1.4譯碼器結構1.第1個Multi-HeadAttention掩膜自注意力的計算過程如下,其中用012345分別表示“<Begin>Iamastudent<end>”。第1步:Decoder的輸入矩陣和Mask矩陣。輸入矩陣包含“<Begin>Iamastudent”(0,1,2,3,4)五個單詞的表示向量,Mask是一個5×5的矩陣,用1表示不遮擋(綠色),用-inf(負無窮小)表示遮擋(黃色)。圖6-13輸入矩陣和掩膜矩陣6.1Transformer的結構和工作原理6.1.4譯碼器結構1.第1個Multi-HeadAttention第2步:通過輸入矩陣X計算得到K,Q,V矩陣,然后計算KT和Q的乘積KTQ。第3步:得到KT

Q之后需要按(6-2)式進行Softmax,計算注意力分布,但在Softmax之前需要使用Mask矩陣遮擋住每一個單詞之后的信息,遮擋操作如圖6-13。第4步:使用經過逐行Softmax處理后的MaskKTQ與矩陣V相乘,得到輸出Z,則單詞1的輸出向量Z1只包含單詞的1信息。圖6-13輸入矩陣和掩膜矩陣6.1Transformer的結構和工作原理6.1.4譯碼器結構2.第2個Multi-HeadAttentionDecoderblock第2個Multi-HeadAttention是互注意力K,V矩陣使用Encoder的編碼信息矩陣C計算。Q根據上一個Decoderblock的輸出Z計算(如果是第1個Decoderblock,則使用輸入矩陣X進行計算),后續的計算方法與之前描述的一致。

在Decoder中使用互注意力,可使每一時刻的輸出(預測的每個單詞)都可以利用Encoder所有輸入序列(單詞)的信息。6.1Transformer的結構和工作原理6.1.4譯碼器結構3.Softmax預測輸出(單詞)

Decoderblock最后是利用Softmax預測下一個單詞(的概率),之前的網絡層已經得到一個最終的輸出Z0。因為Mask的存在,使得單詞0的輸出Z0只包含單詞0的信息。Softmax根據輸出矩陣的每一行預測下一個輸出(單詞)。

圖6-15Softmax預測輸出6.1Transformer的結構和工作原理6.1.5Transformer的訓練Transformer本身就是編碼譯碼結構編碼器將輸入序列X1,X2,…,XN編碼成編碼序列C1,C2,…,CN;譯碼器將編碼序列C1,C2,…,CN譯碼成每一刻產生一個輸出Yi的輸出序列Y1,Y2,…,YM,可以直接用于語言翻譯,也可以直接用于文字→文字生成。Transformer的訓練可以直接采用誤差反向傳播算法進行,訓練數據集可以使用語言翻譯數據集;Transformer的訓練在詞編碼和全連接層部分都使用了Dropout技術。6.1Transformer的結構和工作原理6.1.6Transformer的特點分析Transformer的輸入中增加輸入序列的位置編碼,使其不僅能建立輸入序列的長程關系,還能夠表示特定輸入在序列中的位置。RNN按時刻輸入序列數據,使其隱式記憶了輸入的位置信息,相比之下,Transformer的自注意力層對不同位置出現相同的詞給出的是同樣的輸出向量表示。如果沒有位置編碼,輸入Transformer中兩個相同但位置不同的詞,例如在不同位置上的“I”,其表示的向量是相同的。Transformer是由注意力和前向神經網絡組成的,理論上它可以構建任意長度輸入序列的長程關系,因此在各種應用中展現了良好的性能。Transformer不同于RNN,不需要輸入序列按時刻串行輸入,只需將輸入序列構成的輸入矩陣送入Transformer。它可以比較好地并行訓練和執行,有更高的運行效率,但也有更大的存儲需求。6.1Transformer的結構和工作原理6.1.6Transformer的特點分析Transformer中的Multi-HeadAttention中有多個Attention,可以捕獲輸入序列之間多種維度上的相關性,在提高了模型特征提取能力的同時也提高了模型的記憶能力。Transformer各模塊里的注意力和前向網絡都是殘差連接,使Transformer更易訓練。02Transformer在NLP中的應用6.2Transformer在NLP中的應用Transformer起源于NLP研究,最顯著的成果也是在NLP中的應用。它已經成為大語言模型的基礎構件,也是生成式人工智能文字生成文字的基礎構件。圖6-16語言模型的發展歷程6.2.1BERT的基本原理和訓練方法BERT(BidirectionalEncoderRepresentationfromTransformers)是2018年10月由GoogleAI研究院在文章《BERT:Pre-trainingofDeepBidirectionalTransformersforLanguageUnderstanding》中提出的一種預訓練模型;該模型在機器閱讀理解頂級水平測試SQuAD1.1中表現出驚人的成績:全部兩個衡量指標上全面超越人類,并且在11種不同NLP測試中創出當時最好的表現,代表實現大模型的一種模式。6.2Transformer在NLP中的應用6.2.1BERT的基本原理和訓練方法1.BERT的結構BERT僅用了Transformer的Encoder側的網絡。BERT的維度是768維度,然后分成12個Head,每個Head的維度是64維。BERT中有一個PostionEmbedding是隨機初始化,然后從數據中學出來的。

BERT模型分為24層和12層兩種,其差別就是使用TransformerEncoder層數的差異。BERT-Base使用的是12層的TransformerEncoder結構;BERT-Large使用的是24層的TransformerEncoder結構。6.2Transformer在NLP中的應用6.2.1BERT的基本原理和訓練方法2.BERT的輸入和輸出1)BERT的輸入

BERT的輸入編碼比Transformer的多了1項,共3項:TokenEmbeddings;SegmentEmbeddings和PositionEmbeddings。圖6-17BERT的輸入編碼6.2Transformer在NLP中的應用6.2.1BERT的基本原理和訓練方法2.BERT的輸入和輸出2)BERT的輸出BERT的輸出也與輸入一致,即有多少個輸入就有多少個輸出。圖6-19BERT的輸出6.2Transformer在NLP中的應用6.2.1BERT的基本原理和訓練方法3.BERT訓練BERT的訓練包含預訓練(Pre-train)和微調(Fine-tune)兩個階段。Pre-train階段:模型是在無標注的標簽數據上進行訓練;Fine-tune階段:所有的參數會用下游的有標注的數據進行訓練。圖6-20BERT的訓練6.2Transformer在NLP中的應用6.2.1BERT的基本原理和訓練方法3.BERT訓練(1)BERT預訓練

BERT是一個多任務模型,它的預訓練(Pre-training)任務由兩個自監督任務組成,即掩膜語言模型(MaskedLanguageModel,MLM)和下一個句子預測(NextSentencePrediction,NSP)。(2)BERT的微調

微調(Fine-Tuning)的任務包括:基于句子對的分類任務、基于單個句子的分類任務、問答任務、命名實體識別等。

通常在BERT后加入不同的分類器(一個線性層和Softmax輸出),完成特定任務。這些任務使用的都是有標簽的小數據集,所以BERT的微調是有監督的微調,用來確定分類器參數和微調BERT本體參數。6.2Transformer在NLP中的應用6.2.2GPT的基本原理和訓練方法

GPT是OpenAI在2018年6月的論文ImprovingLanguageUnderstandingbyGenerativePre-Training中提出的大語言模型,是GenerativePre-Training的簡稱。隨后OpenAI不斷推出它的升級版本,模型規模越來越大,性能越來越強。2022年11月30日,OpenAI發布的ChatGPT就是基于GPT3.5開發的,它引領了基于大語言模型(LLM)的人工智能開發熱潮,使人工智能的應用進入大模型時代。6.2Transformer在NLP中的應用6.2.2GPT的基本原理和訓練方法1.GPT的結構

GPT使用Transformer的Decoder結構,并對TransformerDecoder進行了一些改動。原本Decoder包含兩個Multi-HeadAttention結構,GPT只保留了MaskMulti-HeadAttention。6.2Transformer在NLP中的應用6.2.2GPT的基本原理和訓練方法2.GPT的訓練

GPT的訓練包含預訓練和微調兩個階段。即先在大規模無標簽的語料庫上預訓練,再在小得多的有標簽的數據集上針對具體任務進行微調。(1)GPT的預訓練

GPT采用的是掩膜輸入,輸出是下一個輸入的預測值,因此其訓練可以直接采用有監督的誤差反向傳播算法,確定GPT中的權參數。

第一步,將開始符(<Start>)編碼(編碼方法與Transformer的輸入編碼一樣)后送入GPT獲得其輸出Y1;再將X1編碼,與<Start>的編碼一起送入GPT得到其輸出Y2;同樣過程繼續直到將<Begin>,X1,X2,…,XN的編碼一起送入GPT得到其輸出YN+1。

第二步,求損失函數對網絡權值的偏導,反向傳播后更新網絡權值。6.2Transformer在NLP中的應用6.2.2GPT的基本原理和訓練方法2.GPT的訓練(2)GPT的微調

預訓練好的GPT可以看作一個通用特征提取器,根據不同的任務需求可以設計一個專用的分類或預測網絡(一般使用一層

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論