amosella, this is my code structure , and I couldn’t figure where is the problem 
def  fit_data():
      for epoch_num in range(epochs):
         for train_data in train_iterator:
             predict
             calculate loss
             backprop
          
          for val_data in val_iterator:
             predict
          
          for test_data in test_iterator:
             predict
      save the validation and test predictions.

the iterators for all the datasets are output of the corresponding dataloaders . I don’t know where it is inducing the shift in random state.