Tensorflow:用不同的内核卷积每个图像

Tensorflow:用不同的内核卷积每个图像,tensorflow,conv-neural-network,tensorflow-gpu,Tensorflow,Conv Neural Network,Tensorflow Gpu,在TensorFlow中,如何使用不同的2D内核在小批量中卷积每个图像?每个小批量图像的大小为[10000,32,32],相应的过滤器的大小为[10000,2,2]--10000个内核,每个内核为2像素x 2像素。我希望获得大小为[10000,31,31]的输出。(我计划将步幅全部设置为1,并使用“有效”选项关闭填充,这样输出图像的大小为31x31,而输入图像的大小为32x32。) 在中,解决方案是向小批量图像添加“深度”维度,然后使用conv3d而不是conv2d。但在这个问题上,op似乎满足

在TensorFlow中,如何使用不同的2D内核在小批量中卷积每个图像?每个小批量图像的大小为
[10000,32,32]
,相应的过滤器的大小为
[10000,2,2]
--10000个内核,每个内核为2像素x 2像素。我希望获得大小为
[10000,31,31]
的输出。(我计划将步幅全部设置为1,并使用“有效”选项关闭填充,这样输出图像的大小为31x31,而输入图像的大小为32x32。)


在中,解决方案是向小批量图像添加“深度”维度,然后使用conv3d而不是conv2d。但在这个问题上,op似乎满足于只返回一个图像作为输出,而不是一个图像作为minibatch中每个样本的输出。

啊,
tf.nn.depthwise\u conv2d
函数正是我想要的。我认为没有任何方法可以使用
conv2d
conv3d
来完成任务