AutoGluon-Tabular アルゴリズムの入出力インターフェイス - Amazon SageMaker

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

AutoGluon-Tabular アルゴリズムの入出力インターフェイス

勾配ブースティングは表形式のデータで動作し、行が観測値、1 つの列がターゲット変数またはラベル、残りの列が特徴を表します。

- AutoGluonTabular サポートのトレーニングと推論CSVの SageMaker 実装:

  • トレーニング ContentType の場合、有効な入力は text/csv である必要があります。

  • 推論 ContentType の場合、有効な入力は text/csv である必要があります。

注記

CSV トレーニングの場合、アルゴリズムはターゲット変数が最初の列にあり、 にヘッダーレコードCSVがないことを前提としています。

CSV 推論では、アルゴリズムは、CSV入力にラベル列がないことを前提としています。

トレーニングデータ、検証データ、およびカテゴリ別特徴量の入力形式

AutoGluon-Tabular モデルへの入力用にトレーニングデータをフォーマットする方法に注意してください。トレーニングおよび検証データを含む Amazon S3 バケットへのパスを指定する必要があります。カテゴリ別特徴のリストを含めることもできます。trainingvalidation チャネルの両方を使用して入力データを提供します。training チャネルだけを使用することもできます。

trainingvalidation チャネルの両方を使用する

入力データは、2 つの S3 パス (1 つは training チャネル用、もう 1 つは validation チャネル用) によって指定できます。各 S3 パスは、S3 つの特定のCSVファイルを指す S3 プレフィックスまたは完全な S3 パスのいずれかにすることができます。ターゲット変数は、CSVファイルの最初の列にある必要があります。予測変数 (特徴量) は残りの列に存在する必要があります。検証データは、各ブースティング反復の最後に検証スコアを計算するために使用されます。検証スコアが改善しなくなると、早期停止が適用されます。

予測子にカテゴリ特徴量が含まれている場合は、トレーニングデータJSONファイルと同じ場所に という名前categorical_index.jsonのファイルを指定できます。カテゴリ特徴量のJSONファイルを指定する場合、trainingチャネルは特定のCSVファイルではなく S3 プレフィックスを指す必要があります。このファイルには Python ディクショナリが含まれている必要があり、キーは "cat_index_list" という文字列で、値が一意の整数のリストです。値リストの各整数は、トレーニングデータCSVファイル内の対応するカテゴリ特徴量の列インデックスを示す必要があります。各値は、正の整数 (0 は目標値を表すため 0 より大きい) で、Int32.MaxValue (2147483647) より小さく、列の総数よりも小さい必要があります。カテゴリインデックスJSONファイルは 1 つだけである必要があります。

training チャネルのみを使用する

別の方法として、training チャネル用の単一の S3 パスを介して入力データを指定することもできます。この S3 パスは、 CSV ファイルtraining/を含む という名前のサブディレクトリを持つディレクトリを指す必要があります。オプションで、 CSV ファイルvalidation/がある という場所と同じ場所に別のサブディレクトリを含めることができます。検証データが提供されない場合は、トレーニングデータの 20% がランダムにサンプリングされ、検証データとして使用されます。予測子にカテゴリ特徴量が含まれている場合は、データサブディレクトリと同じ場所に という名前categorical_index.jsonのJSONファイルを指定できます。

注記

CSV トレーニング入力モードでは、アルゴリズムで使用できる合計メモリ (インスタンス数に で使用できるメモリを掛けたものInstanceType) がトレーニングデータセットを保持できる必要があります。

SageMaker AutoGluon-Tabular はautogluon.tabular.TabularPredictorモジュールを使用してモデルをシリアル化またはシリアル化解除します。これはモデルの保存またはロードに使用できます。

フレームワークで SageMaker AutoGluon-Tabular で AutoGluonトレーニングされたモデルを使用するには
  • 次の Python コードを使用します。

    import tarfile from autogluon.tabular import TabularPredictor t = tarfile.open('model.tar.gz', 'r:gz') t.extractall() model = TabularPredictor.load(model_file_path) # prediction with test data # dtest should be a pandas DataFrame with column names feature_0, feature_1, ..., feature_d pred = model.predict(dtest)