例と詳細: 独自のアルゴリズムまたはモデルを使用する - Amazon SageMaker AI

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

例と詳細: 独自のアルゴリズムまたはモデルを使用する

次の Jupyter ノートブックと追加情報は、Amazon SageMaker ノートブックインスタンスから独自のアルゴリズムまたは事前トレーニング済みモデルを使用する方法を示しています。TensorFlow、MXNet、Chainer、および PyTorch フレームワーク用に構築済みの Dockerfile を持つ GitHub リポジトリへのリンク、および AWS SDK for Python (Boto3) 推定器を使用した SageMaker AI Learner での独自のトレーニングアルゴリズムの実行と SageMaker AI ホスティングでの独自のモデルの実行手順については、「深層学習用の構築済み SageMaker AI Docker イメージ」を参照してください。

セットアップ

  1. SageMaker ノートブックインスタンスを作成します。Jupyter ノートブックインスタンスを作成し、これにアクセスする手順については、「Amazon SageMaker ノートブックインスタンス」を参照してください。

  2. 作成したノートブックインスタンスを開きます。

  3. [SageMaker AI サンプル] を選択して、SageMaker AI のサンプルノートブックの一覧を表示します。

  4. ノートブックインスタンスの [Advanced Functionality] (アドバンスト機能) セクション、またはリンクの GitHub でサンプルノートブックを開きます。ノートブックを開くには、その [使用] タブを選び、次に [コピーを作成] を選択します。

Scikit-learn でトレーニングされたホストモデル

Scikit-Learn でトレーニングされたモデルをファーストパーティの k-means および XGBoost コンテナに注入して SageMaker AI で予測を行うためにそのモデルをホストする方法については、次のサンプルノートブックを参照してください。

SageMaker AI で使用する TensorFlow モデルと Scikit-learn モデルをパッケージ化する

SageMaker AI 環境でのトレーニングとデプロイのため、TensorFlow と scikit-learn フレームワークで開発したアルゴリズムをパッケージ化する方法については、以下のノートブックを参照してください。これらは、Dockerfile を使用して独自の Docker コンテナを構築、登録、デプロイする方法を示しています。

SageMaker AI でニューラルネットワークのトレーニングとデプロイを行う

MXNet または TensorFlow を使用してニューラルネットワークをローカルにトレーニングし、トレーニングされたモデルからエンドポイントを作成してそれを SageMaker AI にデプロイする方法については、次のノートブックを参照してください。MXNet モデルは MNIST データセットから手書きの数字を認識するようトレーニングされています。TensorFlow モデルは、虹彩を分類するようトレーニングされています。

パイプモードを使用してトレーニングする

Dockerfile を使用して train.py script を呼び出すコンテナを構築し、パイプモードを使用してアルゴリズムをカスタムトレーニングする方法については、次のノートブックを参照してください。パイプモードでは、入力データは、トレーニング中にアルゴリズムに転送されます。これにより、ファイルモードを使用する場合と比較してトレーニング時間を減らすことができます。

独自の R モデルを取り込む

カスタム R イメージを追加して AWS SMS ノートブックでモデルを構築およびトレーニングする方法については、次のブログ記事を参照してください。このブログ記事では、「SageMaker AI Studio Classic Custom Image Samples」のライブラリにあるサンプル R Dockerfile を使用しています。

構築済みの PyTorch コンテナイメージを拡張する

構築済みの Docker イメージがサポートしていないアルゴリズムまたはモデルについて追加の機能要件がある場合に、構築済み SageMaker AI PyTorch コンテナイメージを拡張する方法については、次のノートブックを参照してください。

コンテナの拡張の詳細については、「Extend a Pre-built Container」を参照してください。

カスタムコンテナでトレーニングジョブのトレーニングとデバッグを行う

SageMaker Debugger を使用してトレーニングジョブのトレーニングおよびデバッグを行う方法については、次のノートブックを参照してください。この例で提供されるトレーニングスクリプトでは、TensorFlow Keras ResNet 50 モデルと CIFAR10 データセットを使用します。Docker カスタムコンテナは、このトレーニングスクリプトを使用して構築され、Amazon ECR にプッシュされます。トレーニングジョブの実行中、Debugger はテンソル出力を収集し、デバッグの問題を特定します。smdebug クライアントライブラリツールでは、トレーニングジョブとデバッグ情報を呼び出し、トレーニングとデバッガーのルールのステータスを確認し、Amazon S3 バケットに保存されたテンソルを取得してトレーニングの問題を分析する smdebug トライアルオブジェクトを設定できます。