what the differences between tf.train.Saver().restore() and tf.saved_model.loader
During training, restoring from checkpoints, etc, you want to use the saver. You only want to use the saved model if you're loading your exported model for inference.
I'd like to know the differences between tf.train.Saver().restore() and 
tf.saved_model.loader().
As far as I know, tf.train.Saver().restore() restores the previously saved variables from the checkpoint file; and tf.saved_model.loader() loads the graph def from the pb file.
But I have no idea about when I should choose restore() or loader()?