Amazon SageMaker Debuggerとは

2019年12月4日に発表されたAmazon SageMaker Debuggerについての解説です

以下公式サイトです
https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-debugger-debug-your-machine-learning-models/

開発された背景

特に学習プロセス中には、多くの不明瞭な問題により、データセットに存在するパターンの抽出や学習が正しくできない可能性があります。私がここでお話ししたいのは、機械学習ライブラリのソフトウェアバグではなく(実際に発生しますが)、学習ジョブの失敗のほとんどは、パラメーターの不適切な初期化、ハイパーパラメーターの不適切な組み合わせ、独自のコードの設計問題などが原因です。

さらによろしくないことに、これらの問題がすぐに目に見えてくることは滅多にありません。時間とともに成長し、ゆっくりですが確実にトレーニングプロセスを台無しにし、精度の低いモデルを生み出してしまいます。あなたが本物の専門家であっても、その問題に直面すると、それらを特定し、追い詰めるのは非常に困難で時間がかかるものです。Amazon SageMaker Debugger は、その課題解決のために生まれました。

Amazon SageMaker Debugger

上記は公式サイトからの引用です。
機械学習での失敗はソフトウェア的なバグより、パラメータなどの設定をミスしてしまうことによる失敗が多く、それらはすぐに判明するものではなく、あとになってわかりそれまでの過程を台無しにしてしまうものと言うことです。
そのバグを人が見つけるのは非常に困難であるから、Amazon SageMaker Debuggerが開発されたということですね。

Amazon SageMaker Debuggerとは

Amazon SageMaker Debuggerとは機械学習のデバッガです。
SageMaker Debugger SDK を使用して、定期的な間隔で内部モデルの状態を保存できます。そしてそれらはS3に保存されます。

内部モデルの状態は以下のように構成されています。

  • モデルによって学習されているパラメーター、たとえばニューラルネットワークの重みとバイアス
  • オプティマイザーによってこれらのパラメーターに適用される変更、別名勾配
  • 最適化パラメーター自体
  • 精度や損失などのスカラー値
  • 各レイヤーの出力

公式サイトに詳細とサンプルコードが掲載されているのでぜひ参考にしてください!

対応リージョン

Amazon SageMaker が 利用可能なすべてのAWS リージョンで現在利用可能です。
機械学習に悩んでいる開発者のみなさんはぜひ利用してみてください