昨天列了三個可能原因。今天要做的是把它們的相對權重估出來,因為修正方案取決於哪個是主因。
我的判斷是:
| 原因 | 權重 | 可修正性 |
|---|---|---|
| 評測與訓練目標錯位 | 最主要 | 高——換評測就好 |
| 資料分流錯誤 | 次要但真實 | 高——重新分流 |
| 任務本質不適合微調 | 部分成立 | 不需修正,需要接受 |
第三項是今天的重點,因為它是唯一不能靠「改進做法」解決的。
昨天講過了,補充兩點。
第一,這不只是我的問題,是整個領域的問題。
現有的資安 LLM 評測絕大多數是多選題形式。原因很簡單:多選題好評分,能自動化,能做大規模。而「這份事件報告寫得好不好」需要人讀、需要專業判斷、需要定義什麼叫好——極難自動化。
所以整個領域在用容易測的東西,代理難測的東西。當你的訓練目標剛好落在難測的那一邊,你就會得到我這種結果。
第二,這個錯位有個危險的副作用:它會誘導你去優化錯的東西。
如果我當時的反應是「分數不夠好,我要想辦法把 benchmark 拉上去」,那我接下來會做什麼?把更多知識類資料塞進訓練、針對題型做特化訓練、甚至在資料裡加入類似的題目。
分數會上去。模型會變得更會考試,而在四個真實任務上不會有任何進步,甚至可能變差。
benchmark 一旦變成目標,它就不再是好的度量。 這句話很老,但要在自己身上發生過才會真的懂。
Day 6 完整講過了。這裡只補一個我後來做的量化嘗試。
我回頭統計了 CPT 資料的組成,估算「事實類內容」大概佔了多少比例。結果比我以為的高——因為 CVE 描述與標準文件單筆雖然不長,但筆數極多。
這代表我有相當比例的 CPT 預算,花在了模型注定學不好、而且本來就該由 RAG 負責的東西上。
修正方向很清楚:把這些移出訓練集,改進 RAG 庫,把騰出來的訓練預算給敘事型文本(威脅分析、事件報告、技術文章),因為那才是語域遷移真正需要的養分。
現在講最難的一項。
有沒有可能,我的四個任務裡,根本沒有幾件事是微調該做的?
一個一個檢查:
結論:混合。微調負責大約一半,而且是關鍵的那一半。
結論:RAG 為主,微調為輔。 這個任務如果只做 RAG + 好的 prompt,可能已經有八成效果。
結論:微調價值最高的一個任務。 因為它的核心就是格式與語氣的一致性,那正是微調的主場。
結論:混合。
把四個任務的元素攤開來看,可以歸納成一個更普遍的原則:
需要「正確」的交給 RAG 與程式碼。 需要「一致」的交給微調。
事實要正確,格式要一致。統計數字要正確,語氣要一致。條文引用要正確,判斷框架要一致。
我原本的問題是:我期待微調同時解決「正確」與「一致」。它只能解決後者。
不是。三個具體的收穫:
第一,格式服從性確實大幅改善。 這在 benchmark 上是零分,在實際使用上是省下每份文件十幾分鐘的重新排版。
第二,拒答邊界調整成功。 微調前模型會對某些攻擊技術的討論加上長篇免責聲明,微調後在明確的專業框架內能正常回答。這對新人訓練任務是必要條件。
第三,我拿到了一張完整的地圖。 我知道三階段各自貢獻什麼、知道資料該怎麼分、知道評測該怎麼建。這張地圖的價值,遠超過那幾個百分點。
明天講修正方案:把知識還給 RAG、把格式與流程留給微調,以及新評測該怎麼建。
🛡️ Instagram: @aid3fend — AI 資安實戰紀錄,歡迎追蹤交流。