Jupyter NotebookからKerasを使用すると、Trainingの進行状況がよくわからなくて不便ですよね。
keras-tqdmというライブラリを使うと、Jupyter NotebookでKerasのfitメソッドの進行状態をprogress barで表示してくれます。
GitHub - bstriner/keras-tqdm: Keras integration with TQDM progress bars
インストール方法
pipでインストールできます。
pip install keras-tqdm
使い方
modelのfitメソッドを呼び出す際に、callbackとして渡すだけです。
from keras_tqdm import TQDMNotebookCallback model.fit(X_train, Y_train, verbose=0, callbacks=[TQDMNotebookCallback()])
トラブルシューティング
Widget Javascript not detected
といったエラーが表示される場合、以下のコマンドを打った後に再起動する必要があるようです。
jupyter nbextension enable --py --sys-prefix widgetsnbextension
keras-tqdmが依存しているtqdmが内部でipywidgetsを使用しているため、ipywidgetsのセットアップが済んでいないとエラーが表示されるようです。
使用感
Keras上でもprogress barで各Epochの進行状況とlossが確認できるようになったため、学習経過の可視化に役立ちます。
ただし、Epoch数が増えてくるとその数だけprogress barが生成されて画面が圧迫されるので、EarlyStopping callbackを併用し、収束したタイミングで打ち切るようにするのをおすすめします。
まとめ
keras-tqdmを使うとJupyter Notebook上でもKerasのTraining進行状況が確認できて便利です。
Epoch数が増えてくると、大量にprogress barが生成されてしまうので、EarlyStopping callbackと併用するのをおすすめします。