[數理知識]統計決策理論——貝葉斯決策與兩類錯誤率


前序

[數理知識]貝葉斯公式和最大似然估計筆記


1 決策理論與方法

1.1 基於先驗概率的決策過程

x x 爲觀察到的樣本特徵,分類空間爲 A = { a 1 , a 2 . . . , a n } A=\{a_1, a_2...,a_n\} ,其中 a i a_i 爲第 i i 個類, P ( a i ) P(a_i) 爲類 a i a_i 的發生概率。

  • x = [ x 1 , x 2 , . . . , x d ] T x=[x_1,x_2,...,x_d]^T 爲由 d d 維空間組成的特徵向量。
  • P ( a j ) > P ( a o t h e r s ) P(a_j)>P(a_{others}) 時,記決策規則 x a j x \in a_j
  • 當做出決策 x a j x \in a_j 之後,單類分類錯誤率 P ( e r r o r j ) = 1 P ( a j ) P({error}_j)=1-P(a_j) ,即 x a j x \notin a_j 的概率。

可以看到,一般決策過程僅依靠先驗概率 P ( a j ) P(a_j) ,使得對 x x 的觀察(特徵參考)並沒有對決策過程產生影響,總體錯誤率仍有降低的空間。

1.2 基於貝葉斯公式的決策過程

貝葉斯決策:在觀察到 x x 的樣本特徵後,基於貝葉斯公式,可以有效降低分類錯誤率:
P ( a i x ) = p ( x a i ) P ( a i ) p ( x ) = p ( x a i ) P ( a i ) j = 1 n p ( x a j ) P ( a j ) \begin{aligned} P(a_i|x)&=\frac{p(x|a_i)P(a_i)}{p(x)} \\ &=\frac{p(x|a_i)P(a_i)}{ \sum_{j=1}^n{ p(x|a_j)P(a_j) } }\\ \end{aligned} 其中, p ( x a i ) p(x|a_i) 類條件密度 P ( a i ) P(a_i) 先驗概率 p ( x ) p(x) 總體密度 P ( a i x ) P(a_i|x) 後驗概率

  • 因此在本質上,貝葉斯決策是指:[後驗概率]等於[先驗概率]與[類條件密度]的乘積,最後採用[總體密度]做歸一化。同時,[總體密度]由全概率公式又可以轉化爲所有類的[先驗概率]與其[類概率密度]乘積之和。

貝葉斯決策也被稱作統計決策理論

  • λ = p ( x a i ) p ( x ) \lambda = \frac{p(x|a_i)}{p(x)} ,所以基於貝葉斯決策的決策的錯誤率:
    P ( e r r o r i ) = 1 P ( a i x ) = 1 λ × P ( a i ) \begin{aligned} P({error}_i)&=1-P(a_i|x) \\ &=1-\lambda \times P(a_i) \end{aligned}

貝葉斯分類決策增益 λ \lambda 是對先驗概率 P ( a i ) P(a_i) 的增益,是基於對 x x 的觀測而得到的,其值等於類條件概率在總體密度上的歸一值,增益程度取決於類條件概率 p ( x a i ) p(x|a_i) ——當 a i a_i 越容易導致 x x 的發生時(類條件概率越大),則增益程度越高( λ \lambda 越大),第 i i 類的分類錯誤率越低。

1.3 決策錯誤率

(總體)決策錯誤率定義爲所有服從同樣分佈的獨立樣本上的單類錯誤率的期望,即:
P ( e ) = P ( e x ) × p ( x ) d x P(e)=\int P(e|x) \times p(x) dx

  • 其中, P ( e x ) P(e|x) 即爲單類分類錯誤率 P ( e r r o r i ) P({error}_i) 在連續函數上的表示法。
  • 顯然,貝葉斯決策由於增益 λ \lambda 的存在,能有效降低決策錯誤率。

2 貝葉斯決策的優化

2.1 最小錯誤率貝葉斯決策

對於每次決策,取後驗概率最大的決策,即可使得決策錯誤率最小。
P ( a i x ) = max j = 1.. n P ( a j x ) P(a_i|x)=\max_{j=1..n} {P(a_j|x)}

2.1.1 二分類問題的決策錯誤率

針對二分類問題,由於總體概率密度 p ( x ) p(x) 相同,有以下變體:
l ( x ) = p ( x a 1 ) p ( x a 2 ) λ = P ( a 2 ) P ( a 1 ) x { a 1 a 2 l(x)=\frac{p(x|a_1)}{p(x|a_2)} \gtrless \lambda=\frac{P(a_2)}{P_(a_1)}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}
l ( x ) l(x) 大於閾值 λ \lambda 時,分爲第一類,否則爲第二類。(注意:此處的 λ \lambda 與上文的"增益"概念不同)

m n , x { a 1 a 2 m\gtrless n,x \in \begin{cases} {a_1}\\ {a_2} \end{cases} Tips: 上式可用僞代碼表示爲: x = m > n a 1 : a 2 x = m>n ? a_1:a_2

2.1.2 二分類問題的決策面

l ( x ) = λ l(x)=\lambda ,即後驗概率 P ( a 1 x ) = P ( a 2 x ) P(a_1|x)=P(a_2|x) 時,使得樣本 x x 落在分界線左側( l ( x ) > λ l(x)>\lambda )時分爲第一類,否則爲第二類;該分界線被稱爲決策面分類面

  • ( , t ) -(\infin,t) 1 \real_1 ( t , ) (t,\infin) 2 \real_2 t t 爲分類面對 x x 的劃分值。

則二分類問題中的平均錯誤率爲:
P ( e ) = t P ( a 2 x ) p ( x ) d x + t P ( a 1 x ) p ( x ) d x = t p ( x a 2 ) P ( a 2 ) d x + t p ( x a 1 ) P ( a 1 ) d x = 1 p ( x a 2 ) P ( a 2 ) d x + 2 p ( x a 1 ) P ( a 1 ) d x = P ( a 2 ) 1 p ( x a 2 ) d x + P ( a 1 ) 2 p ( x a 1 ) d x = P ( a 2 ) P 2 ( e ) + P ( a 1 ) P 1 ( e ) \begin{aligned} P(e) &= \int_{-\infin}^{t}{P(a_2|x)p(x)dx}+ \int_{t}^{\infin}{P(a_1|x)p(x)dx} \\ &= \int_{-\infin}^{t}{p(x|a_2)P(a_2)dx}+ \int_{t}^{\infin}{p(x|a_1)P(a_1)dx} \\ &= \int_{\real_1}{p(x|a_2)P(a_2)dx}+ \int_{\real_2}{p(x|a_1)P(a_1)dx} \\ &= P(a_2)\int_{\real_1}{p(x|a_2)dx}+ P(a_1)\int_{\real_2}{p(x|a_1)dx} \\ &= P(a_2)P_2(e)+ P(a_1)P_1(e) \end{aligned}

  • 注意到, P 1 ( e ) = 2 p ( x a 1 ) d x P_1(e)=\int_{\real_2}{p(x|a_1)dx} ,是把第一類的 x x 決策爲第二類的錯誤率;反之亦然。
  • 兩類錯誤率對相應類別的先驗概率求取加權和即爲二分類問題中的分類錯誤率。

2.2 最小風險貝葉斯決策

λ ( β i , a j ) \lambda(\beta_i,a_j) 是指對實際爲 a j a_j 的樣本 x x 採取決策 β i \beta_i 所帶來的風險(損失)。

  • 注意到: λ ( β i , a j ) \lambda(\beta_i,a_j) ,當 i = j i=j 時,分類正確; i = ̸ j i =\not j 時,爲把屬於 i i 類分爲第 j j 類的損失。

2.2.1 決策風險及其計算

若有 n n 個類和 k k 個決策,則損失是:
R ( β i x ) = j = 1 n λ ( β i , a j ) P ( a j x ) , i = 1 , . . . k R(\beta_i|x)=\sum_{j=1}^n{\lambda(\beta_i,a_j)P(a_j|x)},i=1,...k 對於決策規則 β ( x ) = β Δ \beta(x)=\sum{\beta_{\Delta}} ,其損失的總體期望爲:
R ( β ) = R ( β Δ x ) p ( x ) d x R(\beta)=\int{R(\beta_{\Delta}|x)p(x)dx}

對於一個實際問題,求取最小風險貝葉斯決策可以按照以下步驟求取:

  1. 由貝葉斯公式計算後驗概率:
    P ( a i x ) = p ( x a i ) P ( a i ) j = 1 n p ( x a j ) P ( a j ) , i = 1 , 2 , . . . , n P(a_i|x)=\frac{p(x|a_i)P(a_i)}{ \sum_{j=1}^n{ p(x|a_j)P(a_j) } },i=1,2,...,n
  2. 計算條件風險:
    R ( β i x ) = j = 1 n λ ( β i , a j ) P ( a j x ) , i = 1 , . . . k R(\beta_i|x)=\sum_{j=1}^n{\lambda(\beta_i,a_j)P(a_j|x)},i=1,...k
  3. 優化目標:
    β = a r g min i = 1 , . . . , k R ( β i x ) \beta^* = arg\min_{i=1,...,k}R(\beta_i|x)

2.2.2 最小風險貝葉斯決策向最小錯誤率決策的轉化

考慮二分類問題,簡記 λ i j = λ ( β i , a j ) \lambda_{ij}=\lambda(\beta_i,a_j)
λ 11 P ( a 1 x ) + λ 12 P ( a 2 x ) λ 21 P ( a 1 x ) + λ 22 P ( a 2 x ) , x { a 1 a 2 \lambda_{11}P(a_1|x)+\lambda_{12}P(a_2|x) \lessgtr \lambda_{21}P(a_1|x)+\lambda_{22}P(a_2|x), x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \cdot\cdot\cdot\cdot\cdot\cdot ①

  • 注意到: λ i j \lambda_{ij} i = j i=j 時,分類正確; i = ̸ j i =\not j 時,爲把屬於 i i 類分爲第 j j 類的損失。

注意:此處的 \lessgtr 與上文中的 \gtrless 正好相反。

不失一般性,可以假設 λ 11 < λ 21 \lambda_{11}<\lambda_{21} λ 22 < λ 12 \lambda_{22}<\lambda_{12}
則①式可化爲:
( λ 11 λ 21 ) P ( a 1 x ) ( λ 22 λ 12 ) P ( a 2 x ) , x { a 1 a 2 P ( a 2 x ) P ( a 1 x ) ( λ 21 λ 11 ) ( λ 12 λ 22 ) , x { a 1 a 2 p ( x a 2 ) P ( a 2 ) p ( x a 1 ) P ( a 1 ) = P ( a 2 x ) p ( x ) P ( a 1 x ) p ( x ) ( λ 21 λ 11 ) ( λ 12 λ 22 ) , x { a 1 a 2 l ( x ) 1 = p ( x a 2 ) p ( x a 1 ) λ 1 = P ( a 1 ) P ( a 2 ) × ( λ 21 λ 11 ) ( λ 12 λ 22 ) , x { a 1 a 2 l ( x ) = p ( x a 1 ) p ( x a 2 ) λ = P ( a 2 ) P ( a 1 ) × ( λ 12 λ 22 ) ( λ 21 λ 11 ) , x { a 1 a 2 \begin{aligned} (\lambda_{11}-\lambda_{21})P(a_1|x) &\lessgtr (\lambda_{22}-\lambda_{12})P(a_2|x), x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \cdot\cdot\cdot\cdot\cdot\cdot ②\\ \frac{P(a_2|x)}{P(a_1|x)} &\lessgtr \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ \frac{p(x|a_2)P(a_2)}{p(x|a_1)P(a_1)} = \frac{P(a_2|x)p(x)}{P(a_1|x)p(x)} &\lessgtr \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ l(x)^{-1} = \frac{p(x|a_2)}{p(x|a_1)} &\lessgtr \lambda^{-1} = \frac{P(a_1)}{P(a_2)} \times \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ l(x) = \frac{p(x|a_1)}{p(x|a_2)} &\gtrless \lambda = \frac{P(a_2)}{P(a_1)} \times \frac{{(\lambda_{12}-\lambda_{22})}}{(\lambda_{21}-\lambda_{11})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \end{aligned}

  • λ 11 = λ 22 = 0 \lambda_{11}=\lambda_{22}=0 λ 12 = λ 21 = c \lambda_{12}=\lambda_{21}=c ( c c 爲正常數)時,就是最小錯誤率貝葉斯分類決策。即分類正確時無風險,分類錯誤時風險一致。

注意:此處的 \lessgtr 與上文中的 \gtrless 的方向,後者意爲 x = m > n ? a 1 : a 2 x = m>n?a_1:a_2


3 兩類錯誤率

二分類問題中,有以下決策分佈表:

決策分佈表 決策
已知 陽性 陰性
正類 (真陽)TP (假陰)FN
負類 (假陽)FP (真陰)TN
分界線 P(陽性)和N(陰性)之間的線即爲分界線;P高則N少,反之亦然。

3.1 正確分類的指標

  • 靈敏度(命中率,sensitivity) = 真陽除以所有正類:
    S n = T P T P + F N T P R S_n=\frac{TP}{TP+FN} \cdot\cdot\cdot TPR
  • 特異度(敏感率,specificity) = 真陰除以所有負類:
    S p = T N T N + F P T N R S_p=\frac{TN}{TN+FP} \cdot\cdot\cdot TNR

很容易注意到:

  • S n S_n 表示真正的陽性樣本(正類)中有多少能被正確檢測出來;靈敏度高指的是能夠正確分辨多少目標個體。
  • S n S_n 表示真正的陰性樣本(負類)中有多少能被正確檢測出來;特異度高指的是不易把非目標個體選中。
  • 顯然,鑑於二分類器的特性,二者不可能同時取得高值(若分類器認爲的P的個體數多,則N的個體數必然變少)。

3.2 錯誤分類的指標

  • 第一類分類誤差(假陽性,假報率,False Alarm, T y p e Type-Ⅰ E r r o r Error ) = 假陽除以所有負類:
    α = 1 S p = F P T N + F P F P R \begin{aligned} \alpha &= 1 - S_p \\ &= \frac{FP}{TN+FP} \end{aligned} \cdot\cdot\cdot FPR
  • 第二類分類誤差(假陰性,漏檢率,Missed Detection, T y p e Type-Ⅱ E r r o r Error ) = 假陰除以所有正類:
    β = 1 S n = F N T P + F N F N R \begin{aligned} \beta&= 1 - S_n \\ &= \frac{FN}{TP+FN} \end{aligned} \cdot\cdot\cdot FNR

很容易注意到:

  • α \alpha 表示非目標樣本中有多少會被錯誤地挑選出來。
  • β \beta 表示目標樣本中有多少會被漏檢。
  • 第一類錯誤概率與第二類正確概率之和顯然爲1(不是第一類就是第二類),這也是 α = 1 S p \alpha = 1 - S_p 的由來;反之亦然。
  • 顯然,鑑於二分類器的特性,二者不可能同時取得低值(若分類器認爲的P的個體數多,則N的個體數必然變少)。

3.3 ROC曲線

對於二分類任務,無法同時滿足正確分類的兩個指標同時達到較好的值,因此,引入ROC曲線作爲衡量指標:

ROC曲線:

  • 以第一類正確率(真陽性,靈敏度, sensitivity,TPR)爲 y y 軸;
  • 以第一類分類誤差(假陽性,假報率,False Alarm, T y p e Type-Ⅰ E r r o r Error ,FPR)爲 x x 軸;

在理解上,可以這麼理解——在 x x 儘量小的情況下,取得較高的 y y 值,是描繪ROC曲線的目標;即第一類分類時誤差小、正確率高

注意到:第一類分類誤差實際上就是 1 S p 1-S_p ,有的文獻則以(1-特異度)爲 x x 軸作爲介紹,但並不直觀。
roc

  • 這是標準ROC曲線,若將 x x 軸取爲 S p S_p 即第二類分類正確率(真陰性,特異度,TNR),則意味着需要在曲線中找到一點,滿足一類和二類分類性能同時較高,並反向得出此時的閾值。

關於ROC曲線,可以參考>數據挖掘-分類器的ROC曲線及相關指標(ROC、AUC、ACC)詳解<