While comparing line-by-line 2d and 3d implementation, I noticed that 2d have mask, while 3d implementation have mask_in.
Here is the line-by-line comparison:
# 2d
raw_out = super(PartialConv2d, self).forward(torch.mul(input, mask) if mask_in is not None else input)
# 3d
raw_out = super(PartialConv3d, self).forward(torch.mul(input, mask_in) if mask_in is not None else input)
Is there a bug? Which one is correct?