1. 程式人生 > >我的人工智慧之旅——偏斜類問題

我的人工智慧之旅——偏斜類問題

偏斜類問題

正樣本數佔樣本總數的比例極小時,容易出現偏斜類問題。

例如癌症測試。樣本集合中僅有0.5%的癌症樣本,99.5%的正常樣本。通過某一假設函式後,得到1%為癌症患者,99%為正常樣本。雖然總的正確率高達99%,但假設函式並不理想。因為,我們的目的是為了,檢測出是否得癌。

這時候,如果將99%的準確率提升至99.2%,無疑是一個較大的提升,雖然,在數值上來看,只有0.2%。

因此,對於偏斜類問題,需要引入兩個概念,查準率(precision)和召回率(recall).

查準率&召回率

還是癌症檢測為例。

實際標籤(1代表得癌)

1 0

預計標籤(1代表得癌)

1 A B
0 C D

預計得癌人數中,真正得癌的人數,佔預計得癌人數的比例,為查準率。即\frac{A}{A+B}

預計得癌人數中,真正得癌的人數,佔實際得癌人數的比例,為召回率。即\frac{A}{A+C}

查準率和召回率通常是此長彼消的。

比如,我們使用邏輯迴歸,計算得癌風險,通過比對閥值p,預判是否得癌。高於p為癌症,低於p為正常。

當將p設定為0.9時,預測過於嚴謹,導致查出癌症的人數減少,準確率提高,即查準率提高。同時,由於過於嚴謹,導致部分得癌樣本未被檢出,因此召回率會比較低。

當將p設定為0.1時,結果又會反轉。查準率低,召回率高。

如何權衡查準率和召回率呢?

權衡公式F

通常採用公式F。假設查準率為m,召回率為n,那麼

F=\frac{2mn}{m+n}

F值高者,對應的模型更優秀。

例如查準率,召回率都趨近於1,則F趨近於1。

兩者趨近於0,則F趨近於0.