---
# System prepended metadata

title: 混淆矩陣（Confusion Matrix）
tags: [監督式學習（Supervised learning）, 機器學習]

---

## 介紹混淆矩陣（Confusion Matrix）
Confusion Matrix（混淆矩陣）是一種用於評估分類模型性能的工具，特別適用於二元分類或多類別分類問題，它提供了直觀的方式來顯示模型的預測結果與實際結果的對照關係。

透過分析混淆矩陣，我們可以計算出多種評估指標，如精確率（Precision）、召回率（Recall）、F1 分數（F1-score）等，不同的應用場景對這些指標的重視程度各有不同，選擇適當的指標對於模型的優化至關重要。

對於二元分類問題，混淆矩陣是一個 2×2 的矩陣，包含以下四個部分：
![image](https://hackmd.io/_uploads/ByKFAeM91x.png)
* True Positive (TP)：模型正確預測為正類的數量。
* False Positive (FP)：模型將實際為負類的樣本錯誤地預測為正類的數量。
* False Negative (FN)：模型將實際為正類的樣本錯誤地預測為負類的數量。
* True Negative (TN)：模型正確預測為負類的數量。

## 常見指標 Acuuracy、Precision、Recall、F1-Score
1. Accuracy：表示模型整體正確預測的比例。
$Accuracy = \frac{TP + TN}{TP + TN + FP + FN}$
2. Precision：表示模型在預測為正類時，實際為正類的比例。
$Precision = \frac{TP}{TP + FP}$
3. Recall：表示所有實際正類中，模型成功識別出的比例。
$Recall = \frac{TP}{TP + FN}$
4. F-β Score：根據特定應用的需求調整精確率與召回率的權重。
$F_{\beta} = (1 + \beta^2) \times \frac{\text{Precision} \times \text{Recall}}{\beta^2 \times \text{Precision} + \text{Recall}}$
其中，β 為一個調整參數：
β = 1，則回歸為 F1 分數，代表精確率與召回率的平衡。
β > 1，則偏重召回率（Recall），適用於錯誤分類代價較高的情境，如醫學診斷。
β < 1，則偏重精確率（Precision），適用於錯誤預測需避免的情境，如垃圾郵件分類。

## 不同情境下的指標選擇
1. 垃圾郵件檢測（Spam Email Detection）
在垃圾郵件檢測中，精確率是關鍵指標。因為將正常郵件錯誤地分類為垃圾郵件（False Positive）會對用戶造成不便，甚至導致重要信息的遺失，因此希望在標記為垃圾郵件的郵件中，實際垃圾郵件的比例盡可能高，即高精確率（Precision）。
2. 癌症診斷（Cancer Diagnosis）
在醫學診斷中，特別是癌症等重大疾病的篩查，召回率是至關重要的指標。因為漏診（False Negative）可能導致患者錯失早期治療的機會，帶來嚴重後果。因此，我們希望在所有實際患病的患者中，盡可能多地被正確檢出，即高召回率（Recall）。

## 總結
混淆矩陣（Confusion Matrix）及其衍生的各種評估指標為我們提供了全面評估分類模型性能的手段，根據不同的應用場景，選擇適當的指標至關重要，例如在垃圾郵件檢測中，應側重於提高精確率，而在癌症診斷中，則應優先考慮提高召回率，理解並靈活運用這些指標，有助於我們在各種情境下構建更為有效的模型。

---
:::info
以上就是這篇文章「混淆矩陣（Confusion Matrix）」的所有內容，第一次看的人會花比較多時間消化吸收，這是很正常的事情，若有任何問題，歡迎在下方與我聯繫、討論，接下來也會繼續分享相關文章，敬請期待。