Here is a problem I am currently facing. I have a model that uses 1D convolution that I would like to export to ONNX and use pytorch/glow or tvm to compile. But both projects currently do not support 1D convolution (see pytorch/glow/issues/3246 2 and tvm/issues/4587 1. A workaround that has been suggested (see an example 9) is to use 2D Convolution with height 1 for 1D convolution
Has anyone done this before using PyTorch? The PyTorch documentation for Conv2d 2 suggests it would be possible to have “non-square kernels and unequal stride and with padding and dilation”. It seems I can have a wrapper class for Conv1d that uses Conv2d underneath. Is there any downside to it? Does math checks out? Also it looks like I have to do the same for BatchNorm1d  and pooling.