模型上線後分類錯誤率飆升,最適合用什麼策略應對?
若部署一個深度學習模型至金融風控系統,該模型採用鑑別式架構(如 Transformer Classifier)。然而上線後,模型對新樣本的分類錯誤率顯著上升,經檢查發現,輸入資料分佈已與原訓練集明顯不同。針對此情形,下列哪一種應對策略最為適合?
一家金融公司把深度學習模型部署到風控系統,負責判斷每筆交易「有沒有風險」。模型架構是鑑別式(Discriminative)的分類器,例如 Transformer Classifier。
上線之後問題來了:模型分類錯誤率越來越高。去查才發現,現在進來的交易資料分佈,跟當初訓練時用的資料分佈差很多了。
問你:遇到這種「輸入資料分佈偏移」的情況,該採取哪個應對策略?
一句話總結
資料分佈偏移(Data Drift)要先「偵測」才能「應對」。最適合的策略是:用變分自編碼器(VAE,Variational Autoencoder)監控潛在空間的分佈變化,及時發出警報,而不是貿然換模型或擴大模型容量。
先感受問題:明明沒改模型,錯誤率卻悄悄飆高
假設「聯信金控」風控團隊在 2024 年 Q1 用當時的交易資料訓練了一個 Transformer 分類器,專門判斷每筆交易是「正常」還是「可疑」。上線時準確率 97%,大家很滿意。
到了 2025 年 Q1,新型態行動支付爆炸性成長,交易金額分佈、消費地點、裝置指紋全都跟 2024 年差很多。這時候模型看到的「新資料」,跟它訓練時見過的「舊資料」差距越來越大:
2025 資料:平均交易金額 2,500 元,行動支付占 70%,跨境交易占 25%
模型完全沒有看過「2025 年的交易長什麼樣」,於是開始亂判。但問題是:你要怎麼知道是「資料分佈偏移」造成的,而不是模型本身壞掉?
這就需要一個能「監控輸入資料長什麼樣」的機制,而不是直接換模型。
為什麼直覺反應都是錯的
工程師看到「模型錯誤率高」,直覺會想做這些事。但在資料分佈偏移的情境下,全都是錯的:
- 貿然換成更簡單的模型(如邏輯迴歸):模型容量縮小,對更複雜的新型態交易更沒辦法學習,只會讓準確率雪上加霜,而且換模型需要重新上線驗證,代價極高。
- 增加模型容量(加層數、加參數):資料分佈都偏掉了,就算你把模型做得再大,餵的還是「舊分佈的資料」,大模型只會把舊分佈記得更牢,對新分佈仍然無效。
- 直接用 GAN 生成新樣本:GAN 本身就需要知道「新分佈長什麼樣」才能生成有意義的樣本。如果還不清楚偏移發生在哪裡,GAN 生出來的資料很可能跟真實新分佈差很遠。
- 忽略資料問題,只看指標:錯誤率高了才發現,這時候已經讓假警報或漏網詐欺發生了一段時間,金融損失可能已經造成。
- 直接把新資料打標後重訓:標新資料非常耗時,而且在搞清楚偏移的性質之前,打標方向可能不對。正確做法是先偵測、再決定要怎麼應對。
VAE 當感測器:先偵測分佈,再決定行動
回到「聯信金控」。正確的策略是在分類器旁邊,平行部署一個 VAE 作為「資料健康監控器」:
第一步,VAE 在訓練期間學習「正常交易資料長什麼樣」,把它壓縮成一個潛在空間(Latent Space)分佈。正常交易在這個空間裡應該集中在某個區域。
第二步,上線後每一批新進來的交易資料,也讓 VAE 把它們投影到潛在空間,看落點在哪裡。
2025 年新資料:落點開始漂移到 (0.8, 1.2) 附近,偏離原本的叢集
一旦偵測到潛在空間分佈明顯漂移,系統就能主動發警報:「輸入資料分佈已偏移,分類結果可能不可靠,請人工審核或啟動重訓流程。」
這樣的好處是:不需要等到錯誤率飆高才知道有問題,而是在偏移發生的早期就抓到,讓團隊有時間決定「要繼續用舊模型搭配人工審核」、「要重新採集標注資料」還是「要做領域適應(Domain Adaptation)微調」。
這就是選項 D 講的:使用變分自編碼器(VAE)監控潛在空間分佈,偵測輸入資料偏移。
技術版:VAE 的潛在空間怎麼做分佈監控
中級考試大概率會考程式碼跟公式,所以這部分你還是要學。但如果現在學起來很痛苦,可以先跳過,等讀完其他題目回頭再來。
本題沒有程式碼,但相關技術背景值得知道。
VAE 的結構:VAE(Variational Autoencoder,變分自編碼器)有兩個部分:編碼器(Encoder)把輸入壓成潛在向量 z,解碼器(Decoder)把 z 還原成輸出。訓練目標是讓輸入和輸出越接近越好,同時讓 z 的分佈接近標準常態分佈(均值 0,標準差 1)。
為什麼 VAE 適合做分佈監控:VAE 訓練完後,把任何一筆資料丟進編碼器,都能拿到對應的潛在向量 z。如果這筆資料跟訓練資料分佈一樣,z 會落在潛在空間的「正常區域」;如果這筆資料是異常的或分佈偏移的,z 就會落在邊緣甚至完全飛出去。
偵測指標:常用的方法是計算重建誤差(Reconstruction Error)。VAE 把新資料編碼再解碼,看重建出來的結果跟原始輸入差多少。訓練分佈內的資料重建誤差小;偏移分佈外的資料重建誤差大。當一批資料的平均重建誤差超過設定的閾值,就觸發警報。
和鑑別式分類器的分工:鑑別式模型(Transformer Classifier)負責做分類決策;VAE 負責做資料健康監控。兩者並行,VAE 偵測到分佈偏移時,可以選擇:降低分類器輸出的信心門檻、強制轉人工審核、或觸發重訓流程。
KL 散度在這裡的角色:VAE 訓練時的損失函數包含 KL 散度(Kullback-Leibler Divergence),讓潛在空間的分佈維持接近標準常態。這使得潛在空間有良好的「結構」,新資料的偏移方向是有意義的、可解釋的,不是任意的。
為什麼其他選項是錯的
A改用生成對抗網路(GAN)生成新樣本並混入訓練集
用 GAN 製造出「新型態」的合成交易資料,混進訓練集,讓模型學習更廣泛的樣本。
這個策略的前提是「你已經知道新分佈長什麼樣」,GAN 才能生成有代表性的新樣本。但題目的情境是剛發現資料分佈偏移,尚未搞清楚偏移的性質。在不清楚新分佈特徵的情況下讓 GAN 生成,很可能生成出跟真實新分佈完全不同的假資料,讓模型學了反而更歪。
知道 GAN 可以做資料增強(Data Augmentation)的考生,直覺覺得「GAN 生新資料讓模型學」是好策略。GAN 確實可以做資料增強,但需要先有充分的新分佈資料讓 GAN 學習,不是在偏移剛發生時立刻有用。
B改用邏輯迴歸模型(Logistic Regression)以提升穩定性
把複雜的 Transformer 分類器換成更簡單的邏輯迴歸(Logistic Regression),因為簡單模型更穩定。
模型的穩定性和容量高低無關。資料分佈偏移是「輸入資料的性質改變了」,這個問題換成更簡單的模型完全不能解決,反而因為邏輯迴歸建模能力更弱,對偏移後的新型態交易更難正確分類。簡單模型不是更穩,是更不夠用。
認為「複雜模型容易過擬合,不穩定,簡單模型更可靠」的考生。過擬合問題和分佈偏移問題是不同的病,對應的藥也不同。這題的核心是偵測並應對分佈偏移,不是解決過擬合。
C增加模型容量(Model Capacity),以學習更多樣本差異
把模型做更大(更多層、更多參數),讓它有能力學習更多元的樣本模式,包括新分佈的資料。
模型容量影響的是「能學的模式的複雜程度」,但不能幫它學到「它根本沒見過的新分佈」。訓練資料還是舊分佈的,模型就算做到再大,也是把舊分佈記得更牢,對新分佈的泛化能力不會增加。這是用錯了藥。
以為「模型不夠強所以才分類錯」的考生。資料分佈偏移的問題根源是資料改變了,不是模型不夠強。模型容量做大是解決「模型太簡單、表達力不足」的問題,不是解決分佈偏移的問題。
同個考點下次怎麼變形
資料漂移(Data Drift)和概念漂移(Concept Drift)有什麼差?
都叫「漂移」,感覺是同一件事?
資料漂移(Data Drift):輸入資料的分佈 P(X) 改變了,但輸入和輸出的關係 P(Y|X) 不變。例如交易金額的範圍變大了,但「高金額 = 可疑」的規律不變。概念漂移(Concept Drift):P(Y|X) 改變了,原本的「判斷標準」本身過時了。例如詐欺手法改變,原本「深夜大額提款 = 可疑」現在不再成立。本題情境是 Data Drift,應對方式是重新採集分佈資料更新模型;Concept Drift 更嚴重,可能需要重新定義標籤。
VAE 偵測到分佈偏移之後,下一步應該做什麼?
偵測到就直接重訓模型?
不一定。偵測到之後有三條路:一是繼續用舊模型,但降低輸出信心門檻,對低信心結果強制轉人工審核;二是採集新分佈的標注資料,對現有模型做微調(Fine-tuning);三是判斷偏移太大,完全重訓新模型。選哪條路取決於偏移的程度、重訓資源、和業務能接受多少誤判。
線上學習(Online Learning)能解決分佈偏移問題嗎?
模型每天用新資料更新,應該不會跟不上分佈變化?
線上學習能緩解緩慢的分佈漂移,但有兩個風險:一是如果分佈突然劇變(如金融危機),線上學習可能來不及適應;二是線上學習容易受到「毒化攻擊(Data Poisoning)」,攻擊者故意塞進惡意樣本讓模型學壞。金融風控場景通常不直接用線上學習,而是搭配 VAE 等監控工具,在控制條件下定期重訓。
醫療影像 AI 也有分佈偏移問題嗎?怎麼發生?
醫療影像靠的是病灶特徵,分佈應該比金融交易穩定?
非常常見。最典型的是「設備漂移」:模型在 A 醫院的 CT 機訓練,但 B 醫院用的是不同廠牌機器,掃描的影像對比度、解析度、雜訊特性都不同。模型在 A 醫院準確率 94%,到 B 醫院可能掉到 70%。應對方式包括:各醫院分別做影像正規化預處理、用 VAE 偵測影像分佈差異、對 B 醫院資料做遷移學習微調。
怎麼量化「分佈偏移的嚴重程度」?
看看錯誤率有沒有明顯下降就好了?
有幾個更直接的指標。Population Stability Index(PSI):比較訓練期和上線後各特徵的分佈差異,PSI 大於 0.2 通常認為需要重訓。Kolmogorov-Smirnov 檢定(KS test):統計學方法,檢驗兩個分佈是否顯著不同。VAE 重建誤差趨勢:持續監控每批資料的平均重建誤差,設定告警閾值。這些方法比等待錯誤率飆高更主動,可以在模型失效前先一步偵測到問題。
想再往下看,這 5 個
- 變分自編碼器(Variational Autoencoder)把輸入壓縮成潛在向量再重建輸出,潛在空間具機率分佈結構;重建誤差是偵測分佈外樣本的核心信號。
- 資料漂移(Data Drift)輸入資料分佈 P(X) 隨時間改變,是本題模型錯誤率飆升的根本原因;常用 PSI 或 KS 檢定量化嚴重程度。
- 機器學習維運(MLOps)把模型開發、部署、監控整合成可持續工程流程;資料漂移監控是 MLOps 核心功能,偏移警報讓團隊在業務損失前介入。
- 異常偵測(Anomaly Detection)識別與訓練分佈顯著不同的樣本;VAE 重建誤差是異常偵測常見方法,分佈外樣本重建誤差明顯偏高。
- 概念漂移(Concept Drift)P(Y|X) 改變,代表判斷規則本身過時;與資料漂移(P(X) 改變)性質不同,應對策略也不同,考試常考辨別。