【发布时间】:2020-12-25 06:58:27
【问题描述】:
复制 Tensorflow 张量的正确方法是什么?在常规 Python 中,分配非基元 (b = a) 会创建对同一对象的引用,因此我们使用 deepcopy。在 Tensorflow 中是否同样需要 tf.identity,或者 Tensorflow 是否认为 b 在 b = a 之后是唯一的 Tensor?
我的具体需求总结如下。我正在构建块中的模型,每个块获取前一个块的输出,通过层将其馈送,然后与前一个块的原始原始输出求和。请看标记为方法 A 和方法 B 的 2 行。哪个是正确的?
for block_num in range(4):
if block_num == 0:
x = inputTensor
x = tf.keras.layers.Dense(100, activation='relu')(x)
if block_num > 0:
x = block_output_tensor + x
# method A - assignment
block_output_tensor = x
# method B - copy
# block_output_tensor = tf.identity(x)
【问题讨论】:
标签: python tensorflow keras tf.keras