最近在用tensorflow,其中用到一些函数中都有axis这个参数,下面是自己对tensorflow中的axis的一些理解:
以tf.reduce_max(tensor,axis = 0)为例子
axis=0表示每次拿出来的数是以tensor的第0维为单位,我们知道,以二维tensor为例子,第0维表示行,所以就是每次从每一行拿出来一个数来进行操作,所以最后得到的其实是每一列的最大值,axis=1则相反,是得到每一行的最大值,因为在拿数据的时候是以列为单位拿的,每列拿一個,附上代码:
>>>import tensorflow as tf
>>> a = [[1,2,3],[4,5,6],[7,8,9]]
>>> b = tf.reduce_max(a,axis = 0)
>>> with tf.Session() as sess:
print(sess.run(b))
[7 8 9]
>>> a = [[1,2,3],[4,5,6],[7,8,9]]
>>>b = tf.reduce_max(a,axis = 1)
>>> with tf.Session() as sess:
print(sess.run(b))
[3 6 9]
未完待续。。。。