機器學習維運與生產
漂移偵測與監控(drift detection and monitoring)
模型是一張定格的照片,拍下的卻是一個運動中的世界。它一上線,當初學習所依據的分布就開始老化,準確度悄悄侵蝕,即使它的程式碼一行都沒改。漂移偵測與監控就是觀察線上資料與預測中的這種侵蝕、並在它演變成商業事故之前拉響警報的做法,好讓一個過時的模型去觸發重新訓練或回退,而不是在沉默中緩緩失效。
把漂移分門別類是有用的。資料漂移(或稱共變量偏移)是輸入分布改變、而輸入到輸出的關係維持不變。概念漂移則是那個關係本身改變了,相同的輸入如今對應到不同的標籤(詐欺手法演化、使用者口味轉變)。標籤漂移是目標邊際分布的改變。偵測器從對每個特徵做的單變量距離檢定(族群穩定度指數、Kolmogorov-Smirnov 檢定、Jensen-Shannon 散度),到多變量與基於模型的偵測器,再加上在有標籤時直接追蹤線上效能指標。
兩條實務真理主宰著設計。其一,統計顯著不等於營運顯著:在龐大流量下,幾乎任何特徵都會被檢出漂移,因此閾值必須調到真正會撼動準確度的變化上,否則你會被假警報淹沒。其二,最乾淨的訊號是真實標籤到位後模型自身的誤差,但那往往來得太晚,不足以作為唯一防線,因此分布監控充當快速的領先指標,替你爭取時間。
\mathrm{PSI}=\sum_{i} (p_i - q_i)\,\ln\!\frac{p_i}{q_i}
在分箱 i 上的族群穩定度指數,比較參考分布 p 與線上分布 q;經驗法則大致在 0.1 到 0.25 以上即標記為漂移。
一個只要任何特徵在統計上偏移就報警、不管是否影響準確度的警報,會把值班團隊訓練成對它視而不見。
又称
另见