Instructions to use Yuivdldk/math-model-vertex-arm-l45-g4b-lora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use Yuivdldk/math-model-vertex-arm-l45-g4b-lora with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("google/gemma-3-4b-it") model = PeftModel.from_pretrained(base_model, "Yuivdldk/math-model-vertex-arm-l45-g4b-lora") - Notebooks
- Google Colab
- Kaggle
頂點臂(difficulty-vertex arm)— Gemma-3-4B LoRA
科展研究「相對難度決定微調收益」的第三支外部老師臂。 這是倒 U 律的事前檢驗,不是一個要拿來用的模型 —— 它比基線差。
這個臂要回答什麼
先前用乾淨的難度軸(maxnew 4096、n=2538)量到:微調造成的相對損失 在 pass@8 中段最重,頂點 k* = 4.15–4.58。
兩個既有的外部老師臂都避開了頂點,而且離頂點近的那個傷得更重:
| 臂 | 訓練題平均 k | 距頂點 | Δfallback vs 基線 |
|---|---|---|---|
| targeted v2(純能力牆) | 0.00 | 4.36 桶 | −4.45pp |
| 控制臂(非牆題) | 5.93 | 1.57 桶 | −5.83pp |
倒 U 律事後解釋了這個排序。本臂把訓練題壓在頂點上(平均 k=3.96), 檢驗它有沒有事前預測力。
🔴 事前預測登記在生成之前(commit e792e57,2026-07-29T01:46:35Z):
主要預測:Δfallback < −5.83pp(比控制臂更重)
沒中的定義:(a) Δfallback ≥ −5.83pp,或
(b) 差值(頂點臂 − 控制臂)的 95% CI 上界觸及 0
⇒ 只能宣稱「未能區分」,不得宣稱倒 U 律被驗證
訓練資料
| 項目 | 值 |
|---|---|
| 題目來源 | MATH train split,p_i ∈ {2,3,4,5,6}/8,候選 339 題 |
| 老師 | deepseek-v4-pro(便宜分組 + 串流,與既有兩臂同一輸出模式) |
| 老師驗證 | Math-Verify 逐題判定,287/339 通過(84.66%),parse_fail 0 |
| 劑量 | 老師 265 + base-correct replay 265 = 530 |
| 抽樣 | seed 20260727、依 type 分層,與控制臂同一支 builder |
| 汙染 | 訓練池 ∩ 測試集 = 0(雙鍵:idx + problem 文字) |
train_data_sha256 |
c6a2990315b1491d1e27dd6aa0f4502cc0d8235b25c5e65cbf8be712218250dc |
劑量、seed、replay 池、長度上限與控制臂逐筆相同。 唯一變動的是訓練題落在難度軸的哪裡。
訓練集由 build_dose_control_sft.py --arm vertex_arm 產出。同一支 builder
用控制臂的原始輸入重建,能逐位還原已落地的 d99f688c… —— 這道回歸閘門
在建本臂訓練集之前先跑過,確認配方沒被改動。
配方
lr 1e-4 · epochs 1.0 · max-length 4096 · per-device 1 × grad-accum 8 · seed 42
LoRA r=16 alpha=32 dropout=0.05 · 238 個目標 module(僅 language_model)
train_loss 0.2676 · train_runtime 145s
base google/gemma-3-4b-it @ 093f9f388b31de276ce2de164bdc2081324b9767
逐字複製 targeted v2 / 控制臂的配方。training_provenance_v2.json 裡的
kind 寫 targeted_sft_v2_training,那是訓練器的固定標籤,
代表「用的是 targeted v2 那套配方」,不是說這是 targeted v2 的資料。
合併已驗證:238/238 個目標張量改變,重載後仍不同,eos_token_id=[1, 106]。
評測
n=2538(MATH test L4–5)、max_new 4096、VLLM_BATCH_INVARIANT=1、
temp 0、seed 0,scorer direct-axis-balanced-box-v2.1-timeout-safe+math-verify-0.9.0。
與 targeted v2 / 控制臂同一把尺(跨尺相減在本研究是禁止的)。
結果
| 臂 | 訓練題平均 k | 距頂點 | fallback | Δ vs 基線 | exact McNemar p |
|---|---|---|---|---|---|
| 基線 | — | — | .6335697400 | — | — |
| targeted v2 | 0.00 | 4.15 | .5890464933 | −4.45pp | 1.15e−07 |
| 控制臂 | 5.93 | 1.35 | .5752561072 | −5.83pp | 1.18e−12 |
| 頂點臂 | 3.96 | 0.19 | .5736800630 | −5.99pp | 8.46e−13 |
🔴 事前判準的裁決:【未能區分】
主要終點 頂點臂 − 控制臂 = -0.16pp
W/L 190/194 discordant 384
95% CI [-1.65, +1.38]pp exact McNemar p = 0.8784
MDE(80%) = 2.16pp
(a) Δ < 0(比控制臂更重) ✅ 是
(b) 95% CI 上界 < 0(不觸及 0) ❌ 否
依登記檔:不得宣稱倒 U 律被驗證。只能寫成 「差異方向與預測一致,但本樣本量無法排除無差異」。
單峰也未成立。 離頂點最近的頂點臂必須顯著重於另外兩臂才算數: vs targeted v2 −1.54pp(CI [−3.12, +0.04],p=.063)、 vs 控制臂 −0.16pp(p=.878)—— 兩個都不顯著。
這個臂真正買到的是什麼
三支外部老師臂的訓練題難度從 k=0.00 掃到 5.93(涵蓋頂點), Δ vs 基線全部落在 −4.45 ~ −5.99pp 的窄帶內。
⇒ 可辯護的宣稱:在本配方下,訓練題的難度位置對傷害量級的影響上界約 1.5pp, 遠小於「有沒有做這種 SFT」的 4–6pp。
倒 U 律描述的是單一臂內部、逐題的損失分布;本臂顯示那個形狀 不能外推成「選對難度就能少傷」。這兩件事以前被混在一起講。
已知限制
- 評測跨了機器重啟。先前量到的跨機器漂移 −0.61pp 大於本臂的主要終點 −0.16pp, 因此該終點不可作方向性解讀(這只會讓「未能區分」更成立,不會反轉它)。
- 共變量:老師解長度、題型組成、訓練日期。
- 候選只有 339 題,抽 265 後自由度低。
判準分級
依本研究的三級判準,外部老師臂是負結果:SFT 於外部老師解會造成 災難性遺忘,且損失與訓練題的相對難度有關。本 adapter 公開的目的是 可重現性,不是拿來部署。
相關
Yuivdldk/math-model-targeted-v2-l45-g4b-lora— targeted v2(k=0.00)Yuivdldk/math-model-dose-control-l45-g4b-lora— 控制臂(k=5.93)Yuivdldk/axis-majk-selfconsistency— 乾淨難度軸與 maj@k
- Downloads last month
- -