CNN之tf.argmax,簡單暴力帶你學

CNN之tf.argmax,簡單暴力帶你學

以下代碼均在ubunu20.04下完成,與之前版本略有不同,均以改正!!

import tensorflow.compat.v1  as tf
tf.compat.v1.disable_eager_execution()
x=tf.constant([[1.,2.,3.,4.,],[5.,6.,7.,8.],[9.,10.,11.,12.],[13.,14.,15.,16]])
x=tf.reshape(x,[2,2,4,1])//把x分成兩大塊,兩大塊裏在分兩小塊,兩小塊在分成一個4*1的矩陣
c0=tf.argmax(x,axis=0)
c1=tf.argmax(x,axis=1)
c2=tf.argmax(x,axis=2)
c3=tf.argmax(x,axis=3)
with tf.Session() as sess:
	a7=sess.run(c0)
	a8=sess.run(c1)
	a9=sess.run(c2)
	a10=sess.run(c3)
	print(a7)
	print(a8)
	print(a9)
	print(a10)
	

這裏是[2,2,4,1]的x,再說一遍,把x分成兩大塊,兩大塊裏在分兩小塊,兩小塊在分成一個4*1的矩陣,觀察中括號你就可以發現!!
在這裏插入圖片描述
重點來咯!!!
axis=0,在0軸啥意思呢:就是在剛纔分好的兩大塊之間分別對比,選取比較大的數字的索引值。
例如1和9,2和10;其中 1 的索引爲 0,9 的索引爲 1。2和10同理。
因爲9大於1,就寫1。 10大於2,就寫1.
在這裏插入圖片描述
axis=1,意思就是在1軸進行對比,不懂沒關係,這次注意觀察兩小塊,這次就是在兩小塊之間對比。舉例子不廢話:1 和 5;2 和 6;;同理 1 的索引是 0 ;5 的索引是 1;誰大就寫誰的。簡單不,嘿嘿
在這裏插入圖片描述
axis=2;這個我不多廢話,肯定是更小的進行對比。上例子:1 2 3 4 一起比較,1的索引是0,2的的索引是1,3的索引是2,4的索引是3;很明顯 4 最大,所以 寫 3
在這裏插入圖片描述
最後一個沒人比較 ,都是自己000000,嘿嘿嘿嘿哈
在這裏插入圖片描述











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章