はじめに
社内で週1の機械学習の勉強会を主催しています。G-awaです。
勉強会は👇の本を輪読しながら、プログラムも書いていく方式で進めています。
プログラムも書きながら勉強会を進行していますし、
毎回いろんな人が参加するので、いちいちその人に合わせて開発環境をととのえるのが面倒でした。
それに、実行した履歴をどう残して振り返ろうかと考えていたのですが、とてもいい方法がありました。
それが**Jupyter Notebook**です。
Jupyter Notebookとは
Jupyter Notebookは
- Webページ上でPythonのコードを実行して、
- それを履歴(ノート)として保存できるツールです。
さらにWebページとして、Markdown形式でのコメントの記述にも対応しているので
勉強会メンバーに共有する際にはもってこいのツールなんです。
こちらをみればJupyter Notebookがどんなものかわかるはずです。
👇は勉強会で実際に書いてみたノートです。matplotlibなどの出力結果も綺麗にグラフとして保存できます。
Jupyter NotebookはHerokuで動かす
通常は Jupyter Noterbook はローカルで立ち上げて、実行する人がほとんどかと思いますが、
勉強会でやったことをメンバーに共有したいので、どこかしらのサーバで立てられればいいなぁと思っていました。
AWSのSageMakerとかでやると簡単に構築できるのですが、お金がかかりすぎます。
そこで別のクラウドサービスして、わたしが日頃お世話になっているHerokuの無料プランを使用することにしました。
これでタブレットでもpythonを書いて実行する環境が手に入れられますし、電車の中でスマホから勉強会の復習もできちゃいます。
Herokuでのインストール方法
前提としてHerokuのアカウントはもう持っているものとします。
今回はこちらのソースを利用させてもらいました。
https://github.com/pl31/heroku-jupyter
forkしたら、自分のリポジトリに移動するので、「Deploy to Heroku」ボタンを押します。
JUPYTER_NOTEBOOK_PASSWORDを入れておくと、JupyterNotebookにログインするパスワードを設定することができます。
あとは、「Deploy app」を押してデプロイすれば完了です。
無事、立ち上がりました。
先ほどのパスワード(JUPYTER_NOTEBOOK_PASSWORD)を入力してログインすれば使用できます。
まとめ
- Jupyter Notebookを使用すればPythonをブラウザから実行できる
- 他の人に共有したいのでクラウドサービスにデプロイしておこう
- Herokuだと無料で使用できるよ
以上です。
機械学習の勉強会をやる際にはぜひHerokuでJupyterNotebookを立ち上げてみてはいかがでしょうか?