本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 Amazon Personalize 指标归因
重要
在创建指标归因并记录事件或导入增量批量数据后,您每月将为每个指标支付 CloudWatch 费用。有关 CloudWatch 定价的信息,请参阅 Amazon CloudWatch 定价
要开始生成指标报告,您需要创建指标归因并导入交互数据。在创建指标归因时,您需指定要报告的事件类型列表。对于每种事件类型,您需指定一个 Amazon Personalize 在收集数据时应用的函数。可用函数包括 SUM(DatasetType.COLUMN_NAME)
和 SAMPLECOUNT()
。
例如,您可能有一个在线视频流应用程序,并想要跟踪以下两个指标:建议的点击率和观看的电影总时长,其中,物品数据集中的每个视频都包含一个 LENGTH
属性。您将创建一个指标归因并添加两个指标,其中每个指标都有事件类型和函数。第一个可能是带有 SAMPLECOUNT()
函数的 Click
事件类型。第二个可能是带有 SUM(Items.LENGTH)
函数的 Watch
事件类型。
您只能将 SUM()
函数应用于物品数据集和物品交互数据集的数值列。要将 SUM()
函数应用于物品数据集中的列,您必须先导入物品元数据。
您可以使用 Amazon Personalize 控制台、Amazon Command Line Interface 或 Amazon SDK 创建指标归因。
创建指标归因(控制台)
要使用 Amazon Personalize 控制台创建指标归因,请导航到指标归因页面,然后选择创建指标归因。创建指标归因时,您需指定可选的 Amazon S3 存储桶路径、Amazon Personalize IAM 服务角色以及要报告的指标列表。
当您使用 Amazon Personalize 控制台创建物品交互数据集导入作业时,您可以选择在新选项卡中创建指标归因。然后,您可以返回导入作业,将其完成。如果您已进入配置指标归因页面,则可以跳至步骤 4。
创建指标归因
-
打开 Amazon Personalize 控制台(网址为 https://console.aws.amazon.com/personalize/home
),并登录您的账户。 -
选择您的数据集组。
-
在导航窗格的自定义资源下,选择指标归因。
-
在指标归因详细信息中,选择创建指标归因。
-
在配置指标归因页面上,为指标归因命名。
-
如果您想将指标发布到 Amazon S3,则对于 Amazon S3 数据输出路径,输入目标 Amazon S3 存储桶。这样,您就可以选择在每次创建数据集导入作业时发布指标。使用以下语法:
s3://amzn-s3-demo-bucket/<folder> path>
-
如果将 Amazon KMS 用于加密,则对于 KMS 密钥 ARN,输入 Amazon KMS 密钥的 Amazon 资源名称 (ARN)。您必须向 Amazon Personalize 和 Amazon Personalize IAM 服务角色授予使用您密钥的权限。有关更多信息,请参阅 向 Amazon Personalize 授予使用您 Amazon KMS 密钥的权限。
-
在 IAM 角色中,选择创建新服务角色或使用现有角色。您选择的角色必须具有 CloudWatch 的
PutMetricData
权限。如果您想发布到 Amazon S3,则该角色必须拥有访问 Amazon S3 存储桶的PutObject
权限。要使用您在为 Amazon Personalize 创建IAM角色中创建的角色,您可能需要为 CloudWatch 和 Amazon S3 添加策略。
有关策略示例,请参阅向 Amazon Personalize 授予访问 CloudWatch 的权限和向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限。
-
选择下一步。
-
在定义指标属性页面上,选择如何定义指标。选择构建指标属性以使用生成器工具。选择输入指标属性,以 JSON 格式输入指标。
-
如果您选择构建指标属性,请为每个指标提供名称、事件类型并选择一个函数。对于
SUM()
函数,选择列名称。选择添加指标属性以添加其他指标。 -
如果您选择输入指标属性,请以 JSON 格式输入每个指标。下面演示了如何设置指标格式。
{ "EventType": "watch", "MetricName": "MinutesWatchedTracker", "MetricMathExpression": "SUM(Items.LENGTH)" }
-
选择下一步。
在查看并创建页面上,查看新指标归因的详细信息。要进行更改,请选择 Previous。要创建指标归因,请选择创建。指标属性为活动后,您可以开始导入数据并查看结果。有关查看结果的信息,请参阅在 CloudWatch 中查看指标数据图表。有关将结果发布到 Amazon S3 的信息,请参阅将指标归因报告发布到 Amazon S3。
创建指标归因 (Amazon CLI)
以下代码演示如何使用 Amazon Command Line Interface 创建指标归因。您指定的角色必须具有 CloudWatch 的 PutMetricData
权限,如果发布到 Amazon S3,则该角色必须拥有对 Amazon S3 存储桶的 PutObject
权限。要使用您在为 Amazon Personalize 创建IAM角色中创建的角色,您可能需要为 CloudWatch 和 Amazon S3 添加策略。有关策略示例,请参阅向 Amazon Personalize 授予访问 CloudWatch 的权限和向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限。
为每个指标指定名称、事件类型和表达式(函数)。可用函数包括 SUM(DatasetType.COLUMN_NAME)
和 SAMPLECOUNT()
。对于 SUM() 函数,指定数据集类型和列名称。例如,SUM(Items.LENGTH)
。有关每个参数的信息,请参阅CreateMetricAttribution。
aws personalize create-metric-attribution \ --name
metric attribution name
\ --dataset-group-arndataset group arn
\ --metrics-output-config "{\"roleArn\": \"Amazon Personalize service role ARN
\", \"s3DataDestination\":{\"kmsKeyArn\":\"kms key ARN
\",\"path\":\"s3://amzn-s3-demo-bucket
/folder-name
/\"}}" \ --metrics "[{ \"eventType\": \"event type
\", \"expression\": \"SUM(DatasetType.COLUMN_NAME)
\", \"metricName\": \"metric name
\" }]"
创建指标归因 (Amazon SDK)
以下代码演示如何使用 SDK for Python (Boto3) 创建指标归因。您指定的角色必须具有 CloudWatch 的 PutMetricData
权限,如果发布到 Amazon S3,则该角色必须拥有对 Amazon S3 存储桶的 PutObject
权限。要使用您在为 Amazon Personalize 创建IAM角色中创建的角色,您可能需要为 CloudWatch 和 Amazon S3 添加策略。有关策略示例,请参阅向 Amazon Personalize 授予访问 CloudWatch 的权限和向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限。
为每个指标指定名称、事件类型和表达式(函数)。可用函数包括 SUM(DatasetType.COLUMN_NAME)
和 SAMPLECOUNT()
。对于 SUM() 函数,指定数据集类型和列名称。例如,SUM(Items.LENGTH)
。有关每个参数的信息,请参阅CreateMetricAttribution。