Hi Kenta,
Thx for your help,
I think I didn't make my question clear.
The idea comes from translation the full connect layer to convolution layer to make the input size not being restricted, this can be found in the Overfeat's sliding window paper.
It trains the network with full connect later and evaluate the network with convolution layer.
For example
Input(3x24x24) -> conv(32x5x5) -> max_pool -> conv(64x5x5) -> max_pool -> fc(576,128) -> fc(128,4)
Will do a classification in train time with full eco next layer and output a 1x4 vector of possibilities.
But in case scanning a full image I will either need to do a full sliding window, or transform the full connect layer to convolution layer to make the input size non restricted, otherwise full connect layer will raise a error with error input size.
As the paper said in the evaluate step it could replace the last step fc(576,128) to a convolution layer with conv(128x3x3) with stride is 1, and pipe the output to a conv(4x1x1)
The question is how to transform the chainer Linear W/b to corresponding convolution layer weight which have a totally different dimension(128,576) and (1x128x3x3) .
Currently I directly use chainer.functions reshape to directly inject the fc weight into a corresponding size conv weight, don't know if this manner works out or not(based on the test it looks works as expected)