 三種注意力層)_transformer架構(gòu))
本文將從Transformer的本質(zhì)、Transformer_的原理_、_Transformer的應(yīng)用__三個方面帶您一文搞懂Transformer總體架構(gòu) 三種注意力層。一、Transformer 的本質(zhì)Transformer的起源Google Brain 翻譯團隊通過論文《Attention is all you need》提出了一種全新的簡單網(wǎng)絡(luò)架構(gòu)——Transformer它完全基于注意力機制摒棄了循環(huán)和卷積操作。注意力機制是全部所需主流的序列轉(zhuǎn)換模型RNNTransformer出來之前主流的序列轉(zhuǎn)換模型都基于復(fù)雜的循環(huán)神經(jīng)網(wǎng)絡(luò)RNN包含編碼器和解碼器兩部分。當(dāng)時表現(xiàn)最好的模型還通過注意力機制將編碼器和解碼器連接起來。Transformer vs RNN循環(huán)神經(jīng)網(wǎng)絡(luò)RNN、特別是長短時記憶網(wǎng)絡(luò)LSTM和門控循環(huán)單元網(wǎng)絡(luò)GRU已經(jīng)在序列建模和轉(zhuǎn)換問題中牢固確立了其作為最先進方法的地位這些問題包括語言建模和機器翻譯。RNN LSTM GRURNN編碼器-解碼器架構(gòu)存在一個顯著的缺陷處理長序列時會存在信息丟失。編碼器在轉(zhuǎn)化序列x1, x2, x3, x4為單個向量c時信息可能丟失。因為所有信息被壓縮到這一個向量中增加了信息損失的風(fēng)險。解碼器從這一向量中提取信息也很復(fù)雜。RNN編碼器-解碼器架構(gòu)注意力機制一種允許模型在處理信息時專注于關(guān)鍵部分忽略不相關(guān)信息從而提高處理效率和準(zhǔn)確性的機制。它模仿了人類視覺處理信息時選擇性關(guān)注的特點。注意力機制當(dāng)人類的視覺機制識別一個場景時通常不會全面掃描整個場景而是根據(jù)興趣或需求集中關(guān)注特定的部分如在這張圖中我們首先會注意到動物的臉部正如注意力圖所示顏色更深的區(qū)域通常是我們最先注意到的部分從而初步判斷這可能是一只狼。注意力機制Q、K、V注意力機制通過查詢Q匹配鍵K計算注意力分?jǐn)?shù)向量點乘并調(diào)整將分?jǐn)?shù)轉(zhuǎn)換為權(quán)重后加權(quán)值V矩陣得到最終注意力向量。Q、K、V計算注意力分?jǐn)?shù)注意力分?jǐn)?shù)的價值量化注意力機制中某一部分信息被關(guān)注的程度反映了信息在注意力機制中的重要性。注意力分?jǐn)?shù)的價值Transformer的本質(zhì)Transformer是一種基于自注意力機制的深度學(xué)習(xí)模型為了解決自然語言處理中的序列到序列sequence-to-sequence問題而設(shè)計的。相較于RNN模型Transformer模型具有2個顯著的優(yōu)勢。優(yōu)勢一處理長序列數(shù)據(jù)。Transformer采用自注意力機制能夠同時處理序列中的所有位置捕捉長距離依賴關(guān)系從而更準(zhǔn)確地理解文本含義。而RNN模型則受限于其循環(huán)結(jié)構(gòu)難以處理長序列數(shù)據(jù)。優(yōu)勢二實現(xiàn)并行化計算。由于RNN模型需要依次處理序列中的每個元素其計算速度受到較大限制。而Transformer模型則可以同時處理整個序列大大提高了計算效率。Transformer vs RNN二、Transformer 的原理編碼器-解碼器架構(gòu)Encoder-Decoder架構(gòu)是自然語言處理NLP和其他序列到序列Seq2Seq轉(zhuǎn)換任務(wù)中的一種常見框架。這種架構(gòu)的核心思想是將輸入序列編碼成一個固定大小的向量表示然后利用這個向量來生成輸出序列。RNN編碼器-解碼器架構(gòu)機器翻譯機器翻譯就是典型Seq2Seq模型架構(gòu)包括編碼器和解碼器兩部分。能實現(xiàn)從一個序列到另外一個序列的映射而且兩個序列的長度可以不相等。機器翻譯Transformer的架構(gòu)Transformer也遵循編碼器-解碼器總體架構(gòu)使用堆疊的自注意力機制和逐位置的全連接層分別用于編碼器和解碼器如圖中的左半部分和右半部分所示。Transformer的架構(gòu)Encoder編碼器Transformer的編碼器由6個相同的層組成每個層包括兩個子層一個多頭自注意力層和一個逐位置的前饋神經(jīng)網(wǎng)絡(luò)。在每個子層之后都會使用殘差連接和層歸一化操作這些操作統(tǒng)稱為AddNorm。這樣的結(jié)構(gòu)幫助編碼器捕獲輸入序列中所有位置的依賴關(guān)系。Encoder編碼器架構(gòu)Decoder解碼器Transformer的解碼器由6個相同的層組成每層包含三個子層掩蔽自注意力層、Encoder-Decoder注意力層和逐位置的前饋神經(jīng)網(wǎng)絡(luò)。每個子層后都有殘差連接和層歸一化操作簡稱AddNorm。這樣的結(jié)構(gòu)確保解碼器在生成序列時能夠考慮到之前的輸出并避免未來信息的影響。Decoder解碼器架構(gòu)編碼器與解碼器的本質(zhì)區(qū)別在于Self-Attention的Mask機制。編碼器與解碼器的本質(zhì)區(qū)別Transformer的核心組件Transformer模型包含輸入嵌入、位置編碼、多頭注意力、殘差連接和層歸一化、帶掩碼的多頭注意力以及前饋網(wǎng)絡(luò)等組件。Transformer的核心組件輸入嵌入將輸入的文本轉(zhuǎn)換為向量便于模型處理。位置編碼給輸入向量添加位置信息因為Transformer并行處理數(shù)據(jù)而不依賴順序。多頭注意力讓模型同時關(guān)注輸入序列的不同部分捕獲復(fù)雜的依賴關(guān)系。殘差連接與層歸一化通過添加跨層連接和標(biāo)準(zhǔn)化輸出幫助模型更好地訓(xùn)練防止梯度問題。帶掩碼的多頭注意力在生成文本時確保模型只依賴已知的信息而不是未來的內(nèi)容。前饋網(wǎng)絡(luò)對輸入進行非線性變換提取更高級別的特征。Transformer的核心組件Transformer的3種注意力層在Transformer架構(gòu)中有3種不同的注意力層Self Attention自注意力、Cross Attention 交叉注意力、Causal Attention因果注意力編碼器中的自注意力層Self Attention layer編碼器輸入序列通過Multi-Head Self Attention多頭自注意力計算注意力權(quán)重。解碼器中的交叉注意力層Cross Attention layer編碼器-解碼器兩個序列通過Multi-Head Cross Attention多頭交叉注意力進行注意力轉(zhuǎn)移。解碼器中的因果自注意力層Causal Attention layer解碼器的單個序列通過Multi-Head Causal Self Attention多頭因果自注意力進行注意力計算Transformer的3種注意力層先了解一些概念Scaled Dot-Product Attention、Self Attention、Multi-Head Attention、Cross Attention、Causal AttentionScaled Dot-Product Attention和Multi-Head AttentionScaled Dot-Product Attention縮放點積注意力輸入包括維度為dk的查詢queries和鍵keys以及維度為dv的值values。我們計算查詢與所有鍵的點積每個點積結(jié)果都除以√dk然后應(yīng)用softmax函數(shù)以得到注意力分?jǐn)?shù)。體現(xiàn)如何計算注意力分?jǐn)?shù)關(guān)注Q、K、V計算公式。Scaled Dot-Product Attention縮放點積注意力Self Attention自注意力對同一個序列通過縮放點積注意力計算注意力分?jǐn)?shù)最終對值向量進行加權(quán)求和從而得到輸入序列中每個位置的加權(quán)表示。表達的是一種注意力機制如何使用縮放點積注意力對同一個序列計算注意力分?jǐn)?shù)從而得到同一序列中每個位置的注意力權(quán)重。Self Attention自注意力Multi-Head Attention多頭注意力多個注意力頭并行運行每個頭都會獨立地計算注意力權(quán)重和輸出然后將所有頭的輸出拼接起來得到最終的輸出。強調(diào)的是一種實操方法實際操作中我們并不會使用單個維度來執(zhí)行單一的注意力函數(shù)而是通過h8個頭分別計算然后加權(quán)平均。這樣為了避免單個計算的誤差。Multi-Head Attention多頭注意力Cross Attention交叉注意力輸入來自兩個不同的序列一個序列用作查詢Q另一個序列提供鍵K和值V實現(xiàn)跨序列的交互。Cross Attention交叉注意力Causal Attention因果注意力為了確保模型在生成序列時只依賴于之前的輸入信息而不會受到未來信息的影響。Causal Attention通過掩蓋mask未來的位置來實現(xiàn)這一點使得模型在預(yù)測某個位置的輸出時只能看到該位置及其之前的輸入。Causal Attention因果注意力疑問一圖中編碼器明明寫的是Multi-Head Attention怎么就說是Self Attention編碼器的Self Attention疑問一解答Scaled Dot-Product Attention、Self Attention、Multi-Head Attention實際上說的是同一件事從不同維度解答如何獲取同一個序列中每個位置的注意力權(quán)重。圖上標(biāo)注Multi-Head Attention強調(diào)需要多個頭計算注意力權(quán)重。疑問二圖中編碼器明明寫的也是Multi-Head Attention怎么就說是Cross Attention編碼器-解碼器的Cross Attention疑問二解答Cross Attention、Multi-Head Attention實際上說的是也同一件事從不同維度解答兩個不同序列之間如何進行注意力轉(zhuǎn)移。圖上標(biāo)注Multi-Head Attention強調(diào)需要多個頭進行注意力轉(zhuǎn)移計算。疑問三圖中編碼器明明寫的也是Masked Multi-Head Attention怎么就說是Causal Attention解碼器的Causal Attention疑問三解答Causal Attention、Mask Multi-Head Attention實際上說的是也同一件事解碼器中Self Attention如何結(jié)合Causal Attention來保持自回歸屬性。Mask Multi-Head Attention強調(diào)使用了多個獨立的注意力頭每個頭都可以學(xué)習(xí)不同的注意力權(quán)重從而增強模型的表示能力。而Causal Attention則強調(diào)了模型在預(yù)測時只能依賴于已經(jīng)生成的信息不能看到未來的信息。三、 Transformer的應(yīng)用Transformer應(yīng)用NLP由于Transformer強大的性能Transformer模型及其變體已經(jīng)被廣泛應(yīng)用于各種自然語言處理任務(wù)如機器翻譯、文本摘要、問答系統(tǒng)等。TransformerVaswani等人首次提出了基于注意力機制的Transformer用于機器翻譯和英語句法結(jié)構(gòu)解析任務(wù)。BERTDevlin等人介紹了一種新的語言表示模型BERT該模型通過考慮每個單詞的上下文。因為它是雙向的在無標(biāo)簽文本上預(yù)訓(xùn)練了一個Transformer。當(dāng)BERT發(fā)布時它在11個NLP任務(wù)上取得了最先進的性能。GPTBrown等人在一個包含45TB壓縮純文本數(shù)據(jù)的數(shù)據(jù)集上使用1750億個參數(shù)預(yù)訓(xùn)練了一個基于Transformer的龐大模型稱為GPT-3。它在不同類型的下游自然語言任務(wù)上取得了強大的性能而無需進行任何微調(diào)。Transformer模型及其變體Transformer應(yīng)用CVVision TransformerViT是一種革命性的深度學(xué)習(xí)模型它徹底改變了傳統(tǒng)計算機視覺領(lǐng)域處理圖像的方式。ViT采用了Transformer模型中的自注意力機制來建模圖像的特征這與CNN通過卷積層和池化層來提取圖像的局部特征的方式有所不同。ViT模型主體的Block結(jié)構(gòu)基于Transformer的Encoder結(jié)構(gòu)包含Multi-head Attention結(jié)構(gòu)。Vision TransformerViT的本質(zhì)將圖像視為一系列的“視覺單詞”或“令牌”tokens而不是連續(xù)的像素數(shù)組。ViT的本質(zhì)ViT的工作流程將圖像分割為固定大小的圖像塊patches將其轉(zhuǎn)換為Patch Embeddings添加位置編碼信息通過包含多頭自注意力和前饋神經(jīng)網(wǎng)絡(luò)的Transformer編碼器處理這些嵌入最后利用分類標(biāo)記進行圖像分類等任務(wù)。ViT的工作流程如何學(xué)習(xí)AI大模型作為一名熱心腸的互聯(lián)網(wǎng)老兵我決定把寶貴的AI知識分享給大家。 至于能學(xué)習(xí)到多少就看你的學(xué)習(xí)毅力和能力了 。我已將重要的AI大模型資料包括AI大模型入門學(xué)習(xí)思維導(dǎo)圖、精品AI大模型學(xué)習(xí)書籍手冊、視頻教程、實戰(zhàn)學(xué)習(xí)等錄播視頻免費分享出來。這份完整版的大模型 AI 學(xué)習(xí)資料已經(jīng)上傳CSDN朋友們?nèi)绻枰梢晕⑿艗呙柘路紺SDN官方認(rèn)證二維碼免費領(lǐng)取【保證100%免費】一、全套AGI大模型學(xué)習(xí)路線AI大模型時代的學(xué)習(xí)之旅從基礎(chǔ)到前沿掌握人工智能的核心技能二、640套AI大模型報告合集這套包含640份報告的合集涵蓋了AI大模型的理論研究、技術(shù)實現(xiàn)、行業(yè)應(yīng)用等多個方面。無論您是科研人員、工程師還是對AI大模型感興趣的愛好者這套報告合集都將為您提供寶貴的信息和啟示。三、AI大模型經(jīng)典PDF籍隨著人工智能技術(shù)的飛速發(fā)展AI大模型已經(jīng)成為了當(dāng)今科技領(lǐng)域的一大熱點。這些大型預(yù)訓(xùn)練模型如GPT-3、BERT、XLNet等以其強大的語言理解和生成能力正在改變我們對人工智能的認(rèn)識。 那以下這些PDF籍就是非常不錯的學(xué)習(xí)資源。四、AI大模型商業(yè)化落地方案作為普通人入局大模型時代需要持續(xù)學(xué)習(xí)和實踐不斷提高自己的技能和認(rèn)知水平同時也需要有責(zé)任感和倫理意識為人工智能的健康發(fā)展貢獻力量。