损失函数

一 损失函数介绍
损失函数用于描述模型预测值与真实值的差距大小。一般有有两种常见的算法——均值平方差(MSE)和交叉熵。下面来分别介绍每个算法的具体内容。
1 均值平方差
均值平方差(Mean Squared Error,MSE),也称“均方误差”,在神经网络中主要是表达预测值和真实值之间的差异,在数理统计中,均方误差是指参数估计值与参数真值之差平方的预期值。
公式如下:主要是对每一个真实值与预期值相减的平方取平均值:
均方误差的值越小,表明模型越好。
类似的损失算法还有均方根误差RMSE(将MSE开平方):
平均绝对值误差MAD(对一个真实值与预测值相减的绝对值取平均值)
2 交叉熵
交叉熵(crossentropy)也是loss算法的一种,一般用在分类问题上,表达意思为预测输入样本属于哪一类的概率。其表达式如下,其中y代表真实值分类(0或1),a代表预测值。
二分类情况下的公式:
交叉熵也是值越小,代表预测结果越准。
3 损失算法的选取
损失函数的选取取决于输入标签数据的类型:
如果输入的实数、无界的值,损失函数使用平方差。
如果输入标签是位矢量(分类标志),使用交叉熵会更适合。

二 损失函数举例
下面是3个训练样本经过使用softmax作为激活函数的神经网络的输出(computed)、真实结果(targets)以及是否预测正确的对比表格。
下面是另外一个网络的训练结果
1 交叉熵计算(三分类交叉熵)
第一个样本的交叉熵为:
−(0∗ln0.3+0∗ln0.3+1∗ln0.4)=−ln0.4
对于神经网络来说,交叉熵的计算有点古怪,因为只有一项会被保留下来。因此三个样本的平均交叉熵为:
−(ln0.4+ln0.4+ln0.1)/3=1.38
第二个网络的平均交叉熵为:
−(ln0.7+ln0.7+ln0.3)/3=0.64
2 均方误差(Root Mean Square Error, RMSE)
第一个网络:0.81
第二个网络:0.34

三 参考
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值