準確率(Accuracy) 精確率(Precision) 召回率(Recall)和F1-Measure
阿新 • • 發佈:2018-09-27
搜索 例如 總數 文檔 measure 目標 就是 原本 pos
先驗知識
我們首先將數據的類別統一分為兩類:正類和負類。例如:一個數據集中的數據一共有3類,小學生、中學生、高中生。我們的目標是預測小學生,那麽標記為小學生的數據就是正類,標記為其他類型的數據都是負類。
數據有兩種狀態:測試集數據和預測結果數據。
對一批測試數據進行預測,結果可以分成四種。
- TP(True Positive): 原本是正類,預測結果為正類。(正確預測為正類)
- FP(False Positive): 原本是負類,預測結果為正類。(錯誤預測為正類)
- TN(True Negative): 原本是負類,預測結果為負類。(正確預測為負類)
- FN(False Negative):
準確率(Accuracy)
對於給定的測試數據集,分類器正確分類的樣本數與樣本總數之比,就稱為準確率,即(TP+TN)/(TP+TN+FP+FN)
精確率(Precision)
在預測結果為正類的數據中,有多少數據被正確預測(原本就是正類),即TP/(TP+FP)
。
對應於檢索中的查準率,檢索出相關文檔數/檢索出的文檔總數
召回率(Recall)
在測試集中為正類的數據中,有多少數據被正確預測(預測結果是正類),即TP/(TP+FN)
。
對應於檢索中的查全率。檢索出相關文檔數/文檔庫中相關文檔總數
F1-Measure
精確率和召回率的調和平均值:Accuracy * Precision * 2 / (Accuracy + Precision)
總結
理論上,數據預測的準確率和召回率越接近1,說明預測模型的效果越好。但是實際中也不一定,取決於場景更傾向於哪一種。例如我們去某搜索引擎搜索XX病,一共返回了10條結果,其中5條廣告,5條有用的相關信息,那麽準確率就是50%
,而後臺數據庫中一共就5條有用的相關信息,召回率卻是100%
,所以大家就認為這個搜索引擎也能湊合用。
區別精確率和召回率主要記住他們是分母不同就好了,召回率是對應測試集中的正類數據而言,而準確率是對應預測結果為正類的數據而言。
準確率(Accuracy) 精確率(Precision) 召回率(Recall)和F1-Measure