Thanks for answers, may I just clarify?
this function is for saving my model
def save_checkpoint(state, is_best, filename=‘checkpoint.pth.tar’):
torch.save(state, filename)
if is_best:
shutil.copyfile(filename, ‘model_best.pth.tar’)
in each epoch(in for loop) I save my model, optimizer and scheduler
save_checkpoint({
  'epoch': epoch + 1,
  'arch': args.arch,
  'state_dict': model.state_dict(),
  'optimizer' : optimizer.state_dict(),
  'scheduler': scheduler,
}, is_best)

and I load it like this
PATH = ''checkpoint.pth.tar"
checkpoint = torch.load(PATH)
model.load_state_dict(checkpoint[‘model_state_dict’])
optimizer.load_state_dict(checkpoint[‘optimizer_state_dict’])
epoch = checkpoint[‘epoch’]
loss = checkpoint[‘loss’]
am I right? thanks)