SageMaker でお手軽に Jupyter Notebook から Python を実行してみた

こんにちは、みかみです。

SageMaker = 機械学習 = 専門知識がないと難しそう。。

いつか、機械学習が必要になったらさわってみようと思いつつ、はや1年半。。(個人的には、いまだ、機械学習が必要になるケースは訪れておりませんw

今回、社内 Python 勉強会のお題になる、さわったことのない Python ライブラリ、Matplotlib を動かしてみたいと思っていたところ、SageMaker なら必要なlibもインストール済みなので簡単に動かせるとの耳より情報が!

作業用PCにlibインストールすればよい話ではあるのですが、普段使っている環境をあまり汚したくなかったり、libの依存関係にてこずったり、Windows環境だと何やらよく分からないエラーに悩まされたり。。

本来の、機械学習用途での利用ではありませんが、SageMaker のノートブックインスタンス、使ってみたらすごく便利でした!

やりたいこと

  • Python の実行環境を簡単に準備したい
  • Python のライブラリ Matplotlib を動かしてみたい

SageMaker のノートブックインスタンスを立ち上げる

マネージメントコンソールから、「Create notebook instance」をクリック。

「ノートブックインスタンの作成」画面で「ノートブック名」に任意の名前を入力して、画面下の「ノートブックインスタンスの作成」をクリックします。

作成中画面表示後、

2~3分でステータスが「InService」に代わりました。

インスタンス作成完了です。

Jupyter Notebookを立ち上げる

作成したインスタンスの、「Open Jupyter」リンクをクリックします。

Jupyter Notebookが立ち上がるので、「New」ボタンをクリック。 PySpark や MXNet、Tensorflow の実行環境も、あっという間に構築できちゃうんですねー@@!

今回はAnacondaのPython3系環境、「conda_python3」を選択しました。

Matplotlib で データを Plot してみる

作成したノートブックで、Matplotlib を動かしてみます。

社内勉強会で利用させていただいている、「Pythonによるデータ分析入門 第2版」 8章のサンプルコードを拝借しております。

話には聞いてましたが、Matplotlib やっぱすごいですねー(ビジュアライズできるとなんかうれしいv

やはり、ただ本を読むだけより自分で動かしてみた方が、イメージもしやすく、理解も深まります!

SageMakerの利用料

機械学習用のサービスなんて、利用料も高いんじゃないの?

と思われるかもしれませんが、そんなことはありません。

東京リージョンで、一番小さい t2.medium のノートブックインスタンスを立ち上げる場合、0.0608 USD/1h。

特に、Python もインストールされていない状態で環境準備する手間考えたら、SageMaker 使った方が効率的では?!

まとめ(所感)

EC2インスタンスと同じくらいの料金で、ライブラリ一式インストール済みの Python 実行環境(Jupyter Notebook)がすぐ使えるなんて、うれしい限りです!

これぞフルマネージドサービス AWS の醍醐味v

「機械学習」と気負わずとも SageMaker は使える! 必要なとこだけ使うこともできるので非常に便利!!

と、目から鱗が落ちた気分でした。

今後も SageMaker のノートブックインスタンス、気軽に使っていこうと思いました。