简单易懂的讲解深度学习(九)

栏目: 数据库 · 发布时间: 5年前

常见的损失函数

一般来说,我们在进行机器学习任务时,使用的每一个算法都有一个目标函数,算法便是对这个目标函数进行优化,特别是在分类或者回归任务中,便是使用损失函数(Loss Function)作为其目标函数,又称为代价函数(Cost Function)。 

损失函数是用来评价模型的预测值与真实值的不一致程度,它是一个非负实值函数。通常使用 L(Y,f(x)) 来表示,损失函数越小,模型的性能就越好。

  设总有 N个 样本的样本集为(X,Y)=( x i , i ),i∈[1,N] 为样本i的真实值,yi = f(xi),  i∈[1,N]为样本 i 的预测值, 为分类或者回归函数。

那么总的损失函数为: ( , ) = ( x i , i )

L = ∑ ( y i , y i ^ )

有以下 常见的损失函数 几种:

Zero-one Loss Zero-one Loss: 即0-1损失,它是一种较为简单的损失函数,如果预测值与目标值不相等,那么为1,否则为0,即:

简单易懂的讲解深度学习(九)

可以看出上述的定义太过严格,如果真实值为1,预测值为0.999,那么预测应该正确,但是上述定义显然是判定为预测错误,那么可以进行改进为Perceptron Loss。

Perceptron Loss, 即为感知损失,即:

简单易懂的讲解深度学习(九)

其中 t 是一个超参数阈值,如在 PLA (Perceptron Learning Algorithm,感知机算法,(http://kubicode.me/2015/08/06/Machine%20Learning/Perceptron-Learning-Algorithm/))中取 t =0.5

Hinge Loss Hinge, 损失可以用来解决间隔最大化问题,如在SVM中解决几何间隔最大化问题,其定义如下:

简单易懂的讲解深度学习(九)

详细见: https://en.wikipedia.org/wiki/Hinge_loss

Log Loss 在使用似然函数最大化时,其形式是进行连乘,但是为了便于处理,一般会套上log,这样便可以将连乘转化为求和,由于log函数是单调递增函数,因此不会改变优化结果。因此log类型的损失函数也是一种常见的损失函数,如在LR(Logistic Regression, 逻辑回归)中使用交叉熵(Cross Entropy)作为其损失函数。即:

简单易懂的讲解深度学习(九)

规定

简单易懂的讲解深度学习(九)

  Square Loss Square Loss, 即平方误差,常用于回归中。即:

简单易懂的讲解深度学习(九)

Absolute Loss Absolute Loss, 即绝对值误差,常用于回归中。即:

简单易懂的讲解深度学习(九)

Exponential Loss Exponential Loss, 为指数误差,常用于boosting算法中,如[AdaBoost](https://en.wikipedia.org/wiki/AdaBoost)。即:

简单易懂的讲解深度学习(九)

正则

一般来说,对分类或者回归模型进行评估时,需要使得模型在训练数据上使得损失函数值最小,即使得经验风险函数最小化,但是如果只考虑经验风险(Empirical risk),容易过拟合(详细参见防止过拟合的一些方法),因此还需要考虑模型的泛化能力,一般常用的方法便是在目标函数中加上正则项,由损失项(Loss term)加上正则项(Regularization term)构成结构风险(Structural risk),那么损失函数变为: 

简单易懂的讲解深度学习(九)

其中 λ 是正则项超参数,常用的正则方法包括:L1正则与L2正则,详细介绍参见: 防止过拟合的一些方法

各损失函数图形如下:

简单易懂的讲解深度学习(九)

下期我们分享 激活函数!

如果想加入我们“ 计算机视觉战队 ”,请扫二维码加入学习群,我们一起学习进步,探索领域中更深奥更有趣的知识!

简单易懂的讲解深度学习(九)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大学程序设计课程与竞赛训练教材

大学程序设计课程与竞赛训练教材

吴永辉、王建德 / 机械工业出版社 / 2013-6 / 69.00

本书每章为一个主题,实验内容安排紧扣大学算法和数学的教学,用程序设计竞赛中的算法和数学试题作为实验试题,将算法和数学的教学与程序设计竞赛的解题训练结合在一起;在思维方式和解题策略的训练方面,以问题驱动和启发式引导为主要方式,培养读者通过编程解决问题的能力。 本书特点: 书中给出的234道试题全部精选自ACM国际大学生程序设计竞赛的世界总决赛以及各大洲赛区现场赛和网络预赛、大学程序设计竞......一起来看看 《大学程序设计课程与竞赛训练教材》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码