记录实时事件以影响推荐 - Amazon Personalize
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

记录实时事件以影响推荐

事件是用户与您的目录之间的交互。它可以是与物品的互动,例如用户购买物品或观看视频,也可以是采取行动,例如申请信用卡或注册会员计划。

Amazon Personalize 可以仅根据实时事件数据、历史事件数据(或两者混合)来提供建议。在客户与推荐互动时记录实时事件。这会生成您的交互数据,并使您的数据保持最新状态。并且它会告知 Amazon Personalize 您的用户当前的兴趣,从而提高建议的相关性。

如果您的域使用案例或自定义配方支持实时个性化,则 Amazon Personalize 会实时使用事件根据用户不断变化的兴趣来更新和调整建议。

如何记录实时事件取决于您要导入的交互数据的类型:

实时事件如何影响建议

如果您的配方支持实时个性化,则在您创建推荐器或自定义市场活动后,Amazon Personalize 会在导入后的几秒钟内为现有物品或操作使用新记录的事件数据。以下使用案例和食谱支持实时个性化:

如果您使用 Trending-Now 食谱,则 Amazon Personalize 会在可配置的时间间隔内自动考虑来自新事件数据的物品。您不必创建新的解决方案版本。有关更多信息,请参阅 Trending-Now 食谱

如果事件中的物品、操作或用户是新的物品、操作或用户,则 Amazon Personalize 如何使用数据取决于您的用户案例或配方。有关更多信息,请参阅 训练后更新数据集中的数据

为匿名用户记录事件

重要

如果您没有为用户记录至少一个含 sessionIduserId 的事件,则 Amazon Personalize 不会在训练时使用仅按 sessionId 跟踪的活动。而且,训练完成后,将不再根据按 sessionId 跟踪的活动提出建议。

在用户创建账户之前,您可以记录他们的物品交互或操作交互事件。为匿名用户记录事件,以构建持续的事件历史记录,其中包含此类用户登录前后的事件。这为 Amazon Personalize 提供了更多关于用户的交互数据,这有助于生成更多相关的建议。

要记录匿名用户(尚未登录的用户)的事件,只需为每个事件指定一个 sessionId。当用户首次访问您的网站或使用您的应用程序时,您的应用程序会生成唯一 sessionId。在整个会话中,您必须在所有活动中使用相同的 sessionId。Amazon Personalize 在用户登录之前使用 sessionId 将事件与用户关联起来。

Amazon Personalize 在训练时不会使用来自匿名用户的事件,除非您将他们与 userId 关联起来。有关更多信息,请参阅 为匿名用户构建持续的事件历史记录

要为匿名用户提供实时个性化设置,请在您的GetRecommendations或 GetActionRecommendations 请求userId中指定sessionId为。

  • 有关展示如何使用 PutEvents 操作和和记录项目交互事件的代码示例 sessionId userId,请参阅记录单个物品交互事件

  • 有关展示如何使用 PutActionInteractions 操作和和记录动作交互事件的代码示例 sessionId userId,请参阅记录单个操作交互事件

为匿名用户构建持续的事件历史记录

要为匿名用户构建事件历史记录并让 Amazon Personalize 在训练时使用他们的事件,请至少记录一个同时含 sessionIduserId 的事件。然后,您可以为 userId 记录任意数量的事件。在开始提供 userId 之后,sessionId 可以改变。在下一次全面的再训练中,Amazon Personalize 会将 userId 与按原始 sessionId 跟踪的匿名用户历史记录关联起来。

再训练完成后,将根据按匿名事件的 sessionId 跟踪的活动以及按 userId 跟踪的任何事件,提出建议。

注意

如果您的用户没有创建账户,而您希望 Amazon Personalize 在训练时使用这些数据,则您可以使用 sessionId 作为事件中的 userId。但是,如果用户最终创建了一个账户,则您将无法将匿名浏览中的事件与他们的新 userId 关联起来。

第三方事件跟踪服务

以下客户数据平台 (CDPs) 可以帮助您从应用程序中收集事件数据并将其发送到 Amazon Personalize。

  • Amplitude - 您可以使用 Amplitude 来跟踪用户操作,以帮助您了解用户的行为。有关使用 Amplitude 和 Amazon Personalize 的信息,请参阅以下 Amazon 合作伙伴网络 (APN) 博客文章:使用 A mplitude 和 Amazon Personalize 衡量个性化的有效性

  • mParticle— 您可以使用 mParticle 从您的应用程序收集事件数据。有关展示如何使用 mParticle 和 Amazon Personalize 来实现个性化产品推荐的示例,请参阅如何利用机器学习的强大功能:第 2 部分。CDP

  • Segment - 您可以使用 Segment 将您的数据发送到 Amazon Personalize。有关将 Segment 与 Amazon Personalize 集成的更多信息,请参阅 Amazon Personalize 目标

示例实施

有关展示如何使用 Amazon Personalize 对使用事件跟踪器和PutEvents操作的用户实时行为做出反应的 Jupyter 笔记本示例,请参阅存储库 getting_starting_started 文件夹中的 2.view_campaign_and_ interactions.ipynb。amazon-personalize-samples GitHub

有关展示如何直播用户与推荐互动的事件的示例,请参阅 Amazon Personalize 示例存储库中的 streaming_e vents。 GitHub

有关包含要在您的 Amazon Personalize 资源和客户端应用程序之间进行实时APIs部署的源代码和支持文件的完整示例,请参阅 Amazon 示例 GitHub 存储库APIs中的实时个性化。该项目包括如何实施以下内容:

  • 用户上下文和用户事件收集

  • 响应缓存

  • 根据物品元数据装饰建议

  • A/B 测试

  • API认证