步驟 1:建立資料集群組 - Amazon Personalize

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 1:建立資料集群組

當您開始使用 Amazon Personalize 時,您可以建立資料集群組。資料集群組是 Amazon Personalize 資源的容器,包括資料集、網域推薦程式和自訂資源。資料集群組會將您的資源組織成獨立的集合,其中一個資料集群組的資源不會影響任何其他資料集群組中的資源。

您可以為每個企業網域建立資料集群組。例如,您可能有一個應用程式可提供串流視訊的建議,而另一個應用程式則提供有聲讀物的建議。在 Amazon Personalize 中,您可以為每個應用程式建立資料集群組。如此一來,來自一個應用程式的資料就不會影響 Amazon Personalize 為另一個應用程式產生的建議。

您可以建立網域資料集群組或自訂資料集群組:

  • 透過 Domain 資料集群組,您可以建立針對不同使用案例預先設定和最佳化的資源。建立資料集群組時,您可以透過指定 VIDEO_ON_DEMAND 或電子商務的網域,將其設為網域資料集群組。

    如果您有串流影片或電子商務應用程式,建議您建立網域資料集群組。您仍然可以新增自訂資源,例如針對自訂使用案例訓練的解決方案和解決方案版本。您無法在網域資料集群組中建立下一個最佳動作資源,包括「動作」和「動作互動」資料集。

  • 自訂資料集群組僅包含您根據使用案例設定的自訂資源。使用自訂資源,您可以根據業務需求訓練和部署可設定的解決方案和解決方案版本 (訓練有素的 Amazon Personalize 建議模型)。如果沒有 VIDEO_ON_DEMAND 或電子商務應用程式,建議您建立自訂資料集群組。否則,建議您從網域資料集群組開始,並視需要新增自訂資源。

您可以使用 Amazon Personalize 主控台 AWS Command Line Interface (AWS CLI) 或 AWS 開發套件建立資料集群組。

建立資料集群組 (主控台)

在 Amazon Personalize 主控台中指定資料集群組名稱,以建立資料集群組。

若要建立資料集群組
  1. https://console.aws.amazon.com/personalize/home 打開 Amazon Personalize 化控制台並登錄到您的帳戶。

  2. 選擇 Create dataset group (建立資料集群組)

  3. 如果這是您第一次使用 Amazon Personalize,請在 [建立資料集群組] 頁面的 [新資料集群組] 中,選擇 [開始使用]。

  4. Dataset group details (資料集群組詳細資訊) 中,針對 Dataset group name (資料集群組名稱),為您的資料集群組指定名稱。

  5. 選擇您的域名

    • 選擇電子商務以建立電子商務網域資料集群組。

    • 選擇隨選視訊以建立視訊網域資料集群組。

    • 選擇 [自訂],建立僅包含自訂資源的自訂資料集群組,例如解決方案、行銷活動和批次推論工作。

  6. 對於「標籤」,選擇性地新增任何標籤 如需標記 Amazon Personalize 資源的詳細資訊,請參閱標記 Amazon Personalize 化資

  7. 選擇 Create dataset group (建立資料集群組)。「概觀」頁面隨即顯示。您現在可以匯入資料了。請參閱步驟 2:準備和匯入資料

建立資料集群組 (AWS CLI)

若要建立資料集群組,請使用此create-dataset-group作業。若要建立網域資料集群組,請針對網域指定ECOMMERCEVIDEO_ON_DEMAND。若要建立自訂資料集群組,請勿指定網域。您可以使用標籤參數在 Amazon Personalize 中選擇性地標記資源。如需範例,請參閱新增標籤 (AWS CLI)

下列程式碼會建立網域的 VIDEO_ON_DEMAND Domain 資料集群組。

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" }

記錄此值以備 future 使用。若要顯示您建立的資料集群組,請使用指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 資料集群組。為「網域」資料集群組指定名稱domain,然後指定ECOMMERCEVIDEO_ON_DEMAND。若要建立自訂資料集群組,請修改程式碼以移除 domain 參數。

如需 API 作業的詳細資訊,請參閱 API 參考一節CreateDatasetGroup中的。您可以使用標籤參數在 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 時,您就可以匯入資料了。如需更多詳細資訊,請參閱 步驟 2:準備和匯入資料