I noticed when I load the model that somehow the fit function is called again and my model is starting a training process again! can someone tell me why it is happening or what is wrong with my code maybe?

Loading parameters from a checkpoint or from somewhere does not start the fit loop. Your code doesn’t seem complete, so it is hard for me to replicate this issue. Can you confirm this is not a bug on your side or post a more complete example?

another thing is that I find it bothering to again write a Checkpoint object to load the model after saving it and I’m sure there is a better way that’s why I want to ask is there any way to do this like in pytorch by simply calling torch.load(model_path)?

Once the checkpoint callback writes a model (i.e., parameters, history and optimizer), you can always specify the parameter file path in net.load_params alone via the f_params parameter. In your example you have
coarse_checkpoint = Checkpoint(dirname=‘results/bearing/coarse’)

which will write the model parameter to 'results/bearing/coarse/params.pt' (documentation 2). You can then load the parameters individually using
net.load_params(f_params='results/bearing/coarse/params.pt')

The basic loading/saving workflow is documented here 12.