キャンペーンの作成 - Amazon Personalize

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

キャンペーンの作成

リアルタイムのレコメンデーションについては、データの準備とインポートソリューションの作成 を完了すると、ソリューションバージョンをデプロイしてレコメンデーションを生成する準備が整います。Amazon Personalize のキャンペーンを作成して、ソリューションバージョンをデプロイします。バッチレコメンデーションを取得しようとしている場合は、キャンペーンを作成する必要はありません。詳細については、「バッチレコメンデーションとユーザーセグメントの取得」を参照してください。

キャンペーンは、専用のプロビジョンドトランザクション容量を搭載した、デプロイ済みのソリューションバージョン (トレーニング済みモデル)。アプリケーションユーザー向けのリアルタイムレコメンデーションを作成します。キャンペーンを作成したら、GetRecommendations または GetPersonalizedRanking の API 操作を使用してレコメンデーションを取得します。

キャンペーンは、Amazon Personalize コンソール、AWS Command Line Interface (AWS CLI)、または AWS SDK を使用して作成します。

重要

ソリューションバージョンを手動で再トレーニングする場合、またはキャンペーンの設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「キャンペーンを更新します。」を参照してください。

1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング

Amazon Personalize のキャンペーンを作成する場合、アプリケーションユーザー向けのリアルタイムのレコメンデーションを作成するための専用のトランザクション容量を指定します。トランザクションは単一の GetRecommendations または GetPersonalizedRanking コールです。1 秒あたりのトランザクション数 (TPS) は、Amazon Personalize のスループットと請求単位です。プロビジョンド最小 TPS (minProvisionedTPS) は、Amazon Personalize によってプロビジョニングされたベースラインスループット、つまり最小請求料金を指定します。

TPS が minProvisionedTPS を超えて増加した場合、Amazon Personalize はプロビジョンド容量を自動的にスケールアップまたはスケールダウンしますが、minProvisionedTPS を下回ることはありません。容量が引き上げられている間に短時間の遅延が生じます。これにより、トランザクションの損失が生じる可能性があります。

実際に使用される TPS は、5 分間のウィンドウ内の平均リクエスト数/秒として計算されます。最小プロビジョンド TPS または実際の TPS のいずれか多い金額を支払います。低値から始めることをお勧めしますminProvisionedTPS、Amazon を使用して使用状況を追跡する CloudWatch メトリックスを増やし、minProvisionedTPS必要に応じて。

キャンペーンの作成 (コンソール)

ソリューションバージョンのステータスが [Active ] (アクティブ) になったら、Amazon Personalize のキャンペーンでそのソリューションバージョンをデプロイする準備が整います。

キャンペーンを作成するには (コンソール)

  1. https://console.aws.amazon.com/personalize/home で Amazon Personalize コンソールを開き、アカウントにサインインします。

  2. デプロイするソリューションバージョンのデータセットグループを選択します。

  3. ナビゲーションペインで、[キャンペーン] を選択します。

  4. [Campaigns] (キャンペーン) のページで、[Create campaign] (キャンペーンを作成) を選択します。

  5. [Create new campaign] (新しいキャンペーンを作成) ページの [Campaign details] (キャンペーンの詳細) で、次の情報を入力します。

    • キャンペーン名: キャンペーンの名前を入力します。ここで入力したテキストは、[Campaign] (キャンペーン) ダッシュボードと詳細のページに表示されます。

    • 解決策: 先ほど作成したソリューションを選択します。

    • ソリューションバージョン ID: 先ほど作成したソリューションバージョンの ID を選択します。

    • 1 秒あたりの最小プロビジョンドトランザクション: Amazon Personalize がサポートしている 1 秒あたりの最小プロビジョンドトランザクションを設定します。詳細については、「1 秒あたりの最小プロビジョンドトランザクション数とオートスケーリング」を参照してください。

  6. User-Personalization レシピを使用した場合は、[Campaign configuration] (キャンペーン設定) で、オプションで [Exploration weight] (探索の重み) と [Exploration item age cut off] (探索アイテムが存在するようになってからの期間のカットオフ) の値を入力します。詳細については、「」を参照してください。ユーザーパーソナライゼーション

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

  8. [Create campaign (キャンペーンの作成)] を選択します。

  9. キャンペーンの詳細のページで、キャンペーンのステータスが [Active] (アクティブ) の場合、キャンペーンを使用してレコメンデーションを取得し、インプレッションを記録できます。詳細については、「レコメンデーションの取得 (カスタムデータセットグループ)」を参照してください。

    キャンペーンのステータスが ACTIVE になると、キャンペーンの準備が整います。ソリューションバージョンを再トレーニングする場合、またはキャンペーンの設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「キャンペーンを更新します。」を参照してください。

キャンペーンの作成 (AWS CLI)

ソリューションバージョンのステータスが [Active ] (アクティブ) になったら、Amazon Personalize のキャンペーンでそのソリューションバージョンをデプロイする準備が整います。次の create-campaign AWS CLI コマンドを使用して、User-Personalization レシピを使用してトレーニングされたソリューションバージョンをデプロイするキャンペーンを作成します。キャンペーンに名前を付け、ソリューションバージョン ARN (Amazon リソースネーム) を指定します。オプションで、ユースケースでより高いプロビジョンド容量が必要な場合は minProvisionedTPS を変更します。最小値は 1 です。

campaign-config パラメータは、ソリューションバージョンのトレーニングに使用したレシピに固有です (レシピの詳細については、「ステップ 1: レシピの選択」を参照してください)。この例では、次の User-Personalization レシピ固有の itemExplorationConfig フィールドをデフォルト値で使用しています: explorationWeight および explorationItemAgeCutOffcampaign-config パラメータを省略すると、デフォルトの値が適用されます。itemExplorationConfig フィールドの詳細については、ユーザーパーソナライゼーション レシピの プロパティおよびハイパーパラメータ を参照してください。

aws personalize create-campaign \ --name campaign name \ --solution-version-arn solution version arn \ --min-provisioned-tps 1 \ --campaign-config "{\"itemExplorationConfig\":{\"explorationWeight\":\"0.3\",\"explorationItemAgeCutOff\":\"30\"}}"

キャンペーンのステータスが ACTIVE になると、キャンペーンの準備が整います。現在のステータスを取得するには、DescribeCampaign を呼び出して、 status フィールドが ACTIVE であることを確認します。

ソリューションバージョンを再トレーニングする場合、またはキャンペーンの設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「キャンペーンを更新します。」を参照してください。

Amazon Personalize には、作成したキャンペーンを一覧表示する ListCampaigns など、キャンペーンを管理するための操作が用意されています。キャンペーンを削除するには、DeleteCampaign を呼び出します。キャンペーンを削除しても、キャンペーンの一部であるソリューションバージョンは削除されません。

キャンペーンを作成したら、これを使用して推奨を行うことができます。詳細については、「レコメンデーションの取得 (カスタムデータセットグループ)」を参照してください。

キャンペーンの作成 (AWS SDK)

ソリューションバージョンのステータスが [Active ] (アクティブ) になったら、Amazon Personalize のキャンペーンでそのソリューションバージョンをデプロイする準備が整います。次のコードを使用して、AWS SDK for Python (Boto3) または AWS SDK for Java 2.x でキャンペーンを作成します。

サンプルコードは、次のパラメータを使用します (パラメータの完全なリストについては、「CreateCampaign」を参照してください)。

  • キャンペーンの名前。

  • ソリューションバージョンの ARN (Amazon リソースネーム)。

  • キャンペーンがサポートする 最小プロビジョンド TPS (このパラメータの最小値は 1 です)。

  • [Optional] (オプション) のキャンペーン設定パラメータ itemExplorationWeight および explorationItemAgeCutOff.

キャンペーン設定パラメータは、ソリューションバージョンのトレーニングに使用したレシピに固有です (レシピの詳細については、「ステップ 1: レシピの選択」を参照してください)。この例では、itemExplorationWeight および explorationItemAgeCutOff パラメータは ユーザーパーソナライゼーション レシピに固有です。デフォルトの itemExplorationWeight です0.3デフォルトの explorationItemageCutoff は30。キャンペーン設定パラメータを省略すると、デフォルトの値が適用されます。

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') response = personalize.create_campaign( name = 'campaign name', solutionVersionArn = 'solution version arn', minProvisionedTPS = 1, campaignConfig = {"itemExplorationConfig": {"explorationWeight": "0.3", "explorationItemAgeCutOff": "30"}} ) arn = response['campaignArn'] description = personalize.describe_campaign(campaignArn = arn)['campaign'] print('Name: ' + description['name']) print('ARN: ' + description['campaignArn']) print('Status: ' + description['status'])
SDK for Java 2.x
public static void createCampaign(PersonalizeClient personalizeClient, String campaignName, String solutionVersionArn, Integer minProvisionedTPS, String itemExplorationWeight, String explorationItemAgeCutOff) { //Optional code to instantiate a HashMap and add the explorationWeight and explorationItemAgeCutOff values. //Remove if you aren't using User-Personaliztion. Map<String,String> itemExploration = new HashMap<String,String>(); itemExploration.put("explorationWeight", itemExplorationWeight); itemExploration.put("explorationItemAgeCutOff", explorationItemAgeCutOff); try { // Build a User-Personalization recipe specific campaignConfig object with the itemExploration map. // CampaignConfig construction will vary by recipe. CampaignConfig campaignConfig = CampaignConfig.builder() .itemExplorationConfig(itemExploration) .build(); // build the createCampaignRequest CreateCampaignRequest createCampaignRequest = CreateCampaignRequest.builder() .name(campaignName) .solutionVersionArn(solutionVersionArn) .minProvisionedTPS(minProvisionedTPS) .campaignConfig(campaignConfig) // .build(); // create the campaign CreateCampaignResponse campaignResponse = personalizeClient.createCampaign(createCampaignRequest); String campaignArn = campaignResponse.campaignArn(); DescribeCampaignRequest campaignRequest = DescribeCampaignRequest.builder() .campaignArn(campaignArn) .build(); DescribeCampaignResponse campaignResponse = personalizeClient.describeCampaign(campaignRequest); Campaign newCampaign = campaignResponse.campaign(); System.out.println("The Campaign status is " + newCampaign.status()); } catch (PersonalizeException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

キャンペーンのステータスが ACTIVE になると、キャンペーンの準備が整います。現在のステータスを取得するには、DescribeCampaign を呼び出して、 status フィールドが ACTIVE であることを確認します。

ソリューションバージョンを手動で再トレーニングする場合、またはキャンペーンの設定を変更する場合は、キャンペーンを更新する必要があります。詳細については、「キャンペーンを更新します。」を参照してください。

Amazon Personalize には、作成したキャンペーンを一覧表示する ListCampaigns など、キャンペーンを管理するための操作が用意されています。キャンペーンを削除するには、DeleteCampaign を呼び出します。キャンペーンを削除しても、キャンペーンの一部であるソリューションバージョンは削除されません。

キャンペーンを作成したら、これを使用して推奨を行うことができます。詳細については、レコメンデーションの取得 (カスタムデータセットグループ)を参照してください。