keras: how to save the training history attribute of the history object keras: how to save the training history attribute of the history object python python

keras: how to save the training history attribute of the history object


What I use is the following:

    with open('/trainHistoryDict', 'wb') as file_pi:        pickle.dump(history.history, file_pi)

In this way I save the history as a dictionary in case I want to plot the loss or accuracy later on.


Another way to do this:

As history.history is a dict, you can convert it as well to a pandas DataFrame object, which can then be saved to suit your needs.

Step by step:

import pandas as pd# assuming you stored your model.fit results in a 'history' variable:history = model.fit(x_train, y_train, epochs=10)# convert the history.history dict to a pandas DataFrame:     hist_df = pd.DataFrame(history.history) # save to json:  hist_json_file = 'history.json' with open(hist_json_file, mode='w') as f:    hist_df.to_json(f)# or save to csv: hist_csv_file = 'history.csv'with open(hist_csv_file, mode='w') as f:    hist_df.to_csv(f)


The easiest way:

Saving:

np.save('my_history.npy',history.history)

Loading:

history=np.load('my_history.npy',allow_pickle='TRUE').item()

Then history is a dictionary and you can retrieve all desirable values using the keys.