MLAMLソリューションの監視、メンテナンス、セキュリティ
医療画像分類の Deep Learning モデルを SageMaker Training Job でトレーニングしているチームがいます。トレーニングには平均 10 時間かかりますが、爆発的勾配(Exploding Gradient:逆伝播時に勾配値が異常に大きくなり学習が発散する現象)や損失値の非収束といった問題がジョブ完了後にしか判明せず、GPU インスタンスコストが無駄になっています。MLエンジニアは「トレーニング中にリアルタイムでこれらの異常を検出し、問題が発生した時点でジョブを自動停止したい」という要件を持っています。最も適切なアプローチはどれですか?
ASageMaker Model Monitor をトレーニングジョブに設定し、データ品質スケジュールを有効化することでリアルタイムに勾配異常を検出して自動停止する
SageMaker Model Monitor は、デプロイ済みエンドポイントを対象とするサービスであり、トレーニング中の内部テンソル分析は行いません。
BSageMaker Debugger の DebuggerHookConfig でテンソルコレクションを設定し、組み込みルール(VanishingGradient・ExplodingTensor・LossNotDecreasing など)を適用する。ルール違反を検出したら StoppingCondition によってトレーニングジョブを自動停止する
✓ 正解
SageMaker Debugger はトレーニング中にモデル内部のテンソル(重み・勾配・損失など)をリアルタイムで収集・分析する機能です。DebuggerHookConfig でテンソルの収集設定を行い、VanishingGradient・ExplodingTensor・LossNotDecreasing などの組み込みルールを指定することで、問題発生を自動検出できます。StoppingCondition と組み合わせることでルール違反時にジョブを自動停止し、無駄なコストを削減できます。
CSageMaker Experiments でトレーニング実行ごとに損失カーブを記録し、精度が改善しない場合にデータサイエンティストが手動でジョブを中断する
SageMaker Experiments は、トレーニング実行ごとに損失カーブを記録しますが、自動停止機能は提供しません。
DCloudWatch カスタムメトリクスにトレーニング損失値を送信し、しきい値超過時に CloudWatch アラームから Lambda を呼び出して StopTrainingJob API を実行する
CloudWatch カスタムメトリクスと Lambda による実装は技術的には可能ですが、勾配のような ML 固有の内部テンソルを収集・評価するには Debugger が標準的かつ効率的な解決策です。
解説
SageMaker Debugger はトレーニング中にモデル内部のテンソル(重み・勾配・損失など)をリアルタイムで収集・分析する機能です。DebuggerHookConfig でテンソルの収集設定を行い、VanishingGradient・ExplodingTensor・LossNotDecreasing などの組み込みルールを指定することで、問題発生を自動検出できます。StoppingCondition と組み合わせることでルール違反時にジョブを自動停止し、無駄なコストを削減できます。
選択肢A の SageMaker Model Monitor は、デプロイ済みエンドポイントを対象とするサービスであり、トレーニング中の内部テンソル分析は行いません。
選択肢C の SageMaker Experiments は、トレーニング実行ごとに損失カーブを記録しますが、自動停止機能は提供しません。
選択肢D の CloudWatch カスタムメトリクスと Lambda による実装は技術的には可能ですが、勾配のような ML 固有の内部テンソルを収集・評価するには Debugger が標準的かつ効率的な解決策です。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →