【发布时间】:2025-12-01 01:35:02
【问题描述】:
我对张量不太了解,如果这是一个愚蠢的问题,请原谅我。
我正在尝试使用 Keras 的 Lambda 层为我的模型添加一个特殊层。 我想让这个层计算张量的平均值,我希望这个平均值用作张量值。
为了更清楚,这是我需要的,但在 numpy 中,我不知道如何使用张量来做到这一点: (使用 NumPy 不适用于张量)
colInput ## this should be my tensor
avg = np.mean(colInput)
colInput =[avg for n in range(colInput.shape[0])]
我确实尝试了以下方法:
avg = tf.reduce_mean(colInput)
我也试过了:
avLayer= Lambda(lambda x: tf.reduce_mean(x, axis=1, keepdims=False))(visible)
where visible 有我的 colInput 作为输入层,但我无法为张量中的每个元素创建结果集,并使用这个新张量。
我的张量形状是 (?,1,27) 我希望它有这个 27,但它们将等于平均值。
提前致谢
【问题讨论】:
-
所以如果你的输入张量是
[[1, 2, 3, 4]],你希望输出是[[2.5, 2.5, 2.5, 2.5]]? -
是的,没错
标签: python tensorflow keras average