

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon Personalize 常见问题解答
<a name="frequently-asked-questions"></a>

 以下是与 Amazon Personalize 中导入数据、训练、模型部署、建议和筛选器相关的常见问题解答。

 有关更多问题和答案，请参阅 [Amazon Personalize 示例](https://github.com/aws-samples/amazon-personalize-samples)存储库中的 [Amazon Personalize 备忘单](https://github.com/aws-samples/amazon-personalize-samples/blob/master/PersonalizeCheatSheet2.0.md)。

**Topics**
+ [数据导入和管理](#data-import-questions)
+ [创建自定义解决方案和解决方案版本](#training-questions)
+ [模型部署（自定义市场活动）](#deployment-questions)
+ [建议](#recommendations-questions)
+ [筛选建议](#filters-questions)

## 数据导入和管理
<a name="data-import-questions"></a>

*我的批量数据应该采用什么格式？*

您的批量数据必须采用逗号分隔值 (CSV) 格式。CSV 文件的第一行必须包含列标题。CSV 文件中的列标题需要映射到此架构以创建数据集。如果您的数据包含任何非 ASCII 编码字符，则必须采用 UTF-8 格式编码 CSV 文件。请勿用引号 (") 将标题括起来。`TIMESTAMP` 和 `CREATION_TIMESTAMP` 数据必须采用 *UNIX 纪元* 时间格式。有关时间戳数据的更多信息，请参阅[时间戳数据](interactions-datasets.md#timestamp-data)。有关 schema 的更多信息，请参阅 [为 Amazon Personalize 架构创建架构 JSON 文件](how-it-works-dataset-schema.md)。

有关完整的数据格式指南，请参阅[为 Amazon Personalize 准备训练数据](preparing-training-data.md)。如果您不确定如何格式化数据，可以使用 Amazon A SageMaker I Data Wrangler（Data Wrangler）来准备数据。有关更多信息，请参阅 [使用 Amazon A SageMaker I Data Wrangler 准备和导入批量数据](preparing-importing-with-data-wrangler.md)。

*需要多少训练数据？*

 对于所有使用案例（域数据集组）和自定义食谱，您的交互数据必须具有以下内容：
+ 至少 1000 条来自用户与您目录中的物品进行交互的物品交互记录。这些交互可以来自批量导入，也可以来自流事件，或者两者兼而有之。
+ 至少 25 个独立用户 IDs ，每个用户至少有两次物品互动。

为获得高质量的建议，我们建议您至少有 1000 名用户的最少 5 万次物品交互，每位用户有两次或更多次物品交互。

您可以从空的物品交互数据集开始，然后在记录了足够的数据后，仅使用新记录的事件创建推荐器（域数据集组）或自定义解决方案版本。某些食谱和使用案例可能有额外的数据要求。有关使用案例要求的信息，请参阅[选择使用案例](domain-use-cases.md)。有关食谱要求的信息，请参阅[选择食谱](working-with-predefined-recipes.md)。

*如何更新物品或用户的属性？*

 使用 Amazon Personalize 控制台或 [PutItems](API_UBS_PutItems.md) 或 [PutUsers](API_UBS_PutUsers.md) 操作，导入具有相同物品 ID 但属性已修改的物品或用户。

*如何删除物品或用户？*

 Amazon Personalize 不支持删除特定物品或用户。要确保物品或用户不显示在建议中，请使用筛选器排除物品。有关更多信息，请参阅 [筛选建议和用户细分](filter.md)。

*如何删除架构？*

 您只能通过 [DeleteSchema](API_DeleteSchema.md) 操作删除架构。不能使用 Amazon Personalize 控制台删除架构。

## 创建自定义解决方案和解决方案版本
<a name="training-questions"></a>

*应使用何种食谱？*

 您使用的 Amazon Personalize 食谱因您的使用案例而定。有关将使用案例与食谱匹配的信息，请参阅[选择食谱](working-with-predefined-recipes.md)。[Amazon Personalize 备忘单](https://github.com/aws-samples/amazon-personalize-samples/blob/master/PersonalizeCheatSheet2.0.md)还包括使用案例和食谱信息。

*我应该多久训练一次？*

我们建议使用至少每周训练一次的自动训练频率。使用自动训练后，您就可以更轻松地维护推荐相关性。训练频率取决于业务需求、所使用的配方以及导入数据的频率。有关更多信息，请参阅 [配置自动训练](solution-config-auto-training.md)。有关维护相关性的信息，请参阅[维护建议相关性](maintaining-relevance.md)。

*是否应该使用 AutoML？*

 不应该使用。相反，我们建议您将使用案例与不同的 Amazon Personalize 食谱进行匹配，然后选择食谱。有关将使用案例与食谱匹配的信息，请参阅[选择食谱](working-with-predefined-recipes.md)。

## 模型部署（自定义市场活动）
<a name="deployment-questions"></a>

 *我应该为我的市场活动的 minProvisionedTPS 设置什么？* 

 高 `minProvisionedTPS` 会增加您的成本。我们建议从 1 开始设置 `minProvisionedTPS`（默认值）。使用 Amazon CloudWatch 指标跟踪您的使用情况，并在必要`minProvisionedTPS`时增加使用量。

 *如何监控我的市场活动费用？* 

 Amazon Personalize Monitor 项目为 Amazon Personalize 活动提供了 CloudWatch 控制面板、自定义指标、利用率警报和成本优化功能。请参见 [Amazon Personalize 示例](https://github.com/aws-samples/amazon-personalize-samples)存储库中的 [Amazon Personalize Monitor](https://github.com/aws-samples/amazon-personalize-monitor)。

 *如何为市场活动设置最大事务吞吐量？* 

 您只能为市场活动设置*最低* 吞吐量。创建 Amazon Personalize 市场活动时，需要指定专用事务容量，用于为您的应用程序用户创建实时建议。如果您的 TPS 增加到超过 `minProvisionedTPS`，则 Amazon Personalize 会自动纵向扩展和缩减预调配容量，但永远不会低于 `minProvisionedTPS`。有关更多信息，请参阅 [预调配的最低每秒事务数和自动扩缩](campaigns.md#min-tps-auto-scaling)。

## 建议
<a name="recommendations-questions"></a>

*如何判断 Amazon Personalize 模型是否在生成质量建议？*

 使用离线和在线指标（参见[通过指标评估 Amazon Personalize 解决方案版本](working-with-training-metrics.md)）以及在线测试（例如A/B testing). For more information about A/B测试，请参阅）来评估解决方案版本的性能[通过 A/B 测试衡量推荐的影响](ab-testing-recommendations.md)。

*如何删除批量推理作业？为什么其状态为“活动”？*

您无法删除批量推理作业。当批量推理作业的状态为*活动*时，表示作业已完成。您可以在输出 Amazon S3 存储桶或文件夹中访问您的建议。批量推理作业完成后，不会因此类作业而产生额外费用。但是，其他服务（例如 Amazon S3）可能会针对输入和输出数据存储收取额外费用。

*为什么支持 SIMS 的市场活动会根据元数据推荐不相似的物品？*

SIMS 使用您的物品交互数据集来确定相似度，而不是颜色或价格等物品元数据。SIMS 会识别交互数据集用户历史记录中物品的共存情况，以推荐相似物品。有关更多信息，请参阅 [SIMS 配方](native-recipe-sims.md)。

*我能否通过单个 GetRecommendations API 操作获得超过 500 个项目？*

500 是您可以通过单个 [GetRecommendations](API_RS_GetRecommendations.md) 检索的最大物品数。此值无法增加。

## 筛选建议
<a name="filters-questions"></a>

*为什么没有按预期筛选建议？*

 有多种原因可能导致此错误：
+  筛选器表达式的格式或语法可能存在问题。有关格式正确的筛选器表达式的示例，请参阅[筛选器表达式示例](filter-expression-examples.md)。
+ Amazon Personalize 考虑每位用户每种事件类型最多 100 次最新交互。这是一个可调节的限额。您可以使用[服务配额控制台](https://console.aws.amazon.com/servicequotas/)请求增加配额。如果您有三个月没有导入某个用户的物品交互，则您的筛选器将不再考虑该用户的历史数据。要考虑这些数据，必须再次导入该用户的整个事件历史记录。

有关更多信息，请参阅 [筛选建议和用户细分](filter.md)。

*如何从建议中删除已购买的物品？*

对于 ECOMMERCE 域数据集组，如果您为[为您推荐](ECOMMERCE-use-cases.md#recommended-for-you-use-case)或[浏览 X 的客户也浏览过](ECOMMERCE-use-cases.md#customers-also-viewed-use-case)使用案例创建推荐器，则 Amazon Personalize 会根据您指定的 userId 和 `Purchase` 事件自动筛选用户购买的物品。

对于其他域数据集组使用案例或自定义资源，使用筛选器删除已购买的物品。向数据添加 `Purchased` 事件类型属性，通过 `PutItems` 操作记录*购买* 事件，并创建一个筛选器，从建议中删除已购买的物品。例如：

```
EXCLUDE ItemID WHERE Interactions.EVENT_TYPE IN ("purchased")
```

有关更多信息，请参阅 [筛选建议和用户细分](filter.md)。