模型除了从数据划分的角度来评估,我上一篇文章介绍了数据集划分的角度:
【机器学习300问】24、模型评估的常见方法有哪些?https://blog.csdn.net/qq_39780701/article/details/136334526
还可以从一些指标的角度来评估,这篇文章就带大家从两个最经典的任务场景介绍。
一、回归问题
(1)MSE(Mean Squared Error,均方误差)
MSE衡量的是预测值与真实值之间差别的平方平均数。公式为:
其中,是真实的观测值,是模型预测的值,n是样本数量。MSE对误差进行平方处理,因此它更关注大误差,且其单位与目标变量相同但是平方。
(2)RMSE (Root Mean Squared Error,均方根误差)
RMSE是MSE的平方根,用于将MSE的结果转换回原始尺度,与y变量的量纲相同,这样结果更容易解读。公式为:
【机器学习300问】43、回归模型预测效果明明很好,为什么均方根误差很大?https://blog.csdn.net/qq_39780701/article/details/136924707
二、分类问题
(1)Accuracy (准确率)
准确率是最直观的性能度量之一,计算的是分类正确的样本数占总样本数的比例。然而,在类别不平衡的情况下,准确率可能不够全面。公式为:
TP是真正例(实际正类被正确预测),TN是真负例(实际负类被正确预测),FP是假正例(实际负类被错误预测为正类),FN是假负例(实际正类被错误预测为负类)。
上面这张表叫做混淆矩阵,关于混淆矩阵的更完整介绍,放在下面这个链接里面了:
【机器学习300问】102、什么是混淆矩阵?https://blog.csdn.net/qq_39780701/article/details/139269824关于准确率的更多介绍,我写了一篇叫做“准确率的局限性”的文章,通过医疗诊断和电商推荐的例子便于大家的理解,下面是跳转链接:
【机器学习300问】30、准确率的局限性在哪里?https://blog.csdn.net/qq_39780701/article/details/136575189
(2)Precision (精确率)
精确率是指模型预测为正类的样本中真正是正类的比例,即预测正确的正例占所有预测为正例的比例。公式为:
(3)Recall (召回率)
召回率表示模型识别出所有正类的能力,即实际正类中被正确预测的比例。
关于精确率和召回率需要通过很多例子来进一步了解,为此我专门写了另一篇文章来详细深入介绍这两个评估指标,下面是文章链接,希望对你有帮助:
【机器学习300问】31、不平衡数据集如何进行机器学习?https://blog.csdn.net/qq_39780701/article/details/136605808
(4)ROC曲线(Receiver Operating Characteristic Curve)
ROC曲线是基于不同的阈值下,模型的真正例率(True Positive Rate, TPR)和假正例率(False Positive Rate, FPR)的关系绘制的曲线。曲线下面积(AUC-ROC)可以用来作为整体评价分类器性能的一个综合指标,AUC越大,说明分类器在各个阈值下的表现越好。
【机器学习300问】46、什么是ROC曲线?https://blog.csdn.net/qq_39780701/article/details/136605808
(5)F1分数(F1-Score)
F1分数(F1-Score)是二分类或多分类问题中一个常用的性能度量指标,它结合了精确率(Precision)和召回率(Recall)两个评价指标,是精确率与召回率的调和平均值,衡量的是精确率和召回率的平衡。在二分类问题中,F1分数的计算公式如下: