惩罚因子(penalty term)与损失函数(loss function)
penalty term 和 loss function 看起来很相似,但其实二者完全不同。
惩罚因子:
penalty term的作用是把受限优化问题转化为非受限优化问题。
比如我们要优化:
min f(x) = $x^2 - 10x$ x 受限于 g(x) = x -3 <= 0
我们可以利用惩罚因子,将上述问题转化为非受限约束问题,也就是拿掉g(x)的限制。
函数变为:
min P(x,s,r) = $x^2 - 10x + sr\phi(x - 3)$
其中s = +1 或-1, r 是控制变量,单调增或减, $\phi$是惩罚函数。
如果我们令 s = 1, r = 1, $\phi = x^2$,则:
min P(x,s,r) = $x^2 - 10x + (x-3)^2$
最终得到结果是错的,原因是r太小,如果我们将r = 100,最终就能得到对的结果。
也就是说,在迭代优化过程中,r是单调变量,如果优化结果不满足约束条件,那么可调节r的值,继续迭代,直至满足为止。
损失函数(loss function):
损失函数是分类(或回归)过程中计算分类结果错误(损失)的函数。为了检验分类结果,只要使总损失函数最小即可。
以0,1分类为例:
如果我们把一个样本分类正确记为1,错误记为0,那么这就是最简单的0,1 loss function.
如果记$l(y) = max(0,1 - ty)$,其中 t为预期结果,y为实际结果,那这就是hinge loss.
其他常用的还有 logistic loss等。
选择合适的损失函数是分类问题的关键之一,对于分类问题最好的是hinge loss. [1]
参考:
[1] Rosasco, Lorenzo, et al. "Are loss functions all the same?." Neural Computation 16.5 (2004): 1063-1076.
[2] http://web.engr.oregonstate.edu/~paasch/classes/me517/week7/penalty.html
[3] https://en.wikipedia.org/wiki/Hinge_loss
惩罚因子(penalty term)与损失函数(loss function)的更多相关文章
- 损失函数(Loss function) 和 代价函数(Cost function)
1损失函数和代价函数的区别: 损失函数(Loss function):指单个训练样本进行预测的结果与实际结果的误差. 代价函数(Cost function):整个训练集,所有样本误差总和(所有损失函数 ...
- 损失函数(Loss Function) -1
http://www.ics.uci.edu/~dramanan/teaching/ics273a_winter08/lectures/lecture14.pdf Loss Function 损失函数 ...
- 损失函数(loss function)
通常而言,损失函数由损失项(loss term)和正则项(regularization term)组成.发现一份不错的介绍资料: http://www.ics.uci.edu/~dramanan/te ...
- 损失函数(loss function) 转
原文:http://luowei828.blog.163.com/blog/static/310312042013101401524824 通常而言,损失函数由损失项(loss term)和正则项(r ...
- [machine learning] Loss Function view
[machine learning] Loss Function view 有关Loss Function(LF),只想说,终于写了 一.Loss Function 什么是Loss Function? ...
- loss function与cost function
实际上,代价函数(cost function)和损失函数(loss function 亦称为 error function)是同义的.它们都是事先定义一个假设函数(hypothesis),通过训练集由 ...
- 【深度学习】一文读懂机器学习常用损失函数(Loss Function)
最近太忙已经好久没有写博客了,今天整理分享一篇关于损失函数的文章吧,以前对损失函数的理解不够深入,没有真正理解每个损失函数的特点以及应用范围,如果文中有任何错误,请各位朋友指教,谢谢~ 损失函数(lo ...
- 对数损失函数(Logarithmic Loss Function)的原理和 Python 实现
原理 对数损失, 即对数似然损失(Log-likelihood Loss), 也称逻辑斯谛回归损失(Logistic Loss)或交叉熵损失(cross-entropy Loss), 是在概率估计上定 ...
- 机器学习 损失函数(Loss/Error Function)、代价函数(Cost Function)和目标函数(Objective function)
损失函数(Loss/Error Function): 计算单个训练集的误差,例如:欧氏距离,交叉熵,对比损失,合页损失 代价函数(Cost Function): 计算整个训练集所有损失之和的平均值 至 ...
随机推荐
- 一些常用的html/CSS效果---小技巧
我常用的重置样式表reset.css /*===============基础信息================*/ *{border: 0;padding: 0;margin: 0;} table ...
- CSS 3 颜色表示法
1,Color Name:red 优点:方便记忆 缺点:数量少不支持透明度 2,HEX方式:#FFFFFF 优点:颜色种类多 缺点:换算复杂需要借助工具 3,RGB方式:rgb(25 ...
- window绝对路径与相对路径
绝对路径:是从盘符开始的路径,形如C:\windows\system32\cmd.exe相对路径:是从当前路径开始的路径,假如当前路径为C:\windows要描述上述路径,只需输入system32\c ...
- 如何设置WebViewer的参数栏显示状态
当为用户提供数据过滤功能时,需要为报表添加参数,而很多应用场景下,在初次展现报表时就为报表会展现全部的数据,然后再通过参数供用户选择,从而实现数据过滤,而一旦为参数设置默认值,参数面板就会自动隐藏.导 ...
- 在Ubuntu中创建与Windows的共享文件夹
在Ubuntu中创建与Windows的共享文件夹 本周的学习需要用到一个压缩包,我从QQ群里下载到了Windows里.虽说我已经安装了虚拟机增强功能,能够与Windows系统共享剪切板,但它也只能共享 ...
- java环境变量设定
1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 ...
- Java环境环境配置
1. 下载并安装JDK,假如安装在D盘 2. 右键计算机->属性->高级系统设置->环境变量 3. 点击新建系统变量:系统变量名:JAVA_HOME 系统变量值:D:\Progr ...
- 1057 N的阶乘(大数运算)
题目链接:51nod 1057 N的阶乘 #include<cstdio> using namespace std; typedef long long ll; ; const int m ...
- hibernateValidate
1.创建主页面 <form action="${pageContext.request.contextPath }/first.do" method="post&q ...
- easyui-textbox 和 easyui-validatebox 设置值和获取值
表单作如下定义:该input使用easyui的"easyui-textbox" <input id="addSnumber" style="wi ...