• 第五节,损失函数:MSE和交叉熵


    损失函数用于描述模型预测值与真实值的差距大小,一般有两种比较常见的算法——均值平方差(MSE)和交叉熵。

    1、均值平方差(MSE):指参数估计值与参数真实值之差平方的期望值。

    在神经网络计算时,预测值要与真实值控制在同样的数据分布内,假设将预测值经过Sigmoid激活函数得到取值范围在0~1之间,那么真实值也归一化到0~1之间。

    2、交叉熵:预测输入样本属于某一类的概率。

    其中y代表真实值分类(0或1),a代表预测值,交叉熵值越小,预测结果越准。

    3、损失函数的选取

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

     4、Tensorflow常见的loss函数

    • 均值平方差
    # logits代表标签值,outputs代表预测值
    MSE = tf.reduce_mean(tf.pow(tf.sub(logits,outputs),2.0))
    MSE = tf.reduce_mean(tf.square(logits-outputs))
    •  交叉熵:Sigmoid交叉熵、softmax交叉熵、Sparse交叉熵、加权Sigmoid交叉熵

  • 相关阅读:
    Iterator接口源码阅读
    Iterator接口实现类
    Enumeration接口源码阅读
    lambda表达式
    方法引用
    JAVA并发之AQS概述
    牛牛取快递——从dfs到dijkstra以及堆优化的dijkstra
    牛客2018java模拟编程题
    排序算法java实现以及简易性能测试
    java 死锁例子以及闭锁使用确保死锁产生
  • 原文地址:https://www.cnblogs.com/wyx501/p/10548657.html
Copyright © 2020-2023  润新知