美文网首页
分类回归算法的评价指标

分类回归算法的评价指标

作者: STACK_ZHAO | 来源:发表于2021-03-17 21:52 被阅读0次

引言

最近在做一些机器学习算法的工作,主要是应用,基本的机器学习算法都既可以做分类,又可以回归,然后对分类与回归算法进行评估的话有一些指标,本文主要是介绍这些一指标,以及计算方法,实现方法。

分类指标

对于二分类、多分类算法而言,主要的评价指标如下:

  1. Accuracy(准确度)
    其是衡量分类结果最直接的评价指标,但是其对样本中正负样本的平衡性有要求,在比较平衡的样本中有较好的效果,如果正负样本差距较大则没什么参考性。它的定义

预测正确的样本的数量占总样本数量的比例,例如有80个样本,60个预测正确,则accuracy是0.75.在不平衡的样本里面,正例远大于负例子,所以都预测成正例子,准确率也很高,但是是没有参考意义的。
其实现在sklearn的metrics中有

from sklearn.metrics import accuracy_score
 accuracy_score(y_true, y_pred)
  1. Precision(精确度)
    在介绍这个之前,先引入混肴矩阵的定义,混肴矩阵主要就是用来定义这些评价指标的。混淆矩阵如下图所示:


    混淆矩阵

    如上图所示,precision的定义维

p=TP/(TP+FP), 即预测正确的正例占所有预测为正例的样本的比例
sklearn中的函数为

from sklearn.metrics import precision_score
precision_score(y_true, y_pred, average='macro')#'macro'的方法是计算每个标签的指标,并找到它们的未加权平均值
  1. recall(召回率)
    召回率的定义如下所示

R=TP/(TP+FN), 即预测正确,占所有正例比例

其实现如下:

from sklearn.metrics import recall_score
recall_score(y_true, y_pred, average='micro')
  1. F1 score
    F1 score 可以被解释为精度和召回率的加权平均值,其中F1得分在最佳值为1,最差值为0。精度和召回对F1得分的相对贡献是相等的。其公式如下

F1 = 2 * (precision * recall) / (precision + recall), precision与recall的定义如上所示, F1 score是一个综合的指标,可以用来评估模型的好坏
其在sklearn中的实现代码如下

from sklearn.metrics import f1_score
f1_score(y_true, y_pred, average='micro')

回归算法的评估标准

回归算法预测主要是连续的值,故回归算法的评估标准常用的有三种,但是基本都是差值分布的。

  1. 平均绝对误差(MAE)


    MAE.png

其中y是真实的值,有y_hat是预测出来的值。sklearn中的实现如下:

from sklearn.metrics import mean_absolute_error
mean_absolute_error(y_true, y_pred)
  1. MSE (均方误差)
    其跟MAE基本一致,不过其计算的时候,在算|y_i-y_hat|的时候,加一个平方,即可
    实现如下:
 from sklearn.metrics import mean_squared_error
 y_true = [3, -0.5, 2, 7]
 y_pred = [2.5, 0.0, 2, 8]
mean_squared_error(y_true, y_pred)
  1. R方
    R方主要是用来判断模型的拟合优度,越接近1,则说明效果越好,负值代表模型效果极差,无参考价值,主要的公式如下所示:
R方.png

其中y- 代表的是均值。
在sklearn中的实现为:

 from sklearn.metrics import r2_score
 y_true = [3, -0.5, 2, 7]
 y_pred = [2.5, 0.0, 2, 8]
 r2_score(y_true, y_pred)
  1. 相关系数r
    主要是用来判断预测的样本值得分布与真实得样本值分布之间得相关性。公式如下所示
相关系数r得公式

带*得y表示预测得y得均值
sklearn中得实现如下所示

from scipy.stats import pearsonr
pccs = pearsonr(y_true, y_pre)

这种方法在预测年龄等连续得变量,相关性比较有更好得可观度

  1. KL散度
    该指标主要是用来衡量预测得值与真实得值之间分布得相似性,其主要基于熵得原理。越小表示越相关,主要公式如下:


    KL散度

    其主要在神经网络或者机器学习得算法中作为损失函数,经常与MAE配合使用。python中得实现如下:

import scipy.stats
KL = scipy.stats.entropy(x, y) 

相关文章

  • 回归评价指标MSE、RMSE、MAE、R-Squared

    前言 分类问题的评价指标是准确率,那么回归算法的评价指标就是MSE,RMSE,MAE、R-Squared。下面一一...

  • 分类回归算法的评价指标

    引言 最近在做一些机器学习算法的工作,主要是应用,基本的机器学习算法都既可以做分类,又可以回归,然后对分类与回归算...

  • 数据挖掘

    预测指标 分类常见的评估指标:对于二类分类器/分类算法,评价指标主要有accuracy, [Precision,R...

  • 评价-分类算法的评价指标

    二元分类评价 混淆矩阵 对于二元分类,通常可以输出混淆矩阵,看预测的情况,并从中总结出一些指标,给予评价。混淆矩阵...

  • 模型评价指标 - 分类和回归任务

      根据模型处理的任务不同,评价标准也不同,分类任务和回归任务的评价指标如下: 分类:accuracy、误分类率、...

  • 分类和回归的评价指标

    https://blog.csdn.net/qq_36962569/article/details/7988106...

  • 【机器学习基础】

    1、常用分类算法的优缺点? 2、评价指标 1)正确率(accuracy) 正确率是我们最常见的评价指标,accur...

  • day05-二分类问题(二)

    二分类评价指标 准确率: 缺点:在数据类别不平衡的时候使用这个评价指标不能客观评价算法的优劣。混淆矩阵首先定义:T...

  • 机器学习中的评估指标

    机器学习中需要使用模型,优化,评价,其中评价指标也是用来优化的一环,这里总结一下常用的评估指标,主要分为分类和回归...

  • 逻辑回归

    逻辑回归是一种解决分类问题的机器学习算法。 逻辑回归可以视为回归算法也可以视为分类算法,但通常用于分类,#####...

网友评论

      本文标题:分类回归算法的评价指标

      本文链接:https://www.haomeiwen.com/subject/hfaecltx.html