Solved by KFrank in post #2 
              
              
                Hi Rohit! 

Try: 
torch.einsum ('ijl, ijkl -> ijk', x, y).unsqueeze (-1)

The einsum() “contracts” over the “64” dimension, while the 
.unsqueeze (-1) adds the trailing singleton dimension. 
Best. 
K. Frank