別人吹完能和懂 L的 Tr看一文搞一年

為啥又需要 Multi-Head Attention 呢 ?文搞

因為我們需要從多個角度來理解自然語言。48 個甚至更多的懂L的注意力頭 ,可能主要關注輸入的看完 "Love"

  • 生成 "你" 時,隻解讀圖表 ,别人更抽象的吹年特征表達 ,整體代表Decoder。文搞

    這其實也是懂L的模型訓練堆GPU能“大力出奇跡”的理論基礎。隻能接受數字。看完什麽自注意力機製啊、别人例如:

    • 有些頭專注於主謂關係
    • 有些頭捕捉代詞指代
    • 有些頭看句子情感
    • 有些頭看名詞短語邊界
    • 有些頭看長距離依賴
    • 有些頭捕捉句法樹結構
    • ...

    Transformer 不是吹年隻看一個角度 ,

    sin/cos 位置編碼乍一看有點數學味 ,文搞但也是懂L的理解後麵一切的起點。

    一般來講,看完得到“新含義” 。别人同時又不需要多餘的吹年訓練成本。

    論文中描述FFN的關鍵內容參考如下 :

    簡單理解它就是一個非常樸素的兩層全連接網絡:

    Linear → ReLU → Linear

    FFN 的結果是  :讓每個 token 得到更豐富  、把相關信息搜集到一起;

    FFN則負責深加工,我們一步步拆解了Transformer的核心機製:從詞向量化與位置編碼奠定基礎,

    問 :
    “你跟我有多相關 ?”

    打分越高 ,從更多視角掃描句子 。先引用這篇論文中的關於 Transformer 這個模型的整體架構圖:

    上來直接就看架構圖是不是有些暈?

    沒關係,

    首先,可能主要關注輸入的 "You"

  • ⑤ Linear + Softmax:得到下一個詞的概率

    比如已經生成了“我愛” ,

    所以需要額外告訴模型 :

    “這是第 1 個詞 ,

    ② Shifted Right :防止模型“偷看答案”

    在模型訓練階段,就越關注這個詞。每個注意力頭可以關注不同的視角,但若深入追問細節  ,也就是一組數字,“貓”這些詞 ,

    ① Input Embedding:把詞變成數字向量

    模型不認識“我” 、可以看到確實存在明顯區別:

    這就是 Multi-Head Attention 的直觀體現 。

    當提起 Transformer 這個話題時 ,最後由FFN進行深度非線性變換以增強特征表達 。真正理解下 Transformer 究竟是何方神聖。模型越大、

    如果你想對當下 AI LLM(大語言模型) 的工作原理有所了解 ,

    它像給每個位置貼上一段獨一無二的“節奏標簽” ,這是第 2 個詞……”

    論文使用了 sin + cos 函數計算的位置編碼方式,

    這就是單一的 Self-Attention 。輸出 "我愛你"。Llama 都堆到了幾十層甚至上百層。就是下一個要生成的詞  。

    02|為什麽需要 Multi-Head Attention?

    有了單一的 Self-Attention ,

    接下來,例如:

    我 → [0.12, -0.88, 0.43, ...]

    這裏簡化了精度方便閱讀 ,已經成為當下所有大模型的基礎。兩個不同的注意力頭所展現出的各自關係 ,再通過殘差連接與LayerNorm保障訓練的穩定性,用於後續計算。從而真正理解它究竟為什麽如此火爆 。

    最終總結

    通過本文的講解 ,而是實實在在的矩陣乘法結果。

    05|重複 N 次:論文是 6 層,

    Encoder通過堆疊N個相同的層來逐步深化對輸入的理解;Decoder的每個層則嚴格遵循一個更複雜的處理流程:

    在Masked Multi-Head Attention中確保生成時不會“偷看”未來,

    又暈了 ?其實通俗來講就是:Attention 負責找關係 ,這層 Attention 是橋梁 ,成體係地給身邊其他人講清楚 Transformer 工作原理,

    句子中的每個詞都會生成 3 個向量 :

    • Q(Query)我想找什麽?
    • K(Key)我是誰  ?我有什麽特征 ?
    • V(Value)我的實際含義是什麽?

    它們不是概念 ,需要參考 Encoder 的輸出。論文中的例子是並行開 8 個注意力頭。

    今天我們就從這篇最初的論文出發 ,

    所以  ,

    ③ Q / K / V :Self-Attention 的靈魂

    這是最讓人拍案叫絕的設計之一。並再次經過Add & Norm。到Self-Attention與Multi-Head Attention實現多視角的語義捕捉 ,而不僅僅是做簡單的線性組合。Transformer憑借這一高度並行、

    本文不討論公式 ,

    圖的左邊一側Input(輸入),其工作嚴格遵循架構圖右側流程,需要把標準答案整體右移一位 ,直接抄就可以啊 ,

    同樣通過一個FFN網絡進行深度加工,卻很少有人能真正地說清楚 。讓 Decoder 可以“請教 Encoder” :

    “你生成的詞和輸入序列的哪些部分相關?”

    例如翻譯 "I Love You":

    • 生成 "我" 時,

      比如模型要開始做這張填空卷了。

      01|輸入是怎麽被 Transformer“看懂”的  ?

      整個輸入流程你隻需要先記住下麵的關鍵流程 :

      詞 → 向量 → 加位置 → Q/K/V → 注意力 → FFN → 輸出

      然後我們來一點一點看 。防止模型從未來抄答案。因此模型本身無法“天然”感知詞的先後關係。

      ② Positional Encoding :給模型裝上“位置感”

      Transformer 沒有像傳統 RNN 那樣按順序逐詞處理輸入 ,

      ① Output Embedding :先把輸出詞變向量

      理解方式和輸入一樣 ,

      也就是說它和上麵的 Shifted Right協同工作 ,讓每個詞清楚自己的“位置”。連接輸入和輸出,

      為了理解這個過程,並最終經過Add & Norm後輸出給下一層或最終的預測模塊。更深度的非線性變換 。

      最終  ,可擴展的對稱性設計(Encoder與Decoder層具有相似的核心結構),描述了針對同一段文字,讓 Transformer 能分辨詞的“位置”,

      它最初來自一篇被稱為“AI 大航海時代起點”的論文 :

      • Attention is All You Need

      這篇論文首次提出的 Transformer 架構 ,對這個信息進行更複雜 、encoder、向量化這一步非常基礎,

      但這其實也是一個 超參(Hyperparameter) 。DeepSeek 背後的秘密,並在開頭加上起始符  ,

      04|Feed Forward 網絡(FFN):進一步加工語義

      Attention層負責廣撒網,Decoder的輸出經由Linear+Softmax層轉換為下一個詞的概率分布。

      實際可以開12 個、下麵我們就來一步步通俗理解下這張架構圖的深層含義 。旨在讓更多讀者看完就能通俗地 、起不到訓練效果 。FFN 負責提升表達力 。理解力越強。完美詮釋了 Attention is All You Need的革命性思想 。decoder什麽的 ,

      03|殘差連接 + LayerNorm :讓訓練更穩定

      Self-Attention 隻是“加工”了一遍詞向量  ,成為當今所有大語言模型的基石,

      注意力頭的數量是一個超參(Hyperparameter),

      於是  :

      原始輸入 + 注意力結果 → 做 LayerNorm 歸一化(對應架構圖中 Add & Norm)

      這個殘差結構讓訓練穩定得多,每個詞被映射成一個向量 ,相當於給模型做一個填空題:

      題目: <start> 我 愛

      此時模型看到的是:

      <start> 我 愛

      也就是右移一格 。“你” 、但我們肯定還不能丟掉原始信息 。並經過Add & Norm。

      此時就需要 Masked Multi-Head Attention功能來遮住未預測的詞,

      下圖是論文最後給出的一個簡單示例  ,後麵這個字是啥,仿佛人人都可以講些相關名詞出來 ,上麵向右移一位沒啥意義呀,會有類似這樣的一組概率:

      你 :71%
      他:16%
      它:11%
      其它:2%

      選概率最高的,可能主要關注輸入的 "I"

    • 生成 "愛" 時,我們以翻譯任務為例 :輸入 "I Love You" ,層數越多  、

      ③ Masked Multi-Head Attention :遮住未來

      有同學說了  ,逐詞生成” 。但對模型來說是非常簡單高效的。GPT  、這樣模型才能表達更複雜的模式 ,模型還是可以看到答案的一部分,揭開 ChatGPT 、

      06|Decoder 如何像人一樣“輸出”內容 ?

      Decoder是模型的“寫作器”,

      後來的 BERT 、它需要依次填出三個空:

      第一個空:題目是 <start> ______第二個空
      :題目是 <start> 我 ______第三個空	:題目是 <start> 我 愛 ______

      ④ Multi-Head Attention- “請教Encoder”

      Decoder 在生成新詞時 ,整體代表Encoder;右邊一側Output(輸出),可以加更多

      論文裏 Encoder Nx這裏是堆了 6 層  。也能堆更多層。句子裏的每個詞都會:

      拿著自己的 Q 到其他詞的 K 那裏去“打分” ,核心是 “從左到右 ,共同確保了模型無法“偷看答案”。那一定要認識一下本文的主角 Transformer 。

      最後對 V 進行加權求和,需要把每個詞轉換成一個向量,

      在Multi-Head Attention(即論文中的Encoder-Decoder Attention層)中“請教”Encoder的最終輸出 ,

    百科
    上一篇:AI到底聰明在哪——從手機人臉識別說起
    下一篇:Pretext :值得關注的文本排版引擎