I am learning seq2seq by working on a machine translation problem, from DE to EN.
Train and validation worked well. I got acceptable losses, and printing out the source, target and predicted sentence is acceptable too.
But for test (generate), I appended previously generated symbols as additional inputs for generating the next symbol. But my results output the same symbol again and again.
For example, the output I got is:
<sos> themselves themselves themselves themselves themselves themselves themselves themselves themselves 

Any idea what might have gone wrong?
Example output after every generated symbol:
tensor([2])
tensor([  2, 700])
tensor([  2, 700, 700])
tensor([  2, 700, 700, 700])
tensor([  2, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700])
tensor([  2, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700, 700])