代价函数总结[通俗易懂]

代价函数总结[通俗易懂]代价函数是学习模型优化时的目标函数或者准则,通过最小化代价函数来优化模型。到目前为止,接触了一些机器学习算法,但是他们使用的代价函数不一定是一样的,由于,在现实的使用中,通常代价函数都需要自己来确定,所以,这里总结一下,代价函数都有哪些形式,尽量揣测一下,这样使用的原因。1.均方差代价函数这个是Andrewng的机器学习课程里面看到的损失函数,在线性回归模型里面提出来的。表示模型所预测(假设

大家好,又见面了,我是你们的朋友全栈君。

代价函数是学习模型优化时的目标函数或者准则,通过最小化代价函数来优化模型。到目前为止,接触了一些机器学习算法,但是他们使用的代价函数不一定是一样的,由于,在现实的使用中,通常代价函数都需要自己来确定,所以,这里总结一下,代价函数都有哪些形式,尽量揣测一下,这样使用的原因。

1. 均方差代价函数

这里写图片描述
这个是Andrew ng的机器学习课程里面看到的损失函数,在线性回归模型里面提出来的。这里写图片描述表示模型所预测(假设)的输出,这里写图片描述是真实的输出,即label。
个人猜测,均方差应该是
这里写图片描述
由于对给定的数据集来说,n是确定的值,因此,可以等同于式(1)。

这个形式的代价函数计算Jacobian矩阵如下:
这里写图片描述

2. 对数损失函数

对数似然作为代价函数是在RNN中看到的,公式如下:
这里写图片描述
表示真实目标在数据集中的条件概率的负对数。其意义在于,在很多预测目标概率的模型中,将最大概率对应的类型作为输出类型,因此,真实目标的预测概率越高,分类越准确,学习的目标是真实目标的预测概率最大化。而概率是小于1的,其对数值小于0,且对数是单调递增的,因此,当负对数最小化,就等同于对数最大化,概率最大化。
逻辑回归中的代价函数实际上就是对数似然的特殊表示的方式:
这里写图片描述
二项逻辑回归的输入这里写图片描述是预测目标为1的概率,这里写图片描述的值为1或0.因此,目标为0的概率为这里写图片描述,当真实的目标是1时,等式右边第二项为0,当真是目标为0时,等式右边第一项为0,因此,对于单个样本,L就是负对数似然。
同理,对于softmax回归的概率函数为
这里写图片描述
未添加权重惩罚项的代价函数为
这里写图片描述

3.交叉熵

交叉熵在神经网络中基本都用交叉熵作为代价函数。
这里写图片描述
这和逻辑回归的代价函数很像,y作为真实的目标(label),不一定是二值的,且a不是预测目标的概率,而是神经网络的输出,
它的原理还不是很明白,据说在神经网络中用交叉熵而不用均方差代价函数的原因是早期的神经元的激活函数是sigmoid函数,而此函数在大部分取值范围的导数都很小,这样使得参数的迭代很慢。
而交叉熵的产生过程网友是这样推导的:
这里写图片描述
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131300.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • htmlimg图片加载失败_js针对图片加载失败的处理方法分析

    htmlimg图片加载失败_js针对图片加载失败的处理方法分析本文实例讲述了js针对图片加载失败的处理方法。分享给大家供大家参考,具体如下:在项目中不可避免会用到图片,尤其是列表,有时候图片会加载失败;这样就会显示一个很难看的坏图片缩略图;下面介绍两种方法,解决这个问题:1、如果在你的项目中有引入jQuery插件,你可以使用error([[data],fn])这个函数;$(“img”).error(function(){//当图片加载失败时,你要进行的操作/…

  • 查看linux内核版本号_查看linux系统内核信息命令

    查看linux内核版本号_查看linux系统内核信息命令如何得知自己正在使用的linux是什么版本1.查看内核版本命令:1)[root@q1test01~]#cat/proc/versionLinuxversion2.6.9-22.ELsmp(bhcompile@crowe.devel.redhat.com)(gccversion3.4.420050721(RedHat3.4.4-2))#1SMPMonSep19…

    2022年10月13日
  • Java学习之Mybatis框架基础篇

    0x00前言续上篇文章的入门篇,继续markMybatis内容,上一章节只是写了Mybatis的一个简单查询功能,这篇来写他的删改查等其他操作。0x01Mybatis增加大法添加的操作和查

    2021年12月12日
  • mongodb菜鸟教程_mongodb怎么用

    mongodb菜鸟教程_mongodb怎么用MongoVUE是一个关于mongodb数据库管理的工具,并且免费,但超过15天后功能受限。我们可以通过删除mongodb相应的注册表项来解除限制。其步骤如下:1.运行‘win+R’;2.输入‘regedit’,如下图所示:3.进入注册表编辑器,找到与mongodb相关的注册表项,并将里面的注册表项全部删除,如下所示:4.最后可以发现mongovue可以正常使用了,mongovue被激活成功教程了。5.细…

  • layui 弹出层和提交表单

    layui 弹出层和提交表单在点击修改按钮的时候,content路径CPTL/+curId ,路径中的curid是当前信息的ID,弹窗跳出当前的数据信息 2. 把提交的按钮写在子页面里面,这里没有用layui自带的yes:function(), 3….

  • 对称矩阵的压缩存储

    对称矩阵的压缩存储

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号