iPAS AI 應用規劃師 初級 科目一 人工智慧基礎概論

詐欺偵測模型資料不平衡,SMOTE 怎麼解?

原題 05

某銀行建立 AI 詐欺交易偵測模型。歷史交易資料中,詐欺樣本比例極低,導致模型訓練時偏向預測為「正常交易」。資料科學團隊評估採用 SMOTE(Synthetic Minority Over-sampling Technique)改善訓練資料分佈。下列何者最符合 SMOTE 技術的主要功能?

白話

某銀行的詐欺交易偵測模型因為訓練資料裡詐欺樣本比例極低,模型傾向把所有交易都預測為正常。資料科學團隊打算用 SMOTE(Synthetic Minority Over-sampling Technique)來改善這個問題。

問你:下列哪一項最符合 SMOTE 技術的主要功能?

點選你的答案。

01 總結

一句話總結

SMOTE 解決類別不平衡的方式是在少數類別的特徵空間合成新樣本:不刪多數類別、不改模型參數,而是「造」更多少數類別的虛擬數據出來。

02 情境

先感受問題:100 萬筆交易,只有 100 筆是詐欺

假設你是「守信銀行」的資料科學工程師。公司有 100 萬筆歷史交易紀錄,其中只有 100 筆被確認是詐欺交易(比例 0.01%)。

你把這份資料直接丟進模型訓練,結果模型學到了一個「偷懶」的策略:不管什麼交易,全部預測成「正常」。這樣的準確率高達 99.99%,但詐欺一筆都沒偵測到,完全沒有用。

這就是類別不平衡(Class Imbalance)問題:少數類別的樣本太少,模型沒有足夠的詐欺案例可以學習,只能依賴多數類別(正常交易)的規律。

SMOTE 的想法是:如果真實的詐欺案例太少,那就「製造」更多合成的詐欺樣本,讓模型有足夠的少數類別案例可以學習。

03 對照

沒有 SMOTE 之前,類別不平衡怎麼硬撐

「守信銀行」在採用 SMOTE 之前,嘗試過幾種方法,各有痛點:

  1. 直接訓練:模型學到「全預測正常」的偷懶策略,詐欺偵測率趨近零,毫無意義
  2. 刪除多數類別(Under-sampling):把正常交易從 100 萬筆削減到幾百筆,樣本太少,模型泛化能力很差,容易過擬合
  3. 重複少數類別(簡單 Over-sampling):把 100 筆詐欺交易複製貼上幾千次,但模型只是記憶這 100 個樣本,對新型詐欺沒有識別能力
  4. 調整懲罰權重:讓誤判詐欺的成本更高,但本質上訓練數據的不平衡問題沒有解決,效果有限
  5. 收集更多詐欺數據:理論上最好,但詐欺案例本來就稀少,無法短期內大量蒐集
04 解法

SMOTE 怎麼在特徵空間合成新樣本

SMOTE 的核心概念:在少數類別的現有樣本之間,找到空隙,「插值」生成新的合成樣本。

以「守信銀行」的詐欺偵測為例:

步驟一:找到最近鄰。對每一筆真實詐欺交易,找出特徵空間中最鄰近的 k 筆詐欺樣本(例如 k=5)。

步驟二:插值合成。在一筆詐欺樣本和它的某個近鄰之間,隨機插值產生一個新的合成詐欺樣本。這個新樣本的特徵值介於兩個真實樣本之間,是「合理但不存在的」詐欺案例。

結果:原本 100 筆詐欺交易,透過 SMOTE 合成出 5000 筆詐欺樣本,模型現在有足夠的少數類別案例可以學習詐欺的特徵模式,而不只是記憶 100 個固定案例。

SMOTE 沒有改動多數類別數據,也沒有改變模型架構,而是從「豐富訓練數據」的角度解決不平衡問題。

這就是選項 B 為什麼正確:依據少數類別樣本的特徵空間,合成產生新的少數類別樣本

技術版:類別不平衡的常見處理方法對比

類別不平衡(Class Imbalance)是監督式學習中的常見問題,以下是主要解法及其特點:

資料層面的方法:

  • Under-sampling(欠採樣):隨機刪除多數類別樣本。簡單但會丟失信息,適合資料量非常大的情況。
  • Over-sampling(過採樣):重複複製少數類別樣本。簡單但容易過擬合(只是記憶,沒有新信息)。
  • SMOTE(合成過採樣):在少數類別的特徵空間插值合成新樣本,比簡單複製效果更好,是目前最常用的過採樣方法。

演算法層面的方法:

  • 類別權重(Class Weight):在損失函數中給少數類別更高的懲罰權重(即選項 C),讓誤判少數類別的代價更高。
  • Focal Loss:一種特殊的損失函數,對難以分類的樣本給予更高的關注。

SMOTE 的局限性:在高維特徵空間中,插值可能產生不合理的合成樣本(兩個詐欺案例之間插值出一個「中間值」,但中間值不一定真的像詐欺)。因此出現了 ADASYN、Borderline-SMOTE 等改良版本。

為什麼出題者要考這題:類別不平衡在金融詐欺、醫療診斷、設備故障偵測等場景極為常見。AI 規劃師需要知道哪種方法在哪種情況下適用,SMOTE 是考試高頻詞彙。

05 陷阱

為什麼其他選項是錯的

A透過隨機刪除部分正常交易資料,以降低類別失衡程度

字面在說什麼

刪掉一些多數類別(正常交易)的樣本,讓詐欺和正常的比例變得更接近。

為什麼不對

這是「欠採樣(Under-sampling)」的方法,不是 SMOTE。SMOTE 是增加少數類別,不是刪減多數類別。而且 SMOTE 的全名裡有「Over-sampling(過採樣)」,明確說明是增加,不是刪減。

誰會選錯

知道「要讓兩類數量接近」但忘了 SMOTE 是加少數還是減多數的人。記住 SMOTE 的名字:Over-sampling = 採樣增加,Synthetic = 合成,都指向「增加少數類別」。

C調整模型的損失函數(Loss Function)權重,使誤判少數類別時的懲罰提高

字面在說什麼

不改數據,而是讓模型「更重視」少數類別,透過調整損失函數讓誤判詐欺的代價更大。

為什麼不對

這是「類別加權(Class Weighting)」方法,作用在模型層面,不是數據層面。SMOTE 作用在資料層面,透過合成新樣本解決問題,不涉及損失函數的調整。兩者是不同層次的解決方案。

誰會選錯

知道類別不平衡有多種解法但分不清哪個是 SMOTE 的人。SMOTE 的解法一定在「資料」層面,不在「模型」層面。

D以交叉驗證(Cross-validation)方式重新分割資料集,使各折資料類別比例一致

字面在說什麼

用分層抽樣的交叉驗證確保每一折訓練集和測試集的類別比例一致,解決評估偏差問題。

為什麼不對

交叉驗證是模型評估方法,確保評估的公平性,不是解決類別不平衡的採樣方法。它不會新增或減少任何樣本,數據量和比例本身沒有改變,跟 SMOTE 的功能完全不同。

誰會選錯

把「讓各折比例一致」誤以為是解決類別不平衡的人。分層交叉驗證確保評估時比例一致,但不解決訓練時少數類別樣本不足的根本問題。

06 變形

同個考點下次怎麼變形

變形 1

SMOTE 和簡單重複複製少數類別有什麼差別?

直覺

重複複製也是「增加少數類別樣本」,為什麼 SMOTE 更好?

答案

簡單複製只是把同樣的樣本重複出現,模型只是在記憶這些固定案例,對新型態的少數類別沒有識別能力。SMOTE 透過插值產生「新的合成樣本」,讓模型學習少數類別的特徵分佈,對未見過的少數類別樣本泛化能力更強。

變形 2

下列哪個場景最適合使用 SMOTE?

直覺

SMOTE 適合所有分類任務嗎?

答案

SMOTE 最適合:少數類別樣本嚴重不足、少數類別的特徵空間是連續分佈的情境,例如詐欺偵測、疾病診斷、設備故障預測。不適合:少數類別本身特徵不清晰、合成樣本容易產生雜訊的高維稀疏特徵空間。

變形 3

SMOTE 應該在資料分割(train/test split)的哪個階段執行?

直覺

SMOTE 要在分割前還是分割後做?

答案

SMOTE 必須在資料分割之後,只對「訓練集」執行。如果在分割前做 SMOTE,合成的樣本可能混入測試集,造成資料洩漏(Data Leakage),讓評估指標過於樂觀,實際上模型沒那麼好。

變形 4

類別不平衡問題只靠 SMOTE 就夠了嗎?

直覺

用了 SMOTE 是不是類別不平衡就解決了?

答案

SMOTE 只是處理訓練數據不平衡的方法之一,實務上常與類別加權、調整決策閾值(Threshold Adjustment)、使用適合不平衡資料的評估指標(F1-score、AUC-ROC 而非準確率)一起使用,效果更全面。

變形 5

為什麼在類別不平衡問題中不應該只看準確率(Accuracy)?

直覺

準確率不是越高越好嗎?

答案

當少數類別只佔 0.01%,模型全預測多數類別準確率仍達 99.99%,但少數類別召回率是零,完全沒有偵測能力。應改用 F1-score(精確率和召回率的調和平均)或 AUC-ROC,這些指標才能反映模型在少數類別上的真實表現。

07 延伸

想再往下看,這 5 個

出處

iPAS 經濟部產業人才能力鑑定 ・ 115 年第一次 iPAS AI 應用規劃師 初級 科目一 人工智慧基礎概論 第 5 題

查看官方原文 PDF