翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker Debugger によって管理される組み込みプロファイラールールを設定する
Amazon SageMaker Debugger の組み込みプロファイラールールは、モデルのトレーニング中に収集されたシステムメトリクスとフレームワークオペレーションを分析します。Debugger には、トレーニング用のコンピューティングリソースとオペレーションを監視し、異常を検出するためのルールを設定するのに役立つ ProfilerRule
API オペレーションが用意されています。例えば、プロファイリングルールは、CPU のボトルネック、過度の I/O 待機時間、GPU ワーカー間のワークロードの不均衡、コンピュートリソースの未使用などの計算上の問題があるかどうかを検出するのに役立ちます。使用可能な組み込みプロファイリングルールの完全なリストについては、「Debugger の組み込みプロファイラールールのリスト」を参照してください。
注記
組み込みルールは Amazon SageMaker 処理コンテナを通じて提供され、 SageMaker デバッガーによって追加料金なしで完全に管理されます。請求の詳細については、「Amazon の SageMaker 料金
次のトピックでは、デバッガーの組み込みルールの使用方法を学習します。
デフォルトのパラメータ設定で SageMaker デバッガーの組み込みプロファイラールールを使用する
推定器に SageMaker デバッガーの組み込みルールを追加するには、rules
リストオブジェクトを設定する必要があります。次のコード例は、 SageMaker デバッガーの組み込みルールを一覧表示する基本的な構造を示しています。
from sagemaker.debugger import Rule, ProfilerRule, rule_configs rules=[ ProfilerRule.sagemaker(rule_configs.
BuiltInProfilerRuleName_1
()), ProfilerRule.sagemaker(rule_configs.BuiltInProfilerRuleName_2
()), ... ProfilerRule.sagemaker(rule_configs.BuiltInProfilerRuleName_n
()), ... # You can also append more debugging rules in the Rule.sagemaker(rule_configs.*()) format. ] estimator=Estimator( ... rules=rules )
組み込みルールの完全なリストについては、「Debugger の組み込みプロファイラールールのリスト」を参照してください。
プロファイリングルールを使用し、トレーニングジョブの計算パフォーマンスと進行状況を検査するには、 SageMaker デバッガーのProfilerReport
ルールを追加します。このルールは、デバッガー ProfilerRuleProfilerRule
ファミリーのすべての組み込みルールをアクティブ化します。さらに、このルールは集約されたプロファイリングレポートを生成します。詳細については、 SageMaker 「デバッガーを使用して生成されたレポートのプロファイリング」を参照してください。次のコードを使用して、プロファイリングレポートルールをトレーニング推定器に追加できます。
from sagemaker.debugger import Rule, rule_configs rules=[ ProfilerRule.sagemaker(rule_configs.
ProfilerReport
()) ]
ProfilerReport
ルールを使用してトレーニングジョブを開始すると、Debugger は 500 ミリ秒ごとにリソース使用状況データを収集します。デバッガーは、リソース使用率を分析して、モデルにボトルネックの問題があるかどうかを特定します。ルールがトレーニングの異常を検出すると、ルールの評価ステータスが IssueFound
に変わります。Amazon CloudWatch Events と を使用して、トレーニングの問題の通知やトレーニングジョブの停止などの自動アクションを設定できます AWS Lambda。詳細については、「Amazon SageMaker Debugger ルールのアクション」を参照してください。
Debugger の組み込みプロファイラールールをカスタムパラメータ値で使用する
組み込みルールのパラメータ値を調整し、テンソルコレクションの正規表現をカスタマイズする場合は、ProfilerRule.sagemaker
および Rule.sagemaker
クラスメソッドの base_config
および rule_parameters
パラメータを設定します。Rule.sagemaker
クラスメソッドの場合、collections_to_save
パラメータを使用してテンソルコレクションをカスタマイズすることもできます。CollectionConfig
クラスの使用方法については、「を使用して Tensor コレクションを設定する CollectionConfig API」を参照してください。
パラメータ値をカスタマイズするには、組み込みルールに次の設定テンプレートを使用します。好きなようにルールパラメータを変更することで、開始されるルールの感度を調整できます。
-
base_config
引数は、組み込みルールメソッドを呼び出す場所です。 -
rule_parameters
引数は、Debugger の組み込みプロファイラールールのリスト にリストされている組み込みルールのデフォルトのキーバリューを調整するためのものです。
デバッガールールクラス、メソッド、パラメータの詳細については、Amazon SageMaker
from sagemaker.debugger import Rule, ProfilerRule, rule_configs, CollectionConfig rules=[ ProfilerRule.sagemaker( base_config=rule_configs.
BuiltInProfilerRuleName
(), rule_parameters={ "key
": "value
" } ) ]
各ルールのパラメータの説明と値のカスタマイズ例については、「Debugger の組み込みプロファイラールールのリスト」を参照してください。
CreateTrainingJob
API を使用した Debugger の組み込みルールの低レベル JSON の設定については、「Amazon SageMaker API を使用してデバッガーを設定する」を参照してください。