DEVGRU

プログラミングと競馬予想について書きます

AWS EC2の深層学習用インスタンスのJupyter Notebookでtqdmを使えるようにする

機械学習で非常に時間のかかる処理をするとき、AWS の EC2 インスタンスを立ててその上で実行している。

AMIは深層学習用のインスタンスを用いている。

aws.amazon.com

Jupyter Notebookもプリインされている。

また、時間のかかる処理を可視化するのに便利なパッケージ tqdm があり、これも重宝している。

github.com

tqdm は Jupyter Notebookもサポートしているが、上記AMIで動かすのには一苦労あった。

結論から言えば、以下が必要だった。

conda install -c conda-forge ipywidgets nodejs jupyterlab tqdm
jupyter nbextension enable --py widgetsnbextension --sys-prefix
jupyter labextension install @jupyter-widgets/jupyterlab-manager

まず、最新版の ipywidgets , nodejs, それに tqdm をインストールする。筆者はJupyter Labを使うためそれも導入している。

次に、 ipywidgets を有効化する。これによってインタラクティブな機能が使えるようになる。

最後に、jupyterlab exntensions を有効化する。

そして、以下のようなコードでtqdmが動くようになる。

from tqdm.autonotebook import tqdm

for _ in tqdm(range(1, 100)):
  # なにか重い処理
  ...

こんな感じでプログレスバーが表示される。

f:id:katoken-0215:20190329234600p:plain

参考:

ensekitt.hatenablog.com


独学プログラマー Python言語の基本から仕事のやり方まで

独学プログラマー Python言語の基本から仕事のやり方まで

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

みんなのPython 第4版

みんなのPython 第4版