如何在单个 TensorFlow 层中添加所有 kernels/filters 并将输出作为 1 个最终单个图像输出?
How can I add all kernels/filters in a single TensorFlow Layer and give output as 1 final single image?
我需要做的是在我的模型中有一个最后一层作为 (None,512,512,64) ,我想明智地添加所有这 64 个图像元素并提供我的模型的输出。
那么我如何添加单层中存在的所有图像导致 1 个输出。
假设您当前的网络有以下层:
layer = Conv2D(64, kernel_size=(9, 9), input_shape=(512, 512, 1), padding='same',name = 'conv1')(input)
现在您的特征的维度为 [None, 512, 512, 64]。你可以跟进
layer = Conv2D(1, kernel_size=(9, 9), input_shape=(512, 512, 1), padding='same',name = 'conv2')(input)
我假设您使用的是 Conv2D,因此您的输出将是形状为 [None, 512, 512, 1]
的灰度图像。如果这不是你想要的,你只是想添加张量,你可以在 axis = 3
中使用 tf.math.reduce_sum
,只需将第一层的张量输出提供给它即可。
我需要做的是在我的模型中有一个最后一层作为 (None,512,512,64) ,我想明智地添加所有这 64 个图像元素并提供我的模型的输出。 那么我如何添加单层中存在的所有图像导致 1 个输出。
假设您当前的网络有以下层:
layer = Conv2D(64, kernel_size=(9, 9), input_shape=(512, 512, 1), padding='same',name = 'conv1')(input)
现在您的特征的维度为 [None, 512, 512, 64]。你可以跟进
layer = Conv2D(1, kernel_size=(9, 9), input_shape=(512, 512, 1), padding='same',name = 'conv2')(input)
我假设您使用的是 Conv2D,因此您的输出将是形状为 [None, 512, 512, 1]
的灰度图像。如果这不是你想要的,你只是想添加张量,你可以在 axis = 3
中使用 tf.math.reduce_sum
,只需将第一层的张量输出提供给它即可。