Python tensorflow将每行除以不同的和
假设我有一个像这样的张量:Python tensorflow将每行除以不同的和,python,tensorflow,Python,Tensorflow,假设我有一个像这样的张量: T = [[1,2,3,4], [5,6,7,8], [9,10,11,12]]. 我用reduce_sum(T,1)得到了不同张量下的所有和,但我似乎找不到一种方法来实际地将和除以行。如何在Tensorflow中将每一行除以它的和(即[1,2,3,4]除以10、[5,6,7,8]除以26等)?这很容易实现,只需将矩阵元素除以表示每个维度和的向量: import tensorflow as tf a = tf.constant([ [1
T = [[1,2,3,4],
[5,6,7,8],
[9,10,11,12]].
我用reduce_sum(T,1)得到了不同张量下的所有和,但我似乎找不到一种方法来实际地将和除以行。如何在Tensorflow中将每一行除以它的和(即[1,2,3,4]除以10、[5,6,7,8]除以26等)?这很容易实现,只需将矩阵元素除以表示每个维度和的向量:
import tensorflow as tf
a = tf.constant([
[1, 2, 3, 4],
[5, 6, 7, 8]
], dtype=tf.float32)
b = tf.reduce_sum(a, axis=1)
c = a / tf.reshape(b, (-1, 1))
with tf.Session() as sess:
print sess.run(c)