重分解:從稠密網(wǎng)絡(luò)中提取可驗(yàn)證的神經(jīng)電路)
“電路提取”這個(gè)詞聽(tīng)起來(lái)像是硬件工程師的活但在神經(jīng)網(wǎng)絡(luò)解釋性研究里它指的是另一件事從訓(xùn)練好的模型里找出一條真正參與某個(gè)行為計(jì)算的參數(shù)路徑。我最初接觸這個(gè)概念時(shí)完全低估了它的難度。有一次我想搞清楚一個(gè)文本分類模型判斷“正面評(píng)價(jià)”時(shí)到底依賴哪些參數(shù)做了整整一圈激活歸因最后得到一張橫跨所有層的高亮熱力圖。問(wèn)題是這張熱力圖并不能告訴我模型內(nèi)部走了一條什么樣的計(jì)算路徑。“稀疏權(quán)重分解”這個(gè)技術(shù)路線恰恰是為了解決這個(gè)問(wèn)題而出現(xiàn)的。它不是一個(gè)單純的壓縮技巧而是一套把稠密權(quán)重拆成可分離的稀疏分量、把模型內(nèi)部信息流變成可追蹤路徑的方法。這篇文章主要想講清楚一件事稀疏權(quán)重分解用于電路提取真正解決的不是“計(jì)算更高效”而是“可追蹤性”。圍繞這個(gè)判斷我會(huì)把原理、流程、參數(shù)、坑位和邊界都過(guò)一遍。1. 電路提取的真正難點(diǎn)不是看不到而是看不過(guò)來(lái)1.1 電路提取到底在提取什么“電路提取”這個(gè)術(shù)語(yǔ)最早確實(shí)容易讓人聯(lián)想到硬件設(shè)計(jì)或者邏輯綜合。但在神經(jīng)網(wǎng)絡(luò)解釋性方向它指的是另一套流程給定一個(gè)已經(jīng)訓(xùn)練好的模型以及一個(gè)它能夠完成的任務(wù)或行為我們需要找出參與該行為計(jì)算的那一部分子網(wǎng)絡(luò)。這個(gè)子網(wǎng)絡(luò)可能包含若干層、若干神經(jīng)元、若干注意力頭以及它們之間的權(quán)重連接可以理解為模型內(nèi)部的一條“功能回路”。為什么要費(fèi)這個(gè)勁一個(gè)很反直覺(jué)的事實(shí)是模型并不是所有參數(shù)都在參與每一次決策。大多數(shù)參數(shù)在大多數(shù)輸入上是“沉默”的只有一部分參數(shù)在特定行為上起作用。如果能把某個(gè)行為對(duì)應(yīng)的關(guān)鍵子圖找出來(lái)就能回答幾個(gè)非常實(shí)際的問(wèn)題模型到底是怎么完成這個(gè)行為的是“記住模式”還是“理解規(guī)則”。模型在什么條件下會(huì)出錯(cuò)錯(cuò)誤來(lái)源于哪一段路徑。這個(gè)行為的計(jì)算邏輯能不能被單獨(dú)裁剪、替代或者遷移到另一個(gè)模型里。換句話說(shuō)電路提取的產(chǎn)出不是一張熱力圖而是一張有頭有尾、可以驗(yàn)證的計(jì)算路徑圖。1.2 稠密連接下的組合爆炸困難在于神經(jīng)網(wǎng)絡(luò)的前向過(guò)程幾乎是處處全連接的。以 Transformer 為例每一層都有注意力矩陣和 MLP 權(quán)重矩陣殘差流里的信息會(huì)經(jīng)過(guò)幾乎所有參數(shù)。要從全量權(quán)重中判斷“哪些參數(shù)構(gòu)成了某個(gè)功能的電路”本質(zhì)上是在做一個(gè)組合搜索候選路徑數(shù)量隨著層數(shù)和維度指數(shù)增長(zhǎng)。于是出現(xiàn)了一個(gè)很尷尬的局面權(quán)重全部在你手里模型也可以任意前向傳播但你仍然沒(méi)法通過(guò)直接分析權(quán)重得到功能電路。原因是稠密權(quán)重不攜帶“哪些連接屬于同一個(gè)功能模塊”的標(biāo)簽。你看到的是一個(gè)巨大的、彼此糾纏的矩陣而不是一組清晰的功能模塊。就像拿到一本沒(méi)有目錄也沒(méi)有章節(jié)標(biāo)記的百科全書(shū)每一頁(yè)都印滿了字但你不知道哪些段落拼在一起能構(gòu)成一個(gè)完整的主題。這里順帶說(shuō)一個(gè)容易混淆的點(diǎn)權(quán)重重要性和電路結(jié)構(gòu)不是一回事。歸因方法可以告訴你哪些參數(shù)對(duì)某個(gè)輸出貢獻(xiàn)大但貢獻(xiàn)大的參數(shù)可能分散在很多條不相關(guān)的路徑上。電路提取要求的是把這些參數(shù)組織成一條有頭有尾、可以驗(yàn)證的計(jì)算路徑。前者是“點(diǎn)”的信息后者是“路徑”的信息。1.3 稀疏權(quán)重分解在這個(gè)問(wèn)題里的位置稀疏權(quán)重分解提供了一條不同的路。它不直接回答“哪個(gè)電路負(fù)責(zé)哪個(gè)行為”而是先把稠密權(quán)重拆成稀疏的、可分離的組成部分讓“功能模塊”的邊界變得可見(jiàn)?;舅悸肥侨绻砻軝?quán)重矩陣 W 可以近似寫(xiě)成一組稀疏矩陣之和即 W ≈ W1 W2 ... Wk并且每個(gè) Wi 只在少數(shù)連接上有非零值那么每個(gè) Wi 就可以被看作一條或多條信息路徑的標(biāo)識(shí)。接下來(lái)做電路提取時(shí)不再面對(duì)全連接圖而是面對(duì)一張由若干稀疏子圖疊加而成的結(jié)構(gòu)??梢灾饤l追蹤、逐條驗(yàn)證路徑之間也不再互相淹沒(méi)。這是我個(gè)人認(rèn)為整個(gè)方法最核心的價(jià)值稀疏分解在電路提取中的角色不是壓縮模型而是把全連接矩陣變成一張“路徑地圖”。2. 稀疏權(quán)重分解的原理拆解從矩陣運(yùn)算到路徑地圖2.1 三種常見(jiàn)的分解形態(tài)在實(shí)際工程里稀疏權(quán)重分解大概有三種常見(jiàn)形態(tài)它們并不互斥項(xiàng)目中常常組合使用。分解形態(tài)基本做法適合的電路提取場(chǎng)景主要風(fēng)險(xiǎn)稀疏因子分解把 W 拆成 A·BA 和 B 都是稀疏矩陣前向路徑天然稀疏適合逐層追蹤因子不唯一語(yǔ)義容易漂移稀疏分量求和把 W 拆成多個(gè)稀疏矩陣之和 W1 W2 ... Wk每個(gè)分量對(duì)應(yīng)一個(gè)子網(wǎng)絡(luò)最貼合電路語(yǔ)義分量數(shù)量 k 不好確定剪枝后分解先做結(jié)構(gòu)化剪枝再對(duì)剩余權(quán)重低秩分解工程上最容易落地適合已有剪枝經(jīng)驗(yàn)的團(tuán)隊(duì)剪枝誤差會(huì)被后續(xù)分解放大第一種接近于把權(quán)重“編成”稀疏的低秩表示每個(gè)因子都限定在少量維度上。第二種更像是在原始網(wǎng)絡(luò)里做“切分”把一個(gè)稠密層切分成幾個(gè)相互獨(dú)立的稀疏子層。第三種是目前工業(yè)界最容易上手的變體因?yàn)楹芏鄨F(tuán)隊(duì)本身就在做剪枝順手就能把剪枝結(jié)果拿來(lái)做分解。但要注意剪枝本身已經(jīng)引入了近似誤差后續(xù)再做分解誤差會(huì)被疊加需要額外驗(yàn)證。2.2 為什么“稀疏”才是關(guān)鍵如果把“稀疏”兩個(gè)字去掉單純做權(quán)重分解例如 SVD也能把矩陣拆成若干低秩組件。但 SVD 得到的因子通常是稠密的每個(gè)組件幾乎與所有輸入輸出維度有關(guān)。這樣的分解在數(shù)學(xué)上是有效的在解釋性上是無(wú)用的——它沒(méi)有減少需要追蹤的連接數(shù)量只是換了一種表示方式。稀疏意味著每個(gè)分量只在少數(shù)位置上非零這讓“哪些輸入通過(guò)哪些連接影響哪些輸出”變成一個(gè)可以枚舉的問(wèn)題??梢灶惐瘸烧硪粋€(gè)多人共同維護(hù)的文檔全量替換可能影響每一個(gè)段落但稀疏改動(dòng)只落在特定幾行。追蹤的時(shí)候只需要看被改動(dòng)的行不需要讀全文。不過(guò)這里要強(qiáng)調(diào)一個(gè)容易走偏的點(diǎn)稀疏度不是越高越好。過(guò)于稀疏會(huì)導(dǎo)致分解誤差快速上升分解出來(lái)的分量無(wú)法還原模型的真實(shí)行為后續(xù)追蹤就會(huì)建立在一張錯(cuò)誤的地圖上。稀疏度應(yīng)該在“足夠還原行為”和“足夠分離路徑”之間找平衡而不是追求非零元素越少越好。2.3 從分解到提取的基本鏈路一個(gè)典型的“稀疏權(quán)重分解 → 電路提取”流程可以拆成六步給定模型和目標(biāo)任務(wù)。對(duì)目標(biāo)層權(quán)重做稀疏分解得到若干稀疏分量。對(duì)每個(gè)分量按幅度或激活貢獻(xiàn)設(shè)置閾值過(guò)濾掉噪聲連接。將保留的分量映射回原始網(wǎng)絡(luò)結(jié)構(gòu)生成初始候選電路子圖。用輸入樣本激活這些候選路徑確認(rèn)路徑是否真的會(huì)被觸發(fā)。對(duì)候選路徑做消融實(shí)驗(yàn)確認(rèn)刪掉或擾動(dòng)該路徑后目標(biāo)行為是否如預(yù)期下降。這個(gè)流程里第 1 步最容易被忽略但它決定了后面所有步驟是否有意義。接下來(lái)我展開(kāi)講每一步的實(shí)際操作方式和注意事項(xiàng)。3. 實(shí)操流程從行為定義到消融驗(yàn)證3.1 第一步先定義“電路”不要從參數(shù)開(kāi)始我看到很多人在拿到方法后第一反應(yīng)是直接對(duì)模型所有層做分解然后在分解結(jié)果里找規(guī)律。這種做法十有八九會(huì)失敗。原因很簡(jiǎn)單電路提取是目標(biāo)驅(qū)動(dòng)的你沒(méi)有指明要提取什么行為分解結(jié)果就只是一堆數(shù)學(xué)分量談不上是電路。實(shí)際操作中應(yīng)該先回答幾個(gè)問(wèn)題我要解釋的行為是什么是某個(gè)具體類別預(yù)測(cè)某類樣本上的輸出還是某個(gè)中間特征的表現(xiàn)這個(gè)行為在模型里的表征位置在哪里通常需要先通過(guò)探針或激活分析確定與行為最相關(guān)的層和神經(jīng)元。我允許電路包含哪些組件是只考慮 MLP還是同時(shí)考慮注意力頭只有把行為定義清楚后續(xù)的分解和追蹤才有評(píng)價(jià)標(biāo)準(zhǔn)分解出來(lái)的路徑是否與行為相關(guān)最終必須靠行為層面的驗(yàn)證來(lái)判斷。如果你連“提取成功”的標(biāo)準(zhǔn)都說(shuō)不清那后面任何分解結(jié)果都無(wú)法評(píng)價(jià)。3.2 第二步逐層分解與三個(gè)關(guān)鍵參數(shù)確定目標(biāo)層后對(duì)該層的權(quán)重矩陣做稀疏分解。這一步有三個(gè)參數(shù)需要設(shè)置它們會(huì)直接決定分解結(jié)果的可用性分解秩或分量數(shù)量 k決定拆出多少個(gè)子路徑。通常從小值開(kāi)始嘗試逐步增加觀察重建誤差和行為保真度的變化。稀疏度 λ控制每個(gè)分量的非零比例。建議從較高稀疏度開(kāi)始例如讓每個(gè)分量只保留 5% 到 10% 的連接如果重建誤差過(guò)大或行為驗(yàn)證失敗再逐步降低稀疏度。閾值 τ在分解出的分量上對(duì)低于閾值的連接進(jìn)行截?cái)?。閾值設(shè)置要結(jié)合權(quán)重的分布來(lái)觀察不要拍腦袋定。實(shí)際操作時(shí)我一般會(huì)先在一到兩個(gè)層上做小規(guī)模的分解實(shí)驗(yàn)通過(guò)三個(gè)指標(biāo)確認(rèn)參數(shù)合理重建誤差、激活相關(guān)性、行為驗(yàn)證結(jié)果。三個(gè)指標(biāo)都通過(guò)后再考慮擴(kuò)展到更多層。注意不要一上來(lái)就把所有層都分解。先單層跑通確認(rèn)分解質(zhì)量可控再逐步擴(kuò)展。否則某一層的分解誤差會(huì)傳播到后續(xù)所有層后面排查起來(lái)成本極高。3.3 第三步路徑追蹤與候選子圖生成分解完成后每個(gè)稀疏分量可以看成一個(gè)“連接集合”。路徑追蹤要做的事情是從行為對(duì)應(yīng)的輸出端開(kāi)始沿著分解得到的稀疏連接向輸入端回溯把經(jīng)過(guò)的神經(jīng)元和權(quán)重邊串起來(lái)形成候選子圖。這個(gè)階段常用的策略是“保留最強(qiáng)路徑暫時(shí)忽略弱路徑”。具體做法是為每條邊定義一個(gè)強(qiáng)度度量可以是權(quán)重絕對(duì)值、激活貢獻(xiàn)或梯度貢獻(xiàn)。從輸出端選擇強(qiáng)度最高的若干條邊沿反向追蹤到前一層。逐層重復(fù)直到到達(dá)輸入層或預(yù)設(shè)的起點(diǎn)層。最終生成一個(gè)候選電路的邊列表每條邊都對(duì)應(yīng)原始模型中的具體參數(shù)位置。注意候選子圖通常不會(huì)只有一條路徑而是一個(gè)包含若干條并行路徑的小圖。這個(gè)小圖就是后續(xù)驗(yàn)證的起點(diǎn)不需要在第一步就追求“唯一正確”的電路。代碼層面這部分的示意結(jié)構(gòu)大概是這樣的# 示意結(jié)構(gòu)單層稀疏分解 路徑追蹤 def sparse_decompose(weight_matrix, rank8, sparsity0.9): # 將稠密權(quán)重矩陣分解為多個(gè)稀疏分量 # 具體實(shí)現(xiàn)可以是稀疏 SVD、字典學(xué)習(xí)或剪枝后低秩分解 # 返回 components: list of sparse matrices components [] # ... 實(shí)際實(shí)現(xiàn)需要結(jié)合模型結(jié)構(gòu)和任務(wù)行為定義 return components def trace_path(components, output_index, threshold0.05): # 從輸出端回溯按強(qiáng)度篩選邊生成候選路徑 path_edges [] # ... 實(shí)現(xiàn)逐層回溯 return path_edges這里只是示意結(jié)構(gòu)真實(shí)實(shí)現(xiàn)要根據(jù)你的模型框架、層的類型和分解算法來(lái)填充。重點(diǎn)是先把流程串起來(lái)而不是一上來(lái)就追求完美實(shí)現(xiàn)。3.4 第四步消融驗(yàn)證——分解對(duì)不對(duì)不看誤差看行為這是整個(gè)流程里最關(guān)鍵、也最容易被跳過(guò)的步驟。稀疏分解的重建誤差低只能說(shuō)明數(shù)學(xué)上近似得不錯(cuò)不能說(shuō)明分解出的分量與模型的功能結(jié)構(gòu)一致。驗(yàn)證必須落在行為層。最常見(jiàn)的驗(yàn)證方法是消融實(shí)驗(yàn)把候選電路中的邊或節(jié)點(diǎn)遮掉觀察模型在目標(biāo)行為上的變化。如果遮掉候選電路的主要邊后目標(biāo)行為顯著下降說(shuō)明這條路徑確實(shí)參與該行為如果行為幾乎不變說(shuō)明這條路徑是冗余的或者分解方向有問(wèn)題。另一個(gè)補(bǔ)充方法是激活干預(yù)在候選路徑的中間節(jié)點(diǎn)上做插入或替換觀察輸出是否按預(yù)期改變。如果路徑正確干預(yù)的效果應(yīng)該集中且可預(yù)測(cè)如果干預(yù)后行為變化非常分散說(shuō)明分解結(jié)果沒(méi)有真正分離出功能路徑。實(shí)際項(xiàng)目中我會(huì)先用一小批樣本完成“分解 → 追蹤 → 消融 → 驗(yàn)證”的閉環(huán)。這個(gè)小閉環(huán)跑通之后再擴(kuò)大到全量樣本和全模型范圍。如果小閉環(huán)里驗(yàn)證就不穩(wěn)定問(wèn)題大概率出在分解參數(shù)或路徑追蹤策略上而不是在后面的擴(kuò)展環(huán)節(jié)。4. 參數(shù)選擇與常見(jiàn)坑位拆完不可用往往出在這四個(gè)環(huán)節(jié)很多人在完成了分解和提取之后發(fā)現(xiàn)候選電路不可用。這時(shí)候不要急著懷疑方法先檢查四個(gè)環(huán)節(jié)。4.1 分解秩、稀疏度、閾值三個(gè)參數(shù)要配合調(diào)這三個(gè)參數(shù)不是獨(dú)立的。分解秩決定你打算從權(quán)重中分離出多少個(gè)潛在功能通道稀疏度決定每個(gè)通道是不是足夠純凈閾值決定最終保留哪些邊。常見(jiàn)的錯(cuò)誤是把三者分開(kāi)調(diào)。有人先固定稀疏度然后不斷加大秩發(fā)現(xiàn)重建誤差下降就認(rèn)為分解質(zhì)量變好有人先固定秩不斷加大稀疏度發(fā)現(xiàn)路徑變少就認(rèn)為提取更精準(zhǔn)。事實(shí)上這三個(gè)參數(shù)存在一個(gè)三角約束秩太低功能通道混在一起路徑無(wú)法分離。秩太高每個(gè)分量碎片化路徑變得不完整。稀疏度太高分解誤差變大路徑不可信。稀疏度太低分量退化成接近稠密追蹤失去意義。閾值和稀疏度在效果上會(huì)互相疊加兩者都高時(shí)路徑可能被截?cái)嗟綗o(wú)法形成完整鏈路。更合理的調(diào)整順序是先固定一個(gè)適中的稀疏度調(diào)整秩觀察行為保真度確定秩之后再微調(diào)稀疏度和閾值。每次只動(dòng)一個(gè)變量記錄重建誤差和行為驗(yàn)證結(jié)果形成一個(gè)小型參數(shù)日志。這個(gè)方法聽(tīng)起來(lái)慢但能在早期發(fā)現(xiàn)參數(shù)之間的相互作用。4.2 逐層獨(dú)立分解的隱患神經(jīng)網(wǎng)絡(luò)是一個(gè)整體前一層輸出的變化會(huì)傳導(dǎo)到后一層。如果每一層都獨(dú)立做稀疏分解按各自的標(biāo)準(zhǔn)選擇最優(yōu)參數(shù)那么每一層單獨(dú)看都合理但串聯(lián)起來(lái)后前層的微小誤差會(huì)在后層被放大最終導(dǎo)致追蹤到的路徑與真實(shí)行為無(wú)關(guān)。避免這個(gè)問(wèn)題有兩類方法分解時(shí)考慮上游信息。分解某一層權(quán)重時(shí)不是直接用該層的原始輸入分布而是用上一層分解后的近似輸出分布來(lái)評(píng)估誤差。分解后做端到端驗(yàn)證。不滿足于逐層驗(yàn)證而是在整個(gè)候選電路上做行為驗(yàn)證。如果端到端驗(yàn)證失敗就要回到分解參數(shù)上重新調(diào)整。兩類方法不沖突。實(shí)際項(xiàng)目中建議先用第二種做快速過(guò)濾發(fā)現(xiàn)問(wèn)題后再用第一種精調(diào)。4.3 一個(gè)可復(fù)用的排查鏈路如果做完消融驗(yàn)證發(fā)現(xiàn)候選電路無(wú)效不要一上來(lái)就重做全部分解??梢园聪旅骓樞蚺挪橄葯z查目標(biāo)行為定義。是不是行為選得太寬導(dǎo)致同一行為由多種機(jī)制共同完成而分解方向只捕獲了其中一個(gè)機(jī)制。再檢查分解參數(shù)。重建誤差是否偏高分量之間是否有大量重疊連接稀疏度是否讓分解結(jié)果退化成稠密近似再檢查路徑追蹤策略。強(qiáng)度度量是否一致是不是從輸出端回溯時(shí)中途丟掉了關(guān)鍵連接然后檢查驗(yàn)證方法。消融方式是不是過(guò)于激進(jìn)把這條路徑的效應(yīng)連帶干擾到其他機(jī)制導(dǎo)致行為變化無(wú)法歸因。最后檢查輸入樣本。樣本是否太少或者分布過(guò)于單一導(dǎo)致激活路徑不穩(wěn)定。這條鏈路的核心思路是先確定是哪一層出了問(wèn)題再?zèng)Q定修哪里。不要一上來(lái)就重做全部分解那樣既耗時(shí)又無(wú)法定位問(wèn)題。5. 適用邊界與長(zhǎng)期判斷不要把它當(dāng)成萬(wàn)能解釋器5.1 適合什么場(chǎng)景從工程經(jīng)驗(yàn)看稀疏權(quán)重分解做電路提取在以下場(chǎng)景中最有價(jià)值模型規(guī)模中等。參數(shù)量在百萬(wàn)到千萬(wàn)級(jí)別的分類模型、小型 Transformer 或蒸餾模型電路結(jié)構(gòu)往往還沒(méi)有被完全打散分解后能找到相對(duì)清晰的路徑。行為邊界明確。例如二分類、固定類別的圖像識(shí)別、特定語(yǔ)法結(jié)構(gòu)的語(yǔ)言理解。行為越聚焦電路提取越容易驗(yàn)證。需要可審計(jì)決策路徑。比如醫(yī)療輔助診斷、金融風(fēng)控中的某個(gè)子模塊解釋性不是學(xué)術(shù)興趣而是需求本身。對(duì)模型做二次開(kāi)發(fā)。例如在不重新訓(xùn)練的情況下裁剪模型、合并兩個(gè)模型的功能模塊、或者把某個(gè)行為對(duì)應(yīng)的子網(wǎng)絡(luò)遷移到小模型上。稀疏分解提取出的電路可以直接作為遷移的候選模塊。5.2 不適合什么場(chǎng)景同樣地這個(gè)方法有很明確的邊界超大模型不太適合。參數(shù)量達(dá)到數(shù)十億級(jí)別時(shí)功能通常高度分布式一個(gè)行為由大量微弱的并行路徑共同完成稀疏分解很難找到主路徑。行為高度復(fù)合的任務(wù)不適合。如果一個(gè)任務(wù)是多個(gè)機(jī)制的疊加電路提取的目標(biāo)難以定義驗(yàn)證也缺乏標(biāo)準(zhǔn)。對(duì)解釋精度要求極高、需要形式化保證的場(chǎng)景不適合。分解始終包含近似電路提取又依賴閾值和消融整個(gè)過(guò)程是經(jīng)驗(yàn)性的不是嚴(yán)格的因果證明。時(shí)間成本敏感的項(xiàng)目要謹(jǐn)慎。分解、追蹤、驗(yàn)證是有迭代成本的在超大模型上單輪實(shí)驗(yàn)可能很貴。如果項(xiàng)目只有一兩天時(shí)間不如先用激活歸因這類更輕量的方法。5.3 從單次實(shí)驗(yàn)到長(zhǎng)期工作流如果決定把這個(gè)方法納入長(zhǎng)期工作流有幾塊拼圖通常需要補(bǔ)上自動(dòng)化參數(shù)搜索。手動(dòng)調(diào)參在單次實(shí)驗(yàn)里可行在長(zhǎng)期使用中不可持續(xù)??梢园逊纸赓|(zhì)量指標(biāo)和行為驗(yàn)證指標(biāo)做成自動(dòng)化記錄每次分解后自動(dòng)保存參數(shù)、誤差和驗(yàn)證結(jié)果。路徑版本管理。候選電路會(huì)隨著模型迭代、樣本變化、閾值調(diào)整而變化。建議把每條路徑用模型版本、層位置、邊索引來(lái)標(biāo)識(shí)方便后續(xù)復(fù)現(xiàn)和對(duì)比。可復(fù)用的驗(yàn)證集。電路提取的驗(yàn)證不能只看一兩批樣本需要構(gòu)建覆蓋不同情況的目標(biāo)行為驗(yàn)證集包括典型樣本、邊界樣本和干擾樣本。與歸因方法交叉驗(yàn)證。稀疏分解不是唯一的信息來(lái)源。實(shí)踐中最好把分解結(jié)果與激活歸因、梯度歸因、注意力分析等方法的輸出做交叉驗(yàn)證。多個(gè)方法同時(shí)指向同一條路徑可信度才會(huì)顯著提高。如果多個(gè)歸因方法給出的結(jié)論互相矛盾不要強(qiáng)行選擇看起來(lái)更“干凈”的那一個(gè)。先把差異列出來(lái)通常能幫你發(fā)現(xiàn)分解或追蹤環(huán)節(jié)里的隱藏問(wèn)題?;氐介_(kāi)頭那個(gè)判斷稀疏權(quán)重分解做電路提取真正的價(jià)值不是壓縮模型也不是降低單次推理成本而是把不可追蹤的稠密網(wǎng)絡(luò)變成可驗(yàn)證的稀疏路徑。如果你準(zhǔn)備嘗試這條技術(shù)路線我的建議是從一個(gè)最小的、行為邊界非常明確的任務(wù)開(kāi)始在單個(gè)模型層上跑通“分解 → 追蹤 → 消融 → 驗(yàn)證”的完整閉環(huán)。不要急著追求復(fù)雜的分解形式和更大的模型。先把一條路徑驗(yàn)證到可信再談擴(kuò)展。這條路本質(zhì)上不是“一次分析就能得出結(jié)論”的工具而是一套把模型拆解成可解釋組件的工程方法。它的收益也不在單次實(shí)驗(yàn)的洞察而在長(zhǎng)期積累的能力讓模型不再是一個(gè)只能看結(jié)論的黑箱而是一臺(tái)可以拆開(kāi)檢修的機(jī)器。