某呼上是这样解释的:
精确率(precision)和准确率(accuracy)是不一样的。实际上非常简单,精确率是针对我们预测结果而言的,它表示的是预测为正的样本中有多少是真正的正样本。那么预测为正就有两种可能了,一种就是把正类预测为正类(TP),另一种就是把负类预测为正类(FP),也就是
P=TPTP+FPP=\frac{TP}{TP+FP}P=TP+FPTP
而召回率是针对我们原来的样本而言的,它表示的是样本中的正例有多少被预测正确了。那也有两种可能,一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。
R=TPTP+FNR=\frac{TP}{TP+FN}R=TP+FNTP其实就是分母不同,一个分母是预测为正的样本数,另一个是原来样本中所有的正样本数。
或者可以这样理解:
TP: 将正类预测为正类数
FN: 将正类预测为负类数
FP: 将负类预测为正类数
TN: 将负类预测为负类数准确率(accuracy) =预测对的所有\frac{预测对的}{所有}所有预测对的=(TP+TN)(TP+FN+FP+TN)\frac{(TP+TN)}{(TP+FN+FP+TN)}(TP+FN+FP+TN)(TP+TN)
精确率(precision) =TP(TP+FP)\frac{TP}{(TP+FP)}(TP+FP)TP
召回率(recall) =TP(TP+FN)\frac{TP}{(TP+FN)}(TP+FN)TP
个人是这样理解的:
假设检测一张图片有31个行人,检测出25个,其中有2个检测错误(检测成了狗),则求召回率,精确度,准确率?
分析:31个行人检测出25个,说明有6个是误检或者漏检的,有2个检测错误,则说明有25-2=23个行人检测正确,有6-2=4个是漏检的。
召回率=正确检测的行人数目原始样本行人总数=25−231=2331=0.72\frac{正确检测的行人数目}{原始样本行人总数}=\frac{25-2}{31}=\frac{23}{31}=0.72原始样本行人总数正确检测的行人数目=3125−2=3123=0.72
精确率=检测出行人总数检测结果总数=25−225=2325=0.92\frac{检测出行人总数}{检测结果总数}=\frac{25-2}{25}=\frac{23}{25}=0.92检测结果总数检测出行人总数=2525−2=2523=0.92
准确率=所有识别正确的数目样本总数=25−231=2331=0.72\frac{所有识别正确的数目}{样本总数}=\frac{25-2}{31}=\frac{23}{31}=0.72样本总数所有识别正确的数目=3125−2=3123=0.72