maxout:http://arxiv.org/pdf/1302.4389v4.pdf
maxout出现在ICML2013上,作者Goodfellow(GAN的发明者)将maxout和dropout结合后,在MNIST, CIFAR-10, CIFAR-100, SVHN这4个数据上都取得了stat-of-the-art的识别率(大概就是最先进最好的意思吧?)。
MAXOUT
论文中证明Maxout可以拟合任何凸函数,是一个通用的函数拟合器。
如下图二维函数(ReLU函数、V型函数、二次型函数)的拟合,
通过构造多个仿射变换来对其进行逼近,对分段函数每段取最大。
具体原理如下图:
输入层两维,隐层四维,输出一维。
对于一般卷积网络,直接得到h=conv(wx+b)
maxout,如下图中间又加一层(有的叫隐隐层…)五个神经元,
过程相当于
1 先conv(wx+b)得到五个z值,构成5层的featuremap
2 随后,再对以最大池化步长(max pooling stride)为5
进行maxpooling。
再一般化:
输入/特征图尺寸:
(minibatch_size, num_input_channels,
image_width, image_height)
filters :
(num_filters, num_input_channels,
filter_width, filter_height)
output shape(stride=1)
(minibatch_size, num_filters,
image_width - filter_width + 1,
image_height - filter_height + 1)
在 num_filters 维度使用max-pooling(max-pooling stride=5):
(minibatch_size, num_filters / 5,
image_width - filter_width + 1,
image_height - filter_height + 1)
reference
http://blog.youkuaiyun.com/zhufenghao/article/details/52527047
https://github.com/benanne/kaggle-galaxies/issues/2