chengdazhi / Deformable-Convolution-V2-PyTorch

Deformable ConvNets V2 (DCNv2) in PyTorch
MIT License
1.43k stars 229 forks source link

question about backward parameter #60

Open hua-wu-que opened 4 years ago

hua-wu-que commented 4 years ago

Hi!

In deform_conv_cuda.c line 206, why you recompute the columns by calling "deformable_im2col( THCState_getCurrentStream(state), THCudaTensor_data(state, input_n), THCudaTensor_data(state, offset_n), nInputPlane, inputHeight, inputWidth, kH, kW, padH, padW, dH, dW, dilationH, dilationW, im2col_step, deformable_group, THCudaTensor_data(state, columns)); "?

Shouldn't this already been computed during the forward phase? can't we just reuse that result?

Thank you for clarification!

crocodilegogogo commented 4 years ago

I have a question. We used Deformable Conv in classification tasks. We set the training batchsize the same as im2col_step. During the test process, we put different numbers of test samples in test batch, and get different classification results (e.g. test the testing dataset by input one sample per time, or test the testing dataset by inputing ten samples per time). It seems that how many samples we input to the network each time impacts the final classification results. So why is this happening? Will you kindly give me some advice? What the relationship between testing batchsize and im2col_step?