tf.reduce_sum()函数
1
2
3
4
5
6
7
reduce_sum 是 tensor 內(nèi)部求和的工具。其參數(shù)中:
input_tensor 是要求和的 tensor
axis 是要求和的 rank,如果為 none,則表示所有 rank 都要仇和
keep_dims 求和后是否要降維
這個(gè)操作的名稱,可能在 graph 中 用
已被淘汰的,被參數(shù) axis 替代
x = tf.constant([[1, 1, 1], [1, 1, 1]])
tf.reduce_sum(x, 0) # 對(duì) tensor 的 0 級(jí)進(jìn)行求和,[1,1,1] + [1,1,1] = [2, 2, 2]
tf.reduce_sum(x, 1) # 對(duì) tensor 的 1 級(jí)進(jìn)行仇和,[1+1+1, 1+1+1] = [3, 3]
tf.reduce_sum(x, 1, keep_dims=True) # 對(duì)第 1 級(jí)進(jìn)行求和,但不降維, [[3], [3]]
tf.reduce_sum(x, [0, 1]) # 0 級(jí)和 1級(jí)都要求和,6
tf.reduce_sum(x) # 因?yàn)?x 只有 2 級(jí),所以結(jié)果同上一個(gè),6
1
2
3
4
5
6
上面是TensorFlow官方文檔中的函數(shù)解釋。
其實(shí)在reduce_sum()中,是從維度上去考慮的(感覺這個(gè)Matlab中數(shù)據(jù)的概念比較像)
調(diào)用reduce_sum(arg1, arg2)時(shí),參數(shù)arg1即為要求和的數(shù)據(jù),arg2有兩個(gè)取值分別為0和1,通常用reduction_indices=[0]或reduction_indices=[1]來傳遞參數(shù)。從上圖可以看出,當(dāng)arg2 = 0時(shí),是縱向?qū)仃嚽蠛?#xff0c;原來矩陣有幾列就得到幾個(gè)值;相似地,當(dāng)arg2 = 1時(shí),是橫向?qū)仃嚽蠛?#xff1b;當(dāng)省略arg2參數(shù)時(shí),默認(rèn)對(duì)矩陣所有元素進(jìn)行求和。
看到這里,函數(shù)名的前綴為什么是reduce_其實(shí)也就很容易理解了,reduce就是“對(duì)矩陣降維”的含義,下劃線后面的部分就是降維的方式,在reduce_sum()中就是按照求和的方式對(duì)矩陣降維。那么其他reduce前綴的函數(shù)也舉一反三了,比如reduce_mean()就是按照某個(gè)維度求平均值,等等。
---------------------
作者:GeorgeAI
來源:CSDN
原文:https://blog.csdn.net/georgeai/article/details/81030811
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!
總結(jié)
以上是生活随笔為你收集整理的tf.reduce_sum()函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转载]Tensorflow 的redu
- 下一篇: tf.cast()数据类型转换