翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker Debugger リファレンス
Amazon SageMaker Debugger の使用に関する詳細情報とリファレンスについては、以下のトピックを参照してください。
トピック
Amazon SageMaker Debugger API
Amazon SageMaker デバッガーには、モデルトレーニングのモニタリングと分析の実装に使用される API オペレーションが数か所に用意されています。
Amazon SageMaker Debugger は、オープンソースの sagemaker-debugger
Python SDK
Amazon SageMaker AI Python SDKSMDebug
ライブラリで定義された組み込みルールまたはカスタムルールをデプロイし、SageMaker AI 推定器を使用してこれらのテンソルをモニタリングおよび分析できます。
デバッガーは、Amazon SageMaker API にオペレーションとタイプを追加しました。これにより、プラットフォームがモデルのトレーニング時にデバッガーを使用し、入出力の設定を管理できるようになります。
-
CreateTrainingJob
とUpdateTrainingJob
は、次のデバッガー API を使って、テンソルコレクション、ルール、ルールイメージ、プロファイリングオプションを設定します。 -
DescribeTrainingJob
は、次のデバッガー設定やルール評価ステータスなど、トレーニングジョブの詳細な説明を示します。
ルール設定 API オペレーションは、モデルトレーニングを分析するときに SageMaker Processing の機能を使用します。SageMaker Processing の詳細については、「SageMaker Processing によるデータ変換ワークロード」を参照してください。
Debugger ルールの Docker イメージ
Amazon SageMaker AI には、ルール用の Docker イメージの 2 つのセットが用意されています。1 つは SageMaker AI が提供するルールを評価するためのセット (組み込みルール) で、もう 1 つは Python ソースファイルで提供されるカスタムルールを評価するためのセットです。
Amazon SageMaker Python SDKConfigureTrainingJob
API オペレーションで使用できます。
SageMaker Python SDK を使用していない場合は、関連する構築済みコンテナベースイメージをデバッガールールのために取得する必要があります。Amazon SageMaker デバッガーは、組み込みおよびカスタムルール用に構築済みの Docker イメージを提供し、イメージは Amazon Elastic Container Registry (Amazon ECR) に保存されます。Amazon ECR リポジトリからイメージをプルする (またはイメージをリポジトリにプッシュする) には、CreateTrainingJob
API を使ってイメージのフルネームレジストリ URL を使用します。SageMaker AI は、デバッガールールコンテナイメージレジストリアドレスに次の URL パターンを使用します。
<account_id>.dkr.ecr.<Region>.amazonaws.com/<ECR repository name>:<tag>
各 AWS リージョンのアカウント ID、Amazon ECR リポジトリ名、タグ値については、以下のトピックを参照してください。
組み込みルール評価用の Amazon SageMaker Debugger イメージの URL
Amazon SageMaker デバッガーの組み込みルールを提供するイメージのレジストリ URL のコンポーネントには、次の値を使用します。アカウント ID については、次の表を参照してください。
ECR リポジトリ名: sagemaker-debugger-rules
タグ: latest
完全なレジストリ URL の例:
904829902805.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rules:latest
AWS リージョン別の組み込みルールコンテナイメージIDs
リージョン | account_id |
---|---|
af-south-1 |
314341159256 |
ap-east-1 |
199566480951 |
ap-northeast-1 |
430734990657 |
ap-northeast-2 |
578805364391 |
ap-south-1 |
904829902805 |
ap-southeast-1 |
972752614525 |
ap-southeast-2 |
184798709955 |
ca-central-1 |
519511493484 |
cn-north-1 |
618459771430 |
cn-northwest-1 |
658757709296 |
eu-central-1 |
482524230118 |
eu-north-1 |
314864569078 |
eu-south-1 |
563282790590 |
eu-west-1 |
929884845733 |
eu-west-2 |
250201462417 |
eu-west-3 |
447278800020 |
me-south-1 |
986000313247 |
sa-east-1 |
818342061345 |
us-east-1 |
503895931360 |
us-east-2 |
915447279597 |
us-west-1 |
685455198987 |
us-west-2 |
895741380848 |
us-gov-west-1 |
515509971035 |
カスタムルール評価用の Amazon SageMaker Debugger イメージの URI
Amazon SageMaker デバッガーのカスタムルールエバリュエーターを提供するイメージのレジストリ URL のコンポーネントには、次の値を使用します。アカウント ID については、次の表を参照してください。
ECR リポジトリ名: sagemaker-debugger-rule-evaluator
タグ: latest
完全なレジストリ URL の例:
552407032007.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rule-evaluator:latest
AWS リージョン別のカスタムルールコンテナイメージIDs
リージョン | account_id |
---|---|
af-south-1 |
515950693465 |
ap-east-1 |
645844755771 |
ap-northeast-1 |
670969264625 |
ap-northeast-2 |
326368420253 |
ap-south-1 |
552407032007 |
ap-southeast-1 |
631532610101 |
ap-southeast-2 |
445670767460 |
ca-central-1 |
105842248657 |
cn-north-1 |
617202126805 |
cn-northwest-1 |
658559488188 |
eu-central-1 |
691764027602 |
eu-north-1 |
091235270104 |
eu-south-1 |
335033873580 |
eu-west-1 |
606966180310 |
eu-west-2 |
074613877050 |
eu-west-3 |
224335253976 |
me-south-1 |
050406412588 |
sa-east-1 |
466516958431 |
us-east-1 |
864354269164 |
us-east-2 |
840043622174 |
us-west-1 |
952348334681 |
us-west-2 |
759209512951 |
us-gov-west-1 |
515361955729 |
Amazon SageMaker Debugger の例外
Amazon SageMaker Debugger は、ルールの実行に必要なテンソルをすべてのステップで得られるわけではないことを認識の上設計されています。そのため、いくつかの例外を発生させ、テンソルの欠落時に生じることを制御できるようにします。これらの例外は、smdebug.exceptions モジュール
from smdebug.exceptions import *
利用可能な例外は次のとおりです。
-
TensorUnavailableForStep
– リクエストされたテンソルはこのステップで使用できません。これは、このステップがフックによってまったく保存されないか、ステップによって保存されたテンソルに、リクエストされたテンソルが含まれていないことを意味します。この例外が表示された場合、このテンソルは将来このステップで利用できないことを意味します。テンソルがステップに対して縮小版を保存している場合は、それらを照会できることを通知します。 -
TensorUnavailable
- このテンソルは保存されていないか、smdebug
API によって保存されていません。これは、このテンソルはsmdebug
のどのステップに対しても決して見られないことを意味する。 -
StepUnavailable
- このステップは保存されておらず、デバッガーにはこのステップからのデータがありません。 -
StepNotYetAvailable
- このステップはsmdebug
によってまだ確認されていません。トレーニングがまだ進行中の場合は、将来利用可能になる可能性があります。デバッガーは、新しいデータが利用可能になった時点でそれを自動的にロードします。 -
NoMoreData
- トレーニング終了時に発生します。これが表示されると、これ以上保存するステップもテンソルもないことがわかります。 -
IndexReaderException
- インデックスリーダーが有効ではありません。 -
InvalidWorker
- 無効なワーカーが呼び出されました。 -
RuleEvaluationConditionMet
- ステップでのルールの評価により、条件が満たされました。 -
InsufficientInformationForRuleInvocation
- ルールを起動するための情報が不足しています。
Amazon SageMaker Debugger でサポートされている分散トレーニング
次のリストは、深層学習フレームワークやさまざまな分散トレーニングオプションを使ったトレーニングジョブでデバッガーを使用する場合の有効範囲と考慮事項を示しています。
-
Horovod
Horovod でのトレーニングジョブへのデバッガー使用の有効範囲
深層学習フレームワーク Apache MXNet TensorFlow 1.x TensorFlow 2.x TensorFlow 2.x (Keras を使用) PyTorch システムのボトルネックのモニタリング あり あり あり あり あり フレームワークオペレーションのプロファイリング いいえ いいえ いいえ はい あり モデル出力テンソルのデバッグ あり あり あり あり あり -
SageMaker AI 分散データ並列
SageMaker AI 分散データ並列でのトレーニングジョブにデバッガーを使用する有効性の範囲
深層学習フレームワーク TensorFlow 2.x TensorFlow 2.x (Keras を使用) PyTorch システムのボトルネックのモニタリング あり あり あり フレームワークオペレーションのプロファイリング いいえ* いいえ** はい モデル出力テンソルのデバッグ あり あり あり * デバッガーは、TensorFlow 2.x のフレームワークプロファイリングをサポートしていません。
** SageMaker AI 分散データ並列は、Keras 実装による TensorFlow 2.x をサポートしていません。
-
SageMaker AI 分散モデル並列 – デバッガーは SageMaker AI 分散モデル並列トレーニングをサポートしていません。
-
SageMaker AI チェックポイントを使用した分散トレーニング – 分散トレーニングオプションと SageMaker AI チェックポイントの両方が有効になっている場合、デバッガーはトレーニングジョブでは使用できません。次のようなエラーが表示されることがあります。
SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing Enabled
分散トレーニングオプションでトレーニングジョブにデバッガーを使用するには、SageMaker AI チェックポイントを無効にし、トレーニングスクリプトに手動チェックポイント関数を追加する必要があります。分散トレーニングオプションとチェックポイントを使うデバッガーの使用の詳細については、「Amazon SageMaker デバッガーとチェックポイントで Amazon SageMaker分散データ並列を使用する」と「チェックポイントを保存する」を参照してください。
-
パラメータサーバー - デバッガーは、パラメータサーバーベースの分散トレーニングをサポートしていません。
-
SageMaker AI 分散データ並列オペレーションや Horovod
AllReduced
オペレーションなどの分散トレーニングフレームワークオペレーションのプロファイリングは利用できません。 https://horovod.readthedocs.io/en/stable/timeline_include.html