损失函数与正则化的理解
Posted 最后一页代码了
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了损失函数与正则化的理解相关的知识,希望对你有一定的参考价值。
损失函数的理解
1.什么是损失函数
当我们进行机器学习时,需要将每一个样本经过模型得到一个预测值,这个预测值与真实值之间的差值我们就可以称之为损失,损失函数就是为了测量这些损失的多少,以此来评估这个模型的好坏程度,即损失越小,模型越好,越接近实际。
如果你还是不能理解损失函数,那你可以这么理解:本博主很帅,你想变得和本博主一样帅,这时候你就需要一面镜子来衡量我们之间的差距,以便你追上本博主。这时,这面镜子就是损失函数,用来衡量我们之间的差异,让你不断进行改变,越来越靠近本博主。
2.损失函数的意义
经过模型时我们总会产生误差,我们当然想让误差无限的减小,这时后我们就需要引入损失函数进行评估,不同的模型所用的损失函数也不一样,找到适合的损失函数也是很关键的一点,因为它具有呈上启下的作用,承接模型发下来的预测值,启下计算预测值和真实值的差值。
3.常用损失函数
1)L1Loss函数:
tip:y帽是预测值,y是真实值,m是指一行数据有多少列
4.正则化的理解
说到损失函数,就不得不讲讲正则化了,那什么是正则化呢?其实,正则化就是给损失函数制定一些规则,使得由损失函数训练出来的模型没这么的“离谱”(太敏感或者太迟钝),让模型更加的贴近实际。
同样的用上面通俗的例子,读者既然想变得和博主一样帅,那使用的镜子就不能胡来,必须贴近实际,而不是通过哈哈镜让你看起来很瘦或者很肥,这样就远离了实际,就不能像博主一样帅了。给损失函数这面镜子一些限制条件,这就是正则化。
5.正则化的意义
1)当模型拟合程度较低时(称作欠拟合),这样的损失函数显然不是我们需要的。
2)当模型拟合程度过高时(称作过拟合),这样的损失函数显然也不是我们需要的,因为这样的损失函数会连杂物(俗称噪音)一起算进去。
3)适中的损失函数才是我们需要的。
这时候的正则化对损失函数的限制就是其意义所在了。
以上是关于损失函数与正则化的理解的主要内容,如果未能解决你的问题,请参考以下文章
数据预处理中归一化(Normalization)与损失函数中正则化(Regularization)解惑
79tensorflow计算一个五层神经网络的正则化损失系数防止网络过拟合正则化的思想就是在损失函数中加入刻画模型复杂程度的指标