对来自的搜索结果进行个性化设置 OpenSearch - Amazon Personalize
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

对来自的搜索结果进行个性化设置 OpenSearch

您可以使用 Amazon Personalize 对来自开源 OpenSearch 或亚马逊 OpenSearch 服务的结果进行个性化设置,供您的用户使用。

OpenSearch是一项基于 Apache 2.0 许可证的自我管理的开源搜索服务。Amazon OpenSearch Service 是一项托管服务,可帮助您在 Amazon 云中部署、操作和扩展 OpenSearch 资源。当您使用 Amazon OpenSearch 服务时, OpenSearch 会对结果进行检索和排名。

对查询结果进行排名时, OpenSearch 使用名为 BM-25 的概率排名框架来计算相关性分数。如果一个独特的关键字在文档中出现的频率更高,BM-25 会为该文档分配更高的相关性分数。 OpenSearch 排名没有考虑用户行为,例如点击数据。

当您将 Amazon Personalize 与一起使用时 OpenSearch,Amazon Personalize 会根据用户过去的行为、有关商品的任何元数据以及用户的任何元数据对 OpenSearch 结果进行重新排名。 OpenSearch 然后合并重新排名,然后再将搜索响应返回给您的应用程序。在将 Amazon Person OpenSearch alize 的排名应用于 OpenSearch 结果时,你可以控制该排名的权重程度。

通过这个重新排名,结果可以更具吸引力,更符合用户的兴趣。这可以提高应用程序的点击率和转化率。有关描述个性化搜索如何改善电子商务应用程序结果的使用案例示例,请参阅使用案例示例

在开始对 OpenSearch 结果进行个性化设置之前,请查看中指南和要求列出的要求。

使用案例示例

当您使用 Amazon Personalize 对 OpenSearch 结果进行重新排名时,搜索结果可能与您的用户更加相关。例如,您可能有一个销售汽车的电子商务应用程序。如果您的用户输入了丰田汽车的查询,而您没有对结果进行个性化设置,则 OpenSearch 会根据您数据中的关键字返回丰田汽车制造的汽车列表。对于所有用户,此列表将按相同的顺序进行排名。

但是,如果您使用 Amazon Personalize 对结果进行个性化设置,则需要根据特定用户的行为(例如点击次数),按照与特定用户的相关性顺序对这些汽车进行 OpenSearch 重新排名。用户最有可能单击的汽车排在第一位。

当你对 OpenSearch 结果进行个性化设置时,你可以控制 Amazon Personaliz OpenSearch e 给排名的权重(重点)。继续本示例,如果用户搜索特定年份的特定类型的汽车(例如2008年的丰田普锐斯),则可能需要更加重视最初的 OpenSearch排名。

但是,对于能够产生广泛结果且更通用的查询(例如搜索所有丰田汽车),您可能会高度重视个性化。这样,列表顶部的汽车与特定用户更加相关。

个性化搜索工作流程

要对 OpenSearch 结果进行个性化设置,请执行以下操作:

  1. 设置 Amazon Personalize - 如果您尚未设置,请完成设置 Amazon Personalize 中的步骤来设置凭证,并为 Amazon Personalize 设置权限。您无需设置 Amazon SDK 即可对 OpenSearch 结果进行个性化设置。

  2. 完成 Amazon Personalize 工作流程 - 完成 Amazon Personalize 工作流程,以导入数据,使用 Personalized-Ranking 食谱创建解决方案,训练自定义解决方案版本,并将其部署到市场活动中。您只能使用 Personalized-Ranking 食谱。您必须创建物品交互数据集。用户数据集和物品数据集是可选项。有关更多信息,请参阅 Amazon Personalize 工作流程

  3. 设置 OpenSearch 并安装 Amazon Personalize 搜索排名插件 — 如果您还没有,请设置您的 OpenSearch 服务域或开源 OpenSearch 集群。然后,安装 Amazon Personalize 搜索排名插件。此插件可处理与 Amazon Personalize 的通信以及对结果的重新排名。有关更多信息,请参阅 设置 OpenSearch 和安装插件

  4. 配置 Amazon Personalize 搜索排名插件 - 要配置该插件,您需要创建搜索管道。搜索管道 是一组请求和响应处理器。为插件创建管道时,需在 personalized_search_ranking 响应处理器中指定您的 Amazon Personalize 资源。此外,还要配置插件在重新对结果排名时对 Amazon Personalize 结果给予的权重。有关更多信息,请参阅 配置插件

  5. 将 Amazon Personalize 搜索排名插件应用于 OpenSearch 查询 — 您可以将 Amazon Personalize 搜索排名插件应用于OpenSearch 索引的所有查询和回复。您也可以将该插件应用于单个 OpenSearch 查询。有关更多信息,请参阅 将插件应用于 OpenSearch 查询

  6. 比较结果 — Amazon Personalize 搜索排名插件会对 OpenSearch 查询响应中的搜索结果进行重新排名。它既考虑了 Amazon Personalize 的排名,也考虑了来自的排名 OpenSearch。要了解如何对结果进行重新排名,您可以比较使用个性化的查询和不使用个性化的查询的结果。有关更多信息,请参阅 将 OpenSearch 结果与插件的结果进行比较

  7. 监控 Amazon Personalize 搜索排名插件 - 将 Amazon Personalize 搜索排名插件应用于搜索查询时,您可以通过获取搜索渠道的指标来监控该插件。有关更多信息,请参阅 监控插件

Amazon Personalize 搜索排名插件的工作原理

下图显示了 Amazon Personalize 搜索排名插件的工作原理。

描述了当你使用插件对 OpenSearch 结果进行个性化设置时,它的工作原理。
  1. 您可以将客户的查询提交到您的 OpenSearch 服务域或开源 OpenSearch 集群。

  2. OpenSearch 将查询响应(与查询相关的项目列表)和用户 ID 发送到 Amazon Personalize Search Ranking 插件。

  3. 该插件将响应中的物品和用户发送到您的 Amazon Personalize 市场活动,以进行排名。它使用搜索管道中的食谱和市场活动 Amazon 资源名称 (ARN) 值为用户获取个性化排名。它使用 GetPersonalizedRanking API 操作来提供推荐。在请求中,它会将进行查询的用户的用户 ID 和从查询返回的项目传递到中。 OpenSearch inputList

  4. Amazon Personalize 将重新排名的结果返回给插件。

  5. 该插件会重新排列搜索结果并将其返回到您的 OpenSearch 服务域或开源 OpenSearch 集群。它根据 Amazon Personalize 市场活动的响应以及您在设置过程中指定的个性化重视程度,对结果重新排名。

  6. 您的开源 OpenSearch 集群或 OpenSearch 服务域会将最终结果返回给您的应用程序。

其他信息

以下资源提供了有关使用的其他信息 OpenSearch。