本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
當您建立推薦人時,您可以修改 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();