码迷,mamicode.com
首页 > 其他好文 > 详细

均方误差和交叉熵误差

时间:2020-12-11 12:25:24      阅读:3      评论:0      收藏:0      [点我收藏+]

标签:width   cross   def   神经网络   防止   error   python   简单   lazy   

均方误差个交叉熵误差都是常用的损失函数之一。

首先简要介绍下损失函数:

损失函数是用来表示神经网络性能的“恶劣程度”的指标。即当前神经网络对监督数据在多大程度上不拟合,在多大

程度上不一致。说白了,即所创建的神经网络对输入数据的预测输出值与监督数据(实际输出值)的差距。

均方误差:

技术图片

 

上面是计算公式,其中yk表示神经网络的预测输出值,tk表示监督数据,k表示数据的维数。前面的1/2是为了求导

的时候可以消去指数下来的2。

下面是Python的简单实现:

# 均方误差
def mean_squared_error(y, t):
    return 0.5 * np.sum((y - t)**2)

交叉熵误差:

技术图片

 

上面是计算公式,log表示以e为底数的自然对数,yk是神经网络预测输出值,tk是正解标签。并且tk中只有正确解

标签的索引为1,其他都是0(one-hot表示)。

下面是Python的简单实现:

# 交叉熵误差
def cross_entropy_error(y, t):
    delta = 1e-7 # 注意此处为0.0000001 用于防止出现np.log(0)时出现的无穷小 防止出现-inf后无法继续计算
    return -np.sum(t * np.log(y + delta))

 

 

 

均方误差和交叉熵误差

标签:width   cross   def   神经网络   防止   error   python   简单   lazy   

原文地址:https://www.cnblogs.com/lnlin/p/14097752.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!