「SageMaker Distributionは、Amazon SageMaker Studioで利用可能になりました」

SageMaker Distribution now available in Amazon SageMaker Studio

SageMaker Distributionは、機械学習(ML)、データサイエンス、データビジュアライゼーション向けの多くの人気パッケージを含む事前構築されたDockerイメージです。これにはPyTorch、TensorFlow、Kerasなどのディープラーニングフレームワーク、NumPy、scikit-learn、pandasなどの人気のあるPythonパッケージ、JupyterLabなどのIDEが含まれています。さらに、SageMaker Distributionはconda、micromamba、pipをPythonパッケージマネージャとしてサポートしています。

2023年5月に、JupyterConでSageMaker Distributionをオープンソースプロジェクトとしてリリースしました。このリリースにより、SageMaker Distributionをローカル環境で実験実行するために使用できるようになりました。現在、Amazon SageMaker Studioでそのイメージをネイティブに提供しており、Amazon SageMakerで実験を実行する際の高いパフォーマンス、計算、セキュリティの利点を得ることができます。

以前のオープンソースリリースと比較して、以下の追加機能があります:

  • オープンソースのイメージがSageMaker Studioのファーストパーティイメージとして利用可能になりました。ノートブックのイメージとカーネルを選択する際に、カスタムイメージを作成する必要なく、簡単にオープンソースのSageMaker Distributionを選択することができます。
  • SageMaker Python SDKパッケージがイメージに組み込まれるようになりました。

この記事では、SageMaker Distributionイメージの機能と利点について説明します。

SageMaker StudioでSageMaker Distributionを使用する

既存のStudioドメインにアクセス権がある場合は、SageMaker Studioを起動することができます。Studioドメインを作成するには、「Amazon SageMakerドメインへのオンボード」の手順に従ってください。

  1. SageMaker StudioのUIで、メニューバーからファイルを選択し、新規を選択し、ノートブックを選択します。
  2. イメージとインスタンスのプロンプトが表示されたら、SageMaker Distribution v0 CPUまたはSageMaker Distribution v0 GPUイメージを選択します。
  3. カーネルを選択し、選択を選択します。

これで、一般的なMLパッケージやフレームワークをインストールせずにコマンドを実行できるようになりました!また、サポートされているフレームワーク(PyTorchやTensorFlowなど)で動作するノートブックも、アクティブなカーネルを切り替える必要なく、SageMakerの例のリポジトリから実行できます。

SageMaker Distributionを使用してリモートでコードを実行する

パブリックベータ版の発表では、ノートブックをローカルのコンピューティング環境からSageMaker Studioに移行し、ノートブックジョブを使用してノートブックを運用することについて説明しました。

さらに、@remoteデコレータを関数に追加するだけで、ローカルノートブックコードをSageMakerトレーニングジョブとして直接実行することもできます。

以下のコードをSageMaker Distributionイメージで実行してみましょう:

from sagemaker.remote_function import remote

@remote(instance_type="ml.m5.xlarge", dependencies='./requirements.txt')
def divide(x, y):
    return x / y

divide(2, 3.0)

セルを実行すると、関数はml.m5.xlargeノートブック上でリモートSageMakerトレーニングジョブとして実行され、SDKはAmazon Elastic Container Registry(Amazon ECR)のトレーニングイメージとして自動的にSageMaker Distributionイメージを選択します。ディープラーニングワークロードの場合、スクリプトを複数の並列インスタンスで実行することもできます。

SageMaker Distributionから別の場所にConda環境を再現する

SageMaker DistributionはパブリックなDockerイメージとして利用できます。ただし、DockerよりもConda環境に精通しているデータサイエンティスト向けに、GitHubリポジトリでは各イメージビルドの環境ファイルも提供しているため、CPUおよびGPUバージョンのConda環境を構築することができます。

各バージョンのビルドアーティファクトは、sagemaker-distribution/build_artifactsディレクトリに保存されています。利用可能なSageMaker Distributionのバージョンと同じ環境を作成するには、次のコマンドを実行します。パラメータ--fileは、適切な環境ファイルに置き換えてください:

conda create --name conda-sagemaker-distribution \
  --file sagemaker-distribution/build_artifacts/v0/v0.2/v0.2.1/cpu.env.out
# 環境をアクティベートする
conda activate conda-sagemaker-distribution

オープンソースのSageMaker Distributionイメージのカスタマイズ

オープンソースのSageMaker Distributionイメージには、データサイエンスと機械学習でよく使用されるパッケージが含まれています。しかし、データサイエンティストは追加のパッケージへのアクセスが必要な場合や、エンタープライズのお客様はユーザーに追加の機能を提供するための独自のパッケージを持っている場合があります。そのような場合、必要なパッケージを含んだ実行環境を持つための複数のオプションがあります。以下に、複雑さの順にリストアップします:

  • ノートブックに直接パッケージをインストールすることができます。Condaとmicromambaをお勧めしますが、pipも使用できます。
  • パッケージ管理にCondaを使用したデータサイエンティストは、SageMaker DistributionのConda環境を他の場所で再現し、その環境に追加のパッケージをインストールおよび管理することができます。
  • 管理者がユーザーに対して繰り返し可能で制御された実行環境を提供したい場合、SageMaker DistributionのDockerイメージを拡張して独自のイメージを維持することができます。カスタムイメージの作成と使用の詳細な手順については、「独自のSageMakerイメージを使用する」を参照してください。

クリーンアップ

SageMaker Studioを試した場合、未使用の計算リソースの課金を避けるために、すべてのStudioアプリをシャットダウンしてください。手順については、「Studioアプリのシャットダウンと更新」を参照してください。

結論

本日、SageMaker Studio内でオープンソースのSageMaker Distributionイメージのリリースを発表しました。SageMaker Studioで利用可能な第一のパーティイメージの1つとしてイメージの使用方法、SageMaker Python SDKの@remoteデコレータを使用してスクリプトを操作化する方法、SageMaker DistributionのConda環境をStudio外で再現する方法、およびイメージのカスタマイズ方法について説明しました。SageMaker Distributionを試してみて、GitHubを通じてフィードバックを共有することをお勧めします!

追加参考資料

  • SageMaker-distributionのドキュメント
  • AWSによる2023年のJupyterConへの貢献
  • SageMaker Studioの入門

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

人工知能

ChatGPTの基礎を学ぶための優れたリソース

この記事では、ChatGPT(および大規模言語モデル)の中核を構成する基本的な要素について学びます

機械学習

「アニメート・ア・ストーリー:高品質で構造化されたキャラクター主導のビデオを合成する、検索補完型ビデオ生成によるストーリーテリング手法による出会い」

テキストから画像へのモデルは最近注目を集めています。生成型人工知能の導入により、GPTやDALL-Eなどのモデルはリリース以来...

データサイエンス

中国の最新のAI研究により、「OMMO」と呼ばれる大規模な屋外マルチモーダルデータセットと新しい視点合成および暗黙的なシーン再構築のためのベンチマークが紹介されました

最近の暗黙的な脳表現の進歩により、写真のような新しい視点の合成と高品質な表面再構築が可能になりました。残念ながら、現...

機械学習

あらゆる種類の分子との相互作用を理解する新しいAIモデルによって、タンパク質デザインの領域での境界を打破する

DeepmindのAlphaFoldによって始まった構造生物学の革命の後、関連するタンパク質設計の分野は、深層学習の力によって最近新し...