文章转自知乎作者wdmad,更多内容建议阅读原文:https://zhuanlan.zhihu.com/p/36431289

本博文属于阅读笔记,融合了个人观点。

1. 损失函数

损失函数的一般表示为 L(y,f(x)),用以衡量真实值 y和预测值 f(x)之间不一致的程度,一般越小越好。为了便于不同损失函数的比较,常将其表示为单变量的函数,在回归问题中这个变量为 [y-f(x)] :残差表示,在分类问题中则为 yf(x) : 趋势一致

2. 回归问题的损失函数

回归问题中 y 和 f(x)皆为实数 R,因此用残差 [y-f(x)]来度量二者的不一致程度。残差 (的绝对值) 越大,则损失函数越大,学习出来的模型效果就越差(这里不考虑正则化问题)。

常见的回归损失函数:

  • 平方损失 (squared loss) :

  • 绝对值 (absolute loss) :

  • Huber损失 (huber loss) :

规律总结:

  1. 平方损失最常用,其缺点是对于异常点会施以较大的惩罚,因而不够robust。
  2. 绝对损失具有抵抗异常点干扰的特性,但是在y-f(x)处不连续可导,难以优化
  3. Huber损失是对二者的综合,当 |y-f(x)|小于一个事先指定的值 δ时,变为平方损失;大于δ时,则变成类似于绝对值损失,因此也是比较robust的损失函数

3. 分类问题的损失函数

yf(x)被称为margin,其作用类似于回归问题中的y-f(x)。

二分类问题中的分类规则通常为:

可以看到如果 yf(x)>0,则样本分类正确, yf(x)<0则分类错误,而相应的分类决策边界即为 f(x)=0。所以最小化损失函数也可以看作是最大化margin的过程,任何合格的分类损失函数都应该对margin<0的样本施以较大的惩罚。

  • 0-1损失 (zero-one loss):

0-1损失对每个错分类点都施以相同的惩罚,这样那些“错的离谱“(即 margin→∞) 的点并不会收到大的关注,这在直觉上不是很合适。另外0-1损失不连续、非凸,优化困难,因而常使用其他的代理损失函数进行优化。

  • Logistic loss:

ogistic Loss为Logistic Regression中使用的损失函数。

  • Hinge loss:

hinge loss为svm中使用的损失函数,hinge loss使得 yf(x)>1的样本损失皆为0,由此带来了稀疏解,使得svm仅通过少量的支持向量就能确定最终超平面。

推导过程:

可以看到 svm 这个形式的损失函数是自带参数w 的 L2正则的,而相比之下Logistic Regression的损失函数则没有显式的正则化项,需要另外添加。

  • 指数损失(Exponential loss)

exponential loss为AdaBoost中使用的损失函数,使用exponential loss能比较方便地利用加法模型推导出AdaBoost算法 。然而其和squared loss一样,对异常点敏感,不够robust

  • modified Huber loss

modified huber loss结合了hinge loss和logistic loss的优点,既能在 yf(x)>1时产生稀疏解提高训练效率,又能进行概率估计。另外其对于  yf(x)<-1样本的惩罚以线性增加,这意味着受异常点的干扰较少,比较robust。

常见回归和分类损失函数比较相关推荐

  1. 【机器学习基础】用Python画出几种常见机器学习二分类损失函数

    在二分类的监督学习中,支持向量机.逻辑斯谛回归与最大熵模型.提升方法各自使用合页损失函数.逻辑斯谛损失函数.指数损失函数,分别写为: 这 3 种损失函数都是 0-1 损失函数的上界,具有相似的形状.( ...

  2. 【深度学习】——分类损失函数、回归损失函数、交叉熵损失函数、均方差损失函数、损失函数曲线、

    目录 代码 回归问题的损失函数 分类问题的损失函数 1. 0-1损失 (zero-one loss) 2.Logistic loss 3.Hinge loss 4.指数损失(Exponential l ...

  3. 机器学习核心总结-概念、线性回归、损失函数、泛化及数据集划分、特征工程、逻辑回归和分类

    文章目录 一.机器学习入门概念 一.基本概念 机器学习:让机器进行学习和决策 机器学习分类:无监督学习.监督学习.强化学习 深度学习:模拟人脑,自动提取输入特征,是实现机器学习的方式之一 神经网络:一 ...

  4. 【机器学习基础】常见二分类损失函数、距离度量的Python实现

    本文用Python实现了常见的几种距离度量.二分类损失函数. 设和为两个向量,求它们之间的距离. 这里用Numpy实现,设和为ndarray <numpy.ndarray>,它们的shap ...

  5. 回归算法分类,常用回归算法解析

    回归算法分类,常用回归算法解析 回归是数学建模.分类和预测中最古老但功能非常强大的工具之一.回归在工程.物理学.生物学.金融.社会科学等各个领域都有应用,是数据科学家常用的基本工具. 回归通常是机器学 ...

  6. 回归、分类与聚类:三大方向剖解机器学习算法的优缺点

    回归.分类与聚类:三大方向剖解机器学习算法的优缺点 2017-05-20 13:56:14    机器学习   数学    3 0 0 在本教程中,作者对现代机器学习算法进行一次简要的实战梳理.虽然类 ...

  7. 基本概念—回归、分类、聚类

    原文作者:机器之心 原文地址:回归.分类与聚类:三大方向剖解机器学习算法的优缺点 在本教程中,作者对现代机器学习算法进行了简要梳理.虽然类似的总结有很多,但是它们都没有真正解释清楚每个算法在实践中的好 ...

  8. 人人都能看懂的机器学习!3个案例详解聚类、回归、分类算法

    导读:机器是怎样学习的,都学到了什么?人类又是怎样教会机器学习的?本文通过案例给你讲清楚各类算法的原理和应用. 机器学习,一言以蔽之就是人类定义一定的计算机算法,让计算机根据输入的样本和一些人类的干预 ...

  9. 目标检测分类损失函数——Cross entropy、Focal loss

    一.Cross Entropy Loss 交叉熵是用来判定实际的输出与期望的输出的接近程度,刻画的是实际输出与期望输出的距离,也就是交叉熵的值越小,两个概率分布就越接近. 1. CE Loss的定义 ...

最新文章

  1. cisco 交换机配置trunk被拒绝
  2. 深入学习Tomcat----自己动手写服务器(附服务器源码)
  3. OpenCV Canny边缘检测
  4. STL中的lower_bound和upper_bound的理解
  5. java回忆录—输入输出流详细讲解(入门经典)
  6. 一招教你在linux服务器配置Jenkins持续集成神器
  7. oracle sqlplus执行脚本_oracle主、从自动切换方案?我是这样实现的
  8. 虚拟化系列-Citrix XenServer 6.1 XenMotion与HA
  9. 增量式PID是什么?不知道你就落伍了
  10. hub设备_【小O新品】办公设备的小助手,ORICO奥睿科HUB集线器新品来袭
  11. 我的世界java雪村种子_我的世界:自带雪屋前哨站与要塞的富有雪村种子,超稀有砂砾山...
  12. 赛后题解——真假亚瑟王(数论)
  13. 2019-01-09 工作日志:记录web3连接 respon
  14. 应该记住的10个SQL 查询
  15. vue js 清除 data数据
  16. 兔子与兔子 字符串hash
  17. IDEA代理配置(插件无法下载)
  18. 交易所通用质押式回购
  19. php初学者,php技术支持,php学习网站
  20. NSDate-日期类nbsp;OC——第七天(1)

热门文章

  1. AC日记——魔方 洛谷 P2007
  2. eclipse整体替换
  3. 隔离公司各个部门--虚拟路由器(RIP)
  4. VS2013默认打开html文件没有设计、拆分、源视图的解决办法
  5. 动态规划之----最长公共子序列
  6. NYOJ 203 三国志(Dijkstra+贪心)
  7. hdu 1754 I Hate It(线段树之 单点更新+区间最值)
  8. linux jdk 安装
  9. typedefnbsp;struct与struct的区别
  10. ((ios开发学习笔记 十))代码实现自定义TableView