model.parameters() contains all the learnable parameters of the model. state_dict() is a python dict mapping from layer to their parameters. Optimizers have their own state_dict. As state_dict are python dicts they are easy to save and load. docs 208