I currently tried to figure out which paddings are directly supported by the frameworks:
padding='VALID': No padding
padding='SAME': 0-padding such that the output has the same size as the input
tf.pad and then
padding='VALID' one can get reflect and symmetric padding.
lasagne.layers.Conv2DLayer) (and probably also Theano):
pad='full': A variant of 0-padding which results in a bigger image
Caffe (docs): I have no idea which padding they support. As
pad_w seem to be in
convolution_param, I guess padding is supported. Probably (only?) zero-padding.
Hence my question:
Are there publications where CNNs with padding, which was neither
SAME, or not 0-padding, was used?
For example, I know of the following other options:
both of them might have the advantage, that the filter does not detect a border, where no border is.