如何在 Tensorflow 中使用 L2 池化?

How to use L2 pooling in Tensorflow?

我正在尝试实现一种使用 L2 池化的 CNN 架构。参考论文特别指出 L2 池化优于最大池化,因此我想在 tanh 激活函数之后尝试 L2 池化。

不过Tensorflow好像只提供tf.nn.ave_pool / tf.nn.max_pooling / tf.nn.max_pool_with_argmax.

有没有办法在 Tensorflow 中实现 L2 池化?

conv = tf.....
h = tf.nn.tanh(conv)
p = tf.pow(tf.nn.ave_pool(tf.pow(h,2)), 0.5)

这会等效吗?这在反向传播方面是否有效?

对于那些可能想知道的人,当我按照 Yaroslav Bulatov 的回复进行尝试时,我可以看到更好的性能!谢谢!