What would be the desired ouput shape?
If you want to create an output of [1500, 12, 4, 3, 3], you could use this code:
input = torch.rand((1500, 4, 3, 3))
scalar = torch.rand((12))
out = input.unsqueeze(1) * scalar[None, :, None, None, None]
print(out.shape)
> torch.Size([1500, 12, 4, 3, 3])

for i in range(scalar.size(0)):
    print((out[:, i] == input * scalar[i]).all())
> tensor(True)
tensor(True)
...