机器学习笔记之模型的评价指标小结

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_37536446/article/details/82316658

当我们训练好模型后,我们要对得到的模型作出评价,那我们怎么评价我们的模型呢,主要有如下指标:

一、对于回归模型,主要从下面四个指标出发:

1、explained_variance_score:
解释回归模型的方差得分,其值取值范围是[0,1],越接近于1说明自变量越能解释因变量的方差变化,值越小说明效果越差。
2、mean_absolute_error:
平均绝对误差(Mean Absolute Error,MAE),用于评估预测结果和真实数据集的接近程度,其值越小说明拟合效果越好。
3、mean_squared_error:
均方差(Mean squared error,MSE),该指标计算的是拟合数据和原始数据对应样本点的误差的平方和的均值,其值越小说明拟合效果越好。
4、r2_score:
判定系数,其含义是也是解释回归模型的方差得分,其值取值范围是[0,1],越接近于1说明自变量越能解释因变量的方差变化,值越小说明效果越差。

二、对于聚类模型(带有标签),从如下几个方面:

#模型效果评估的指标解释:
1、inertias:
inertias是K均值模型对象的属性,表示样本距离最近的聚类中心的总和,它是作为在没有真实分类标签下的非监督式评估指标,该值越小越好,值越小证明样本在类间的分布越集中,即类内的距离越小。
2、adjusted_rand_s:
调整后的兰德指数(Adjusted Rand Index) ,兰德指数通过考虑在预测和真实聚类中在相同或不同的聚类中分配的所有样本对和计数对来计算两个聚类之间的相似性度量。调整后的兰德指数通过对兰德指数的调整得到独立于样本量和类别的接近于0的值,其取值范围为[-1,1],负数代表结果不好,越接近于1越好意味着聚类结果与真实情况吻合。
3、mutual_info_s:
互信息(Mutual Information ,MI)互信息是一个随机变量中包含的关于另一个随机变量的信息量,在这里指的是相同数据的两个标签之间的相似度的量度,结果是非负值。
4、adjusted_mutual_info_s:
调整后的互信息(Adjusted Mutual Information,AMI) ,调整后的互信息是对互信息评分的调整得分。它考虑到对于具有更大数据量的聚类群,通常MI较高,而不管实际上是否有更多的信息共享,它通过调整聚类群的概率来纠正这种影响。当两个聚类集相同(即完全匹配)时,AMI返回值为1;随机分区(独立标签)平均预期AMI约为0,也可能为负数。
5、homogeneity_s:
同质化得分(Homogeneity),如果所有的聚类都只包含属于单个类的成员的数据点,则聚类结果将满足同质性。其取值范围[0,1]值越大意味着聚类结果与真实情况越吻合。
6、完整性得分(Completeness),如果作为给定类的成员的所有数据点是相同集群的元素,则聚类结果满足完整性。其取值范围[0,1],值越大意味着聚类结果与真实情况吻合。
7、v_measure_s:
它是同质化和完整性之间的谐波平均值,v=2*(完整性*均匀性)/(完整性+均匀性)。其取值范围[0,1],值越大意味着聚类结果与真实情况越吻合。
silhouette_s:
8、轮廓系数(Silhouette),它用来计算所有样本的平均轮廓系数,使用平均群内距离和每个样本的平均最近簇距离来计算,它是一种非监督式评估指标。其最高值为1,最差值为-1,0附近的值表示重叠的聚类,负值通常表示样本已被分配到错误的集群。
9、calinski_harabaz_s:该分数定义为群内离散与簇间离散的比值,它是一种非监督式评估指标

三、对于分类模型(带有标签),从如下几个方面:

1、基本指标:混淆矩阵(confusion matrix)

其主要用于比较分类结果和实例的真实信息。矩阵中主要包含四个区域(如下图),分别代表了四个TP、FP、FN、TN四个值。

其含义如下:

TP(True Positive):本来是正例,分类成正例(真正)

TN(True Negative):本来是负例,分类成负例(真负)

FP(False Positive):本来是负例,分类成正例(假正)

FN(False Negative):本来是正例,分类成负例(假负)

2、分类模型的核心指标

分类模型的核心评价指标可以通过sklearn.metrics实现,具体包含如下指标:

2.1、准确率(accuracy)

计算公式:

                                                        ACC=(TP+TN)/(TP+TN+FP+FN)

       顾名思义,其意思就是被正确分类的样本与所有样本之比,一般来说,准确率越高,分类器就越好。注:不能单纯从准确率来判断分类器的好坏,在正负样本不平衡的情况下,准确率这个评价指标有很大的缺陷。举个例子:比如在互联网广告里面,点击的数量是很少的,一般只有千分之几,如果用acc,即使全部预测成负类(不点击)acc也有 99% 以上,没有意义。因此,单纯靠准确率来评价一个算法模型是远远不够科学全面的。

2.2、精确率(Precision)

计算公式:

                                                          P=TP/(TP+FP)

其含义是模型正确判断为正与样本为正的比例。

2.3、召回率(recall)(又叫灵敏性Sensitivity)

计算公式:

                                                                   recall=TP/(TP+FN)

召回率是覆盖面的度量,度量的是预测为正的数据占实际为正例数据的比例。

2.4、F1-score

其实准确率与召回率的调和均值,计算公式如下:

\frac{2}{F1}=\frac{1}{R}+\frac{1}{P},其中P代表精确率(precision),R代表召回率(recall).

推到得出:F1=\frac{2TP}{2TP+FP+FN}

2.5、ROC曲线(二分类)

ROC曲线的绘制,主要涉及两个方面的指标,召回率与特效性(Specificity)进行刻画。其中特效性是指模型正确识别为负的样本占全部观察对象中实际为负的样本量的比值,计算公式为:Specificity=TN/(TN+FP)。得到的图形如下:

ROC曲线离对角线越近,模型的准确率越低。

2.6、AUC值

其值代表的是ROC曲线下的面积。ROC曲线一般位于y=x曲线的上方,因此AUC的取值范围[0.5,1]之间,AUC值越大,说明分类模型的效果越好。

 

猜你喜欢

转载自blog.csdn.net/weixin_37536446/article/details/82316658