zoukankan      html  css  js  c++  java
  • 损失函数

    定义:表示神经网络性能的“恶劣程度”的指标,即当前的神经网络对监督数据在多大程度上不拟合,在多大程度上不一致。

    均方误差

    yk 是表示神经网络的输出,tk 表示监督数据,k 表示数据的维数。

    代码实现

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

    交叉熵误差

     

    代码实现:

    def cross_entropy_error(y, t):
        delta = 1e-7
        return -np.sum(t * np.log(y + delta))

    mini-batch使用损失函数

      计算损失函数时必须将所有的训练数据作为对象。也就是说,如果训练数据有100 个的话,我们就要把这100 个损失函数的总和作为学习的指标。

    以交叉熵为例

      假设数据有N个,tnk 表示第n个数据的第k 个元素的值(ynk 是神经网络的输出,tnk 是监督数据),交叉熵误差表示如下求得平均损失函数:

    代码实现:

    def cross_entropy_error(y, t):
        if y.ndim == 1:
            t = t.reshape(1, t.size)
            y = y.reshape(1, y.size)
    batch_size
    = y.shape[0] return -np.sum(t * np.log(y + 1e-7)) / batch_size
  • 相关阅读:
    spring中applicationContext.xml配置文件
    获取当前项目的名称
    文件上传
    bean工厂
    过滤器
    hibernate入门
    struts2入门案例
    第一个分派struts2实例
    mysql实用函数
    通过jquery 获取用户当前所在的城市名称和IP地址
  • 原文地址:https://www.cnblogs.com/latencytime/p/11063425.html
Copyright © 2011-2022 走看看