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