

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

# Amazon Personalize ドメインレコメンダーの作成時に使用する列の設定
<a name="create-recommender-configure-columns"></a>

レコメンダーを作成する際に、レコメンダーを裏付けるモデルをトレーニングするときに Amazon Personalize が考慮する列を変更できます。

 これにより、トレーニングデータのさまざまな組み合わせを試してみることができます。または、意味のあるデータがない列を除外することもできます。例えば、レコメンデーションをフィルタリングするためだけに使用したい列があるとします。この列をトレーニングから除外すると、Amazon Personalize はフィルタリング時にのみこの列を考慮します。

EVENT\$1TYPE 列を除外することはできません。デフォルトでは、Amazon Personalize はトレーニング時に使用できるすべての列を使用します。次のデータは、常にトレーニングから除外されます。
+ ブール値データ型の列
+ [インプレッションデータ](interactions-datasets.md#interactions-impressions-data)
+ カテゴリやテキスト以外のカスタム文字列フィールド

 トレーニングにインプレッションデータを含めることはできませんが、ユースケースまたはレシピがそれを使用する場合、Amazon Personalize はインプレッションデータを使用してレコメンデーションを取得したときに探索をガイドします。

次のコードサンプルは、 AWS CLI または AWS SDKs でトレーニングするときに使用する列の設定方法を示しています。Amazon Personalize コンソールでこれを行うには、レコメンダーを作成するときに **[詳細設定]** ページで使用する列を指定します。詳細については、「[レコメンダーの作成 (コンソール)](creating-domain-recommenders.md#creating-recommenders-console)」を参照してください。

## トレーニング時に使用する列の設定 (AWS CLI)
<a name="domain-config-columns-cli"></a>

列をトレーニングから除外するには、レコメンダー設定の一部として `trainingDataConfig` で `excludedDatasetColumns` オブジェクトを指定します。オブジェクト内の各キーについて、データセットタイプを指定します。値ごとに、除外する列のリストを指定します。詳細については、「[Amazon Personalize ドメインレコメンダーの作成時に使用する列の設定](#create-recommender-configure-columns)」を参照してください。

```
aws personalize create-recommender \
--name recommender name \
--dataset-group-arn dataset group ARN \
--recipe-arn recipe ARN \
--recommender-config "{\"trainingDataConfig\": {\"excludedDatasetColumns\": { \"datasetType\" : [ \"column1Name\", \"column2Name\"]}}}"
```

## トレーニング時に使用される列の設定 (AWS SDKs)
<a name="domain-configure-columns-sdk"></a>

列をトレーニングから除外するには、レコメンダー設定の一部として `trainingDataConfig` で `excludedDatasetColumns` オブジェクトを指定します。キーごとに、データセットタイプを指定します。値ごとに、除外する列のリストを指定します。次のコードは、レコメンダーを作成する際にトレーニングから列を除外する方法を示しています。詳細については、「[Amazon Personalize ドメインレコメンダーの作成時に使用する列の設定](#create-recommender-configure-columns)」を参照してください。

------
#### [ SDK for Python (Boto3) ]

```
import boto3

personalize = boto3.client('personalize')

create_recommender_response = personalize.create_recommender(
  name = 'recommender name',
  recipeArn = 'recipe name',
  datasetGroupArn = 'dataset group ARN',
  recommenderConfig = {
    "trainingDataConfig": {
      "excludedDatasetColumns": { 
        "datasetType": ["COLUMN_A", "COLUMN_B"]
      }
    }
  }
)

recommender_arn = create_recommender_response['recommenderArn']

print('Recommender ARN:' + recommender_arn)
```

------
#### [ SDK for JavaScript v3 ]

```
// Get service clients and commands using ES6 syntax.
import { CreateRecommenderCommand, PersonalizeClient } from
  "@aws-sdk/client-personalize";

// create personalizeClient
const personalizeClient = new PersonalizeClient({
  region: "REGION"
});

// set the recommender's parameters
export const createRecommenderParam = {
  name: "RECOMMENDER_NAME",             /* required */
  recipeArn: "RECIPE_ARN",              /* required */
  datasetGroupArn: "DATASET_GROUP_ARN", /* required */
  recommenderConfig: {
    trainingDataConfig: {
      excludedDatasetColumns: {
        "DATASET_TYPE": ["COLUMN_A", "COLUMN_B"]   
      }
    }
  }
};

export const run = async () => {
  try {
    const response = await personalizeClient.send(new CreateRecommenderCommand(createRecommenderParam));
    console.log("Success", response);
    return response; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

------