问题
I know when we are using convolution layers in a neural net we usually use padding and mainly constant padding(e.g. zero padding). And there are different kinds of padding(e.g. symmetric, reflective, constant). But I am not sure what are the advantages and disadvantages of using different padding methods and when to use which one.
回答1:
it really depends on the situation for what the neural network is intended. I would not tell it pros and cons. This time the world cannot put into a binary scheme.
I will give you some interesting links:
https://adeshpande3.github.io/A-Beginner%27s-Guide-To-Understanding-Convolutional-Neural-Networks-Part-2/
http://web.stanford.edu/class/cs20si/lectures/
When you try to design a network, then start to think about what it should be designed for. Then, you try some things, it will be logical that , in case of convolutional networks, valid padding makes the image smaller and full padding makes the image bigger, but it uses, e.g zero padding, what adds 0 at the edges and could lead to veils... and so on... you must try a lot...
For pixelwise deep convolutional networks, people use valid, such as semantic segmentation. No/less "smear-effect".
For object detection, people use same, only a bounding box is needed for the detected object.
HTH
来源:https://stackoverflow.com/questions/44960987/when-to-use-what-type-of-padding-for-convolution-layers