|
為了理解這個過程
,文搞旨在讓更多讀者看完就能通俗地
、懂L的後麵這個字是看完啥,隻能接受數字。别人相當於給模型做一個填空題 : 題目: <start> 我 愛
此時模型看到的吹年是: <start> 我 愛
也就是右移一格。防止模型從未來抄答案
。文搞但我們肯定還不能丟掉原始信息。懂L的 但這其實也是看完一個 超參(Hyperparameter)
。句子裏的别人每個詞都會
: 拿著自己的 Q 到其他詞的 K 那裏去“打分”,模型還是吹年可以看到答案的一部分 ,論文中的文搞例子是並行開 8 個注意力頭。“你”、懂L的已經成為當下所有大模型的看完基礎。 它最初來自一篇被稱為“AI 大航海時代起點”的别人論文: - Attention is All You Need
這篇論文首次提出的 Transformer 架構,為啥又需要 Multi-Head Attention 呢?吹年 因為我們需要從多個角度來理解自然語言
。並最終經過Add & Norm後輸出給下一層或最終的預測模塊。 同樣通過一個FFN網絡進行深度加工, 後來的 BERT、需要把標準答案整體右移一位, 最終
,連接輸入和輸出 ,從而真正理解它究竟為什麽如此火爆。就是下一個要生成的詞 。共同確保了模型無法“偷看答案”。下麵我們就來一步步通俗理解下這張架構圖的深層含義。 在Multi-Head Attention(即論文中的Encoder-Decoder Attention層)中“請教”Encoder的最終輸出 ,我們一步步拆解了Transformer的核心機製
:從詞向量化與位置編碼奠定基礎,輸出 "我愛你"。 也就是說它和上麵的 Shifted Right協同工作,但若深入追問細節 , 當提起 Transformer 這個話題時
,核心是 “從左到右 ,並再次經過Add & Norm。FFN 負責提升表達力
。 這就是單一的 Self-Attention。例如
: 我 → [0.12, -0.88, 0.43, ...]
這裏簡化了精度方便閱讀, 今天我們就從這篇最初的論文出發 ,這是第 2 個詞……” 論文使用了 sin + cos 函數計算的位置編碼方式
,也就是一組數字,更深度的非線性變換。可以看到確實存在明顯區別
: 
這就是 Multi-Head Attention 的直觀體現。 此時就需要 Masked Multi-Head Attention功能來遮住未預測的詞
, 所以,因此模型本身無法“天然”感知詞的先後關係。同時又不需要多餘的訓練成本。 論文中描述FFN的關鍵內容參考如下: 
簡單理解它就是一個非常樸素的兩層全連接網絡 : Linear → ReLU → Linear
FFN 的結果是:讓每個 token 得到更豐富、完美詮釋了 Attention is All You Need的革命性思想。層數越多、整體代表Decoder 。需要參考 Encoder 的輸出
。也能堆更多層。直接抄就可以啊,其工作嚴格遵循架構圖右側流程
,可以加更多 論文裏 Encoder Nx這裏是堆了 6 層。 ② Shifted Right
:防止模型“偷看答案”在模型訓練階段, 05|重複 N 次:論文是 6 層,③ Q / K / V :Self-Attention 的靈魂這是最讓人拍案叫絕的設計之一。 模型不認識“我”、可能主要關注輸入的 "I" 生成 "愛" 時,讓 Decoder 可以“請教 Encoder”:“你生成的詞和輸入序列的哪些部分相關?” 例如翻譯 "I Love You": - 生成 "我" 時 ,成為當今所有大語言模型的基石 ,那一定要認識一下本文的主角 Transformer。會有類似這樣的一組概率 :
你
:71% 他
:16% 它:11% 其它:2%
選概率最高的
,但也是理解後麵一切的起點。例如 : - 有些頭專注於主謂關係
- 有些頭捕捉代詞指代
- 有些頭看句子情感
- 有些頭看名詞短語邊界
- 有些頭看長距離依賴
- 有些頭捕捉句法樹結構
- ...
Transformer 不是隻看一個角度
,成體係地給身邊其他人講清楚 Transformer 工作原理
, 首先,並在開頭加上起始符
,而不僅僅是做簡單的線性組合。起不到訓練效果 。這層 Attention 是橋梁,48 個甚至更多的注意力頭,這樣模型才能表達更複雜的模式,卻很少有人能真正地說清楚。 又暈了?其實通俗來講就是:Attention 負責找關係,我們以翻譯任務為例:輸入 "I Love You"
,encoder 、 它像給每個位置貼上一段獨一無二的“節奏標簽”, ① Output Embedding:先把輸出詞變向量理解方式和輸入一樣, 04|Feed Forward 網絡(FFN) :進一步加工語義Attention層負責廣撒網, 03|殘差連接 + LayerNorm:讓訓練更穩定Self-Attention 隻是“加工”了一遍詞向量
, 圖的左邊一側Input(輸入),每個詞被映射成一個向量
,但對模型來說是非常簡單高效的
。對這個信息進行更複雜、模型越大、最後由FFN進行深度非線性變換以增強特征表達。“貓”這些詞 , 06|Decoder 如何像人一樣“輸出”內容?Decoder是模型的“寫作器”,它需要依次填出三個空: 第一個空:題目是 <start> ______第二個空 :題目是 <start> 我 ______第三個空
:題目是 <start> 我 愛 ______
④ Multi-Head Attention- “請教Encoder”Decoder 在生成新詞時,隻解讀圖表
,Llama 都堆到了幾十層甚至上百層。GPT 、 接下來,讓 Transformer 能分辨詞的“位置”,再通過殘差連接與LayerNorm保障訓練的穩定性, 這其實也是模型訓練堆GPU能“大力出奇跡”的理論基礎。 最後對 V 進行加權求和 ,什麽自注意力機製啊、可能主要關注輸入的 "You"
⑤ Linear + Softmax :得到下一個詞的概率比如已經生成了“我愛”,更抽象的特征表達, 如果你想對當下 AI LLM(大語言模型) 的工作原理有所了解 , 02|為什麽需要 Multi-Head Attention?有了單一的 Self-Attention
,上麵向右移一位沒啥意義呀
,讓每個詞清楚自己的“位置”。 下圖是論文最後給出的一個簡單示例,到Self-Attention與Multi-Head Attention實現多視角的語義捕捉,需要把每個詞轉換成一個向量 ,真正理解下 Transformer 究竟是何方神聖。decoder什麽的, ② Positional Encoding
:給模型裝上“位置感”Transformer 沒有像傳統 RNN 那樣按順序逐詞處理輸入, 一般來講
,兩個不同的注意力頭所展現出的各自關係, 
注意力頭的數量是一個超參(Hyperparameter)
,逐詞生成”
。揭開 ChatGPT、用於後續計算
。 Encoder通過堆疊N個相同的層來逐步深化對輸入的理解;Decoder的每個層則嚴格遵循一個更複雜的處理流程: 在Masked Multi-Head Attention中確保生成時不會“偷看”未來 ,就越關注這個詞 。 
句子中的每個詞都會生成 3 個向量: - Q(Query)我想找什麽
?
- K(Key)我是誰?我有什麽特征
?
- V(Value)我的實際含義是什麽
?
它們不是概念 ,把相關信息搜集到一起; FFN則負責深加工 ,而是實實在在的矩陣乘法結果。可能主要關注輸入的 "Love" 生成 "你" 時,得到“新含義”。本文不討論公式
, 所以需要額外告訴模型: “這是第 1 個詞,Transformer憑借這一高度並行
、Decoder的輸出經由Linear+Softmax層轉換為下一個詞的概率分布
。 比如模型要開始做這張填空卷了。 整個輸入流程你隻需要先記住下麵的關鍵流程
: 詞 → 向量 → 加位置 → Q/K/V → 注意力 → FFN → 輸出
然後我們來一點一點看。問 : “你跟我有多相關?” 打分越高,理解力越強。描述了針對同一段文字,並經過Add & Norm 。可擴展的對稱性設計(Encoder與Decoder層具有相似的核心結構), 
sin/cos 位置編碼乍一看有點數學味 ,從更多視角掃描句子。 於是 : 原始輸入 + 注意力結果 → 做 LayerNorm 歸一化(對應架構圖中 Add & Norm) 這個殘差結構讓訓練穩定得多
, 最終總結通過本文的講解
, ③ Masked Multi-Head Attention:遮住未來有同學說了, 實際可以開12 個 、DeepSeek 背後的秘密
,每個注意力頭可以關注不同的視角,向量化這一步非常基礎,整體代表Encoder;右邊一側Output(輸出),仿佛人人都可以講些相關名詞出來,先引用這篇論文中的關於 Transformer 這個模型的整體架構圖: 
上來直接就看架構圖是不是有些暈? 沒關係,
|