This issue is in for better co-ordination of the FluxModels.jl which can be used as a benchmark for Flux.jl. As explained by @darsnack in this issue, I will be creating the following pooling layers.
Great! A couple of notes:
Oh, I should remove AvgPool then.
And probably want to name the layer AdaptiveMeanPool for consistency.
shall i make required changes in the NNlib.jl and create adaptivemaxpool and adaptivemeanpool backends too? I will add two functions there only.
I don鈥檛 think that鈥檚 necessary. Adaptive pooling does the same operation as regular pooling except that the filter window is adjusted dynamically to account for input image size.
The pooling functions in NNlib.jl accept a PoolDims object. Your layers in Flux should create this object based on the desired output size when layer(x) is called. Then pass that object to NNlib.
Fixed by #1239