本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
筛选实时建议
您可以使用 Amazon Personalize 控制台、 AWS Command Line Interface (AWS CLI) 或 AWS SDKs。
当您获取个性化物品建议或类似物品时,可以在请求中指定促销活动。推广 使用筛选器来定义其他业务规则,这些规则适用于可配置的建议物品子集。有关更多信息,请参阅 在实时推荐中推广商品。
筛选实时建议(控制台)
要使用控制台筛选实时建议,请创建筛选器,然后将其应用于建议请求。
注意
要使用带有参数的筛选器和您在 2020 年 11 月 10 日之前部署的市场活动来筛选建议,您必须使用 UpdateCampaign 操作重新部署市场活动或创建新市场活动。
创建筛选器(控制台)
要在控制台中创建筛选器,请选择包含要用于获取筛选建议的市场活动或推荐器的数据集组。然后,提供筛选器名称和筛选器表达式。
创建筛选器(控制台)
-
在https://console.aws.amazon.com/personalize/家
中打开 Amazon Personalize 控制台并登录您的账户。 -
选择包含要用于获取筛选建议的市场活动或推荐器的数据集组。
-
在导航窗格中,选择筛选条件,然后选择创建新筛选条件。这时,将显示创建筛选器页面。
-
对于筛选器名称,输入筛选器的名称。当您将筛选器应用于建议请求时,您将按此名称选择筛选器。
-
对于表达式,选择构建表达式或手动添加表达式,然后构建或插入表达式:
-
要使用表达式生成器,请选择构建表达式。表达式生成器提供结构、字段和指南,用于构建格式正确的筛选器表达式。有关更多信息,请参阅 使用筛选器表达式生成器。
-
要输入您自己的表达式,请选择手动添加表达式。有关更多信息,请参阅 筛选器表达式元素。
-
-
选择完成。筛选条件的概述页面显示筛选条件的 Amazon 资源名称 (ARN)、状态和完整的筛选条件表达式。要删除筛选器,请选择删除。有关在离开概述页面后查找和删除筛选器的信息,请参阅删除筛选器(控制台)。
应用筛选器(控制台)
要应用筛选条件,请在测试推荐器(针对推荐器)或测试市场活动结果(针对自定义市场活动)中,选择筛选条件并输入任何筛选条件参数值。然后,获取针对用户的建议。
重要
对于使用 INCLUDE
元素的筛选条件表达式,您必须为表达式中定义的所有参数提供值。对于带有使用 EXCLUDE
元素的表达式的筛选条件,您可以省略 filter-values
。在本例中,Amazon Personalize 未使用表达式的这一部分来筛选建议。
应用筛选器(控制台)
-
在https://console.aws.amazon.com/personalize/家
中打开 Amazon Personalize 控制台并登录您的账户。 -
选择包含要用于获取筛选建议的市场活动或推荐器的数据集组。
-
根据数据集组类型或资源类型,执行以下任一操作:
对于域数据集组,在导航窗格中选择推荐器。
对于自定义数据集组或自定义资源,在导航窗格中选择自定义资源,然后选择市场活动。
-
在推荐器或市场活动页面上,选择目标推荐器或市场活动。
-
为了进行比较,请先在不应用筛选条件的情况下获取建议。在测试推荐器/测试市场活动结果下,输入您要获取其建议的用户的 ID 或相关物品的物品 ID,然后选择获取建议。此时将显示一个包含前几项建议的表。
-
从筛选器名称菜单中,选择您创建的筛选器。如果您的筛选器有任何占位符参数,则会显示每个参数的关联字段。
-
如果您使用的筛选器带有占位符参数,请为每个参数输入值以设置筛选条件。要为一个参数使用多个值,请用英文逗号分隔每个值。
-
使用与上一步相同的
User ID
或Item ID
,选择获取建议。此时将显示建议表。例如,如果用户已经购买了建议的物品,筛选条件会将其从建议列表中删除。在本示例中,物品 2657、2985 被用户未购买的最合适的物品(物品 2641 和 1573)所取代。
使用筛选器表达式生成器
“创建筛选器” 页面上的表达式生成器提供了用于构建格式正确的过滤器的结构、字段和指南。
构建筛选器表达式:
-
使用类型、操作、属性、运算符和值字段创建表达式。
对于值,输入固定值,或者要在获得建议时设置筛选条件,请输入 $ + 参数名称。例如,
$GENRES
。获得建议时,您将提供一个或多个要筛选的值。在此示例中,将在获取建议时提供一个类型或类型列表。用英文逗号分隔多个非参数值。不能向筛选器中添加以逗号分隔的参数。
注意
选择属性(
dataset.field
格式)后,由AND
或OR
条件链接的任何后续行的属性值都必须使用相同的dataset
。 -
使用 + 和 X 按钮,在表达式中添加或删除一行。您无法删除第一行。
-
对于新行,使用AND菜单上的
AND
IF
、或OR
运算符来创建条件链。对于
IF
条件:-
每个表达式只能包含一个
IF
项。如果删除 IF 条件,则表达式生成器会删除其后的所有AND
条件。 -
只能对按
CurrentUser
筛选的表达式使用IF
条件。
-
-
选择添加表达式按钮,以添加其它筛选条件表达式来进行更精确的筛选。首先对每个表达式进行独立评估,产生的结果是两个结果的并集。
注意
要创建同时使用物品数据集和交互数据集(或操作数据集和操作交互数据集)的筛选条件,必须使用多个表达式。
表达式生成器示例
以下示例说明如何构建过滤器,以排除在获得推荐时指定的流派的项目(注意 $ GENRES 占位符参数)。该筛选器还会排除 DOWNLOAD_COUNT
超过 200
的物品,但前提是当前用户的年龄超过 17
。
删除筛选器(控制台)
删除筛选器会将筛选器从数据集组的筛选器列表中移除。
重要
批量推理作业正在进行时,您无法删除筛选器。
删除筛选器(控制台)
-
在https://console.aws.amazon.com/personalize/家
中打开 Amazon Personalize 控制台并登录您的账户。 -
从数据集组列表中,选择包含要删除的筛选器的数据集组。
-
在导航窗格中,选择筛选器。
-
从筛选器列表中,选择要删除的筛选器,然后选择查看详细信息。此时会显示筛选器详细信息页面。
-
选择删除,并在确认对话框中确认删除。
筛选实时建议 (AWS CLI)
要使用筛选推荐 AWS CLI,您可以创建一个过滤器,然后通过在GetRecommendations或GetPersonalizedRanking请求ARN中指定筛选条件来应用该过滤器。
重要
要使用带有参数的筛选器和您在 2020 年 11 月 10 日之前部署的市场活动来筛选建议,您必须使用 UpdateCampaign 调用重新部署市场活动或创建新市场活动。
创建筛选器 (AWS CLI)
使用以下 create-filter
操作创建筛选器并指定筛选器表达式。
将Filter name
替换为筛选条件的名称,将Dataset group ARN
替换为数据集组的 Amazon 资源名称 (ARN)。将示例 filter-expression
替换为您自己的筛选器表达式。
aws personalize create-filter \ --name
Filter name
\ --dataset-group-arndataset group arn
\ --filter-expression "EXCLUDE ItemID WHERE Items.CATEGORY IN (\"$CATEGORY\")
"
如果成功,则会显示筛选器ARN。记下该 ARN 供将来使用。要验证筛选器是否处于活动状态,请在使用筛选器之前使用 DescribeFilter 操作。
有关更多信息API,请参阅CreateFilter。有关筛选器表达式的更多信息(包括示例),请参阅筛选条件表达式结构和元素。
应用筛选器 (AWS CLI)
使用 get-recommendations
、get-action-recommendations
或 get-personalized-ranking
操作时,您通过将 filter-arn
和任何筛选条件值作为参数传递,应用筛选条件。
以下是 get-recommendations
操作的示例。将广告活动User ID
的 Amazon 资源名称 (ARN) 替换Campaign ARN
为要获得推荐的用户的 ID,然后Filter ARN
替换为筛选条件的。ARN如果你从推荐者而不是广告活动那里获得推荐,请recommender-arn
改用,为--campaign-arn
推荐者ARN提供推荐。
如果您的表达式含有任何参数,请包含 filter-values
对象。对于筛选器表达式中的每个参数,提供参数名称(区分大小写)和值。例如,如果您的筛选表达式具有$GENRE
参数,请提供 “GENRE” 作为键,并提供一个或多个流派(例如)作为值。"Comedy"
用英文逗号分隔多个值。例如,"\"comedy\",\"drama\",\"horror"\"
。
重要
对于使用 INCLUDE
元素来包含物品的筛选器表达式,您必须为表达式中定义的所有参数提供值。对于带有使用 EXCLUDE
元素排除物品的表达式的筛选器,您可以省略 filter-values
。在本例中,Amazon Personalize 未使用表达式的这一部分来筛选建议。
aws personalize-runtime get-recommendations \ --campaign-arn
Campaign ARN
\ --user-idUser ID
\ --filter-arnFilter ARN
\ --filter-values '{ "Parameter name
": "\"value
\"", "Parameter name
": "\"value1
\",\"value2
\",\"value3
\"" }'
删除筛选器 (AWS CLI)
要删除筛选器,请使用以下 delete-filter
操作。filter ARN
替换ARN为过滤器的。
aws personalize delete-filter --filter-arn
Filter ARN
筛选实时建议 (AWS SDKs)
要使用筛选推荐 AWS SDKs,您可以创建一个过滤器,然后通过在GetRecommendations或GetPersonalizedRanking请求ARN中指定筛选条件来应用该过滤器。
重要
要使用带有参数的筛选器和您在 2020 年 11 月 10 日之前部署的市场活动来筛选建议,您必须使用 UpdateCampaign 调用重新部署市场活动或创建新市场活动。
创建筛选器 (AWS SDKs)
使用 CreateFilter 操作创建新筛选器。以下代码展示了如何创建筛选器。指定筛选器名称、数据集组的 Amazon 资源名称 (ARN),并提供您的筛选表达式。
录制过滤器ARN以备后用。要验证筛选器是否处于活动状态,请在使用筛选器之前使用 DescribeFilter 操作。有关更多信息API,请参阅CreateFilter。有关筛选器表达式的更多信息(包括示例),请参阅筛选条件表达式结构和元素。
应用筛选器 (AWS SDKs)
使用 GetRecommendations、或 GetPersonalizedRanking 操作时 GetActionRecommendations,通过传递 a filterArn
和任意筛选值作为参数来应用过滤器。
以下代码展示了如何为用户获取经过筛选的 Amazon Personalize 物品建议。指定您想要获得推荐的用户的 ID、您的活动的 Amazon 资源名称 (ARN) 以及筛选条件ARN的名称。如果你从推荐者而不是广告活动那里获得推荐,请recommenderArn
改用,为campaignArn
推荐者ARN提供推荐。
对于 filterValues
,对于筛选器表达式中的每个可选参数,提供参数名称(区分大小写)和一个或多个值。例如,如果您的筛选表达式具有$GENRES
参数,请提供 “GENRES” 作为键,并提供一个或多个流派(例如)作为值。"\"Comedy"\"
对于多个值,用英文逗号分隔每个值。例如,"\"comedy\",\"drama\",\"horror\""
。
重要
对于使用 INCLUDE
元素来包含物品的筛选器表达式,您必须为表达式中定义的所有参数提供值。对于带有使用 EXCLUDE
元素排除物品的表达式的筛选器,您可以省略 filter-values
。在本例中,Amazon Personalize 未使用表达式的这一部分来筛选建议。
删除过滤器 (AWS PythonSDK)
要删除筛选器,请使用以下 delete_filter
方法。filter ARN
替换ARN为过滤器的。
import boto3 personalize = boto3.client("personalize") response = personalize.delete_filter( filterArn = "
filter ARN
" )