Why we use Pickle instead of saving the weights in HDF5 format in Deep Learning

I have read that, Pickle library is used to save trained model into a .pkl file to use it later. Also, we can save the weights of a trained model into a hdf5 format using

model.save()

and use those weights afterwards.

So why we use pickle instead of hdf5 files?

Topic pickle machine-learning

Category Data Science


As of December 2021 neither pickle nor h5 is recommended (while h5 is still supported by Keras/TF).

The docs say:

There are two formats you can use to save an entire model to disk: the TensorFlow SavedModel format, and the older Keras H5 format. The recommended format is SavedModel. It is the default when you use model.save()


Avoid pickle, there are a couple of problems

Even in keras documentation they say

"It is not recommended to use pickle or cPickle to save a Keras model."

Also look at this solution.

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.