Tensorflow函數之tf.argmax、tf.argmin理解
一、 tf.argmax知識點理解
1.1 作用
找到對應向量或矩陣中的最大值問題。
1.2 表示
tf.argmax的完整表示:tf.argmax(input,axis)
1、input可以是向量、或者矩陣(沒有數值,單獨一個數,沒有比較的意義)。
2、根據axis取值的不同返回每行或者每列最大值的索引。
3、當axis=0,表示比較列,返回每列最大值的索引。當axis=1,表示比較行,返回每行最大值的索引。
1.3 實例
import tensorflow as tf
import numpy as np
A = [[1,3,4,5,6]] #1*5矩陣
B = [[1,3,4], [2,4,1]] #2*3矩陣
C = [1,2,5,7]#向量
with tf.compat.v1.Session() as sess:
print(sess.run(tf.argmax(A, 0)))#在A矩陣中對比每列,結果返回向量
print(sess.run(tf.argmax(B, 0)))#在B矩陣中對比每列
print(sess.run(tf.argmax(A, 1)))#在A矩陣中對比每行
print(sess.run(tf.argmax(B, 1)))#在B矩陣中對比每行
print(sess.run(tf.argmax(C, 0)))#對C向量,只能比較行,結果返回數值
結果:
[0 0 0 0 0]
[1 1 0]
[4]
[2 1]
3
二、 tf.argmin知識點理解
與tf.argmax目的相反,用法相似。
2.1 作用
找到對應向量或矩陣中的最小值問題。
2.2 表示
tf.argmin的完整表示:tf.argmininput,axis)
1、input可以是向量、或者矩陣(沒有數值,單獨一個數,沒有比較的意義)。
2、根據axis取值的不同返回每行或者每列最小值的索引。
3、當axis=0,表示比較列,返回每列最小值的索引。當axis=1,表示比較行,返回每行最小值的索引。
2.3 實例
還是上一個例子爲標準,僅更改tf.argmax爲tf.argmin,具體代碼如下:
import tensorflow as tf
import numpy as np
A = [[1,3,4,5,6]]
B = [[1,3,4], [2,4,1]]
C = [1,2,5,7]
with tf.compat.v1.Session() as sess:
print(sess.run(tf.argmin(A, 0)))
print(sess.run(tf.argmin(B, 0)))
print(sess.run(tf.argmin(A, 1)))
print(sess.run(tf.argmin(B, 1)))
print(sess.run(tf.argmin(C, 0)))
輸出:
[0 0 0 0 0]
[0 0 1]
[0]
[0 2]
0