跳到主要内容

04 參照與檢驗:為什麼要切開兩組題目

導航:← 03 替換式注入 | 目錄 | 05 字典 →

每題的解答都收合在題目下方:先自己作答,再點開「看解答」核對。

先認識這些詞​

這一課新出現的詞如下(前面課程已解釋過的詞不重複,完整列表見 術語表)。

  • 標準化平均差(SMD):衡量兩組是否平衡的數字。越接近 0 越平衡。

目標​

讀完這課,你能解釋「參照題」「檢驗題」「冷啟動 n」各是什麼,以及為什麼訓練時不能看到檢驗題。

白話​

考試的規則是:練習題和考試題不能重複。 如果老師把考題拿來練習,考試分數就不可信。

研究也一樣:

  • 參照題:練習題。我們可以看它們、拿它們來學習「正常長什麼樣」,也可以在上面製造假灌票來訓練偵測器。
  • 檢驗題:考試題。訓練時完全不能碰,只能用來算最後的 AUC。

每個資料集會依票數分層,切成大約 75% 參照、25% 檢驗。

冷啟動 n​

目標平台(AVP)剛開始時題目很少。研究問的是:只有 n 題參照時,偵測器還能用嗎?

所以論文會分別看 n = 10、25、全部。n 越小,代表平台越「新」,這叫冷啟動。

注意:參照題數 n 和檢驗題數是兩回事。檢驗題的數量由切分決定,n 只決定有多少參照題被用來訓練。

看這裡​

  • src/split.py:切分的函式(打開後先找「分層」和「重新隨機化」兩個關鍵字)。
  • src/selfinj.py 第 28–32 行(_nsets):從參照題中抽出 n 題的方式。
  • 切分的平衡檢查:論文說標準化平均差的絕對值 ≤ 0.052,代表兩組的票數與時間分布接近。

問自己​

1. 檢驗題有沒有可能出現在任何訓練步驟中?(這是下一課「洩漏」的核心。)

看解答

不應該。檢查方法是找每一個訓練步驟(例如 .fit( 呼叫)的輸入,確認來源只有參照題或來源域。這就是下一課「洩漏」的核心。

2. 如果切分不是隨機的,例如全部把票數多的題放在檢驗組,結果會怎樣?

看解答

偏差會很大:如果檢驗組全是票數多的題,檢驗結果就不代表平台的一般情況,AUC 會被扭曲。這正是平衡檢查(標準化平均差)要防止的問題。

3. 為什麼 n = 10 時的抽樣比 n = 全部時更不穩定?

看解答

n 小時,參照題少,學到的「正常樣子」有限,模型與字典的估計變異大,每次抽樣得到的結果差異也大,所以 n = 10 比 n = 全部更不穩定。

練習​

有 40 題,要切成約 75% 參照、25% 檢驗。

1. 參照題約幾題?檢驗題約幾題?

看解答

參照約 30 題,檢驗約 10 題(40 × 75% = 30,40 × 25% = 10)。

2. 如果要從參照題中只取 n = 10 題,有幾種可能的選法(不考慮順序)?(只需要知道這是「組合」問題,不用算出確切的大數字。)

看解答

這是從 30 題中選 10 題的組合問題,可能的選法數非常大,不必算出精確數字。研究用固定種子抽樣,讓同一批 10 題可以重現。

檢核​

1. 參照題和檢驗題的用途分別是什麼?

看解答

參照題:訓練時可以看,用來學習「正常長什麼樣」,也可以在上面製造假灌票。檢驗題:只用來最後打分,訓練時完全不能碰。

2. 「冷啟動 n」指的是什麼?

看解答

可用的參照題數 n。n 越小,平台越「新」,這就是冷啟動。研究比較 n = 10、25 與全部。

3. 為什麼要用固定的隨機種子?

看解答

固定種子讓隨機抽樣與注入可以重現:同一個種子每次跑出來的結果一樣,別人也能得到相同的數字。

導航​

引用文獻​

  • Morgan, K. L., & Rubin, D. B. (2012). Rerandomization to improve covariate balance in experiments. The Annals of Statistics, 40(2), 1263–1282. [bib: morgan2012rerandomization] — 論文用它做切分的平衡檢查(|SMD| ≤ 0.052)。
  • 「冷啟動」與參照題數 n 的設計是本研究自訂,見 doc/runbook/v13/README.md。