tf.add_n
是 TensorFlow 中的一个函数,它用于将多个张量(tensors)相加。这个函数接受一个张量的列表作为输入,并返回它们的和。这个函数特别有用,当你需要将多个张量相加时,而不需要在代码中写多个 tf.add
操作。
函数的基本用法如下:
import tensorflow as tf
# 创建一些张量
tensor1 = tf.constant([1, 2])
tensor2 = tf.constant([3, 4])
tensor3 = tf.constant([5, 6])
# 使用 tf.add_n 将它们相加
result = tf.add_n([tensor1, tensor2, tensor3])
# 启动 TensorFlow 会话并计算结果
with tf.Session() as sess:
print(sess.run(result)) # 输出: [9 12]
在这个例子中,tf.add_n
将三个张量 [1, 2]
、[3, 4]
和 [5, 6]
相加,得到结果 [9, 12]
。
注意,tf.add_n
要求所有输入张量的形状必须相同,否则会抛出错误。此外,从 TensorFlow 2.x 开始,tf.Session
已经不再需要,因为 TensorFlow 2.x 默认使用 eager execution,可以直接计算张量的结果,不需要显式创建会话。上面的代码在 TensorFlow 2.x 中可以简化为:
import tensorflow as tf
# 创建一些张量
tensor1 = tf.constant([1, 2])
tensor2 = tf.constant([3, 4])
tensor3 = tf.constant([5, 6])
# 使用 tf.add_n 将它们相加
result = tf.add_n([tensor1, tensor2, tensor3])
print(result) # 输出: tf.Tensor([9 12], shape=(2,), dtype=int32)
在 TensorFlow 2.x 中,tf.add_n
可以直接返回计算结果,不需要启动会话。