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

代价函数总结[通俗易懂]代价函数是学习模型优化时的目标函数或者准则,通过最小化代价函数来优化模型。到目前为止,接触了一些机器学习算法,但是他们使用的代价函数不一定是一样的,由于,在现实的使用中,通常代价函数都需要自己来确定,所以,这里总结一下,代价函数都有哪些形式,尽量揣测一下,这样使用的原因。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函数,而此函数在大部分取值范围的导数都很小,这样使得参数的迭代很慢。
而交叉熵的产生过程网友是这样推导的:
这里写图片描述
这里写图片描述

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Go语言之append函数

    Go语言之append函数append函数的作用官方解释append函数是向slice里面追加一个或多个元素,然后返回一个和slice一样类型的slice,其签名为funcappend(slice[]T,elements…T)[]Tappend所做的是在切片尾添加元素并返回结果。结果需要返回因为,正如我们手写的Append,底层的数组可能更改。使用示例:x:=[]int{1,2

    2022年6月18日
  • Microsoft Office 2007 中文专业版密钥

    Microsoft Office 2007 中文专业版密钥MicrosoftOffice2007中文专业版(微软原版)正版密钥MicrosoftOfficeVisio2007简体中文专业版:简介:    便于IT和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流。使用具有专业外观的OfficeVisio2007图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。迅雷下载    …

    2022年7月19日
  • oracle sequence order_oracle session

    oracle sequence order_oracle session在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。  1、Create Sequence  你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,  CREATE SEQUEN

    2022年10月10日
  • java子窗口获取父窗口句柄_java获得窗口句柄[通俗易懂]

    java子窗口获取父窗口句柄_java获得窗口句柄[通俗易懂]学会用按键精灵获取子窗口句柄来源:按键学院【按键精灵】电脑的桌面是最顶级的…Windows通过句柄(Handle)识别每个窗体、控件、菜单和菜单项,当程序运行时,它所包含的每个部件都有一个惟一确定的句柄同其他的部件相区别句柄在WindowsAPI中具有举足……其实呢,“抓抓”抓句柄的功能,实现起来是很容易的,我们一起来操作看看。实现功能点击图片控件之后鼠标不松开,到了需要…

    2022年7月14日
  • MATLAB fmincon 的初值x0的选取问题[通俗易懂]

    MATLAB fmincon 的初值x0的选取问题[通俗易懂]问题描述:在使用fmincon求解局部(全局)最优值时,我们需要在fmincon函数中输入初值x0,那么这个初值是否要像原始的牛顿法一样初值必须在可行域内(严格可行)?MATLAB在Document(https://cn.mathworks.com/help/optim/ug/fmincon.html?s_tid=doc_ta)中是这样描述的:大译:初始点为实值(fmincon只…

    2022年6月1日
  • JS前端去掉emoji表情和Java后台处理emoji表情方法

    莫非定律 : 任何事情都没表面看去来那么简单!emoji表情在项目中使用,因为其特殊的编码格式,经常导致在网络传输、编解码、以及数据入库中带来一些问题!下面简单介绍使用Js和java处理移除emoji表情!Emoji 表情的相关基础内容介绍,请读者自行在网上查找资料!前端JS代码//emojob编码集,因为emoji表情在不断地增加,下面的reg可能在未来会不能满足…

    2022年2月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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