SageMaker でお手軽に Jupyter Notebook から Python を実行してみた
こんにちは、みかみです。
SageMaker = 機械学習 = 専門知識がないと難しそう。。
- Amazon SageMaker – 機械学習を加速する | Amazon Web Services ブログ
- 【速報】機械学習のネクストジェネレーション!新サービス「Amazon SageMaker」が発表されました!! #reinvent | Developers.IO
- Developers. IO 2018セッション「誰でも簡単にAIを実現! SageMaker実践ユースケース紹介」で話しました #cmdevio2018 | Developers.IO
- Amazon SageMakerで画像分類をしてみた | Developers.IO
- Amazon SageMakerで人の検出を試してみた | Developers.IO
- Amazon SageMakerで猫と犬の検出と種類の特定をしてみた | Developers.IO
いつか、機械学習が必要になったらさわってみようと思いつつ、はや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 のノートブックインスタンス、気軽に使っていこうと思いました。