首页 > 其他分享 >损失函数

损失函数

时间:2023-02-07 09:55:04浏览次数:53  
标签:yi 概率 函数 交叉 信息量 损失 xi x1

损失函数

参考:

“损失函数”是如何设计出来的?直观理解“最小二乘法”和“极大似然估计法”_哔哩哔哩_bilibili

“交叉熵”如何做损失函数?打包理解“信息量”、“比特”、“熵”、“KL散度”、“交叉熵”_哔哩哔哩_bilibili

目录

最小二乘法

image-20230207091622020

所谓最小即梯度下降要找到使得损失函数最小的参数W和b

所谓二乘法即使用了真实值与预测值差的平方,目的是方便求导

极大似然估计法

根据样本实际的情况,估计样本服从某种分布的概率,找到最大可能的一种概率模型

计算神经网络概率模型的似然值,找到极大似然值,这个就应该是最接近真实情况的概率模型

其实就是给定一种模型,在神经网络中这个模型由其权重参数W和偏置b决定,计算在这个模型上出现输入情况的概率,然后我们需要最大化这个概率,用于逼近真实模型

image-20230207094247299

此处直接理解概率会清晰一点,现在的目标是计算在参数为(W,b)的模型下,得出输入情况(x1...xn)的概率

其中yi为在当前模型下预测输入图片是猫的概率

  • 当xi = 1,即输入是猫,输出是猫的概率为yi
  • 当xi = 0,即输入不是猫,输出不是猫的概率为(1 - yi)

将所有情况连乘即为所求概率,连乘形式不方便,使用log变为求和,如下所示

image-20230207094800114

目标是最大化这个概率,而梯度下降是最小化损失函数,因此添加负号,即为损失函数

image-20230207094908966

交叉熵

信息量

指一个事件从不确定到确定的难度有多大,信息量比较大说明难度比较高

看能带来确定性的多少。8支球队,比赛前每队夺冠的概率是1/8

  • 如果获取信息1得知A队进决赛了,则夺冠概率从1/8变到了1/2
  • 如果获取信息2得知A队夺冠了,则夺冠概率从1/8变到了1,

信息2提供的信息量更大,不同信息含有的信息量是不同的

定量计算信息量,以8支球队的比赛作为例子

image-20230207081510906

比赛之前每支球队夺冠的概率是1/8,则信息1:球队A夺冠,其提供的信息量与信息2:球队A进入决赛+信息3:球队A赢得决赛提供的信息量是相同的

image-20230207081450353
  • 这里可以理解成x1 = P(阿根廷进决赛),x2 = P(阿根廷赢了决赛)

    则f(1/8) = f(x1*x2),f(1/4) = f(x1),f(1/2) = f(x2)

  • 于是f(x1 * x2) = f(x1) + f(x2),根据公式确定对数运算

  • 结合自变量x为概率,一开始概率越小,这个事件发生提供的信息量越多,因此应为单调递减函数,添负号

  • 再确定底数为2,可以直接和计算机中的比特相结合

综上得信息量计算公式\(\ f(x) = -log_2^x\)

一个系统从原来的不确定到确定难度有多大

image-20230207082842115

左边这场比赛对系统贡献的信息量(熵)为0.5+0.5=1,右边这场比赛对系统贡献的信息量(熵)为0.8,左系统的熵更大,不确定性更大

通过具体的例子,熵 := 系统提供信息量的期望

image-20230207083206177

相对熵(KL散度)

两个概率系统P和Q,P || Q,P在前,以P为基准

image-20230207085020019

根据吉布斯不等式,KL散度必定是大于0的,也就是要最小化相对熵,只需最小化交叉熵即可,交叉熵越小表示两个概率模型越相近

交叉熵应用到神经网络

xi是标签,输入的图片是猫,其为1,否则为0

yi是输出预测为猫的概率,(W,b)是权重和偏置参数

image-20230207090112163

交叉熵公式中pi为基准,即正确的模型的概率,也就是xi,而qi这里要做一下变换,使得其能与定义相统一

  • 当输入图片是猫时,即xi为1时,qi应为预测是猫的概率,即为yi
  • 当输入图片不是猫时,即xi为0时,qi应为预测不是猫的概率,即为1-yi

综上得出交叉熵损失函数

\[\sum_{i=1}^{n}(x_ilog_{2}^{y_i}+(1-x_i)log_2^{1-y_i}) \]

标签:yi,概率,函数,交叉,信息量,损失,xi,x1
From: https://www.cnblogs.com/dctwan/p/17097394.html

相关文章

  • Lstm 推测模拟sin函数
    LstmSin函数推测模拟 说明:Sin函数的推测,用前面3个连续sin函数的历史结果推测第4个的值。例如:已知y1,y2,y3推测y4。输入input_x为(length,batch,size)长度、b......
  • RISC-V与LLVM Intrinsics函数
    RISC-V与LLVMIntrinsics函数RISC-V向量扩展支持IntrinsicsRISC-V矢量扩展(RVV)使基于RISC-V指令集架构的处理器内核能够处理数据阵列,以及传统的标量运算,以加速对大型数据......
  • Day10-函数入门
    一、函数的作用1、函数sum()max()min()len()type()a.count()#方法sum() #函数2、使用函数都需要加一个括号有自己的功能不加括号sum代表整个函数 加括号......
  • The Semantics of Constructors——2.2 拷贝构造函数的构造操作
    TheSemanticsofConstructors2.2.1DefaultMemberwiseInitialization(默认的逐成员初始化)如果class没有提供一个explicitcopyconstructor又当如何?当classobject......
  • The Semantics of Constructors——2.1 默认构造函数的构造操作
    TheSemanticsofConstructors2.1DefaultConstructor的构造操作C++新手一般有两个常见的误解:任何class如果没有定义默认构造函数,就会被合成出一个来。编译器合......
  • javaScript - 函数,函数的定义与函数的特性,函数的内置对象
    1.函数的定义//方式1无参无返回值函数functionclose(){}//方式2有参有返回值函数functionset(id,name){returnid+name;}//方式3匿名函数varcallback=......
  • 母函数基础
    在数学中,某个序列的母函数(Generatingfunction,又称生成函数)是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。使用母函数解决问题的方法称为母函数方法。母......
  • 函数的重载--Java基础026
    /*函数的重载:在一个类中出现两个或者两个以上的同名函数,这个称作为函数的重载。函数重载的作用:同一个函数名可以出现了不同的函数,以应对不同个数或者不同数据类型的参数。......
  • 函数式编程-Consumer 在实际环境的使用
    packagecom.example.springstudy.test.consumer;importcom.example.springstudy.entity.UserInfo;importjava.util.function.Consumer;/***@Author:GuoDong......
  • TensorFlow图像处理函数
    1.读取图片importmatplotlib.pyplotaspltimporttensorflowastfimportnumpyasnpimage_raw_data=tf.gfile.FastGFile('./datasets/cat.png','rb').read()withtf.......