一句話解釋

用 Bayes’ Rule 計算 posterior,再依據 loss function 做出期望風險最小的決策。


隨機變數與機率分佈

基本假設

資料 $x$ 視為從某個機率分佈 $p(x)$ 抽出的隨機變數。 目標: - 從樣本推論出 $p(x)$ 的性質 - 對新觀察做預測或決策

為什麼要用機率?

  1. 不確定性建模: 現實世界充滿雜訊和未知因素
  2. 有限資料: 無法觀察所有可能的情況
  3. 模型不完美: 真實關係可能太複雜,只能用機率近似

機率觀點:
分類不是找「絕對正確」的答案,而是找「最可能」的答案。


Bayesian Classification

Bayes’ Rule 回顧

$$ p(C_k \mid x) = \frac{p(x \mid C_k)\, p(C_k)}{p(x)} $$ 各項意義: - $p(C_k)$:**Prior(先驗機率)** — class $C_k$ 出現的機率 - $p(x \mid C_k)$:**Class-conditional density(likelihood)** — 給定 $C_k$ 時觀察到 $x$ 的機率 - $p(C_k \mid x)$:**Posterior(後驗機率)** — 觀察到 $x$ 後,$C_k$ 的機率 - $p(x)$:**Evidence** — $p(x) = \sum_k p(x \mid C_k) p(C_k)$

決策規則

Bayesian Decision Rule
選擇 posterior 最大的 class: $$ \hat{C} = \arg\max_{k} p(C_k \mid x) $$ 等價於(分母 $p(x)$ 相同,可忽略): $$ \hat{C} = \arg\max_{k} p(x \mid C_k)\, p(C_k) $$

實例:Spam Detection

問題:郵件包含「free」這個字,是垃圾郵件嗎?

已知:

  • $p(\text{spam}) = 0.3$(prior:30% 郵件是垃圾)
  • $p(\text{free} \mid \text{spam}) = 0.8$(垃圾郵件 80% 含「free」)
  • $p(\text{free} \mid \text{ham}) = 0.1$(正常郵件 10% 含「free」)

計算 posterior:

\[\begin{align} p(\text{spam} \mid \text{free}) &= \frac{p(\text{free} \mid \text{spam}) \, p(\text{spam})}{p(\text{free})} \\ &= \frac{0.8 \times 0.3}{0.8 \times 0.3 + 0.1 \times 0.7} \\ &= \frac{0.24}{0.24 + 0.07} = \frac{0.24}{0.31} \approx 0.774 \end{align}\]

結論:77.4% 機率是垃圾郵件,應標記為 spam。


Losses and Risks

為什麼需要 Loss?

現實中,不同類型的錯誤代價不同

例:醫療診斷

  • 漏診(false negative)→ 病人錯過治療,代價極高
  • 誤診(false positive)→ 多做檢查,代價較低

Loss Matrix

$\lambda_{ij}$:真實 class 為 $C_j$,但採取 action $\alpha_i$ 所造成的 loss。
真實 $C_1$ 真實 $C_2$
預測 $C_1$ $\lambda_{11}$ $\lambda_{12}$
預測 $C_2$ $\lambda_{21}$ $\lambda_{22}$
通常對角線(正確分類)loss 為 0:$\lambda_{11} = \lambda_{22} = 0$

Expected Risk

Definition: Expected Risk
採取 action $\alpha_i$ 的期望風險: $$ R(\alpha_i \mid x) = \sum_{k=1}^K \lambda_{ik}\, p(C_k \mid x) $$ 最優決策:選擇期望風險最小的 action $$ \hat{\alpha} = \arg\min_{\alpha_i} R(\alpha_i \mid x) $$

特例:0/1 Loss

0/1 loss: $$ \lambda_{ik} = \begin{cases} 0 & \text{if } i = k \\ 1 & \text{if } i \neq k \end{cases} $$ Expected risk: $$ R(\alpha_i \mid x) = \sum_{k \neq i} p(C_k \mid x) = 1 - p(C_i \mid x) $$ **最小化 risk 等價於最大化 posterior!** $$ \arg\min_i R(\alpha_i \mid x) = \arg\max_i p(C_i \mid x) $$

結論:
0/1 loss 下,Bayesian decision rule 就是選 posterior 最大的 class。

例:醫療診斷的 Loss

設定:

  • $C_1$:有病,$C_2$:無病
  • $\alpha_1$:診斷為有病(治療),$\alpha_2$:診斷為無病(不治療)

Loss matrix:

真實有病 真實無病
診斷有病 0 1
診斷無病 10 0
  • 正確診斷:loss = 0
  • 誤診(false positive):loss = 1(多做治療)
  • 漏診(false negative):loss = 10(錯過治療,嚴重!)

Expected risks:

\[\begin{align} R(\alpha_1 \mid x) &= 0 \cdot p(C_1 \mid x) + 1 \cdot p(C_2 \mid x) = p(C_2 \mid x) \\ R(\alpha_2 \mid x) &= 10 \cdot p(C_1 \mid x) + 0 \cdot p(C_2 \mid x) = 10\, p(C_1 \mid x) \end{align}\]

決策:選 $\alpha_1$(診斷有病)當

$$

p(C_2 \mid x) < 10\, p(C_1 \mid x)

\(\) \Rightarrow p(C_1 \mid x) > \frac{1}{11} \approx 0.09

\[只要有病機率 > 9%,就該治療!(比 0/1 loss 的 50% 低很多) </div> ### Reject Option <div class="highlight-box" markdown="1"> <strong>Reject Option(拒絕分類):</strong><br> 當所有 class 的 posterior 都低於閾值 $\theta$ 時,選擇**拒答**。<br><br> <strong>應用場景:</strong> <ul> <li>人工審核系統:不確定時交給專家</li> <li>金融風控:拒絕高風險交易</li> <li>醫療診斷:建議進一步檢查</li> </ul> </div> <div class="math-block"> <strong>決策規則(with reject):</strong>\]

\hat{C} = \begin{cases} \arg\max_k p(C_k \mid x) & \text{if } \max_k p(C_k \mid x) \geq \theta
\text{reject} & \text{otherwise} \end{cases} $$


Discriminant Functions

定義

將分類實作為 **discriminant function** $g_k(x)$: $$ \hat{C} = \arg\max_k g_k(x) $$ 常見選擇: **選項 1:直接用 posterior** $$ g_k(x) = p(C_k \mid x) $$ **選項 2:用 log-posterior(避免數值下溢)** $$ g_k(x) = \log p(C_k \mid x) = \log p(x \mid C_k) + \log p(C_k) - \log p(x) $$ 由於 $\log p(x)$ 對所有 $k$ 相同,可簡化為: $$ g_k(x) = \log p(x \mid C_k) + \log p(C_k) $$

為什麼用 Discriminant Function?

  1. 計算效率: 不需要計算 $p(x)$(所有 class 共用)
  2. 數值穩定: log 避免機率乘積的下溢問題
  3. 簡化模型: 很多模型直接學習 $g_k(x)$,不經過 posterior

Decision Regions & Boundaries

定義

Decision Region $\mathcal{R}_k$:被分到 class $C_k$ 的輸入空間區域 $$ \mathcal{R}_k = \{x : g_k(x) > g_j(x), \forall j \neq k\} $$ Decision Boundary:不同 decision region 的交界 $$ \{x : g_i(x) = g_j(x)\} $$

幾何直觀

  • Decision region:輸入空間被分割成多個區域
  • Decision boundary:多個 $g_k(x)$ 值相等的地方
  • Boundary 上的點是「最難分類」的點,多個 class 的機率相近

例:兩個 Gaussian Class

設定:

  • $p(x \mid C_1) = \mathcal{N}(\mu_1, \Sigma)$
  • $p(x \mid C_2) = \mathcal{N}(\mu_2, \Sigma)$(相同 covariance)
  • $p(C_1) = p(C_2) = 0.5$

Discriminant function:

\[\begin{align} g_k(x) &= \log p(x \mid C_k) + \log p(C_k) \\ &= -\frac{1}{2}(x - \mu_k)^T \Sigma^{-1} (x - \mu_k) + \text{const} \end{align}\]

Decision boundary:$g_1(x) = g_2(x)$

經過化簡,這是一條直線(linear boundary)!

\[w^T x + w_0 = 0\]

其中 $w = \Sigma^{-1}(\mu_1 - \mu_2)$

結論:相同 covariance 的 Gaussian → linear decision boundary

不同 Covariance

若 $C_1$ 和 $C_2$ 有不同的 $\Sigma_1, \Sigma_2$,decision boundary 是二次曲線(quadratic)。 這導致: - Linear Discriminant Analysis (LDA):假設相同 covariance - Quadratic Discriminant Analysis (QDA):允許不同 covariance

總結

Bayesian Decision Theory 的核心:

  1. 用 Bayes’ Rule 計算 posterior $p(C_k \mid x)$
  2. 定義 loss function $\lambda_{ik}$ 反映錯誤代價
  3. 計算 expected risk $R(\alpha_i \mid x)$
  4. 選擇 risk 最小的 action

實作方式:

  • Discriminant function $g_k(x)$
  • Decision regions 與 boundaries
  • Reject option 處理不確定性

下一步:

  • Parametric Methods:如何估計 $p(x \mid C_k)$(Gaussian, MLE, MAP)
  • Non-parametric Methods:KNN, Kernel Density Estimation
  • Discriminative Models:直接學習 $p(C_k \mid x)$(Logistic Regression, SVM)

參考資料

  • Bishop, Pattern Recognition and Machine Learning, Chapter 1.5
  • Duda, Hart & Stork, Pattern Classification, Chapter 2
  • Murphy, Machine Learning: A Probabilistic Perspective, Chapter 5