I apply the conv1d to speech recognition, the input is 13 dimensional fbank features, before providing the input to conv layer, i used x=x.view(batch, 1, seq_len), with batch size is 128, out channel is 1 and seq_len is 143 . Then apply conv with a filter size of 80 and got the tensor shape of (128, 80, 134). Here i like to add highway component to have highwayconv. Thus, I apply the sigmoid operation on the output of conv and get k, the apply element wise multiplication operation of k with conv output and get the transformation gate t shape is similar with conv. Next, subtraction operation of k from 1 and got tensor c with shape similar to conv, finally, when i do element wise multiplication operation of tensor c with the input x the dimension miss match occur?
Look the dimension sequence of the above operations:
- 128,1,143 [input -x]
- 128,80,134 [conv operation output tensor]
- 128,80,134 [size of k tensor]
- 128,80,134 [size of t tensor]
- 128,80,134 [size of c tensor ]
When the sixth operation is fails due to the size miss match. Thus, i want to make the two tensors to have similar size and perform element wise multiplication?