损失函数(均方误差)

损失函数

神经网络以某个指标为线索寻找最优权重参数。神经网络的学习中所用的指标称为损失函数 (loss function)。这个损失函数可以使用任意函数,但一般用均方误差和交叉熵误差等。

均方误差

可以用作损失函数的函数有很多,其中最有名的是均方误差 (mean squared error)。均方误差如下式所示。
在这里插入图片描述
这里,yk 是表示神经网络的输出,tk 表示监督数据,k 表示数据的维数。

如式(4.1)所示,均方误差会计算神经网络的输出和正确解监督数据的各个元素之差的平方,再求总和。现在,我们用 Python 来实现这个均方误差,实现方式如下所示。

import numpy as np


def mean_squared_error(y, t):
    return 0.5 * np.sum((y - t) ** 2)


if __name__ == '__main__':
    t = [0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
    y = [0.1, 0.05, 0.6, 0.0, 0.05, 0.1, 0.0, 0.1, 0.0, 0.0]

    print(mean_squared_error(np.array(y), np.array(t)))

运行结果:

0.09750000000000003

你可能感兴趣的:(深度学习笔记,神经网络,深度学习)