机器学习中的损失函数是衡量你的ML模型的预测结果准确性的一个指标。

损失函数将以两项作为输入:模型的输出值和标准答案的期望值。损失函数的输出称为损失,它是衡量我们的模型在预测结果方面做得有多好。

损失的高值意味着我们的模型性能很差。较低的损耗值意味着我们的模型表现非常好。

选择适当的损失函数对于训练精确模型至关重要。某些损失函数将具有某些特定的属性,并帮助您的模型以特定方式学习。有些人可能会更多地关注异常值,其他人则更多。

在本文中,我们将介绍机器学习回归的3种最常见的损失函数。我将解释它们的工作原理、它们的优点和缺点,以及在训练回归模型时如何最有效地应用它们。

均方误差(MSE)

均方误差(MSE)可能是最简单和最常见的损失函数,通常在入门机器学习课程中讲授。要计算MSE,您可以获取模型预测与标准答案之间的差异,对其求平方,并在整个数据集中对其进行平均。

MSE永远不会是负面的,因为我们总是把误差进行平方。 MSE由以下等式正式定义:

其中N是我们测试的样本数。代码很简单,我们可以用简单的numpy来编写它,并使用matplotlib绘制它:

MSE损失函数

优点:MSE非常适合确保我们训练有素的模型没有具有巨大错误的离群值预测,因为MSE会因为函数的平方部分而对这些错误施加更大的权重。

缺点:如果我们的模型做出一个非常糟糕的预测,函数的平方部分会放大误差。然而在许多实际情况中,我们并不关心这些异常值,而是针对更多全面的模型,这些模型在大多数情况下都表现得足够好。

平均绝对误差(MAE)

平均绝对误差(MAE)在定义上与MSE略有不同,但有趣地提供了几乎完全相反的属性!要计算MAE,您可以获取模型预测与基础事实之间的差异,将绝对值应用于该差异,然后在整个数据集中对其进行平均。

与MSE一样,MAE永远不会消极,因为在这种情况下,我们总是采用误差的绝对值。 MAE由以下等式正式定义:

再一次,我们的代码在Python中非常简单!我们可以用简单的numpy编写它并使用matplotlib绘制它。这次我们将在MSE顶部用红色绘制它,看看它们之间的比较。

MAE(红色)和MSE(蓝色)损失函数

优势:MAE的优点在于其优势直接涵盖了MSE的劣势。由于我们采用绝对值,所有误差将将在相同的线性尺度上加权。因此,与MSE不同,我们不会过分强调我们的异常值,我们的损失函数提供了一个通用的,甚至是衡量我们模型执行情况的方法。

缺点:如果我们确实关心模型的异常预测,那么MAE将不会那么有效。来自异常值的大误差最终将与较低误差的权重完全相同。这可能会导致我们的模型在大多数情况下变得很好,但偶尔也会做一些非常糟糕的预测。

Huber损失

现在我们知道MSE非常适合学习异常值,而MAE非常适合忽略它们。但是中间的呢?

考虑一个示例,其中我们有一个包含100个值的数据集,我们希望我们的模型能够被训练来预测。在所有数据中,25%的预期值为5,而其他75%的期望值为10。

MSE的损失并不能解决问题,因为我们并没有真正的“异常值”; 25%绝不是一个小比例。另一方面,我们不一定要用MAE将25%的权重定得太低。那些5的值不接近中位数(10 - 因为75%的点的值为10),但它们也不是真正的异常值。

我们的解决方案?

Huber损失函数。

通过平衡MSE和MAE,Huber 损失提供了两全其美的优势。我们可以使用以下分段函数来定义它:

这个等式基本上说的是:对于小于delta的损失值,使用MSE;如果损失值大于delta,请使用MAE。这有效地结合了两个损失函数的两个方面的优点!

使用MAE获得更大的损失值可以减轻我们对异常值上增加的权重,这样我们仍然可以得到一个全面的模型。同时,我们利用最小二乘熵对较小的损耗值保持二次函数在中心附近。

只要损失值大于1,就会产生放大损耗值的效果。一旦这些数据点的损失低于1,则二次函数就会对对它们进行加权,以将训练集中在较高误差的数据点上。

查看下面的Huber 损失函数代码。我们还绘制了MSE和MAE旁边的Huber Loss,以比较差异。

MAE(红色),MSE(蓝色)和Huber(绿色)损失函数

请注意我们如何能够在MSE和MAE之间获得Huber损失。

两全其美!

当你觉得你需要在给予异常值一些权重之间取得平衡时,你会想要使用Huber损失,但不要太多。对于异常值对您非常重要的情况,请使用MSE!对于您根本不关心异常值的情况,请使用MAE!

https://www.toutiao.com/a6693370773899313677/

了解机器学习回归的3种最常见的损失函数相关推荐

  1. 机器学习中常见的损失函数_机器学习中最常见的损失函数

    机器学习中常见的损失函数 现实世界中的DS (DS IN THE REAL WORLD) In mathematical optimization and decision theory, a los ...

  2. 【干货】机器学习中的五种回归模型及其优缺点

    http://blog.itpub.net/31542119/viewspace-2199810/ 线性和逻辑斯蒂(Logistic)回归通常是是机器学习学习者的入门算法,因为它们易于使用和可解释性. ...

  3. 机器学习入门之7种经典回归模型

    介绍 线性和逻辑回归通常是学习数据科学时接触的第一个算法,由于它们非常流行,许多分析师甚至认为它们是唯一的回归技术. 事实上,存在多种不同形式的回归模型,每种形式都有自身的特点和特定的应用场景.在本文 ...

  4. python的分类算法有哪些_Python8种最常见火爆的机器学习算法

    原标题:Python8种最常见火爆的机器学习算法 毋庸置疑,近来机器学习人气日益高涨,逐渐在流行词榜单上占据一席之地.机器学习算法繁多,到底该选择哪一种处理相关数据是困扰很多学习者的问题.本文将以一种 ...

  5. 机器学习-常见的损失函数比较

    在机器学习每一个算法中都会有一个目标函数,算法的求解过程是通过对这个目标函数优化的过程.在分类或者回归问题中,通常使用损失函数(代价函数)作为其目标函数.损失函数用来评价模型的预测值和真实值不一样的程 ...

  6. 机器学习之常见的损失函数(loss function)

    解决一个机器学习问题主要有两部分:数据和算法.而算法又有三个部分组成:假设函数.损失函数.算法优化.我们一般在看算法书或者视频教学时,更多的是去推算或者说参数估计出其假设函数,而往往不太注重损失函数, ...

  7. 机器学习回归模型精度_机器学习模型实施精度召回和概率截止。

    机器学习回归模型精度 Congratulations on completing your Machine Learning (ML) pipeline! In the second part of ...

  8. 大数据 机器学习 分类算法_13种用于数据科学的机器学习分类算法及其代码

    大数据 机器学习 分类算法 The roundup of most common classification algorithms along with their python and r cod ...

  9. 机器学习/深度学习几种典型学习范式|主动学习

    机器学习/深度学习几种典型学习范式|主动学习 主动学习(Active Learning,AL): Introduction 主动学习的例子 应用场景 成员查询合成 流式选择抽样 基于池的主动学习 查询 ...

最新文章

  1. 深入Android 【一】 —— 序及开篇
  2. MySQL模拟:线上误update的恢复
  3. [YTU]_2476(E3 继承了,成员函数却不可访问)
  4. using可以用于释放操作,相当于Dispose()
  5. CentOS7启用SELinux和Firewall修改ssh端口号
  6. FCKeditor在ASP.NET环境中配置使用
  7. java编程思想视频教程 零基础如何学Java
  8. 几种常用的电机控制法
  9. [研究笔记] Travis CI 使用介绍
  10. masm汇编器以及汇编流程
  11. python爬取下厨房本周受欢迎菜谱
  12. 一文了解公有云、私有云、混合云、边缘云、专有云、分布式云
  13. 七夕快到了,用python给女朋友画张素描吧
  14. 创业之前你需要了解的九个真相
  15. ffmpeg硬件解码器的使用
  16. 物联网发展真正的瓶颈是什么?
  17. python爬虫破解百度文库_用Python爬取百度文库0下载券的免费文档详细步骤,附可执行软件...
  18. 忙里偷闲 - 应该较真吗
  19. python指纹识别_python安全编程之指纹识别
  20. 算法竞赛入门经典的java实现之QWERTYU-Demo23.java

热门文章

  1. 散布矩阵与相关系数的实践应用
  2. keras.utils.to_categorical用法
  3. subplot subplots绘制子图
  4. Class.forName(xxx.xx.xx) 解耦
  5. 一个小框架的形成原理(一)jdom
  6. JTable是Swing编程中很常用的控件
  7. 《因果学习周刊》第6期:因果推荐系统
  8. 图灵访谈系列之八:对话归隐的大师——Donald E. Knuth(高德纳)
  9. 我理解的分类、目标检测、目标识别、目标定位、目标跟踪
  10. 瑞士军刀——Pandoc