I want to add other operations (which form is ciphertext) to convolution process. To do this, i need implement the underlying operations in 2D convolution. Such as, how to construct the data structure of input and output, how to deal with padding to get correct output?
If anybody have direct and simple method or ideas, thank you very much for your messages.
To write a manual convolution you could use nn.Unfold
and apply a matrix multiplication.
The nn.Unfold
docs give you an example.