File “/home/h/anaconda3/lib/python3.5/site-packages/torch/autograd/variable.py”, line 620, in gather
return Gather(dim)(self, index)
RuntimeError: expected a Variable argument, but got LongTensor
The code is
   def forward(self, sentence, lengths):
    embed = self.embedding(sentence)
    packed_seq = pack_padded_sequence(embed, lengths, batch_first=True)

    out, _ = self.lstm(packed_seq)
    unpacked, unpacked_len = pad_packed_sequence(out, batch_first=True)
    maske = torch.LongTensor(unpacked_len).view(-1,1,1).expand_as(unpacked)
    spaces = self.out(unpacked.gather(1,maske)
    print(spaces.shape)
    return spaces

The docusments says that the index should be a tensor. but It seem not.
If I use Variable(maske). the Error will be
File “/home/h/anaconda3/lib/python3.5/site-packages/torch/autograd/_functions/tensor.py”, line 542, in forward
return input.gather(self.dim, index)
RuntimeError: Invalid index in gather at /py/conda-bld/pytorch_1490983232023/work/torch/lib/TH/generic/THTensorMath.c:441