作者 | Alvira Swalin

编译 | VK

来源 | Medium

第一部分主要讨论回归度量

在后现代主义的世界里,相对主义以各种各样的形式,一直是最受欢迎和最受诟病的哲学学说之一。相对主义认为,没有普遍和客观的真理,而是每个观点都有自己的真理。

在这篇文章中,我将根据目标和我们试图解决的问题来讨论每个错误度量的用处。当有人告诉你“美国是最好的国家”时,你应该问的第一个问题是,这种说法是基于什么。我们是根据每个国家的经济状况,还是根据它们的卫生设施等来判断它们?

类似地,每个机器学习模型都试图使用不同的数据集来解决目标不同的问题,因此,在选择度量标准之前了解背景是很重要的。


最常用的度量

在第一篇博客中,我们将只讨论回归中的度量。

回归度量

大多数博客都关注分类指标,比如精确性、召回率、AUC等。为了改变这一点,我想探索各种指标,包括回归中使用的指标。MAE和RMSE是连续变量最常用的两种度量方法。

RMSE(均方根误差)

它表示预测值和观测值之间差异的样本标准差(称为残差)。从数学上讲,它是使用以下公式计算的:

MAE

MAE是预测值和观测值之间绝对差的平均值。MAE是一个线性分数,这意味着所有的个体差异在平均值中的权重相等。例如,10和0之间的差是5和0之间的差的两倍。然而,RMSE的情况并非如此,我们将进一步详细讨论。从数学上讲,MAE是使用以下公式计算的:

你应该选哪一个?为什么?

好吧,理解和解释MAE是很容易的,因为它直接取偏移量的平均值。与此对比,RMSE比MAE惩罚更高的差异。

让我们用两个例子来理解上面的陈述:

案例1:实际值=[2,4,6,8],预测值=[4,6,8,10]

案例2:实际值=[2,4,6,8],预测值=[4,6,8,12]

「案例1的MAE=2,案例1的RMSE=2」

「病例2的MAE=2.5,病例2的RMSE=2.65」

从上面的例子中,我们可以看到RMSE比MAE对最后一个值预测的惩罚更重。通常,RMSE的惩罚高于或等于MAE。它等于MAE的唯一情况是当所有的差异都等于或为零(在情况1中,所有观测值的实际和预测之间的差异都为2)。

然而,即使在更为复杂和偏向于更高的偏差之后,RMSE仍然是许多模型的默认度量,因为用RMSE定义的损失函数是光滑可微的,并且更容易执行数学运算。

虽然这听起来不太令人愉快,但这是一个非常重要的原因,使它非常受欢迎。我将试着用数学的方法解释上面的逻辑。

让我们在一个变量中建立一个简单的线性模型:y=mx+b

在这里,我们试图找到“m”和“b”,我们有数据(x,y)。

如果我们用RMSE定义损失函数(J):那么我们可以很容易得到m和b的梯度(使用梯度下降的工作原理)

上述方程的求解比较简单,但是却不适用于MAE。

然而,如果你只想从解释的角度比较两个模型,那么我认为MAE是一个更好的选择。需要注意的是,RMSE和MAE的单位都与y值相同,因为RMSE的公式进行了开根操作。RMSE和MAE的范围是从0到无穷大。

「注意」:MAE和RMSE之间的一个重要区别是,最小化一组数字上的平方误差会得到平均值,最小化绝对误差会得到中值。这就是为什么MAE对异常值是健壮的,而RMSE不是。

R方(R^2)与调整R方

R方与调整R方通常用于解释目的,并解释所选自变量如何很好地解释因变量的可变性。

从数学上讲,R方由以下公式给出:

分子是MSE(残差平方的平均值),分母是Y值的方差。MSE越高,R方越小,模型越差。

调整R方

与R方一样,调整R方还显示了曲线或直线的拟合程度,但会根据模型中项的变化进行调整。公式如下:

其中n是样本总数,k是变量数。调整R方始终小于或等于R方

为什么要选择调整R方而不是R方

常规的R方存在一些问题,可以通过调整R方来解决。调整R方将考虑模型中附加项所增加的边际改进。所以如果你加上有用的数据,它会增加,如果你加上不那么有用的变量,它会减少。

然而,R方会随着数据的增加而增加,但是模型并没有任何改进。用一个例子来理解这一点会更容易。

这里,情况1是一个简单的情况,我们有5个(x,y)的观测值。在案例2中,我们还有一个变量,它是变量1的两倍(与var 1完全相关)。在案例3中,我们在var2中产生了一个轻微的扰动,使得它不再与var1完全相关。

因此,如果我们为每一种情况拟合简单的普通最小二乘(OLS)模型,那么在逻辑上,我们就不会为情况2和情况3提供关于情况1的任何额外或有用的信息。因此,我们的度量值在这些模型上不应该增加。对于情况2和情况3,R方会增加或与之前相等。调整R方可以解决这个问题,在情况2和情况3调整R方会减少。让我们给这些变量(x,y)一些数字,看看Python中得到的结果。

注:模型1和模型2的预测值都是相同的,因此,R方也将是相同的,因为它只取决于预测值和实际值。

从上表中,我们可以看到,尽管我们没有在案例1和案例2中添加任何附加信息,但R方仍在增加,而调整R方显示出正确的趋势(对更多变量的模型2进行惩罚)

调整R方与RMSE的比较

对于上一个示例,我们将看到案例1和案例2的RMSE与R方类似。在这种情况下,调整后的R方比RMSE做得更好,RMSE的范围仅限于比较预测值和实际值。

此外,RMSE的绝对值实际上并不能说明模型有多糟糕。它只能用于两个模型之间的比较,而调整R方很容易做到这一点。例如,如果一个模型的调整R方为0.05,那么它肯定很差。

然而,如果你只关心预测的准确性,那么RMSE是最好的。它计算简单,易于微分,是大多数模型的默认度量。

「常见的误解是」:我经常在网上看到R的范围在0到1之间,这实际上不是真的。R方的最大值为1,但最小值可以为负无穷大。考虑这样一种情况,即模型预测所有观测值的高度负值,即使y的实际值为正值。在这种情况下,R方将小于0。这是极不可能的情况,但这种可能性仍然存在。

NLP中的一个度量

如果你对NLP感兴趣,这里有一个有趣的度量。

BLEU

它主要用于衡量机器翻译相对于人工翻译的质量。它使用一种改进的精度度量形式。

计算BLEU分数的步骤:

  1. 将句子转换成单元、双元、三元和四元(unigrams, bigrams, trigrams, and 4-grams)

  2. 对于大小为1到4的n-gram计算精度

  3. 取所有这些精度值的加权平均值的指数

  4. 乘以简短的惩罚(稍后解释)

这里BP是简洁性惩罚,r和c是参考词和候选词的个数,w是权重,P是精度值

例子:

参考翻译:The cat is sitting on the mat

机器翻译1:On the mat is a cat

机器翻译2:There is cat sitting cat

让我们把以上两个译文计算BLEU分数进行比较。

我用的是nltk.translate.bleu

最终结果:BLEU(MT1)=0.454,BLEU(MT2)=0.59

为什么我们要加上简洁性惩罚?

简洁性惩罚惩罚候选短于他们的参考翻译。例如,如果候选是“The cat”,那么它对于unigram和bigram将具有高精度,因为这两个词在参考翻译中也是以相同的顺序出现。然而,长度太短,并没有真正反映出实际意义。

有了这个简短性惩罚,高分的候选译文现在必须在长度、单词和单词顺序方面与参考匹配。

原文链接:https://medium.com/usf-msds/choosing-the-right-metric-for-machine-learning-models-part-1-a99d7d7414e4

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑获取一折本站知识星球优惠券,复制链接直接打开:https://t.zsxq.com/yFQV7am本站qq群1003271085。加入微信群请扫码进群:

【机器学习基础】机器学习模型的度量选择(上)相关推荐

  1. 周志华 《机器学习初步》模型评估与选择

    周志华 <机器学习初步>模型评估与选择 Datawhale2022年12月组队学习 ✌ 文章目录 周志华 <机器学习初步>模型评估与选择 一.泛化能力 二.过拟合和欠拟合 泛化 ...

  2. 机器学习基础:模型评估(下)

    目录 1. 引言 2. 进一步评估 3. 机器学习中的偏差和方差种类 3.1 过拟合 3.2 欠拟合 3.3 训练曲线观察泛化性 3.4 模型偏差和方差(bias and variance) 3.4. ...

  3. 机器学习(学习笔记)二 模型评估与选择(上)

    模型评估与选择(上) 先画思维导图 一.经验误差与过拟合 误差:模型对样本的预测结果和样本的真实输出的差异称为 误差.给定一个数据集,将其分割为训练集和测试集 训练误差 (Training Error ...

  4. 机器学习基础:模型评估(上)

    目录 1. 什么是一个优秀的分类器 2. 选择测试数据集 2.1 切分训练测试集 2.1.1 简单随机划分(random handout) 2.1.2 留一法(leave-one-out) 2.1.3 ...

  5. 机器学习笔记(二)模型评估与选择

    2.模型评估与选择 2.1经验误差和过拟合 不同学习算法及其不同参数产生的不同模型,涉及到模型选择的问题,关系到两个指标性,就是经验误差和过拟合. 1)经验误差 错误率(errorrate):分类错误 ...

  6. 【读书笔记】周志华 机器学习 第二章 模型评估和选择

    第二章 模型评估和选择 1 欠拟合和过拟合 偏差和方差 1.1 欠拟合和过拟合 1.2 偏差和方差 2 评估方法 性能度量 2.1 评估方法 2.1.1 留出法 2.2.2 交叉验证法 2.2.3 自 ...

  7. 【机器学习基础】机器学习模型的度量选择(下)

    作者 | Alvira Swalin 编译 | VK 来源 | Medium 本系列的第二部分主要讨论分类度量 在第一篇中,我们讨论了回归中使用的一些重要指标.它们的优缺点以及用例.这一部分将集中讨论 ...

  8. 机器学习基础 HMM模型(隐马尔科夫)

    文章目录 一.马尔科夫链 1. 简介 2. 经典举例 3. 小结 二.HMM简介 1. 简单案例 2. 三个基本问题 三.HMM模型基础 1. 什么样的问题需要HMM模型 2. HMM模型的定义 3. ...

  9. 机器学习基础之模型篇-----二元分类和多元分类

    机器学习是一个比较广阔的知识领域,涉及到很多数学统计和计算机的相关知识. 要想深入了解,需要系统学习和大量的时间. 但是如果我们很清楚地知道机器学习如果用一句话来概括就是:通过大量的训练,使得机器把输 ...

最新文章

  1. latex如何清除表格table的浮动位置(表格自动上移)
  2. Intel 平台编程总结----缓存的优化
  3. 自动化办公之excel教程(1):工作薄,工作表,单元格基本操作
  4. 数据结构--线性表顺序存储(顺序表)
  5. Windows环境下Dapr入门
  6. JDK语言功能预览:切换表达式
  7. php 避免xss_PHP防止XSS注入
  8. java数据结构 - 单链表(腾讯面试题实现单链表反转)
  9. 基于android公交车线路查询论文文献,本科毕业论文---基于android的手机公交线路查询系统.doc...
  10. 【IntelliJ IDEA】添加一个新的tomcat,tomcat启动无法访问欢迎页面,空白页,404
  11. 判断字符串中是否包含中文
  12. spring boot配置dubbo(properties)
  13. uint8_t / uint16_t / uint32_t /uint64_t 的简单介绍
  14. 守护线程C语言windows,C言语如何利用子线程刷新主线程
  15. 类型事务修改 mysql 表类型 实际测试可执行
  16. Atitit.attilax软件研发与项目管理之道
  17. oracle定时任务定时无效
  18. 北京邮电大学计算机科学与技术专业研究生,北京邮电大学计算机科学与技术专业...
  19. 安全体系建设-基础安全
  20. windows下安装禅道

热门文章

  1. 利用cross join 构造大量测试数据
  2. 转发:CentOS下tar压缩排除某个文件夹或文件及解压
  3. python技巧 使用值来排序一个字典
  4. eclipse提交Git时忽略文件
  5. Struts2之Ognl
  6. Lucene 简单手记
  7. c语言 异或_C语言经典例题来袭!5大方法告诉你答案
  8. 科研人必备的学术导航,不看后悔!
  9. python getopts_getopts用法
  10. 机器人学习--Mobile robot国内外优秀实验室