
大模型的「事實」主要存在哪裡?
注意力讓 token 互相談話;前饋網絡做許多深加工——並保存相當一部分事實知識;殘差與歸一化則讓極深網絡訓得動。
注意力最常被人談論。但每一層 Transformer 裏還有第二步,討論度低、重要性卻不低:前饋網絡(FFN)。若注意力是序列上的 token 互相談話、交換資訊,那前饋網絡就是每個 token 關起門來,對自己的向量做深加工——這一步不做跨 token 混合。
擴張、彎曲、再壓縮
典型的前饋網絡會先把 token 向量擴張到更大尺寸,施加非線性,再壓回原來寬度。原始 Transformer 用四倍擴張;現代 SwiGLU 模型比例各異,但大結構不變。非線性之所以必要,是因為純線性層堆疊在數學上會坍縮成一次線性映射——中間若不「掰彎」,前饋網絡就做不出比單次矩陣乘法更豐富的計算。
非線性函數本身也經歷幾代演進:原始 Transformer 用 ReLU,後來 GPT 與 BERT 換用 GELU,再後來 LLaMA、Mistral、PaLM 一代多用 SwiGLU。外層「擴張再壓縮」沒變,迭代的一直是中間那一步。
相當一部分「知識」住在這裏
在稠密 Transformer 裏,大部分參數其實住在前饋網絡,不在注意力。可解釋性研究發現,某些神經元與特定概念或事實強相關——埃菲爾鐵塔、程式語言、過去式動詞等。模型「知道巴黎是法國首都」,並不是資料庫裏的一句話,而是表現在特定層前饋網絡的權重與激活模式裏。
這種「記憶」性質帶來有趣的推論:ROME(秩一模型編輯)這類方法,可以對特定前饋權重做一次有針對性的低秩修改,把「埃菲爾鐵塔在巴黎」改成「在羅馬」之類的關聯,而不必完整重訓。研究仍偏早期,但至少說明:我們對知識存放位置的理解,已到可以在有限場景下手編輯的程度。
MoE:很多專家,每次只叫醒幾個
一些前沿模型把單一稠密前饋網絡換成多個並行的「專家」,再由很小的路由網絡決定每個 token 交給哪幾個專家。Mixtral 8x7B 是清楚例子:每層八個專家,每個 token 只激活兩個——總參數可以很大,但每個 token 實際動用的計算量增長慢得多。MoE 也帶來路由與訓練穩定性等工程挑戰,卻確實改變了「擴大參數卻不讓推理成本同比例膨脹」的思路。
殘差流與歸一化:不炫,但關鍵
沒有殘差連接與層歸一化,極深網絡幾乎訓不動。殘差是把子塊輸出加回原向量,而不是覆蓋——最初的輸入嵌入因此始終有一條直達深層的加法通路。這套想法來自圖像識別的殘差網絡(何愷明等,2015),Transformer 只是繼承同一技巧。現代可解釋性常把殘差流想成高速公路:每個注意力頭與前饋網絡都從中讀取,再把結果寫回去。
歸一化則把殘差流上的數字拉回可控範圍,避免爆炸或塌縮。兩個現代預設值得記住:pre-norm(子塊之前歸一化,如 GPT-2 與多數開放模型)比原始 post-norm 更好訓深網;許多開放模型再用更簡單的 RMSNorm,只做縮放、不做移向零點——更便宜,經驗上已拿到大部分收益。事實可能住在前饋權重裏,但殘差與歸一化,才是深層堆疊得以存在的前提。