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

    github博客传送门
    csdn博客传送门

    损失函数的迭取取决于输入标签数据的类型:如果输入的是实数,无界的值,损失函数使用平方差;如果输入的标签是位矢量(分类标志)使用交叉熵会更合适

    均值平方差(Mean Squared Error, MSE)也称均方误差
    神经网络中:表达预测值与真实值之间的差异
    数理统计中:指参数估计值与参数真值之差平方的期望值
    均方误差的值越小,表明模型越好


    MSE: Mean Squared Error

    均方误差是指参数估计值与参数真值之差平方的期望值;
    MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。
    $$ MSE = frac{1}{N}sum_{t=1}^{N}left ( obersved_{t} - predicted_{t} ight )^{2} $$
    程序写法:

    MSE=tf.reduce_mean(tf.pow(tf.sub(logits, outputs), 2.0))
    MSE=tf.reduce_mean(tf.square(tf.sub(logits, outputs)))
    MSE=tf.reduce_mean(tf.square(logits - outputs))
    

    RMSE

    均方误差:均方根误差是均方误差的算术平方根
    $$ RMSE = sqrt{frac{1}{N}sum_{t=1}^{N} left ( obersved_{t} - predicted_{t} ight)^{2} } $$
    程序写法:

    RMSE=tf.sqrt(tf.reduce_mean(tf.pow(tf.sub(logits, outputs), 2.0)))
    

    MAE :Mean Absolute Error

    平均绝对误差是绝对误差的平均值
    平均绝对误差能更好地反映预测值误差的实际情况.
    $widehat{y}$ 表示预测值 $y$ 表示真实值
    $$ MAE = frac{1}{N}sum_{t=1}^{N}left | (widehat{y}-y) ight | $$
    程序写法:

    MAE=tf.reduce_mean(tf.abs(tf.sub(logits, label)))
    

    SD :standard Deviation

    标准差:标准差是方差的算术平方根。标准差能反映一个数据集的离散程度。平均数相同的两组组数据,标准差未必相同。
    $u$表示平均值$left ( u = frac{1}{N}left ( x_{1}+cdot cdot cdot + x_{N} ight ) ight )$
    $$ SD = sqrt{frac{1}{N}sum_{t=1}^{N}left ( x_{i}-u ight )^{2}} $$
    程序写法:

    SD=tf.sqrt(tf.reduce_mean(tf.pow(tf.sub(x_i-u), 2.0)))
    
  • 相关阅读:
    Java 抽象类 初学者笔记
    JAVA super关键字 初学者笔记
    Java 标准输入流 初学者笔记
    JAVA 将对象引用作为参数修改实例对象参数 初学者笔记
    JAVA 根据类构建数组(用类处理数组信息) 初学者笔记
    JAVA 打印日历 初学者笔记
    Python 测试代码 初学者笔记
    Python 文件&异常 初学者笔记
    Python 类 初学者笔记
    ubuntu网络连接失败
  • 原文地址:https://www.cnblogs.com/Mrzhang3389/p/9904058.html
Copyright © 2011-2022 走看看