

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

# SIMS 配方
<a name="native-recipe-sims"></a>

**注意**  
 所有 RELATED\$1ITEMS 食谱都使用交互数据。在您想为模型配置更多超参数时，选择 SIMS。如果您有物品元数据并希望 Amazon Personalize 使用它来查找类似物品，可选择 [Similar-Items 食谱](native-recipe-similar-items.md)。

 Item-to-item相似之处 (SIMS) 配方使用协作筛选来推荐与你获得推荐时指定的项目最相似的项目。SIMS 使用您的物品交互数据集（而不是颜色或价格等物品元数据）来确定相似度。SIMS 会识别交互数据集用户历史记录中物品的共存情况，以推荐相似物品。例如，借助 SIMS，Amazon Personalize 可以推荐客户经常一起购买的咖啡店物品或不同用户也观看的电影。

 当您获得类似物品建议时，您可以根据您在请求中指定的物品的属性筛选物品。为此，请将 `CurrentItem`.`attribute` 元素添加到您的筛选器。有关示例，请参阅[item data filter examples](item-recommendation-filter-examples.md#item-examples)。

 要使用 SIMS，您必须创建一个包含至少 1000 个唯一历史和事件交互（组合）的物品交互数据集。SIMS 在生成建议时不使用用户或物品数据集中的数据。您仍然可以根据这些数据集中的数据筛选建议。有关更多信息，请参阅 [筛选建议和用户细分](filter.md)。

 如果某件物品的用户行为数据不足，或者找不到您提供的物品 ID，则 SIMS 会推荐热门物品。创建解决方案版本后，确保您的解决方案版本和数据为最新状态。使用 SIMS 时，您必须手动创建新的解决方案版本（重新训练模型），以便 Amazon Personalize 将新用户纳入用户细分，并更新模型以反映用户的最新行为。然后，您必须使用解决方案版本更新所有市场活动。有关更多信息，请参阅 [维护建议相关性](maintaining-relevance.md)。

SIMS 食谱具有以下属性：
+  **名称** – `aws-sims`
+  **食谱 Amazon 资源名称 (ARN)** - `arn:aws:personalize:::recipe/aws-sims`
+  **算法 ARN** - `arn:aws:personalize:::algorithm/aws-sims`
+  **特征转换 ARN** - `arn:aws:personalize:::feature-transformation/sims`
+  **食谱类型** - `RELATED_ITEMS`

下表描述 SIMS 配方的超参数。*超参数* 是一个算法参数，您可以调整该参数以提高模型性能。算法超参数控制模型的执行方式。特征化超参数控制如何筛选训练中使用的数据。为超参数选择最佳值的过程称为超参数优化 (HPO)。有关更多信息，请参阅 [超级参数和 HPO](customizing-solution-config-hpo.md)。

该表还为每个超参数提供以下信息：
+ **范围**：[上界, 下界]
+ **值类型**：Integer、Continuous（浮点数）、Categorical（布尔值、列表、字符串）
+ **可调 HPO**：该参数是否可以参与超级参数优化 (HPO)？


| Name | 说明 | 
| --- | --- | 
| 算法超参数 | 
| popularity\$1discount\$1factor |   配置受欢迎程度如何影响建议。指定一个接近 0 的值可包含更受欢迎的物品。指定一个更接近 1 的值可减少对受欢迎程度的关注。 默认值：0.5 范围：[0.0, 1.0] 值类型：浮点数 HPO 可调：是  | 
| min\$1cointeraction\$1count |  计算一对物品之间的相似性所需的最小共同交互次数。例如，值 `3` 表示您需要三个或更多与这两个物品进行交互的用户以供算法计算其相似性。 默认值：3 范围：[0, 10] 值类型：整数 HPO 可调：是  | 
| 特征化超参数 | 
| min\$1user\$1history\$1length\$1percentile |  要包含在模型训练中的用户历史记录长度的最小百分位数。*历史记录长度* 是用户的可用数据总量。使用 `min_user_history_length_percentile` 排除历史记录长度较短的一定百分比的用户。历史记录较短的用户通常会根据物品受欢迎程度而不是用户的个人需求或需要来显示模式。删除它们可以在训练模型时更多地关注数据中的基础模式。使用直方图或类似工具查看用户历史记录长度后，请选择适当的值。我们建议您设置一个值，该值将保留大多数用户，但会删除边缘案例。 默认值：0.005 范围：[0.0, 1.0] 值类型：浮点数 HPO 可调：否  | 
| max\$1user\$1history\$1length\$1percentile |  要包含在模型训练中的用户历史记录长度的最大百分位数。历史记录长度 是用户的可用数据总量。使用 `max_user_history_length_percentile` 排除历史记录长度较长的一定百分比的用户。具有较长历史记录的用户往往包含噪音。例如，机器人可能有很长的自动交互列表。删除这些用户可限制训练中的噪音。使用直方图或类似工具查看用户历史记录长度后，请选择适当的值。我们建议您设置一个值，该值将保留大多数用户，但会删除边缘案例。 例如，`min_hist_length_percentile = 0.05` 和 `max_hist_length_percentile = 0.95` 将包括除那些历史记录长度在最低或最高 5% 内的用户之外的所有用户。 默认值：0.995 范围：[0.0, 1.0] 值类型：浮点数 HPO 可调：否  | 
| min\$1item\$1interaction\$1count\$1percentile |  要包含在模型训练中的物品交互计数的最小百分位数。使用 `min_item_interaction_count_percentile` 排除交互历史记录较短的百分比的物品。历史记录较短的物品通常是新物品。删除它们可以在训练模型时更多地关注具有已知历史记录的物品。使用直方图或类似工具查看用户历史记录长度后，请选择适当的值。我们建议您设置一个值，该值将保留大多数物品，但会删除边缘案例。 默认值：0.01 范围：[0.0, 1.0] 值类型：浮点数 HPO 可调：否  | 
| max\$1item\$1interaction\$1count\$1percentile |  要包含在模型训练中的物品交互计数的最大百分位数。使用 `max_item_interaction_count_percentile` 排除交互历史记录较长的百分比的物品。具有较长的历史记录的物品往往较旧，可能已过时。例如，已绝版的电影发行版本。删除这些物品可以专注于相关性更高的物品。使用直方图或类似工具查看用户历史记录长度后，请选择适当的值。我们建议您设置一个值，该值将保留大多数物品，但会删除边缘案例。 例如，`min_item_interaction_count_percentile = 0.05` 和 `max_item_interaction_count_percentile = 0.95` 将包括除交互计数在最低或最高 5% 内的物品之外的所有物品。 默认值：0.9 范围：[0.0, 1.0] 值类型：浮点数 HPO 可调：否  | 

## SIMS 示例笔记本
<a name="native-recipe-sims-more-info"></a>

有关演示如何使用 SIMS 配方的 Jupyter 笔记本示例，请参阅[查找类似物品 \$1 HPO](https://github.com/aws-samples/amazon-personalize-samples/blob/master/next_steps/core_use_cases/related_items/personalize_sims_example.ipynb)。