

Sagemaker Python SDKは、Amazon Sagemakerで機械学習モデルをトレーニングおよび展開するためのオープンソースライブラリです。
SDKを使用すると、人気のあるディープラーニングフレームワークを使用してモデルをトレーニングおよび展開できます。また、SageMakerおよびGPUトレーニング用に最適化されたコアマシン学習アルゴリズムのスケーラブルな実装であるAmazonアルゴリズムでモデルをトレーニングおよび展開することもできます。 Sagemaker互換のDockerコンテナに独自のアルゴリズムが組み込まれている場合は、これらを使用してモデルをトレーニングおよびホストすることもできます。
APIリファレンスを含む詳細なドキュメントについては、ドキュメントをお読みください。
Sagemaker Python SDKはPypi用に構築されており、Sagemaker Python SDKの最新バージョンは次のようにPIPでインストールできます
PIPインストールsagemaker == <https://pypi.org/project/sagemaker/>のpypiの最新バージョン
このリポジトリをクローン化し、リポジトリのルートディレクトリでPIPインストールコマンドを実行することにより、ソースからインストールできます。
git clone https://github.com/aws/sagemaker-python-sdk.git CD Sagemaker-Python-sdk ピップインストール。
Sagemaker Python SDKは、Unix/LinuxとMacをサポートしています。
Sagemaker Python SDKは次のようにテストされています。
sagemaker Libraryには、ユーザーのニーズをよりよく理解し、問題を診断し、新しい機能を提供するために、テレメトリが有効になっています。このテレメトリは、さまざまなSagemaker機能の使用を追跡します。
テレメトリをオプトアウトすることを好む場合は、 TelemetryOptOutパラメーターをSDKデフォルト設定でtrueに設定することで簡単に実行できます。詳細な手順については、Sagemaker Python SDKでのデフォルトの構成と使用にアクセスしてください。
マネージドサービスとして、Amazon Sagemakerは、Amazon Sagemakerが管理するAWSハードウェアであなたに代わって操作を実行します。 Amazon Sagemakerは、ユーザーが許可する操作のみを実行できます。 AWSのドキュメントで、どのアクセス許可が必要かについて詳しく読むことができます。
Sagemaker Python SDKは、Sagemakerの使用に必要なものを除いて、追加のアクセス許可を必要としないはずです。ただし、パスを備えたIAMの役割を使用している場合は、 iam:GetRoleに許可を与える必要があります。
Sagemaker Python SDKは、Apache 2.0ライセンスに基づいてライセンスされています。 Copyright Amazon.com、Inc。またはその関連会社です。無断転載を禁じます。ライセンスはhttp://aws.amazon.com/apache2.0/で入手できます。
Sagemaker Python SDKには、単体テストと統合テストがあります。
pip install --upgrade .[test] pip install --upgrade .[test]実行してテストを実行するのに必要なライブラリをインストールできます。
ユニットテスト
Toxを使用してユニットテストを実行します。これは、複数のPythonバージョンのユニットテストを実行できるプログラムであり、コードがスタイルガイドラインに適合していることを確認します。サポートされているすべてのPythonバージョンでTOXを実行しているため、同じ構成でユニットテストを実行するには、Pythonバージョンの通訳をインストールする必要があります。
TOXでユニットテストを実行するには、実行してください。
TOXテスト/ユニット
統合テスト
統合テストを実行するには、次の前提条件を満たす必要があります
SageMakerRoleという名前のIAMの役割があります。 AmazonSageMakerfullaccessポリシーと、弾性推論を使用するために必要な許可を備えたポリシーを添付する必要があります。aws ecr create-repository --repository-name remote-function-dummy-container実行したい統合テストのみを選択的に実行することをお勧めします。個々のテスト関数名で:でフィルタリングできます。
tox -k 'test_i_care_about'
また、次のコマンドを実行してすべての統合テストを実行することもできます。
TOX-テスト/INTEG
また、並行して実行することもできます。
tox -n auto tests/integ
.githooksディレクトリ内のすべてのgitフックを有効にするには、リポジトリディレクトリでこれらのコマンドを実行します。
.git/hooks -type l -exec rm {} ;
.githooks -type f -exec ln -sf ../../ {} .git/hooks/;
個々のgitフックを有効にするには、.githooks/ディレクトリから.git/ hooks/ディレクトリに移動するだけです。
Python環境をセットアップし、 doc/requirements.txtにリストされている依存関係をインストールします。
#コンドラ Conda Create -N SageMaker Python = 3.7 コンドラはセージメーカーをアクティブにします conda install sphinx = 3.1.1 sphinx_rtd_theme = 0.5.0 #ピップ PIPインストール-R doc/compoestion.txt
リポジトリをクローン/フォークし、ローカルバージョンをインストールします。
PIPインストール - アップグレード。
次に、 sagemaker-python-sdk/docディレクトリにcdて実行します。
HTMLを作成します
doc Directory内の.RSTファイルを編集して、再びmake html実行することにより、ドキュメント内の任意のページのテンプレートを編集できます。
Python Webサーバーでサイトをプレビューします。
CD _BUILD/HTML python -m http.server 8000
http:// localhost:8000にアクセスして、ウェブサイトを表示します
Sagemaker SparkMLサービングを使用すると、SageMakerのSparkMLモデルに対して予測を実行できるようになりました。 SageMakerでSparkMLモデルをホストするには、 MLeapライブラリでシリアル化する必要があります。
MLEAPの詳細については、https://github.com/combust/mleapを参照してください。
Sparkのサポートメジャーバージョン:3.3(MLEAPバージョン-0.20.0)
SparkMLModelクラスのインスタンスを作成し、 deploy()メソッドを使用して、訓練されたSparkMLモデルに対して予測を実行するために使用できるエンドポイントを作成する方法の例を次に示します。
sparkml_model = SparkMLModel ( model_data = 's3://path/to/model.tar.gz' , env = { 'SAGEMAKER_SPARKML_SCHEMA' : schema })
model_name = 'sparkml-model'
endpoint_name = 'sparkml-endpoint'
predictor = sparkml_model . deploy ( initial_instance_count = 1 , instance_type = 'ml.c4.xlarge' , endpoint_name = endpoint_name )モデルが展開されると、このようなCSVペイロードでエンドポイントを呼び出すことができます。
payload = 'field_1,field_2,field_3,field_4,field_5'
predictor . predict ( payload )さまざまなcontent-typeの詳細と、フォーマットAcceptだけでなく、Sagemaker Sparkmlが認識しているschemaの構造については、Sagemaker Sparkmlサービングコンテナを参照してください。