tf.argmax(data, axis=None)
用tensorflow 做 mnist分类时,用到这个接口,于是就研究了下这个接口的用法:

如果是一维数组呢?

data = tf.constant([1,2,3])
with tf.Session() as sess:print(sess.run(tf.argmax(data, 0)))#轴默认为0print(sess.run(tf.argmax(data)))
>>> 2
>>> 2

这个很好理解,因为data是一维数组,axis只能为0(如果是1就会报错),结果返回数组中最大值的下标,所以是2

如果是二维数组呢?

data = tf.constant([[1,2,3]])
with tf.Session() as sess:print(sess.run(tf.argmax(data, 0)))print(sess.run(tf.argmax(data, 1)))
>>> [0,0,0]
>>> [2]

是不是有点晕了?
我是这么理解的:
Axis = 0时:
只有data[0] = [1,2,3], 按照对应位置比较,因为只有data[0],1的对应位置为空,所以1是最大值,2的对应位置为空所以2是最大值,3的对应位置为空所以3是最大值。
而argmax函数返回的是最大值的索引,因为1, 2,3 都属于data[0],所以返回值是 [0, 0, 0].
Axis = 1时:

Data[0][0] = 1
Data[0][1] = 2
Data[0][2] = 3

1和2 和 3比较显然是 3最大,3的索引为2,所以返回[2]
再看一个二维数组,可能就明白了:

data = tf.constant([[1,2,3], [4,5,6]])
with tf.Session() as sess:print(sess.run(tf.argmax(data, 0)))print(sess.run(tf.argmax(data, 1)))
>>> [1, 1, 1]
>>> [2, 2]

Axis = 0时:

Data[0] = [1,2,3]
Data[1] = [4,5,6]

对应位置比较:4 > 1, 5>2, 6>3, 所以返回 4,5,6所在的索引位置[1,1,1]

Axis = 1时:

Data[0][0] = 1
Data[0][1] = 2
Data[0][2] = 3

对应位置比较 3最大,3的索引为2

Data[1][0] = 4
Data[1][1] = 5
Data[1][2] = 6

对应位置比较6最大,6的索引为2
所以最后返回[2,2].

同样如果是三维数组:

data = tf.constant([[[1,2,3]], [[7, 1,9]]])
with tf.Session() as sess:print(sess.run(tf.argmax(data, 0))) # [[1 0 1]]print(sess.run(tf.argmax(data, 1))) # [[0,0,0],[0,0,0]]print(sess.run(tf.argmax(data, 2))) # [[2],[2]]

同样步骤分析:
Axis = 0时:

Data[0] = [[1, 2, 3]]
Data[1] = [[7, 1, 9]]

对应位置比较 7>1, 2 >1, 9> 3, 7属于索引1,2属于索引0,9属于索引1,所以返回[[1, 0,1]].
Axis = 1时:

Data[0][0] = [1,2,3]

1 2 3,对应位置分别为空,所以1,2,3在对应位置都是最大,1,2,3,都属于索引为0,返回[0,0,0]。

Data[1][0] = [7, 1,9]

7 1 9,对应位置分别为空,所以7,1,9在对应位置都是最大,7,1,9,都属于索引为0,返回[0,0,0]
所以最后返回[[0,0,0],[0,0,0]]。
Axis = 2时:

Data[0][0][0] = 1
Data[0][0][1] = 2
Data[0][0][2] = 3

3比较最大,3所在的索引为2,返回 2,

Data[1][0][0] = 7
Data[1][0][1] = 1
Data[1][0][2] = 9

9 最大,9所在的索引为2,返回2
所以最后返回[[2],[2]].
如果是四维或者更高维度,都是按照同样的方法。

tf.argmax()的详细用法相关推荐

  1. 【Tensorflow】 tf.equal(tf.argmax(y, 1),tf.argmax(y_, 1))用法

    [Tensorflow] tf.equal(tf.argmax(y, 1),tf.argmax(y_, 1))用法 作用:输出正确的预测结果 利用tf.argmax()按行求出真实值y_.预测值y最大 ...

  2. tf.boolean_mask()的详细用法

    tf.boolean_mask 的作用是 通过布尔值 过滤元素 def boolean_mask(tensor, mask, name="boolean_mask", axis=N ...

  3. tf.argmax()的用法

    tf.argmax()的主要功能是找出最大值并返回索引,注意是索引.下面是主要的内参数 tf.argmax(input,axis=None,name=None,dimension=None,outpu ...

  4. pythonargmaxaxis1_np.argmax(input,axis)和tf.argmax(input,axis)使用

    np.argmax(input,axis)和tf.argmax(input,axis)分别是numpy和TensorFlow底下的求最大值索引的方法,用法基本一致,只有默认情况下有细微差别,以及传入的 ...

  5. Tensorflow中的tf.argmax()函数

    转载出处:http://www.cnblogs.com/willnote/p/6758953.html 官方API定义 tf.argmax(input, axis=None, name=None, d ...

  6. Android命令行工具logcat详细用法!

    logcat是Android中一个命令行工具,可以用于得到程序的log信息. 见板凳详细说明!      本贴内容来自网络,引用网址为:http://hi.baidu.com/%C9%C1%D2%AB ...

  7. 【TensorFlow】tf.nn.softmax_cross_entropy_with_logits的用法

    [TensorFlow]tf.nn.softmax_cross_entropy_with_logits的用法 from:https://blog.csdn.net/mao_xiao_feng/arti ...

  8. tf.argmax tf2版本

    对于tf.argmax,这个函数有点奇怪,axis=0指的是计算矩阵每列的最大值索引,axis=1计算行最大值索引 与numpy 相同 import tensorflow as tf import n ...

  9. __declspec关键字详细用法

    __declspec关键字详细用法 2009-01-21 16:23 __declspec用于指定所给定类型的实例的与Microsoft相关的存储方式.其它的有关存储方式的修饰符如static与ext ...

最新文章

  1. gil php,网络编程之多线程——GIL全局解释器锁
  2. .vue文件_在idea中创建vue文件
  3. 优化物理和机器学习之间的协同作用
  4. m.2接口和nvme区别_M.2硬盘的分类和区别
  5. linux虚拟机状态转换图,VirtualBox的Linux虚拟机文本模式和图形模式的切换问题
  6. Kubernetes插件部署
  7. python语言的特点有没有面向过程_Python 入门基础之面向对象过程-面向过程概述...
  8. GMIC来了 HTC VIVE细化VR梦
  9. linux centos7.9图形界面版本下载_适合在任何地方使用的 Linux:15 个小型 Linux 发行版...
  10. 重点推荐:HP大中华区总裁孙振耀退休感言
  11. Apache提示You don't have permission to access / on this server问题解决
  12. jquery 插件页面回到顶部
  13. 机器码、序列号、认证码、注册码的生成算法(一)
  14. 门禁系统使用计算机的技术,门禁系统的指纹识别功能所运用的计算机技术是( )...
  15. Vue开发工具vuejs-devtools超级详细安装教程以及常见问题解决
  16. rax Picture组件
  17. linux office 永中,永中Office Linux版
  18. [编程题]字符串分隔
  19. 我为什么鼓励你读计算机领域的博士?
  20. CCD靶面尺寸对应的宽高和对角线长度

热门文章

  1. 基于云开发的助农业发展微信小程序源码
  2. 1.简单爬虫————爬取古诗网
  3. uni-app中使用腾讯地图
  4. 微信 被动回复 (五)
  5. python+django+vue房屋租赁系统 房东
  6. android root权限注册,安卓root权限获取的方法【图文教程】
  7. android raw文件作用,Android 中raw和assets文件夹的区别
  8. MFC Windows 程序设计(4)
  9. 梅科尔工作室-张敏-鸿蒙笔记2
  10. USTC-快电子学2019秋季考试