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)的更多相关文章

  1. 损失函数(Loss function) 和 代价函数(Cost function)

    1损失函数和代价函数的区别: 损失函数(Loss function):指单个训练样本进行预测的结果与实际结果的误差. 代价函数(Cost function):整个训练集,所有样本误差总和(所有损失函数 ...

  2. 损失函数(Loss Function) -1

    http://www.ics.uci.edu/~dramanan/teaching/ics273a_winter08/lectures/lecture14.pdf Loss Function 损失函数 ...

  3. 损失函数(loss function)

    通常而言,损失函数由损失项(loss term)和正则项(regularization term)组成.发现一份不错的介绍资料: http://www.ics.uci.edu/~dramanan/te ...

  4. 损失函数(loss function) 转

    原文:http://luowei828.blog.163.com/blog/static/310312042013101401524824 通常而言,损失函数由损失项(loss term)和正则项(r ...

  5. [machine learning] Loss Function view

    [machine learning] Loss Function view 有关Loss Function(LF),只想说,终于写了 一.Loss Function 什么是Loss Function? ...

  6. loss function与cost function

    实际上,代价函数(cost function)和损失函数(loss function 亦称为 error function)是同义的.它们都是事先定义一个假设函数(hypothesis),通过训练集由 ...

  7. 【深度学习】一文读懂机器学习常用损失函数(Loss Function)

    最近太忙已经好久没有写博客了,今天整理分享一篇关于损失函数的文章吧,以前对损失函数的理解不够深入,没有真正理解每个损失函数的特点以及应用范围,如果文中有任何错误,请各位朋友指教,谢谢~ 损失函数(lo ...

  8. 对数损失函数(Logarithmic Loss Function)的原理和 Python 实现

    原理 对数损失, 即对数似然损失(Log-likelihood Loss), 也称逻辑斯谛回归损失(Logistic Loss)或交叉熵损失(cross-entropy Loss), 是在概率估计上定 ...

  9. 机器学习 损失函数(Loss/Error Function)、代价函数(Cost Function)和目标函数(Objective function)

    损失函数(Loss/Error Function): 计算单个训练集的误差,例如:欧氏距离,交叉熵,对比损失,合页损失 代价函数(Cost Function): 计算整个训练集所有损失之和的平均值 至 ...

随机推荐

  1. 忙了好一阵,今天随便写篇关于canvas的小东西

    前几天在朋友圈发了几条3D demo视频,其中就有3D空间组成各种图形.如上! 那么这些图形的每个mesh的坐标可不是手动去写,如果你愿意我当然不拦着!所以今天这篇就来介绍如何获得这些图形的坐标数据. ...

  2. iOS - Mac Vim 编辑器

    Mac Vim 编辑器 1)vi 文本编辑器 1.打开一个文件:vi 文件名 按住 shift 连按两次 z 键( :q )退出 vi 编辑器 2.vi 两种模式:第一是命令模式(按 esc 进入命令 ...

  3. c#中对rgb的使用

    今天发现c#中没有和vb类似的函数RGB(), 后来发现可以通过Color类来实现 从R,G,B的值可以得到一个Color,如: Color c = Color.FromArgb(255,0,0); ...

  4. 快速排序,C语言实现

    排序法里比较出名的,具体的算法看下图: 这篇博客说的通俗易懂:http://blog.csdn.net/morewindows/article/details/6684558 这是快速排序的基础,用代 ...

  5. 0518 Scrum 项目 5.0

     燃尽图: Sprint 1看板: 成员 团队贡献分 许佳仪 22 柯晓君 21 卓宇靖 18 赖文亮 19

  6. zoj 1203 Swordfish prim算法

    #include "stdio.h". #include <iostream> #include<math.h> using namespace std; ...

  7. SAP NWBC for HTML and Desktop configuration steps[From sdn]

    Summary :- This dcoumnenst conatin the information about requirement , hardware , configuration step ...

  8. ADO.NET 增、删、改、查

    ADO.NET:数据访问技术 就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中也可以将数据库中的数据提取到内存中供程序调用 所有数据访问技术的基础 连接 ...

  9. Android开发--EditText的应用

    1.简介 EditText主要用于数据的输入,验证等问题.例如,账号的注册,验证等等. 2.构建 如下图所示,在Text Fields有多种类型的数据输入框,我们创建图2所示的文本框,当点击按钮时,文 ...

  10. sharepoint Report使用共享数据源部署报错

    在VS中做了一下报表,把数据源设置成为共享数据源,部署时发生以下错误: 解决方法:在VS中解决方案窗口,选择共享数据源中的用到的数据源名称,右键点击,选择“部署”,部署成功后,再部署报表即可.