Amazon SageMaker Studio Lab とは
Amazon SageMaker Studio Lab は、メールアドレスのみで利用できる無料の機械学習の実行環境です。複雑な環境設定が不要で、機械学習を学び始めた初学者の方でも容易にご利用いただけます。
クリックすると拡大します
Amazon SageMaker Studio Lab は、オープンソースの JupyterLab をベースにしています。
JupyterLab とは、非営利団体「Project Jupyter」により開発されているオープンソースです。Web ベースのインタラクティブなプログラム開発環境であり、Python 以外にも Java や Go など様々な言語をサポートしています。Markdown のドキュメント、プログラミングコード、プログラムの実行結果の 3 つを含む ”Notebook” をインタラクティブに作成できるのが最大の特徴です。
ちなみに、”Jupyter” のスペルは ”Jupiter (木星)” と間違えているわけではなく、Julia、Python、R の 3 つの言語に由来します (※)。様々な企業の方が Contributor として開発しており、AWS からも Brian Granger 氏が長期的な計画を立案する Steering Council に参加しています。
クリックすると拡大します
Amazon SageMaker Studio Lab が提供する機能
AWS は Amazon SageMaker をすでに提供していますが、SageMaker と Studio Lab は大きく 3 つの点で異なります。
1 点目はAWSアカウントが不要であること、2 点目は無料であること、3 点目は利用可能な機能です。
Studio Lab は機械学習の学びや検証を行うため、SageMaker は検証した後の本格的な機械学習モデルの開発と運用のため、と役割が異なります。Studio Lab にはもちろん SageMaker ほど豊富な機能はありませんが、学習に十分な機能とスペックを備えています。
ブラウザ上で実行できるため、利用するパソコンに特別なスペックは必要ありません。「GPU が搭載された開発用のパソコンをクラウド上に持てるサービス」というイメージです。開発用のパソコンと感じる理由は 3 つです。1 つめは静的ストレージがあること、2 つめはターミナルが使えること、3 つめは開発環境がカスタマイズできることです。
パソコンと同じように静的ストレージがあるため、ブラウザを落としても、CPU / GPU のセッションが切れても、作業内容はすべて保存されています。再度ブラウザでアクセスし、セッションを繋ぎ直せば終了時点の作業内容から再開できます。
JupyterLab をベースとしているため、Jupyter の Kernel がサポートしているプログラミング言語であれば基本的に動かすことができます。Python や R はもちろん、Rust や C++ なども動かせます。また Jupyter の拡張をインストールしてカスタマイズすることもできます。
クリックすると拡大します
Amazon SageMaker Studio Lab の利点
Amazon SageMaker Studio Lab を学習環境に採用することで 3 つの利点が得られ、環境構築の問題を解消できます。
1 つめは ベースとなる OS をそろえることができ、Windows / Mac / Linux など OS の違いを配慮する必要がなくなる点。2 つめは conda を使用して教材専用の仮想環境を構築できるためライブラリ間のバージョンがそろわないことで発生する問題をなくすことができる点。3 つめは一度構築した教材専用の環境が永続化され、学習中使い続けられる点です。
授業をする側の目線からは、「学習者に共通の実行環境を無料で配布できるサービス」といえます。condaは Python をはじめとしたプログラミング言語の環境構築に用いられるツールです (※)。conda を使用した仮想環境の構築は通常コマンドから行いますが、Studio Lab は環境を定義した yml ファイルを右クリックし、 “Build Conda Environment” を実行することで仮想環境を構築できます。コマンドに不慣れな学習者でも簡単に教材専用の環境を構築できます。
※ : Studio Lab では Anaconda ではなく mini-forge で conda を導入し、ライブラリは conda-forge からインストールするよう設定しています。そのため、Anaconda の商用ライセンスの影響は受けません。詳細は こちら をご覧ください。
※ : Studio Lab では Anaconda ではなく mini-forge で conda を導入し、ライブラリは conda-forge からインストールするよう設定しています。そのため、Anaconda の商用ライセンスの影響は受けません。詳細は こちら をご覧ください。
クリックすると拡大します
オープンソースの Jupyter Lab をベースにしているため、言語パックをインストールすることで日本語化することができます。
このように Studio Lab は学習者にとっては学びやすい、教材作成者にとっては教えやすい環境といえます。
クリックすると拡大します
Amazon SageMaker Studio Lab の使い方
それでは Studio Lab の使い方を見ていきましょう。
教材を作成されている方は、GitHub リポジトリに Open in Studio Lab ボタンをつけると、学習者の環境セットアップをより簡単にできます。複数の Jupyter Notebook で構成される教材は、リポジトリ全体を静的ストレージにダウンロードすることで一括して持ってくることができます。
Studio Lab に持ってきた後は、JupyterLab と同じように Notebook を実行することができます。詳細は こちら をご参考ください。
クリックすると拡大します
Open in Studio Lab ボタンは、README.md に次の記述を入れるだけで作成できます。your-org、your-repo-name、your-branch-name、path-to-your-notebook.ipynb は開きたい Jupyter Notebook に合わせて記載します。
[![Open in SageMaker Studio Lab](https://studiolab.sagemaker.aws/studiolab.svg)](https://studiolab.sagemaker.aws/import/github/<your-org>/<your-repo-name>/blob/<your-branch-name>/<path-to-your-notebook.ipynb>)
例えば、Studio Lab をご利用いただいている学習サイト「機械学習帳」にある Jupyter Notebook の URL は次のようになります。
https://ift.tt/pCxmMuY
この時、各パラメーターの値は次のようになります。
Open in Studio Lab ボタンを設置いただいたリポジトリではいずれも GitHub の Star 数が増加しています。AWS としても、教えやすい、学びやすい教材をより広めることに貢献したいと考えています。
引用 : 機械学習帳 (東工大) の例。
Open in Studio Lab ボタンをマージした 12/5 以降に GitHub の Star が 1 週間で 92 から 131 へ上昇。
(クリックすると拡大します)
Amazon SageMaker との連携
Amazon SageMaker Studio Lab は、Amazon SageMaker にプロジェクトをエクスポートすることができます。つまり、Studio Lab でデータサイエンスの学習からプロトタイピングまで行い、実用性が見込めた際には本格的なモデル開発や推論が可能な SageMaker に移行できるということです。
クリックすると拡大します
最後に、全体の図を見てみましょう。
まとめ
本記事では、Amazon SageMaker Studio Lab についてご紹介しました。
Studio Lab の登場で、AWS はデータサイエンスの学びから、クラウドを用いた MLOps の構築まで、機械学習プロジェクトの成長過程に長期間伴走できるようになりました。Studio Lab が、新年度より機械学習に取り組まれる方の入り口となれば幸いです。
Studio Lab の利用申請は下記のフォームからいつでも可能です。
現在多数の申し込みをいただいております。承認が遅い場合は、こちらの GitHub Issue のフォーム よりご連絡ください。
この連載記事のその他の記事はこちら
builders.flash メールメンバーへ登録することで
AWS のベストプラクティスを毎月無料でお試しいただけます
筆者プロフィール
久保 隆宏
アマゾン ウェブ サービス ジャパン合同会社
DevRel, Machine Learning
コンサルタント、機械学習エンジニア、プロダクトマネージャーを経て機械学習をプロダクトに活かすことに取り組んできました。DevRelでは機械学習領域での AWS 認知拡大に取り組んでいます。
趣味はランニングとテニス、ライブに行くことです。最近の情勢を受けライブハウスに行けないのが目下の悩みです。
現在、Machine Learning Product Manager について勉強中です。
イラスト作成者プロフィール
米倉 裕基
アマゾン ウェブ サービス ジャパン合同会社
テクニカルライター・イラストレーター
日英テクニカルライター・イラストレーター・ドキュメントエンジニアとして、各種エンジニア向け技術文書の制作を行ってきました。
趣味は娘に隠れてホラーゲームをプレイすることと、暗号通貨自動取引ボットの開発です。
現在、AWS や機械学習、ブロックチェーン関連の資格取得に向け勉強中です。
AWS のベストプラクティスを毎月無料でお試しいただけます
からの記事と詳細 ( 【AWS グラレコ解説】データサイエンスの学びを支援する Amazon SageMaker Studio Lab をグラレコで解説 - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン - amazon.com )
https://ift.tt/bViNpeG
No comments:
Post a Comment