码迷,mamicode.com
首页 > 其他好文 > 详细

TensorFlow argmax函数

时间:2017-12-19 01:23:13      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:最大值   round   gpo   数字   个数   class   序号   预测   分类   

之前对这个函数理解一直有误。

以为是获取一个张量中,行/列的最大值。

其实他获取的是行/列中最大值的索引号

tf.argmax(input, axis=None, name=None, dimension=None)

axis:0按列,1按行。

举个例子

[[1,2,3,4]]

A=[[1,2,3,4]]
tf.argmax(A, 0)
tf.argmax(A, 1)

会得到

[0 0 0 0]

[3]

因为按列算,每一列的第唯一一个数组就是最大的数字,其索引号都是0。所以所有的列返回的都是0,总共有4列所以返回:[0,0,0,0]

按行计算得到的就是这一行4个数字中最大的数字4的索引号:3所以返回[3]

 

 

TensorFlow MNIST最佳实践中计算交叉熵的时候就使用了这个函数:

 

cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=y, labels=tf.argmax(y_, 1))

 

在计算单一分类问题的交叉熵时,通常是这样绑定使用的。

这里的y_是测试数据的真实值。y是我们神经网络预测的值。

这里通过tf.argmax(y_, 1)方法,就获取到正确答案的序号了。然后再进行交叉熵的计算。

 

 

参考链接:

http://blog.csdn.net/zj360202/article/details/70259999

http://blog.csdn.net/UESTC_C2_403/article/details/72232807

 

TensorFlow argmax函数

标签:最大值   round   gpo   数字   个数   class   序号   预测   分类   

原文地址:http://www.cnblogs.com/guolaomao/p/8059015.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!