损失函数综述

作者 | AI小昕

编辑 | 磐石

出品 | 磐创AI技术团队

【磐创AI导读】:本文主要介绍了几种常见的损失函数。欢迎大家点击上方蓝字关注我们的公众号:磐创AI。点击公众号下方文章精选系列文章了解更多。

损失函数(loss function)又叫做代价函数(cost function),是用来评估模型的预测值与真实值不一致的程度,也是神经网络中优化的目标函数,神经网络训练或者优化的过程就是最小化损失函数的过程,损失函数越小,说明模型的预测值就越接近真是值,模型的健壮性也就越好。

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

(1) 0-1损失函数(0-1 lossfunction):

0-1损失函数是最为简单的一种损失函数,多适用于分类问题中,如果预测值与目标值不相等,说明预测错误,输出值为1;如果预测值与目标值相同,说明预测正确,输出为0,言外之意没有损失。其数学公式可表示为:

由于0-1损失函数过于理想化、严格化,且数学性质不是很好,难以优化,所以在实际问题中,我们经常会用以下的损失函数进行代替。

(2)感知损失函数(Perceptron Loss): 感知损失函数是对0-1损失函数的改进,它并不会像0-1损失函数那样严格,哪怕预测值为0.99,真实值为1,都会认为是错误的;而是给一个误差区间,只要在误差区间内,就认为是正确的。其数学公式可表示为:

(3)平方损失函数(quadratic loss function):

顾名思义,平方损失函数是指预测值与真实值差值的平方。损失越大,说明预测值与真实值的差值越大。平方损失函数多用于线性回归任务中,其数学公式为:

接下来,我们延伸到样本个数为N的情况,此时的平方损失函数为:

(4)Hinge损失函数(hinge loss function):

Hinge损失函数通常适用于二分类的场景中,可以用来解决间隔最大化的问题,常应用于著名的SVM算法中。其数学公式为:

其中在上式中,t是目标值{-1,+1},y为预测值的输出,取值范围在(-1,1)之间。

(5)对数损失函数(Log Loss):

对数损失函数也是常见的一种损失函数,常用于逻辑回归问题中,其标准形式为:

上式中,y为已知分类的类别,x为样本值,我们需要让概率p(y|x)达到最大值,也就是说我们要求一个参数值,使得输出的目前这组数据的概率值最大。因为概率P(Y|X)的取值范围为[0,1],log(x)函数在区间[0,1]的取值为负数,所以为了保证损失值为正数要在log函数前加负号。

(6)交叉熵损失函数(cross-entropy loss function):

交叉熵损失函数本质上也是一种对数损失函数,常用于多分类问题中。其数学公式为:

注意:公式中的x表示样本,a代表预测的输出,y为实际输出,n表示样本总数量。交叉熵损失函数常用于当sigmoid函数作为激活函数的情景,因为它可以完美解决平方损失函数权重更新过慢的问题。

以上为大家介绍了较为常见的一些损失函数以及使用场景。接下来的文章中会结合经典的实例——MNIST手写数字识别,为大家讲解如何在深度学习实际的项目中运用激活函数、损失函数到。


原文发布于微信公众号 - 磐创AI(xunixs)

原文发表时间:2018-05-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏TensorFlow从0到N

TensorFlow从1到2 - 2 - 消失的梯度

上一篇1 深度神经网络我们知道,通过追加隐藏层来构建更加“智能”的深度神经网络,并不奏效。 真正的问题不在“深度”本身,而是由梯度下降算法所指导的训练过程...

3976
来自专栏大数据挖掘DT机器学习

算法工程师的面试难不难,如何准备?-图像处理/CV/ML/DL到HR面总结

把一些相关的知识点总结一下。这个比长,感兴趣的挑自己相关的那部分看。 都是一些基础知识,面相关岗位问到的比较多。 (回答时对算法要有一定的见解,最好不要照书上的...

5665
来自专栏专知

【干货】计算机视觉实战系列04——用Python做图像处理

【导读】专知成员Hui上一次为大家介绍Numpy包的使用,介绍了Numpy库的一些基本函数和一些简单用法,以及图像灰度变换,这一次为大家详细讲解图像的缩放、图像...

4487
来自专栏深度学习自然语言处理

【深度学习】你该会的精选面试题(二)

Tensorflow是一个通过计算图的形式来表述计算的编程系统,计算图也叫数据流图,可以把计算图看做是一种有向图,Tensorflow中的每一个节点都是计算图上...

3902
来自专栏专知

概率论之概念解析:极大似然估计

【导读】本文是数据科学家Jonny Brooks-Bartlett概率论基础概念系列博客中的“极大似然估计”一章,主要讲解了极大似然估计的若干概念。分别介绍了参...

2987
来自专栏数据科学与人工智能

【算法】决策树与ID3算法

小编邀请您,先思考: 1 如何构建决策树? 2 决策树适合解决什么问题? 1. 什么是决策树/判定树(decision tree)? 决策树(Decision ...

3425
来自专栏智能算法

以色列理工暑期学习-机器学习中Loss函数的小结

机器学习作为一种优化方法,最重要的一点是找到优化的目标函数——损失函数和正则项的组合;有了目标函数的“正确的打开方式”,才能通过合适的机器学习算法求解优化。 通...

36611
来自专栏ATYUN订阅号

从自编码器到变分自编码器(其一)

AiTechYun 编辑:yuxiangyu 自编码器是一种无监督学习技术,利用神经网络进行表征学习。也就是说,我们设计一个在网络中施加“瓶颈”,迫使原始输入压...

3965
来自专栏深度学习自然语言处理

【精华】Batch Normalization理论与实践

batch norm也可以当做调参的一部分,对于有些实验是有效果的,有些实验是几乎没啥效果,但是它的收敛速度还是很客观的,所以我们还是有必要要了解下哒!

652
来自专栏ATYUN订阅号

序列预测问题的简单介绍

序列预测与其他类型的监督学习问题不同。这个序列在观察结果上被强加了一个命令:当训练模型和做预测时序列必须保存。通常,包含序列数据的预测问题被称为序列预测问题,尽...

2905

扫码关注云+社区