ステップ 1: データセットグループを作成する - Amazon Personalize

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 1: データセットグループを作成する

Amazon Personalize の使用を開始する際に、データセットグループを作成します。データセットグループは、データセット、ドメインレコメンダー、カスタムリソースなど、Amazon Personalize リソース用のコンテナです。データセットグループは、リソースを独立したコレクションにまとめるため、あるデータセットグループのリソースが他のデータセットグループのリソースに影響を与えることはできません。

ビジネスドメインごとにデータセットグループを作成します。例えば、ストリーミング動画のレコメンデーションを提供するアプリケーションと、オーディオブックのレコメンデーションを提供する別のアプリケーションがあるとします。Amazon Personalize では、各アプリケーションに独自のデータセットグループを作成します。この方法では、あるアプリケーションのデータが、Amazon Personalize が別のアプリケーション用に生成するレコメンデーションには影響しません。

ドメインデータセットグループまたはカスタムデータセットグループを作成できます。

  • ドメインデータセットグループを使用して、さまざまなユースケース向けに事前設定され、最適化されたリソースを作成できます。データセットグループを作成する際には、VIDEO_ON_DEMAND または ECOMMERCE のドメインを指定してドメインデータセットグループにします。

    ストリーミング動画または eコマースアプリケーションがある場合は、ドメインデータセットグループを作成することをおすすめします。カスタムユースケース向けにトレーニングされたソリューションやソリューションバージョンなどのカスタムリソースを追加できます。

  • カスタムデータセットグループには、ユースケースに応じて設定したカスタムリソースのみが含まれます。カスタムリソースを使用して、ビジネスニーズに基づき、設定可能なソリューションとソリューションバージョン (トレーニングされた Amazon Personalize のレコメンデーションモデル) をトレーニングし、デプロイします。VIDEO_ON_DEMAND や ECOMMERCE アプリケーションがない場合は、カスタムデータセットグループを作成することをお勧めします。それ以外の場合は、ドメインデータセットグループから始めて、必要に応じてカスタムリソースを追加することをおすすめします。

Amazon Personalize コンソール、AWS Command Line Interface (AWS CLI) または AWS SDK を使用してデータセットグループを作成できます。

データセットグループの作成 (コンソール)

Amazon Personalize コンソールでデータセットグループ名を指定して、データセットグループを作成します。

データセットグループを作成するには
  1. https://console.aws.amazon.com/personalize/home で Amazon Personalize コンソールを開き、アカウントにサインインします。

  2. [データセットグループの作成] を選択します。

  3. Amazon Personalize を初めて使用する場合は、[Create dataset group] (データセットグループを作成) のページの [New dataset group] (新しいデータセットグループ) で、[Get started] (使用を開始) を選択します。

  4. [データセットグループの詳細] で [Dataset group name (データセットグループ名)] にデータセットグループの名前を指定します。

  5. [ドメイン] を選択します。

    • [Eコマース] を選択して ECOMMERCE ドメインデータセットグループを作成します。

    • VIDEO_ON_DEMAND ドメインデータセットグループを作成するには、[ビデオオンデマンド] を選択します。

    • ソリューション、キャンペーン、バッチ推論ジョブなどのカスタムリソースのみを含むカスタムデータセットグループを作成するには、[カスタム] を選択します。

  6. [タグ] には、オプションで任意のタグを追加します。Amazon Personalize リソースのタグ付けの詳細については、「Amazon Personalize リソースのタグ付け」を参照してください。

  7. [データセットグループの作成] を選択します。[概要] ページが表示されます。これで、データをインポートする準備ができました。「ステップ 2: データの準備とインポート」を参照してください。

データセットグループの作成 (AWS CLI)

その後、create-dataset-group 操作を使用してデータセットを作成します。ドメインに ECOMMERCE または VIDEO_ON_DEMAND を指定して、ドメインデータセットグループを作成します。ドメインを指定せずに、カスタムデータセットグループを作成します。Tags パラメータを使用して、オプションで 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 になると、データをインポートする準備が整います。詳細については、「ステップ 2: データの準備とインポート」を参照してください。

データセットグループの作成 (AWS SDK)

次のコードを使用して、ドメインデータセットグループを作成します。ドメインデータセットグループに名前を付け、domain には ECOMMERCE または VIDEO_ON_DEMAND を指定します。カスタムデータセットグループを作成するには、コードを変更してドメインパラメータを削除します。

API 操作の詳細については、API リファレンスのセクションの「CreateDatasetGroup」を参照してください。Tags パラメータを使用して、オプションで Amazon Personalize のリソースにタグを付けることができます。サンプルについては、「タグの追加 (AWS SDKs」を参照してください。

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 になると、データをインポートする準備が整います。詳細については、「ステップ 2: データの準備とインポート」を参照してください。