precision与Recall

precision与Recall

在机器学习中,precision与recall是常用的指标,在说这两个概念之前,首先来说下精度(Precision)与准度(Accuracy)。
precision与Recall_第1张图片

Precision指精度,意味着随机误差(Random Error)小,即方差(Variance)小,描述了实际值的扰动情况。
Accuracy指准度,意味着系统误差(System Error)小,即偏差(Bias)小,描述了实际值与真实结果的偏离程度。
准确度高,意味着误差(Error)小,Error = Bias + Variance

在机器学习中,可以将预测分为四种情况

True Positive(TP):预测为正实际为正,预测对了

False Negative(FN): 预测为负实际为正,预测错了

False Positive(FP): 预测为正实际为负,预测错了

True Negative(TN): 预测为负实际为负,预测对了

例如,有60个正样本,40个负样本,系统预测了50个正样本,其中40个是预测正确的正样本;预测了50个负样本,其中30个是预测正确的负样本。TP=40,FP=10;FN=20,TN=30。

precision与Recall_第2张图片
定义:
precision与Recall_第3张图片
可得上例中:

Precision(精确度) = 40/(40+10)=80%

Recall(召回率) = 40/(40+20)=66.7%;

Accuracy(准确度) = (40+30)/(40+10+30+20) = 70%

F1 Score = 240/(240+10+20) = 72.7%

由此可见:

Precision是预测为正实际为正占预测为正的比例,Precision可以视作是模型找出来的数据的正确能力,Precision=1表示模型找一个对一个,Presicion=0.5表示模型找出2个,能对1个。

Recall是预测为正实际为正占总体正样本的比例,Recall可以视作是模型在数据集中,检测出目标类型数据的能力,即是否把想找出来的都找出来了,Recall=1表示已经把想找出来的数据全部找出来了。

Accuracy是预测为正实际为正和预测为负实际负占总样本的比例。

参考博客:https://www.jianshu.com/p/fd9b1e89f983

你可能感兴趣的:(python,tensorflow,深度学习,深度学习,python)