机器学习中的目标函数、损失函数、代价函数有什么区别?
作者:zzanswer
链接:https://www.zhihu.com/question/52398145/answer/209358209
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
谢谢评论区
老师的建议,完善下答案:
首先给出结论:损失函数和代价函数是同一个东西,目标函数是一个与他们相关但更广的概念,对于目标函数来说在有约束条件下的最小化就是损失函数(loss function)。
举个例子解释一下:(图片来自Andrew Ng Machine Learning公开课视频)
上面三个图的函数依次为 , , 。我们是想用这三个函数分别来拟合Price,Price的真实值记为 。
我们给定 ,这三个函数都会输出一个 ,这个输出的 与真实值 可能是相同的,也可能是不同的,为了表示我们拟合的好坏,我们就用一个函数来度量拟合的程度,比如:
,这个函数就称为损失函数(loss function),或者叫代价函数(cost function)。损失函数越小,就代表模型拟合的越好。
那是不是我们的目标就只是让loss function越小越好呢?还不是。
这个时候还有一个概念叫风险函数(risk function)。风险函数是损失函数的期望,这是由于我们输入输出的 遵循一个联合分布,但是这个联合分布是未知的,所以无法计算。但是我们是有历史数据的,就是我们的训练集, 关于训练集的平均损失称作经验风险(empirical risk),即 ,所以我们的目标就是最小化 ,称为经验风险最小化。
到这里完了吗?还没有。
如果到这一步就完了的话,那我们看上面的图,那肯定是最右面的 的经验风险函数最小了,因为它对历史的数据拟合的最好嘛。但是我们从图上来看 肯定不是最好的,因为它过度学习历史数据,导致它在真正预测时效果会很不好,这种情况称为过拟合(over-fitting)。
为什么会造成这种结果?大白话说就是它的函数太复杂了,都有四次方了,这就引出了下面的概念,我们不仅要让经验风险最小化,还要让结构风险最小化。这个时候就定义了一个函数 ,这个函数专门用来度量模型的复杂度,在机器学习中也叫正则化(regularization)。常用的有 , 范数。
到这一步我们就可以说我们最终的优化函数是: ,即最优化经验风险和结构风险,而这个函数就被称为目标函数。
结合上面的例子来分析:最左面的 结构风险最小(模型结构最简单),但是经验风险最大(对历史数据拟合的最差);最右面的 经验风险最小(对历史数据拟合的最好),但是结构风险最大(模型结构最复杂);而 达到了二者的良好平衡,最适合用来预测未知数据集。
以上的理解基于Coursera上Andrew Ng的公开课和李航的《统计学习方法》,如有理解错误,欢迎大家指正。
转载于:https://www.cnblogs.com/jingsupo/p/9007320.html
机器学习中的目标函数、损失函数、代价函数有什么区别?相关推荐
- 一文看懂机器学习中的常用损失函数
作者丨stephenDC 编辑丨zandy 来源 | 大数据与人工智能(ID: ai-big-data) 导语:损失函数虽然简单,却相当基础,可以看做是机器学习的一个组件.机器学习的其他组件,还包括激 ...
- 机器学习中的常见问题—损失函数
机器学习中的常见问题--损失函数 一.分类算法中的损失函数 在分类算法中,损失函数通常可以表示成损失项和正则项的和,即有如下的形式: J(w)=∑iL(mi(w))+λR(w)J(w)=∑iL(mi( ...
- 机器学习中的各种损失函数(Hinge loss,交叉熵,softmax)
机器学习中的各种损失函数 SVM multiclass loss(Hinge loss) 这是一个合页函数,也叫Hinge function,loss 函数反映的是我们对于当前分类结果的不满意程度.在 ...
- 机器学习中常见的损失函数_机器学习中最常见的损失函数
机器学习中常见的损失函数 现实世界中的DS (DS IN THE REAL WORLD) In mathematical optimization and decision theory, a los ...
- 机器学习中的目标函数、损失函数、代价函数的区别
转载自:https://www.zhihu.com/question/52398145 基本概念: 损失函数:计算的是一个样本的误差 代价函数:是整个训练集上所有样本误差的平均 目标函数:代价函数 + ...
- 机器学习中的目标函数总结
点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要26分钟 跟随小博主,每天进步一丢丢 来自:SIGAI 几乎所有的机器学习算法都归结为求解最优化问题.有监督学习算法在训练时通过优化一个目标函数 ...
- 机器学习中SVM的损失函数,向量积
SVM即支持向量机(Support Vector Machine, SVM) 是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized ...
- 机器学习中常见的损失函数和代价函数
损失函数 (loss function) 是用来估量在一个样本点上模型的预测值 h(x) 与真实值 y 的不一致程度.它是一个非负实值函数,通常使用 L(y, h(x)) 来表示. 损失函数可由 y ...
- 入门|机器学习中常用的损失函数你知多少?
本文作者将常用的损失函数分为了两大类:分类和回归.然后又分别对这两类进行了细分和讲解,其中回归中包含了一种不太常见的损失函数:平均偏差误差,可以用来确定模型中存在正偏差还是负偏差. 机器通过损失函数进 ...
最新文章
- 简单删除我的电脑里的wps云文档图标
- 《算法设计手册》面试题解答 第三章:数据结构
- opencv 仪表数字切割
- Freemarker静态化ActiveMQ实现
- 二叉排序树或二叉搜索树
- JQ实现仿淘宝条件筛选
- WebStorm 代码文字发虚模糊 - 解决篇
- iOS混合开发库(GICXMLLayout)一、介绍
- 项目现场如何通过安防网络设备的EHOME协议,把设备接入EasyCVR平台上进行互联网直播及分发?
- 黑莓8900刷机教程 即黑莓如何刷机
- 详解|天猫搜索前端技术历代记
- PHP 获取YouTube视频相关信息(Youtube Api v3)
- 一个屌丝程序猿的人生(八十八)
- MSP430单片机 MTH01-SPI 温湿度传感器 程序
- java使用wkhtmltopdf将html转换成pdf
- CCF-20170902-公共钥匙盒(30分)
- 牛客多校第八场 Enigmatic Partition(DP)
- 录像:在VS Orcas和ASP.NET中使用LINQ (第一部分)
- AndroidO Treble架构分析1
- 个人整理的UI设计部分知识点(AI和PS)
热门文章
- System.Threading.Timer类的TimerCallback 委托
- 捉虫记 单步跟踪 条件断点 变量查看实践
- etcd分布式之消息发布与订阅
- BigDecimal的四舍五入的RoundingMode 选择
- java七大设计原则
- mac connect to host localhost port 22: Connection refused
- Property with #39;retain (or strong)#39; attribute must be of object type
- 格式化大容量硬盘为fat32
- MySQL存储日志并使用Loganalyzer作为前端展示
- gulp-autoprefixer报Promise is not defined错误