翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker Debugger のリファレンス
以下のトピックで、Amazon SageMaker Debugger の使用に関する詳細情報とリファレンスをご覧ください。
トピック
Amazon SageMaker デバッガー APIs
Amazon SageMaker Debugger には、モデルトレーニングのモニタリングと分析を実装するために使用されるAPIオペレーションが複数のロケーションにあります。
Amazon SageMaker Debugger は、組み込みルールの設定、カスタムルールの定義、トレーニングジョブから出力テンソルデータを収集するためのフックの登録に使用されるオープンソース sagemaker-debugger
Python SDK
Amazon SageMaker Python SDKSMDebug
ライブラリで定義された組み込みルールまたはカスタムルールをデプロイし、 SageMaker 推定器を使用してこれらのテンソルをモニタリングおよび分析SDKできます。
デバッガーは Amazon SageMaker API にオペレーションとタイプを追加しました。これにより、プラットフォームはモデルのトレーニング時にデバッガーを使用し、入力と出力の設定を管理できます。
-
CreateTrainingJob
および APIsは、次のデバッガーUpdateTrainingJob
を使用してテンソルコレクション、ルール、ルールイメージ、プロファイリングオプションを設定します。 -
DescribeTrainingJob
は、次のデバッガー設定やルール評価ステータスなど、トレーニングジョブの詳細な説明を示します。
ルール設定APIオペレーションは、モデルトレーニングを分析するときに SageMaker 処理機能を使用します。 SageMaker 処理の詳細については、「」を参照してください SageMaker 処理によるデータ変換ワークロード。
デバッガールールの Docker イメージ
Amazon SageMaker は、ルール用の Docker イメージの 2 つのセットを提供します。1 つは SageMaker (組み込みルール) が提供するルールを評価するためのセットで、もう 1 つは Python ソースファイルで提供されるカスタムルールを評価するためのセットです。
Amazon SageMaker Python を使用する場合SDKConfigureTrainingJob
API。
SageMaker Python を使用していない場合はSDK、デバッガールールに関連する構築済みのコンテナベースイメージを取得する必要があります。Amazon SageMaker デバッガーは、組み込みルールとカスタムルール用に構築済みの Docker イメージを提供し、イメージは Amazon Elastic Container Registry (Amazon ) に保存されますECR。Amazon ECRリポジトリからイメージをプルするには (またはイメージを リポジトリにプッシュするには)CreateTrainingJob
、 を使用してイメージURLのフルネームレジストリを使用しますAPI。 は、デバッガールールコンテナイメージレジストリアドレスに次のURLパターン SageMaker を使用します。
<account_id>.dkr.ecr.<Region>.amazonaws.com/<ECR repository name>:<tag>
各 AWS リージョンのアカウント ID、Amazon ECRリポジトリ名、タグ値については、次のトピックを参照してください。
組み込みルール評価者URIsの Amazon SageMaker デバッガーイメージ
Amazon SageMaker Debugger の組み込みルールを提供するイメージURLsのレジストリのコンポーネントには、次の値を使用します。アカウント についてはIDs、次の表を参照してください。
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 |
カスタムルール評価者URIsの Amazon SageMaker デバッガーイメージ
Amazon SageMaker Debugger のカスタムルール評価者を提供するイメージURLのレジストリのコンポーネントには、次の値を使用します。アカウント についてはIDs、次の表を参照してください。
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 デバッガーの例外
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 Keras を使用した 2.x PyTorch システムのボトルネックのモニタリング あり はい はい はい 可能 フレームワークオペレーションのプロファイリング 不可 いいえ いいえ はい 可能 モデル出力テンソルのデバッグ あり はい はい はい 可能 -
SageMaker 分散データ並列
SageMaker 分散データ並列でジョブをトレーニングするためのデバッガーの使用の有効性の範囲
深層学習フレームワーク TensorFlow 2.x TensorFlow Keras を使用した 2.x PyTorch システムのボトルネックのモニタリング あり はい 可能 フレームワークオペレーションのプロファイリング いいえ* いいえ** 可能 モデル出力テンソルのデバッグ あり はい 可能 * デバッガーは TensorFlow 2.x のフレームワークプロファイリングをサポートしていません。
** SageMaker 分散データ並列は、Keras 実装による TensorFlow 2.x をサポートしていません。
-
SageMaker 分散モデル並列 – デバッガーは SageMaker 分散モデル並列トレーニングをサポートしていません。
-
SageMaker チェックポイントを使用した分散トレーニング – 分散トレーニングオプションと SageMaker チェックポイントの両方が有効になっている場合、デバッガーはトレーニングジョブでは使用できません。次のようなエラーが表示されることがあります。
SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing Enabled
分散トレーニングオプションを使用してジョブをトレーニングするためにデバッガーを使用するには、 SageMaker チェックポイントを無効にし、トレーニングスクリプトに手動チェックポイント関数を追加する必要があります。分散トレーニングオプションとチェックポイントを使うデバッガーの使用の詳細については、「Amazon SageMaker Debugger とチェックポイントでの SageMaker 分散データ並列の使用」と「チェックポイントを保存する」を参照してください。
-
パラメータサーバー - デバッガーは、パラメータサーバーベースの分散トレーニングをサポートしていません。
-
分散データ並列
AllReduced
オペレーションや Horovodオペレーション などの SageMaker 分散トレーニングフレームワークオペレーションのプロファイリングは利用できません。