精华内容
下载资源
问答
  • 说到机器学习,初学者听到最多就是 损失函数了吧  我对这个词也一头雾水 好像今天一个定义明天又一个定义 ,读了大量文章和博客 终于有点起色 (感谢论坛各位大佬) 这里用自己简单语言大致说下什么是...

    说到机器学习,初学者听到最多的就是 损失函数了吧 

    我对这个词也是一头雾水 好像今天一个定义明天又是一个定义 ,读了大量的文章和博客 终于有点起色 (感谢论坛各位大佬)

    这里用自己的简单语言大致说下什么是损失函数 如果一个地方看不懂就换个博客看 总会有适合你的文章 万一这篇就是了呢


    首先我们需要了解损失函数的定义是什么:衡量模型模型预测的好坏

    可能这么说有点小小的抽象 ,那么在解释下,损失函数就是用来表现预测与实际数据的差距程度

    比如你做一个线性回归,实际值和你的 预测值肯定会有误差,那么我们找到一个函数表达这个误差就是损失函数

    和实际一样比如你是一个厨师大赛评委 几名厨师最后成绩由你确定 在你认为色香味都应该是100分才算冠军(这个100分就相当于实际值)

    每个人都有自己的做菜方案和技巧,并且达到的效果也是不用的(这个就相当于预测值) 最后你是评委用你的一套规则判断他们多少分(你就是损失函数)


    假设我们令真实值为Y  预测值为f(x) 损失函数为L(Y,f(x))他们的关系就是下图



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



    如果还是不是很清楚 可以看下论坛谋篇博客的一个小例子(我感觉挺好的)

    http://blog.csdn.net/l18930738887/article/details/50615029



    首先我们假设要预测一个公司某商品的销售量:


    X:门店数     Y:销量

    我们会发现销量随着门店数上升而上升。于是我们就想要知道大概门店和销量的关系是怎么样的呢?

    我们根据图上的点描述出一条直线:


    似乎这个直线差不多能说明门店数X和Y得关系了:我们假设直线的方程为Y=a0+a1X(a为常数系数)。假设a0=10 a1=3 那么Y=10+3X(公式1)

    X

    公式Y

    实际Y

    差值

    1

    13

    13

    0

    2

    16

    14

    2

    3

    19

    20

    -1

    4

    22

    21

    1

    5

    25

    25

    0

    6

    28

    30

    -2


    我们希望我们预测的公式与实际值差值越小越好,所以就定义了一种衡量模型好坏的方式,即损失函数(用来表现预测与实际数据的差距程度)。于是乎我们就会想到这个方程的损失函数可以用绝对损失函数表示:

    公式Y-实际Y的绝对值,数学表达式:[1]

    上面的案例它的绝对损失函数求和计算求得为:6

    为后续数学计算方便,我们通常使用平方损失函数代替绝对损失函数:

    公式Y-实际Y的平方,数学表达式:L(Y,f(X))= [1]

    上面的案例它的平方损失函数求和计算求得为:10

    以上为公式1模型的损失值。

    假设我们再模拟一条新的直线:a0=8,a1=4

    X

    公式Y

    实际Y

    差值

    1

    12

    13

    -1

    2

    16

    14

    2

    3

    20

    20

    0

    4

    24

    21

    3

    5

    28

    25

    3

    6

    32

    30

    2


    公式2   Y=8+4X

    绝对损失函数求和:11  平方损失函数求和:27

    公式1   Y=10+3X

    绝对损失函数求和:6  平方损失函数求和:10

    从损失函数求和中,就能评估出公式1能够更好得预测门店销售。

     

    统计学习中常用的损失函数有以下几种:

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

     L(Y,f(X))={1,0,Y≠f(X)Y=f(X)

     (2) 平方损失函数(quadraticloss function)

     L(Y,f(X))=(Y−f(X))2

     (3) 绝对损失函数(absoluteloss function)

     L(Y,f(X))=|Y−f(X)|

     (4) 对数损失函数(logarithmicloss function) 或对数似然损失函数(log-likelihood loss function)

     L(Y,P(Y|X))=−logP(Y|X)

     损失函数越小,模型就越好。




    展开全文
  • 机器学习损失函数

    2020-12-17 14:17:14
    简单区分可以理解为损失函数是用在模型训练阶段,用在梯度下降阶段,做梯度更新,来让损失函数最小化。 评价指标是用在测试阶段,也就是判断生成模型好坏,评价指标有很多种,会单独写一篇文章。 什么是损失函数...

    有这样一个问题,损失函数和评价指标都是来评判模型的好与不好,它们之间有什么区别?

    简单区分可以理解为损失函数是用在模型训练阶段,用在梯度下降阶段,做梯度更新,来让损失函数最小化。

    评价指标是用在测试阶段,也就是判断生成的模型的好坏,评价指标有很多种,会单独写一篇文章。

    什么是损失函数?

    在有监督学习中,真实值与预测值不一致的程度,叫做损失函数。

    损失函数各种各样,没有哪一个说适合所有的网络模型,损失函数的选取依赖于参数的数量、异常值、机器学习算法、梯度下降的效率、导数求取的难易和预测的置信度等若干方面。

    损失函数分类

    经验风险:预测结果与实际结果的差值

    结构风险:经验风险 + 正则项

    还有一种分类方法,从解决的问题看:回归分类问题。

    常见的损失函数

    回归问题
    均方误差 – L2损失

    思想:预测值与真实值之差的平方和

    公式
    MSE=i=1n(yiyip)2n MSE = \frac{ \sum_{i=1}^{n}(y_i-y_i^{p})^2}{n}
    对应的曲线图:

    在这里插入图片描述

    从图中可以看出,误差的绝对值越大,损失函数越大,所以我们的目标就是让误差变得尽可能小。

    平方绝对误差 – L1损失

    思想:预测值与真实值之差的绝对值和

    公式
    MAE=i=1nyiyipn MAE = \frac{\sum_{i=1}^{n}|y_i-y_i^{p}|}{n}
    对应曲线图

    在这里插入图片描述

    分类问题
    交叉熵损失

    二分类问题:模型最后需要预测的结果只有两种情况,对于每个类别我们的预测得到的概率为 pp1p1-p

    在这里插入图片描述

    yiy_i 样本的标签,正类 1, 负类 0。

    pip_i 样本i预测为正的概率。

    逻辑回归算法的损失函数。

    多分类问题
    在这里插入图片描述

    MM 类别的数量;

    yicy_{ic} 指示变量01(0或1),如果该类别和样本i的类别相同就是1,否则是0;

    picp_{ic} 对于观测样本ii属于类别cc的预测概率。

    在神经网络做分类问题时,经常使用交叉熵作为损失函数,由于交叉熵涉及到计算每个类别的概率,所以交叉熵几乎每次都和sigmoid(或softmax)函数一起出现。

    计算过程:

    1. 神经网络最后一层输出每个类别的logits值;
    2. 该值经过sigmoid(或softmax)函数获得概率输出;
    3. 模型预测的类别概率输出与真实类别的one hot形式进行交叉熵损失的计算。
    指数损失

    L(y,f(x))=eyf(x) L(y,f(x)) = e^{-yf(x)}

    ​ 对离群点、噪声非常敏感。经常用在AdaBoost算法中。

    hinge损失

    在这里插入图片描述

    ​ hinge损失函数表示如果被分类正确,损失为0,否则损失就为1yf(x)1-yf(x)

    ​ 一般 f(x)f(x)是预测值,取值范围[1,1][-1,1]yy是目标值,11-1或者1,即f(x)f(x)1-111之间就可以了,不鼓励 f(x)>1|f(x)|>1,并不鼓励分类器过度自信,让某个正确分类的样本距离分割线超过1并不会有任何奖励,从 而使分类 器可以更专注于整体的误差,用在SVM算法中

    交叉熵函数与最大似然函数的联系和区别

    区别:交叉熵函数使用来描述模型预测值和真实值的差距大小,越大代表越不相近;似然函数的本质就是衡量在某个参数下,整体的估计和真实的情况一样的概率,越大代表越相近。

    联系:交叉熵函数可以由最大似然函数在伯努利分布的条件下推导出来,或者说最小化交叉熵函数的本质就是对数似然函数的最大化。

    参考链接:

    https://zhuanlan.zhihu.com/p/58883095

    https://zhuanlan.zhihu.com/p/35709485

    展开全文
  • 损失函数如上图所示,MSE(Mean-square error,均方误差)比较常用的损失函数方程。确实,MSE公式中,如果使用n替换掉2n,可以达到同样的效果。那么,为什么大部分公式中倾向保留2n呢?机器学习的目的在机器学习中,...

    大家好,最近有朋友留言询问为什么在机器学习中的损失函数用2n为底,如下公式所示。

    e1e307210f009d220e0660ee1ecfb838.png

    损失函数

    如上图所示,MSE(Mean-square error,均方误差)是比较常用的损失函数方程。确实,MSE公式中,如果使用n替换掉2n,可以达到同样的效果。

    那么,为什么大部分公式中倾向保留2n呢?

    机器学习的目的

    在机器学习中,当有了数据集(dataset),我们需要创建一个模型,使得模型的预测值和数据集中的真实值尽可能地接近。但是,预测值和真实值是几乎不可能一样的,这样就存在一个误差值。

    dd03bf858a119638313fa8bcc03b6bd7.png

    误差

    其中,机器学习的目的是不停地迭代,使得模型的预测值和数据集中的真实值的总体误差尽量小。

    误差的分布假设

    27cc24c32b9783ac912d88adc37568e8.png

    误差分布

    也就是说,当我们使用机器学习模型的时候,我们是允许误差的存在。简单来说,训练数据集中有多少个数据点,就会生成相应数量的误差。简单来说,我们可以假设所有的误差符合一个统计分布,比如正态分布。

    c11ad2b3fea4c5a4484b6676443f091e.png

    误差的正态分布

    对于误差来说,自然希望误差尽可能接近0。这样可以假设误差符合标准正态分布

    749a4421056493ec2decc1e3e1c61bf3.png

    误差的标准正态分布

    db18fe0e20503c460a5e6725269bd736.png

    标准正态分布

    通过标准正态分布的公式可以得到误差的分布公式,如下:

    421724ce5b5b7a83a669f1fd5fefa3a0.png

    误差的标准正态分布公式

    对上式左右取对数,可得:

    8f8ca81f814adf0f4bc2fb08a3a4ddbd.png

    上式只是对于数据集中的一个数据点的计算,当我们需要求出所有数据点的平均值的时候,可以得到MSE的计算公式,当然第二项是常数项,在计算中可以省略。

    e1e307210f009d220e0660ee1ecfb838.png

    损失函数

    求导数方便

    当然,使用2n而不是n对于之后的损失函数求导也会方便很多。由于(x^2)' = 2x。这样一来,求导之后,2会被约分掉。

    总结

    很多时候,公式里的常数项会有一定的理由存在。不用去死记硬背公式,我们需要的是去理解公式本身的含义。

    展开全文
  • [机器学习笔记] 什么是损失函数机器学习模型关于单个样本预测值与真实值差称为损失。损失越小,模型越好,如果预测值与真实值相等,就是没有损失。 用于计算损失函数称为损失函数。模型每一次预测好坏用...

    [机器学习笔记] 什么是损失函数?

    机器学习模型关于单个样本的预测值与真实值的差称为损失。损失越小,模型越好,如果预测值与真实值相等,就是没有损失。
    用于计算损失的函数称为损失函数。模型每一次预测的好坏用损失函数来度量。

    常用的损失函数有以下几种(引用自李航的《统计学习方法》)

    1. 0-1损失函数
      0-1损失函数
      二类分类任务中,预测值与真实值不同,就是预测错误,则损失是1;
      预测值与真实值相等,就是预测正确,损失是 0,就是没有损失。

    2. 平方损失函数
      平方损失函数
      预测值与真实值的差的平方。预测误差越大,损失越大。好理解吧。

    3. 绝对损失函数
      绝对损失函数
      预测值与真实值的差的绝对值。绝对值不方便计算,一般不常用。

    4. 对数损失函数
      对数损失函数
      对于预测值是概率的情况,取对数损失。因为概率范围[0, 1] 所以对数值是(-∞, 0) ,为了让损失 > 0 所以取对数的负值。上面的公式里面有个负号。看图像,一目了然哈哈:
      对数曲线

    展开全文
  • 损失函数如上图所示,MSE(Mean-square error,均方误差)比较常用的损失函数方程。确实,MSE公式中,如果使用n替换掉2n,可以达到同样的效果。那么,为什么大部分公式中倾向保留2n呢?机器学习的目的在机器学习中,...
  • 决策树的损失函数是什么? 决策树的损失函数通常是正则化的极大似然函数。 正则化的决策树损失函数: 其中|T|代表叶节点个数,表示具体某个叶节点的样例数,表示叶节点经验熵。 我们知道正则化的损失函数中前一项...
  • 机器学习-损失函数汇总

    千次阅读 2017-09-11 20:36:41
     损失函数是度量模型一次预测好坏;  风险函数是度量平均意义下模型预测好坏; 0-1损失函数: 使用0-1损失函数时,实质就是通过比较预测值与真实值符合是否相同; log对数损失函数(logistic回归) log...
  • 参考知乎:https://www.zhihu.com/question/52398145基本概念:损失函数...目标函数是一个与他们相关但更广概念,对于目标函数来说在有约束条件下最小化就是损失函数(loss function)。举个例子解释一下:(图片...
  • 介绍想象一下-你已经在给定...损失函数是我们喜欢使用的机器学习算法核心。但大多数初学者和爱好者不清楚如何以及在何处使用它们。它们并不难理解,反而可以增强你对机器学习算法理解。那么,什么是损失函数,你...
  • 首先给出结论:损失函数和代价函数是同一个东西,目标函数是一个与他们相关但更广概念,对于目标函数来说在有约束条件下最小化就是损失函数(loss function)。 上面三个图函数依次为 f1(x)f_1(x)f1​(x) , ...
  • 作者:zzanswer链接:...首先给出结论:损失函数和代价函数是同一个东西,目标函数是一个与他们相关但更广概念,对于目标函数来说在有约束条件下最小化就是损失函数(loss function)。举个例子解释一下...
  • 机器学习 损失函数

    2017-09-06 14:44:00
    0-1损失函数 平方损失函数(最小二乘法) 最小二乘法线性回归一种,OLS将问题转化成了一个凸优化问题。在线性回归中,它假设样本和噪声都服从高斯分布(为什么假设成高斯分布呢?其实这里隐藏了一个小知识...
  • Python机器学习算法7个损失函数的详细指南译者|VK来源|Analytics Vidhya概述学习什么是损失函数以及它们如何在机器学习算法中工作损失函数实际上我们经常使用技术核心本文介绍了多种损失函数与它们工作...
  • 介绍想象一下-你已经在给定...损失函数是我们喜欢使用的机器学习算法核心。但大多数初学者和爱好者不清楚如何以及在何处使用它们。它们并不难理解,反而可以增强你对机器学习算法理解。那么,什么是损失函数,你...
  • 前言当前正在整理机器学习中逻辑回归基础和面试内容,这里有一个值得思考问题与大家分享与讨论。本文约1k字,预计阅读5分钟。概要逻辑回归(logistic regression)在机器学习...
  • 介绍想象一下-你已经在给定...损失函数是我们喜欢使用的机器学习算法核心。但大多数初学者和爱好者不清楚如何以及在何处使用它们。它们并不难理解,反而可以增强你对机器学习算法理解。那么,什么是损失函数,你...
  • 点击上方“计算机视觉life”,选择“星标”快速获得最新干货译者 | VK,磐创AI来源 |Analytics Vidhya概述学习什么是损失函数以及它们如何在机器学习算法中工作损失函数实际上我们经常使用技术核心本文介绍了...
  • 谢谢评论区 @阿萨姆 老师建议,完善下答案:首先给出结论:损失函数和代价函数是同一个东西,目标函数是一个与他们相关但更广概念,对于目标函数来说在有约束条件下最小化就是损失函数(loss function)。...
  • 损失函数5.1 什么是损失函数5.2 常见的损失函数5.3 逻辑回归为什么使用对数损失函数5.4 对数损失函数是如何度量损失的 在本文中着重介绍机器学习中的目标函数(代价函数,Cost Function)以及损失函数(Loss Fu
  • 一、损失函数和风险函数的区别 理论上模型f(X)关于联合分布P(X,Y)的平均意义下的损失,称之为风险函数...提供一个记忆的方法,由于训练数据集我们已知的,那么就是我们的经验了,在训练集上的损失自然可以理解成经验
  • 作者:zzanswer链接:https://www.zhihu.com/question/52398145/answer/209358209来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。...我们想用这三个函数分别来...
  • 译者 | VK来源 |Analytics Vidhya【导读】:本文为...概述学习什么是损失函数以及它们如何在机器学习算法中工作损失函数实际上我们经常使用技术核心本文介绍了多种损失函数与它们工作原理以及如何使用Pyth...
  • 二、常用的损失函数 1、平方损失函数(最小二乘法) 最小二乘法认为,最优拟合直线应该使各点到回归直线的距离和最小的直线,即平方和最小。这里的举例 2、log对数损失函数 三、模型与损失函数 ...
  • 今天看到一篇很精简文章来说明目标函数、损失函数以及正则项是什么。以下是文章正文。 转自:https://xiaozhuanlan.com/topic/7504682391 什么是目标函数? 定义是:指所关心目标与相关因素函数关系。...
  • (随时进行补充)常见的损失函数梯度消失和梯度爆炸产生的原因SVM的原理RF,SVM和NN的优缺点模型调优细节如何防止过拟合Batch Normalization的思想是什么常见的损失函数通常机器学习每一个算法中都会有一个目标函数...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 761
精华内容 304
关键字:

机器学习的损失函数是什么