zoukankan      html  css  js  c++  java
  • TensorFlow—softmax_cross_entropy_with_logits函数详解

    softmax_cross_entropy_with_logits函数原型:

    tf.nn.softmax_cross_entropy_with_logits(labels=y, logits=pred, name=None)
    函数功能:计算最后一层是softmax层的cross entropy,把softmax计算与cross entropy计算放到一起了,用一个函数来实现,用来提高程序的运行速度。

    参数name:该操作的name

    参数labels:shape是[batch_size, num_classes],神经网络期望输出。

    参数logits:shape是[batch_size, num_classes] ,神经网络最后一层的输入。

    具体的执行流程大概分为两步:

    第一步是对网络最后一层的输出做一个softmax,这一步通常是求取输出属于某一类的概率,对于单样本而言,输出就是一个 num_classes 大小的向量([Y1,Y2,Y3,...]其中Y1,Y2,Y3,...分别代表了是属于该类的概率)


    第二步是softmax的输出向量[Y1,Y2,Y3,...]和样本的实际标签做一个交叉熵,


    指实际标签中第i个的值;

    softmax的输出向量[Y1,Y2,Y3...]中,第i个元素的值。

     

    总之,tensorflow之所以把softmax和cross entropy放到一个函数里计算,就是为了提高运算速度。

    转载:https://blog.csdn.net/qiqiaiairen/article/details/53169002

  • 相关阅读:
    C# bool? 逻辑运算
    C# yield return 用法与解析
    枚举器和迭代器
    C# 事件
    C# 索引器
    C# 实现单例模式的几种方法
    协变 和 逆变
    C# 结构体的特点
    装箱 和 拆箱
    继承之---对象用父类声明,用子类实例化
  • 原文地址:https://www.cnblogs.com/hoojjack/p/9566573.html
Copyright © 2011-2022 走看看