yenchenlin / DeepLearningFlappyBird

Flappy Bird hack using Deep Reinforcement Learning (Deep Q-learning).

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Why use pooling?

aryopg opened this issue · comments

Probably you might want to enlighten me on the reason why you use pooling in this architecture, cause as far as i know pooling might result into a network that is insensitive to the location of an object in the image. Thanks in advance

You can think of it as combining results of several convolutions which are far apart together effectively making a larger double-convolution - double in the sense of going one after the other due to having two RELUs. I think at least this would make sense. But the answer to why this works so good may be more complicated. And this also may not be a good decision in some situations - you should try - maybe, having larger kernels and less pooling works better in this game.

I'm sure this will also work without pooling.

Using Pooling is only because at that time I want to have my network architecture as similar to the one used by image classification as possible.