TensorFlow不同交叉熵计算方式
2017-08-26 14:30
274 查看
import tensorflow as tf #our NN's output logits=tf.constant([[1.0,3.0,2.0],[3.0,2.0,1.0],[1.0,2.0,3.0]]) #step1:do softmax y=tf.nn.softmax(logits) #true label y_=tf.constant([[0.0,1.0,0.0],[1.0,0.0,0.0],[0.0,0.0,1.0]]) #step2:do cross_entropy cross_entropy = -tf.reduce_sum(y_*tf.log(y)) #do cross_entropy just one step cross_entropy2 = tf.reduce_sum(tf.nn.softmax_cross_entropy_with_logits(logits = logits,labels=y_))#dont forget tf.reduce_sum()!! lab = tf.constant([1,0,2]) cross_entropy3 = tf.reduce_sum(tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits,labels=lab)) with tf.Session() as sess: softmax=sess.run(y) c_e = sess.run(cross_entropy) c_e2 = sess.run(cross_entropy2) print("step1:softmax result=") print(softmax) print("step2:cross_entropy result=") print(c_e) print("Function(softmax_cross_entropy_with_logits) result=") print(c_e2) c_e3 = sess.run(cross_entropy3) print("using sparse cross_entropy") print(c_e3)
相关文章推荐
- yuv420 rgb32等各个不同数据帧大小的计算方式
- caffe中不同层的含义和卷积的计算方式
- 第三周周末------计算圆的面积和体积两种不同输出方式
- Go语言中三种不同md5计算方式的性能比较
- c语言学习之不同方式计算圆周率
- 从矩阵乘法的不同计算方式来看局部性原理
- android中根据不同语言的用户执行不同的计算方式
- 终于懂了:FWinControls子控件的显示是由Windows来管理,而不是由Delphi来管理(显示透明会导致计算无效区域的方式有所不同——透明的话应减少剪裁区域,所以要进行仔细计算)
- Scala学习-不同方式计算斐波那契数列效率比较
- Java中比较不同的MD5计算方式
- 蒙特卡洛估值几种不同的计算方式(Python)
- [Storage] 不同阵列类型所能提供的IOPS计算方式
- 串口MSComm控件五种不同校验方式对数据收发的影响
- DevExpress XtraReports 入门六 控件以程序方式创建一个 交叉表 报表
- TensorFlow不同版本引起的错误
- Linux Shell 计算变量长度的不同方法及不同方法的耗时对比
- jquery操作---从html中取值不同方式
- LRN在caffe和tensorflow中的不同实现
- 两个线程A和B,任务都是打印当前时间,要求编码实现:线程A和B同时启动后,以先A后B的方式任务交叉执行10次。