Since last week (?) PoolingLayer[]
appears broken when exported to the cloud from my local machine.
Lets define two nets, one is a poolingLayer and the other a convLayer:
net=NetInitialize@NetChain[{PoolingLayer[2,2]},"Input"->{1,64,64}]
net2=NetInitialize@NetChain[{ConvolutionLayer[1,3]},"Input"->{1,64,64}]
Local evaluation works fine:
net@{RandomReal[1,{64,64}]} (*gives result*)
net2@{RandomReal[1,{64,64}]} (*gives result*)
However cloud evaluation fails for the poolingLayer net. Oddly enough it works fine when I define the pooling layer in the cloud:
CloudEvaluate[NetInitialize[NetChain[{PoolingLayer[2,2]},"Input"->{1,64,64}]][{RandomReal[1,{64,64}]}]] (*OK*)
CloudEvaluate[net2@{RandomReal[1,{64,64}]}] (*OK*)
CloudEvaluate[net@{RandomReal[1,{64,64}]}] (*$Failed*)
This only happened sometime in the last few weeks. I was deploying networks with poolingLayers on a regular basis before that. A workaround seems to be to redefine all poolingLayers in my networks in the cloud before evaluation. Is this a bug?