创建 Amazon Personalize 数据集组 - Amazon Personalize

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

创建 Amazon Personalize 数据集组

为数据创建架构JSON文件后,就可以创建数据集组了。在 Amazon Personalize 中,数据集组是亚马逊个性化资源的容器,包括数据集、域推荐器和自定义资源。数据集组将资源组织到独立的集合中,在其中,一个数据集组中的资源不会影响任何其他数据集组中的资源。

您可以为每个业务域创建一个数据集组。例如,您可能有一个提供流视频的建议的应用程序,还有一个提供音频书籍的建议的应用程序。在 Amazon Personalize 中,您需要为每个应用程序创建一个数据集组。这样,来自一个应用程序的数据就不会影响 Amazon Personalize 为另一个应用程序生成的建议。

您可以创建域数据集组或自定义数据集组:

  • 使用域数据集组,您可以创建针对不同使用案例进行预配置和优化的资源。创建数据集组时,您可以通过将 VIDEO _ON_ DEMAND 或的属性域指定为属性域数据集组。ECOMMERCE

    如果您有流视频或电子商务应用程序,我们建议您创建域数据集组。您仍然可以添加自定义资源,例如针对自定义使用案例训练的解决方案和解决方案版本。您无法在域数据集组中创建次佳操作资源,包括操作和操作交互数据集。

  • 自定义数据集组 仅包含您根据使用案例配置的自定义资源。使用自定义资源,您可以根据业务需求,训练和部署可配置的解决方案与解决方案版本(经过训练的 Amazon Personalize 建议模型)。如果没有 VIDEO _ON_ DEMAND 或ECOMMERCE应用程序,我们建议您创建自定义数据集组。否则,我们建议从域数据集组开始,然后根据需要添加自定义资源。

您可以使用 Amazon Personalize 控制台创建数据集组, AWS Command Line Interface (AWS CLI),或 AWS SDKs.

创建数据集组(控制台)

通过在 Amazon Personalize 控制台中指定数据集组名称,创建数据集组。

创建数据集组
  1. https://console.aws.amazon.com/personalize/家中打开 Amazon Personalize 控制台并登录您的账户。

  2. 选择创建数据集组

  3. 如果这是您第一次使用 Amazon Personalize,请在创建数据集组页面的新建数据集组中,选择开始使用

  4. 数据集组详细信息中,对于数据集组名称,为您的数据集组指定一个名称。

  5. 选择您的

    • 选择电子商务以创建ECOMMERCE域名数据集组。

    • 选择 “视频点播” 创建 VIDEO _ON_ DEMAND 域数据集组。

    • 选择自定义,创建仅包含自定义资源(例如解决方案、市场活动和批量推理作业)的自定义数据集组。

  6. 对于标签,可以选择添加任何标签。有关标记 Amazon Personalize 资源的更多信息,请参阅为 Amazon Personalize 资源添加标签

  7. 选择创建数据集组。此时将显示概览页面。现在,您可以创建架构和数据集了。请参阅 创建架构和数据集

创建数据集组 (AWS CLI)

要创建数据集组,请使用 create-dataset-group 操作。要创建域数据集组,请为域指定 ECOMMERCEVIDEO_ON_DEMAND。要创建自定义数据集组,请不要指定域。您可以使用标签参数,选择在 Amazon Personalize 中为资源添加标签。有关示例,请参阅添加标签 (AWS CLI)

以下代码为 VIDEO_ON_DEMAND 域创建了域数据集组。

aws personalize create-dataset-group \ --name dataset-group-name \ --domain VIDEO_ON_DEMAND

如果成功,数据集组 Amazon 资源名称 (ARN) 将显示如下。

{ "datasetGroupArn": "arn:aws:personalize:us-west-2:acct-id:dataset-group/DatasetGroupName" }

记录此值供将来使用。要显示您创建的数据集组,请使用describe-dataset-group命令并指定返回的数据集组ARN。

aws personalize describe-dataset-group \ --dataset-group-arn dataset group arn

数据集组及其属性显示如下。

{ "datasetGroup": { "name": "DatasetGroupName", "datasetGroupArn": "arn:aws:personalize:us-west-2:acct-id:dataset-group/DatasetGroupName", "status": "ACTIVE", "creationDateTime": 1542392161.262, "lastUpdatedDateTime": 1542396513.377 } }

当数据集组status处于状态时ACTIVE,您就可以创建架构和数据集了。请参阅 创建架构和数据集

创建数据集组 (AWS SDKs)

使用以下代码创建域数据集组。为域数据集组命名,对于 domain,指定 ECOMMERCEVIDEO_ON_DEMAND。要创建自定义数据集组,请修改代码以删除域参数。

有关该API操作的更多信息,请参阅CreateDatasetGroupAPI参考部分中的。您可以使用标签参数,选择在 Amazon Personalize 中为资源添加标签。有关示例,请参阅添加标签 (AWS SDK)

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') response = personalize.create_dataset_group( name = 'dataset group name', domain = 'business domain' ) dsg_arn = response['datasetGroupArn'] description = personalize.describe_dataset_group(datasetGroupArn = dsg_arn)['datasetGroup'] print('Name: ' + description['name']) print('ARN: ' + description['datasetGroupArn']) print('Status: ' + description['status'])
SDK for Java 2.x
public static String createDomainDatasetGroup(PersonalizeClient personalizeClient, String datasetGroupName, String domain) { try { CreateDatasetGroupRequest createDatasetGroupRequest = CreateDatasetGroupRequest.builder() .name(datasetGroupName) .domain(domain) .build(); return personalizeClient.createDatasetGroup(createDatasetGroupRequest).datasetGroupArn(); } catch (PersonalizeException e) { System.out.println(e.awsErrorDetails().errorMessage()); } return ""; }
SDK for JavaScript v3
// Get service clients module and commands using ES6 syntax. import { CreateDatasetGroupCommand } from "@aws-sdk/client-personalize"; import { personalizeClient } from "./libs/personalizeClients.js"; // Or, create the client here. // const personalizeClient = new PersonalizeClient({ region: "REGION"}); // Set the domain dataset group parameters. export const domainDatasetGroupParams = { name: 'NAME', /* required */ domain: 'DOMAIN' /* required for a domain dsg, specify ECOMMERCE or VIDEO_ON_DEMAND */ } export const run = async () => { try { const response = await personalizeClient.send(new CreateDatasetGroupCommand(domainDatasetGroupParams)); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();

DescribeDatasetGroup 操作会返回操作的 datasetGroupArn 和状态。当数据集组status处于状态时ACTIVE,您就可以创建架构和数据集了。请参阅 创建架构和数据集