教科書級數據is all you need:1.3B小模型逆襲大模型的秘密(2)
如下圖 2.1 所示,該研究發現模型在 HumanEval 基準上的最大改進來自于在小型 CodeExercises 數據集(<200M token)上的微調。CodeExercises 僅包含使用基本 Python 庫的簡短 Python 任務。
該研究表明,微調后的模型在執行微調數據集中沒有的任務上也表現出顯著的性能改進。
微調提升了模型的理解能力
該研究僅使用簡單的 Python 函數就觀察到,微調后的模型對指令的理解和遵循程度要高得多。例如,phi-1-base 很難處理 prompt 中的邏輯關系,而 phi-1 可以正確解釋問題并生成答案。
微調提升了模型使用外部庫的能力
該研究發現在 CodeExercises 上的微調意外地提高了模型使用 Pygame 和 Tkinter 等外部庫的能力,盡管微調中不包含這些庫。這表明微調不僅改進了目標任務,還使不相關的任務更容易從預訓練中蒸餾(distill)出來。
LLM 分級中非常規問題的評估
如下表 1 所示,phi-1 在 HumanEval 基準上取得了令人驚訝的良好性能。但一個潛在問題是,phi-1 優越的性能可能來源于 CodeExercises 數據集的「污染」。
為了最大限度地減少 bias 和數據泄露(data leakage),該研究在沒有訪問 CodeExercises 數據集的情況下創建了新的評估問題。具體來說,該研究以 HumanEval 的格式創建了 50 個新問題,并附有設計說明,這些問題不太可能出現在現實世界的代碼庫或編碼練習中。例如:
下表 2 顯示了 phi-1 和一些模型的比較結果:
數據修剪及性能評估
如上圖 2.1 所示,在 CodeExercises 上的訓練顯著提升了模型在 HumanEval 基準上的性能。為了研究這種提升,該研究通過移除與 HumanEval「相似」的文件來修剪 CodeExercises 數據集。這個過程可以被視為數據凈化的「強力形式」。
然后,該研究在修剪過的數據上重新訓練模型,模型在 HumanEval 基準上仍然表現出強大的性能。特別是,即使在修剪超過 40% 的 情況下,重新訓練的 phi-1 仍然優于 StarCoder。
感興趣的讀者可以閱讀論文原文,了解更多研究細節。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。