---
title: "類別加權（Class Weighting）"
slug: class-weighting
language: zh-TW
source: https://aiterms.tw/terms/class-weighting
updated_at: 2026-06-22
tags: [機器學習, 類別不平衡, 損失函數, 分類任務, iPAS考試]
ipas_term: false
---

# 類別加權（Class Weighting）

在分類模型訓練時對不同類別樣本賦予不同損失權重的技術，用於緩解資料類別不平衡問題，使模型更重視少數類別。

## 完整說明

Class Weighting（類別加權）是處理資料集類別不平衡（Class Imbalance）問題的常用策略。當各類別樣本數量懸殊時（如詐騙偵測中正常交易佔 99.9%，詐騙交易僅 0.1%），若不做任何處理，模型往往傾向預測多數類別以最小化整體誤差，導致少數類別的召回率極低。類別加權透過在損失函數中對少數類別樣本賦予較高的誤分類懲罰，引導模型學習時更關注少數類別，在不改變資料集本身的前提下平衡訓練訊號。

## 常見問題

### 什麼時候應該用 class_weight='balanced'，什麼時候要手動設定權重？

class_weight='balanced' 適用於快速建立基準模型（Baseline）的情況，它根據各類別的樣本數自動計算反頻率權重，不需要任何領域知識。手動設定權重則適用於業務需求對不同錯誤類型有明確代價估算的場景。例如醫療診斷中，漏診（False Negative）的代價遠高於誤診（False Positive），此時應根據兩種錯誤的業務代價比設定非對稱權重，而非完全依賴統計頻率。建議先用 balanced 建立基準，再根據混淆矩陣分析業務影響後決定是否手動微調。

### 類別加權和 SMOTE 過採樣哪個效果更好？

沒有絕對優劣，需視情況而定。類別加權不改變資料集，訓練速度快，適合不平衡比在 1:100 以內的場景；其缺點是少數類別樣本仍然稀少，模型對少數類別的多樣性學習有限。SMOTE 在少數類別的樣本間插值生成合成樣本，讓模型接觸到更多樣的少數類特徵，對於極度不平衡（1:1000 以上）通常效果更佳，但會增加訓練資料量與訓練時間，且合成樣本可能引入噪音。實務建議是同時嘗試兩種方法，用交叉驗證的 F1-Score 來選擇。

### 用了類別加權後，測試集評估時還需要用加權嗎？

不需要。類別加權只作用於訓練階段的損失函數計算，目的是讓模型學習時更重視少數類別。在測試集評估時，應使用未加權的原始預測結果，反映模型在真實資料分佈下的表現。評估指標的選擇也很重要：應報告每個類別的 Precision 和 Recall，以及整體的 Macro F1-Score（各類別 F1 的算術平均）而非 Accuracy，這樣才能真實反映模型對少數類別的辨識能力，而不被多數類別的高準確率掩蓋。

---

來源：https://aiterms.tw/terms/class-weighting
快查頁：https://aiterms.tw/terms/class-weighting
最後更新：2026/06/22
深度解說：https://aiterms.tw/learning/what-is-class-weighting