

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

# XGBoost フレームワークプロセッサ
<a name="processing-job-frameworks-xgboost"></a>

XGBoost はオープンソースの機械学習フレームワークです。Amazon SageMaker Python SDK の `XGBoostProcessor` は、XGBoost スクリプトを使用して処理ジョブを実行する機能を提供します。XGBoostProcessor を使用すると、Amazon が構築した Docker コンテナと XGBoost のマネージド環境を活用できるため、独自のコンテナを持ち込む必要がなくなります。

次のサンプルは、`XGBoostProcessor` を使用して、SageMaker AI が提供し、管理する Docker イメージを使った Processing ジョブを実行する方法を示しています。ジョブを実行するとき、`source_dir` 引数にスクリプトと依存関係を含むディレクトリを指定でき、処理スクリプトの依存関係を指定する `requirements.txt` ファイルを `source_dir` ディレクトリ内に置くことができることにご注意ください。SageMaker Processing は、コンテナの `requirements.txt` に依存関係をインストールします。

```
from sagemaker.xgboost import XGBoostProcessor
from sagemaker.processing import ProcessingInput, ProcessingOutput
from sagemaker import get_execution_role

#Initialize the XGBoostProcessor
xgb = XGBoostProcessor(
    framework_version='1.2-2',
    role=get_execution_role(),
    instance_type='ml.m5.xlarge',
    instance_count=1,
    base_job_name='frameworkprocessor-XGB',
)

#Run the processing job
xgb.run(
    code='processing-script.py',
    source_dir='scripts',
    inputs=[
        ProcessingInput(
            input_name='data',
            source=f's3://{BUCKET}/{S3_INPUT_PATH}',
            destination='/opt/ml/processing/input/data'
        )
    ],
    outputs=[
        ProcessingOutput(
            output_name='processed_data',
            source='/opt/ml/processing/output/',
            destination=f's3://{BUCKET}/{S3_OUTPUT_PATH}'
        )
    ]
)
```

`requirements.txt` ファイルがある場合、コンテナにインストールするライブラリのリストである必要があります。`source_dir` のパスは、相対パス、絶対パス、または Amazon S3 URI パスのいずれかになります。ただし、Amazon S3 URI を使用する場合は、tar.gz ファイルを指している必要があります。`source_dir` に指定したディレクトリには複数のスクリプトを入れることができます。`XGBoostProcessor` クラスの詳細については、Amazon SageMaker Python SDK の「[XGBoost Estimator](https://sagemaker.readthedocs.io/en/stable/frameworks/xgboost/xgboost.html)」を参照してください。