設定建立 Amazon 個人化網域推薦程式時使用的欄 - Amazon Personalize

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定建立 Amazon 個人化網域推薦程式時使用的欄

當您建立推薦人時,您可以修改 Amazon Personalize 在訓練支援您推薦人的模型時考慮的資料欄。

您可以這樣做來嘗試不同的訓練資料組合。或者,您可以排除沒有有意義數據的列。例如,您可能有一個只想用來篩選建議的資料行。您可以將此資料欄排除在訓練之外,而 Amazon Personalize 只會在篩選時加以考量。

您無法排除 EVENT _ TYPE 欄。根據預設,Amazon Personalize 會使用訓練時可使用的所有欄。下列資料一律會從訓練中排除:

  • 具有布林資料類型的資料行

  • 印象資料

  • 不是分類或文本的自定義字符串字段

您無法在訓練中包含曝光次數資料,但是如果您的使用案例或配方使用該資料,Amazon Personalize 會在您取得建議時使用曝光次數資料來指導探索。

下列程式碼範例顯示如何設定使用 AWS CLI 或 AWS SDKs。若要使用 Amazon Personalize 主控台執行此操作,您可以在建立建議程式時在「進階組態」頁面上指定要使用的欄。如需詳細資訊,請參閱建立推薦人 (主控台)

若要從訓練中排除欄,請在trainingDataConfig作為建議程式組態的一部分提供excludedDatasetColumns物件。針對物件中的每個索引鍵,提供資料集類型。針對每個值,提供要排除的欄清單。如需詳細資訊,請參閱設定建立 Amazon 個人化網域推薦程式時使用的欄

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

若要從訓練中排除欄,請在trainingDataConfig作為建議程式組態的一部分提供excludedDatasetColumns物件。針對每個索引鍵,提供資料集類型。針對每個值,提供要排除的欄清單。下列程式碼顯示如何在建立推薦人時,從訓練中排除資料欄。如需詳細資訊,請參閱設定建立 Amazon 個人化網域推薦程式時使用的欄

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();