F1 P R的理解


F1 P R的理解

precision:查准率

recall:查全率,召回率

查准率,基於預測的結果,預測為正的樣本中 由多少真正的正樣本。即,真正為正的越多越好。

查全率,針對原來的正樣本,有多少正樣本被預測正確了。

\[Precision = \frac{True \ positives}{predictied \ as \ positives} = \frac{TP}{TP+FP} \]

\[Recall = \frac{True \ positives}{actual \ positives} = \frac{TP}{TP+FN} \]

舉個例子:

我們用一個模型去判斷一段時間的作弊流量,假設該段時間的流量是100個,作弊的是25個,沒有作弊的是75個,假設這里正樣本為沒有作弊的流量。

然后我們用某種模型去預測,結果是70個沒有作弊的,但是經檢查,我們把其中69個正樣本預測為沒有作弊,把1個負樣本預測為沒有作弊。

那么,

P = 69/70, 基於預測的結果,共有70個正樣本;這70個樣本中,真正的正樣本由69個。

R = 69/75, 已知正樣本有75個,有69個正樣本被正確的預測到了。

所以,

查准率,在於 "准",就是基於預測的結果中,真正的正樣本越多越好。

查全率,在於"全",就是把所有的真正的正樣本預測出來的越多越好,雖然有些負樣本也有可能被預測為正樣本,那也不管,重點在於"全"。

我們在預測的時候,總是希望檢索結果precision越高越好,同時recall也越高越好,但事實上這兩者在某種情況下是矛盾的。例如,我只取一個樣本,且是真正的正樣本,那么P就是100%,但是R只有\(\frac{1}{70}\)就很低了;而如果取100個樣本,那么R顯然是100%,但是P只有75%。

這樣就引出了 F(k),

\[F(k) = \frac{(1+k)*P*R}{(k*k)*P+R} \]

k>0 度量了 查全率 對 查准率 的相對重要性。k>1查全率有更大影響;k<1查准率有更大影響。

通常我們看到的F1就是F(1),在binary classification問題中,F1值是P和R的調和平均數,取值范圍為[0,1],值為1表示perfect precision and recall,worst at 0。

\[F(1) = \frac{2*P*R}{P+R} \]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM