Hello there)
Don’t know, if its still important, but I’ve noticed, that you’ve used shuffle:
    trainloader = DataLoader(Trainingset, batch_size, shuffle = True, drop_last=True, num_workers=0)
    validloader = DataLoader(Validationset, batch_size, shuffle = True, drop_last=True, num_workers=0)

For LSTM order is important, and by using shuffle you’ve confused LSTM. I’ve changed shuffle to False and it works okay.