简体   繁体   中英

How to use L2 pooling in Tensorflow?

I am trying to implement one CNN architecture that uses L2 pooling. The reference paper particularly argues that L2 pooling was better than max pooling, so I would like to try L2 pooling after tanh activation function.

However, Tensorflow seems to provide only tf.nn.ave_pool / tf.nn.max_pooling / tf.nn.max_pool_with_argmax.

Is there a way to implement L2 pooling in Tensorflow?

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

Will this be equivalent? Will this work well in terms of back propagation?

For those who may wonder, when I tried as in Yaroslav Bulatov's response, I could see better performance! Thanks!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM