作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚使用 TensorFlow 实现了 CNN 模型。在这里,我有一个 4 维张量:A=[16,96,96,64](16 是批量大小,96 是图像 block 大小,64 是特征图数量)。我只需要计算张量 A 中每个特征图的平均值(如平均池化)并返回一个大小为 [16,1,1,64] 的新张量,它包含 A 中每个特征图的平均值.
您能告诉我我是如何实现这一点的吗?
提前致谢!
大小为 [16,96,96,64] 的张量,我需要获取该张量中每个特征图的平均值并返回大小为 [16,1,1,64] 的张量。我不知道如何实现这一点。
结果应该是包含张量A中特征图平均值的张量,其大小为[16,1,1,64]。
最佳答案
使用带有指定参数axis
的tf.reduce_mean()
来计算平均值,然后使用tf.expand_dims()
来恢复缩小的轴:
import tensorflow as tf
import numpy as np
x = tf.placeholder(tf.float32, (None, 96, 96, 64))
reduced = tf.expand_dims(tf.reduce_mean(x, axis=1), 1)
reduced = tf.expand_dims(tf.reduce_mean(reduced, axis=2), 2)
data = np.random.normal(size=(16, 96, 96, 64))
with tf.Session() as sess:
evaled = reduced.eval({x:data})
print(evaled.shape) # (16, 1, 1, 64)
关于python - 如何在 TensorFlow 中计算 4 维张量的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55882613/
我是一名优秀的程序员,十分优秀!