准备将推荐器模型用于 Amazon Pinpoint - Amazon Pinpoint

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

准备将推荐器模型用于 Amazon Pinpoint

要使用 Amazon Pinpoint,必须将推荐模型部署为 Amazon Personalize 广告系列。此外,某些 AWS Identity and Access Management (IAM) 角色和策略必须到位。如果您想增强 Amazon Pinpoint 从模特那里收到的推荐,还必须有一个 AWS Lambda 功能来处理这些建议。

在 Amazon Pinpoint 中设置推荐器模型之前,应与数据科学和开发团队一道设计和创建这些资源。此外,请与这些团队合作,确保模型符合某些技术要求,以便与 Amazon Pinpoint 配合使用。创建这些资源后,请与您的管理员合作,确保您和 Amazon Pinpoint 可以访问它们。在执行这些步骤时,请收集在 Amazon Pinpoint 中设置模型所需的信息。

Amazon Personalize 活动

Amazon Personalize 旨在帮助您创建机器学习 (ML) 模型,为使用您的应用程序的客户提供实时、个性化的建议。 AWS 服务 Amazon Personalize 主要通过使用数据和配方的组合来指导您完成创建和训练机器学习模型的过程。配方 是一种配置为支持特定使用案例的算法,例如,预测人们喜欢并与之交互的项目。

这种数据和配方组合称为解决方案。在训练解决方案后,它将变为解决方案版本。然后,测试、优化并准备使用解决方案版本。在准备好使用一个解决方案版本时,它被部署为 Amazon Personalize 活动。然后,使用该活动提供实时的个性化建议。要了解有关 Amazon Personalize 的更多信息,请参阅 Amazon Personalize 开发人员指南

要使 Amazon Pinpoint 能够从 Amazon Personalize 活动中检索建议,活动及其组件必须满足以下要求:

  • 食谱必须是 USER_ 食PERSONALIZATION谱。对于这种类型的配方,它可以使用任何支持的算法设置(超参数)。有关此类配方的信息,请参阅《Amazon Personalize 开发人员指南》中的使用预定义配方

  • 必须使用可与 Amazon Pinpoint 项目IDs中的终端节点IDs或用户关联的用户来训练解决方案。IDsAmazon Pinpoint 使用 Amazon Personalize 中的 userId 字段来关联 Amazon Personalize 中的用户与 Amazon Pinpoint 项目中的端点或用户之间的数据。

  • 该解决方案必须支持使用 Amazon Personalize 运行时的GetRecommendations操作API。

  • 活动必须使用您要从中检索建议的解决方案版本。

  • 必须部署活动,并且活动状态为活跃

  • 该活动必须与使用其推荐的Amazon Pinpoint项目 AWS 区域 相同。否则,Amazon Pinpoint 无法从活动中检索建议,导致 Amazon Pinpoint 活动或旅程活动失败。

除了这些要求以外,我们还建议配置活动以支持每秒至少 20 个预置的事务。

在与您的团队合作实施符合上述要求的 Amazon Personalize 活动时,还务必回答以下问题:

哪个活动?

要在 Amazon Pinpoint 中设置模型,您需要知道要从中检索推荐的 Amazon Personalize 活动的名称。之后,如果您与管理员一起手动配置活动访问权限,则还需要知道该活动的亚马逊资源名称 (ARN)。

哪种类型的 ID?

在 Amazon Pinpoint 中设置模型时,您需要选择是将 Amazon Personalize 活动中的用户与 Amazon Pinpoint 项目中的端点关联还是用户关联。这将使模型能够提供真正针对特定消息收件人的建议。

在 Amazon Personalize 活动中,每个用户具有一个用户 ID(userIdUSER_ID,具体取决于上下文)。这是唯一地标识活动中的特定用户的字符序列。在 Amazon Pinpoint 项目中,消息收件人可以有两种类型:IDs

  • 端点 ID – 这是唯一标识您可以将消息发送到的目的地的一个字符序列,例如电子邮件地址、手机号码或移动设备。

  • 用户 ID – 这是唯一标识特定用户的一个字符序列。每位用户可以与一个或多个端点关联。例如,如果您通过电子邮件和移动应用程序与用户通信SMS,则该用户可能与三个端点相关联,一个用于用户的电子邮件地址,另一个用于用户的移动电话号码,另一个用于用户的移动设备。

当您选择要与亚马逊个性化用户关联的亚马逊 Pinpoint ID 类型时IDs,请选择您在亚马逊 Pinpoint 项目中使用最一致的类型。如果您或您的应用程序没有向端点或用户分配 ID,则 Amazon Pinpoint 无法为该端点或用户检索建议。这可能会阻止 Amazon Pinpoint 向端点或用户发送消息。或者,可能导致 Amazon Pinpoint 发送以意外或不希望的方式显示的消息。

有多少个建议?

每次 Amazon Pinpoint 检索建议时,Amazon Personalize 都会返回一个针对每个消息收件人的有序的建议列表。您可以将 Amazon Pinpoint 配置为为每位收件人检索其中的 1-5 条推荐。如果您选择一个建议,Amazon Pinpoint 则只为每个收件人检索列表上的第一项,例如,推荐指数最高的影片。如果您选择两个建议,Amazon Pinpoint 则为每个收件人检索列表上的第一和第二项,例如,推荐指数排名前二的两部影片,依此类推。

您为该设置选择的内容主要取决于您对包含模型中的建议的消息设定的目标。不过,这也可能取决于您的团队如何设计解决方案以及您的团队对解决方案性能的评估。因此,请与您的团队合作,确保为此设置选择合适的数字。

建议包含哪些内容?

当 Amazon Pinpoint 检索建议时,Amazon Personalize 会根据您选择的为每个消息收件人检索的建议数量,返回包含 1-5 个建议项目的有序列表。每个项目仅包含文本,例如产品 ID 或电影名称。但是,基于底层解决方案和活动设计,这些项目的性质和内容可能因 Amazon Personalize 活动而异。

因此,最好向您的团队询问活动为建议的项目提供的具体内容。他们的回答可能会影响您如何设计使用活动中的建议的消息。如果您想增强广告系列提供的内容,也可以选择实现可以执行此任务的 AWS Lambda 功能。

AWS Identity and Access Management 角色和策略

AWS Identity and Access Management (IAM) 是一项帮助管理员控制 AWS 资源访问权限的 AWS 服务。要了解有关亚马逊 Pinpoint IAM 及其如何使用的更多信息,请参阅亚马逊 Pinpoint 开发者指南中的亚马逊 Pinpoint 身份和访问管理

在 Amazon Pinpoint 中设置推荐器模型时,您需要指定要从哪个 Amazon Personalize 活动检索建议。要选择活动,您的管理员必须首先允许您查看您所在组织的活动 AWS 账户。否则,该活动不会显示在您可以从中选择的活动列表中。如果您没有在列表中看到该活动,请要求管理员为您提供该访问权限。

此外,您或您的管理员必须创建一个IAM角色和策略,允许 Amazon Pinpoint 从 Amazon Personalize 活动中检索推荐。当您设置推荐器模型时,可以选择让 Amazon Pinpoint 自动为您创建此角色和策略。另一种方法是您在 Amazon Pinpoint 中设置推荐器模型之前,由您或您的管理员手动创建此角色和策略。要了解如何执行此操作,请参阅 Amazon Pinpoint 开发者指南中的检索推荐IAM角色

AWS Lambda 函数

对于某些模型,您可能希望改进 Amazon Pinpoint 从 Amazon Personalize 收到的建议。例如,您可能希望在消息中包含额外的内容(例如,产品的名称、描述和图像),而不是在消息中仅包含单个建议的值(例如,产品名称)。为此,你可以与你的团队合作设计和创建一个 AWS Lambda 函数,将推荐数据转换为你想要的内容。

AWS Lambda 旨在帮助人们无需预置或管理服务器即可运行代码。 AWS 服务 您或您的团队开发和打包代码,然后将其 AWS Lambda 作为 Lambda 函数上传到。 AWS Lambda 然后,每次应用程序或服务(例如 Amazon Pinpoint)调用该函数时都会运行该函数。有关 AWS Lambda的更多信息,请参阅 AWS Lambda 开发人员指南

在 Amazon Pinpoint 中设置推荐器模型时,您需要指定希望 Amazon Pinpoint 如何处理它收到的建议。一个选项是使用 Lambda 函数。如果使用 Lambda 函数,您需要与团队一起完成以下工作:

  • 定义该函数的功能。

  • 定义希望函数在处理建议时使用的自定义建议属性。这包括属性的数量以及每个属性的名称和用途。对于每个消息收件人,一个 Lambda 函数最多可以使用 10 个自定义属性。在 Amazon Pinpoint 中设置推荐模型时,您需要输入有关这些属性的信息。

  • 确保该函数的托管位置与将要使用该函数的 Amazon Pinpoint 项目 AWS 区域 相同。否则,Amazon Pinpoint 无法向该函数发送建议数据,进而导致 Amazon Pinpoint 活动或旅程活动失败。

最后,与管理员合作创建一个策略,以允许 Amazon Pinpoint 在每次发送包含模型建议的消息时调用 Lambda 函数。

有关使用 Lambda 函数处理建议的详细信息,请参阅《Amazon Pinpoint 开发者指南》中的使用 AWS 函数自定义建议