UIが一新されたAmazon SageMaker Studioの歩き方

どっちかというとSageMaker Studioドメインがマネージメントコンソールからの操作で同一リージョン上に複数作成・管理できるようになっていたのがありがたい。あとNotebook Jobs。
2022.12.01

データアナリティクス事業本部 インテグレーション部 機械学習チームの貞松です。

Amazon SageMaker Studio(以下SageMaker Studio)のアップデートにより、UIが一新されました!

これまでパッチワーク的に追加機能の増築を繰り返してきたSageMaker Studioですが、現行機能(+re:Inventで発表になった新機能)を整理して、統一的なUIに再設計した模様です。

本記事では、SageMaker Studioの新UIについての網羅的な解説と注意すべき事項について記載します。

SageMaker Studioドメインに関するアップデート

SageMaker StudioのUIだけでなく、AWSマネジメントコンソール上のSageMakerの画面自体も幾つかアップデートされています。
本記事では、その中でもSageMaker Studioの本体(を管理する単位)であるSageMaker Studioドメインに関するアップデートについてピックアップします。
※SageMaker Studioドメインの画面が入り口になるため、これだけは触れておかないわけにはいかないのです。

SageMakerの画面で新たに「Domains」が追加されています。
Domainsの画面でSageMaker Studioドメインの管理が出来るようになっており、ドメインの新規作成も行うことができます。

これまでは1つのAWSアカウントの1リージョンごとに1つのSageMaker Studioドメインしか作成できなかったのですが、アップデートにより複数のドメインを作成、管理できるようになったことが大きな改善ポイントです。
チーム共通のアカウントで個人的な検証を実施する際に、SageMaker Studioドメインの環境を破壊してしまって、同一環境を利用する他のメンバーに影響を与えてしまった、なんてこともありましたが、以降はそういった心配は無用になりそうです。

ドメインを新規作成するには「Create Domain」をクリックします。

ドメインの作成画面は従来の画面と同様です。
ここではQuick Setupでドメインを作成します。

使用するVPCとサブネットを設定します。

追加のドメインが作成されます。

新UIのSageMaker Studioを起動

せっかくなので、新規作成したドメインからSageMaker Studioを起動してみます。
作成済みのユーザープロファイルから「Launch」→「Studio」を選択します。

初回起動なので本体のJupyter Serverの立ち上げから。

新UIのSageMaker Studioの画面が起動しました。
旧UIと比較すると情報量がコンパクトでスタイリッシュな印象ですね。
後述で最初に開いているこのHome画面から順に解説していきます。

新UIの各種要素について

Home

新UIのSageMaker Studioを起動すると、まずはHome画面が開きます。
旧UIのLauncher画面に相当しますが、役割を分離して表示をスリムアップしているようです。
以下、Homeの構成要素について解説します。

Launcher

「Open Launcher」をクリックすると、新しいLauncher画面が開きます。
旧UIから本来のランチャー機能部分だけを切り出して、新たに別画面として再構成されています。

利用可能な機能としては旧UIとほぼ同様ですが、Notebookやコンソールの実行環境設定が一つのダイアログにまとまって使いやすくなりました。インスタンスタイプの選択までオールインワンになっているのが地味ながら良い改善ポイントです。

Import & prepare data visually (SageMaker Data Wrangler)

※※※注意※※※
この「Import & prepare data visually」と書かれている箇所をクリックすると、問答無用で「untitled.flow」というファイルが作成され、SageMaker Data Wranglerの実行インスタンス(ml.m5.4xlarge)が起動します。
ファイルを閉じて、ファイルを削除しただけではこのインスタンスは停止しないので、間違って起動してしまった場合は必ず手動でインスタンスを停止してください(停止方法は後述)

実際に「Import & prepare data visually」と書かれている箇所をクリックすると以下のような画面になり、SageMaker Data Wranglerが起動します。

起動中

起動後

起動したインスタンスを停止するには、サイドバーから起動中のリソース一覧を開き、各行の右に表示されている電源マークをクリックして停止させます。

インスタンスの停止を忘れてしまうと、1時間単位でml.m5.4xlargeインスタンス料金が課金されてしまいますので十分注意してください。

https://aws.amazon.com/jp/sagemaker/pricing/

Getting Started notebook

「Open the Getting Started notebook」と書かれている箇所をクリックすると、SageMaker Studio(JupyterLab)環境やSageMakerの機能に関するハンズオン形式ガイドがJupyter Notebook形式で作成・起動します。

Documentation & Tutorials

「Read documentation」と「View guided tutorials」については、AWS公式の開発者ガイドやチュートリアルへのリンクとなっています。

Workflows and tasks

中段にある「Workflows and tasks」のセクションは、目的別で必要な機能の画面を開くための逆引きIndexというかショートカットになっています。

Quick start solutions

下段にある「Quick start solutions」のセクションは、SageMaker JumpStartから準備済みのソリューション機能(CloudFormationでテンプレート化されたユースケース別のソリューション)を抜粋した表示となっています。

一番下の「Browse all Quick start solutions」と書かれたリンクをクリックするとSageMaker JumpStartの画面が開くのですが、Homeの画面上にはSageMaker JumpStartの表記が全く無いので、個人的には少しわかりにくくなった印象があります。

サイドバー

次にサイドバーについて簡単に解説していきます。
基本的には旧UIでツギハギになっていた各機能のUIを整理して、わかりやすく統合した形になっています。

ホームタブ

こちらは旧UIの各種機能画面です。
機能をドロップダウンから選択して、サイドバーにリソース一覧を表示、そこから更に各リソースの詳細画面を右側で開くような形式です。
各種機能へのアクセスが悪く、一覧を開くにはサイドバーの領域が狭い為、ちょっと不便な印象がありますね。

こちらが新UIのサイドバー領域です。
機能がリスト化されており、クリックするとリソースの一覧が右側の広い領域で表示される為、見通しが良く使いやすい印象です。
またリソースの一覧が表示されるリストUIも共通化されており、全体的に統一感があります。

基本的には、表記見たままの内容(クリックするとその機能の画面が開く)なのですが、少々わかりにくい表記や注意事項、機能的に新しい部分についてピックアップします。

AutoML

リストの表記上は「AutoML」ですが、これは従来のSageMaker AutoPilotのことを指しています。(クリックするとAutoPilotの詳細画面が開きます)

Quick start solutions

リスト上の「Quick start solutions」は、SageMaker JumpStartのことを指しており、旧UIでは以下のような画面に該当します。

「Solutions, models, example notebooks」がSageMaker JumpStart画面、「Launched Quick start assets」がJumpStartで作成されたリソース一覧の画面を起動するように分離されていることについては良いのですが、やはりJumpStartの表記がリスト上に無いため、少々わかりにくい印象がありますね。

Notebook jobs

Notebook jobsは旧UIには存在しない新しい機能であり、Jupyter Notebookをそのままバッチジョブとして扱うことができる機能です。
Notebook jobを作成するには、サイドバーのファイル画面から、該当のNotebookファイルを右クリックして、メニューから「Create Notebook Job」を選択します。

ジョブを実行するインスタンスタイプやコンテナイメージ、カーネル、実行IAMロールなどを設定します。

実行タイプとして、即時実行とスケジュール実行から選択できます。
これによって、実験用途で使っていたノートブックを流用してジョブ化したり、ツールとして慣れているJupyter Notebookをそのまま利用した開発が可能になります。

以降、サイドバーのその他タブについて触れておきますが、特に旧UIからの大きな変更点はありません。

Fileタブ

特に説明不要ですね。よくあるツリー形式で配置されたファイルを一覧できます。

Gitタブ

外部のGitリポジトリをクローンしておけば、GUIでブランチの切り替えやコミットなどの各種操作を実行することができます。

Resourceタブ

実行中のリソースが一覧で表示されており、ここから停止の操作を実行することができます。
NotebooksやDataWranglerの実行インスタンスは自動で停止してくれないので、逐一この画面で確認し、不要なインスタンスは停止しておきましょう。

Contentsタブ

Notebookファイルを開いている際にこの画面でコンテンツのアウトラインが表示されます。

Extensionタブ

SageMaker Studio(JupyterLab)の拡張機能を管理できます。
デフォルトでは無効(Disable)になっているので、必要に応じて有効化(Enable)して利用します。

まとめ

アップデートにより一新されたAmazon SageMaker StudioのUIについて解説しました。
突然変わってしまったUIを前にして、皆様が路頭に迷わないように道標となれば幸いです。