import numpy from chainer import cuda from chainer.functions.pooling import pooling_2d from chainer.utils import conv if cuda . cudnn_enabled : cudnn = cuda . cudnn libcudnn = cudnn . cudnn class MaxPooling2D ( pooling_2d . Pooling2D ): """Max pooling over a set of 2d planes.""" def forward_cpu ( self , x ): col = conv . im2col_cpu ( x [ 0 ], self . kh , self . kw , self . sy , self . sx , self .