翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ソリューションの作成
Amazon Personalize コンソールを使用してカスタムソリューションを作成できます。 AWS Command Line Interface (AWS CLI)、または AWS SDKs。以下に、Amazon Personalize コンソールを使用してソリューションを作成する詳細な手順と、必須フィールドのみを使用してソリューションを作成する方法を示すコード例を示します。
ソリューションの作成 (コンソール)
重要
デフォルトでは、すべての新しいソリューションで自動トレーニングが使用されます。自動トレーニングでは、ソリューションがアクティブである間にトレーニングコストが発生します。不要なコストを避けるために、完了したらソリューションを更新して自動トレーニングをオフにできます。トレーニングコストの詳細については、「Amazon Personalize の料金
コンソールでソリューションを作成するには、データセットグループを選択し、ソリューション名、レシピ、およびオプションのトレーニング設定を指定します。
ソリューションを設定する (コンソール)
-
ホーム で https://console.aws.amazon.com/personalize/Amazon Personalize
コンソールを開き、アカウントにサインインします。 -
[データセットグループ] のページで、データセットグループを選択します。
-
概要ページのステップ 3 で、次のいずれかを実行します。
-
ドメインデータセットグループを作成した場合は、カスタムリソースを使用する を選択し、ソリューションの作成 を選択します。
-
カスタムデータセットグループを作成した場合は、[ソリューションの作成] を選択します。
-
-
[Solution name (ソリューション名)] で、ソリューションの名前を指定します。
-
ソリューションタイプ で、作成するソリューションのタイプを選択します。選択したタイプによって、利用できるレシピが決まります。
-
[アイテムのレコメンデーション] を選択して、ユーザーのアイテムのレコメンデーションを取得します。例えば、パーソナライズされた映画のレコメンデーションなどです。
-
[アクションのレコメンデーション] を選択して、ユーザーのアクションのレコメンデーションを取得します。例えば、アプリのダウンロードなど、ユーザーにとって次に最適なアクションを生成します。
-
[ユーザーセグメンテーション] を選択してアイテムデータに基づいてユーザーセグメント (ユーザーのグループ) を取得します。
-
-
[Recipe] (レシピ) で、レシピを選択します (「レシピの選択」を参照)。
-
[タグ] には、オプションで任意のタグを追加します。Amazon Personalize リソースのタグ付けの詳細については、「Amazon Personalize リソースのタグ付け」を参照してください。
-
[Next (次へ)] を選択します。
-
「トレーニング設定」ページで、ビジネス要件を満たすようにソリューションをカスタマイズします。
-
自動トレーニング で、ソリューションが自動トレーニングを使用するかどうかを選択します。自動トレーニングを使用する場合は、 を変更できます
Automatic training frequency
。デフォルトのトレーニング頻度は 7 日ごとです。自動トレーニングを使用することをお勧めします。これにより、レコメンデーションの関連性を簡単に維持できます。トレーニングの頻度は、ビジネス要件、使用するレシピ、データをインポートする頻度によって異なります。詳細については、「自動トレーニングの設定」を参照してください。関連性の維持については、「」を参照してくださいレコメンデーションの関連性の維持。
-
ハイパーパラメータ設定 で、レシピとビジネスニーズに基づいてハイパーパラメータオプションを設定します。異なるレシピは異なるハイパーパラメータを使用します。使用可能なハイパーパラメータについては、「」の個々のレシピを参照してくださいレシピの選択。
-
トレーニング用の列 で、レシピがアイテムレコメンデーションまたはユーザーセグメントを生成する場合は、オプションで Amazon Personalize がソリューションバージョンを作成するときに考慮する列を選択します。詳細については、「トレーニング時に使用する列の設定」を参照してください。
-
追加設定 で、アイテムインタラクションデータセットに EVENT_TYPE または EVENT_TYPE 列と EVENT_VALUE 列の両方がある場合、オプションでイベントタイプフィールドとイベント値のしきい値フィールドを使用して、Amazon Personalize がモデルのトレーニング時に使用するアイテムインタラクションデータを選択します。詳細については、「トレーニングに使用するアイテムインタラクションデータの選択」を参照してください。
-
User-Personalization レシピ または Personalized-Ranking レシピ レシピのいずれかを使用する場合は、オプションで [目的] を指定し、[目的の感度] を選択して、関連性に加えて目的に合わせてソリューションを最適化します。目的感度は、Amazon Personalize が目的に基づいてアイテムのレコメンデーションとインタラクションデータを介した関連性のバランスをとる方法を設定します。詳細については、「追加の目的のためのソリューションの最適化」を参照してください。
-
-
Next を選択し、ソリューションの詳細を確認します。作成後にソリューションの設定を変更することはできません。
-
[Create solution (ソリューションの作成)] を選択します。ソリューションを作成すると、Amazon Personalize は 1 時間以内に最初のソリューションバージョンの作成を開始します。トレーニングが開始されたら、ソリューションの詳細ページのソリューションバージョンセクションでモニタリングできます。自動的に作成されたソリューションバージョンでは、トレーニングタイプは ですAUTOMATIC。
ソリューションバージョンが になるとACTIVE、それを使用してレコメンデーションを取得する準備が整います。アクティブなソリューションバージョンの使用方法は、レコメンデーションの取得方法によって異なります。
リアルタイムのレコメンデーションについては、Amazon Personalize キャンペーンでACTIVEソリューションバージョンをデプロイします。キャンペーンを使用して、ユーザー向けのレコメンデーションを取得します。「キャンペーンを使用した Amazon Personalize ソリューションバージョンのデプロイ」を参照してください。
-
バッチレコメンデーションでは、バッチ推論ジョブまたはバッチセグメントジョブを作成するときにACTIVEソリューションバージョンを指定します。「バッチアイテムレコメンデーションの取得」または「バッチユーザーセグメントの取得」を参照してください。
ソリューションの作成 (AWS CLI)
重要
デフォルトでは、すべての新しいソリューションで自動トレーニングが使用されます。自動トレーニングでは、ソリューションがアクティブである間にトレーニングコストが発生します。不要なコストを避けるために、完了したらソリューションを更新して自動トレーニングをオフにできます。トレーニングコストの詳細については、「Amazon Personalize の料金
を使用してソリューションを作成するには AWS CLI、 create-solution
コマンドを使用します。このコマンドは CreateSolutionAPIオペレーションを使用します。次のコードは、自動トレーニングを使用するソリューションを作成する方法を示しています。5 日ごとに新しいソリューションバージョンが自動的に作成されます。
コードを使用するには、コードを更新してソリューションに名前を付け、データセットグループの Amazon リソースネーム (ARN) を指定し、オプションでトレーニング頻度を変更し、使用するレシピARNの を指定します。レシピの詳細については、「レシピの選択」を参照してください。
aws personalize create-solution \ --name
solution name
\ --dataset-group-arndataset group ARN
\ --recipe-arnrecipe ARN
\ --perform-auto-training \ --solution-config "{\"autoTrainingConfig\": {\"schedulingExpression\": \"rate(5 days)\"}}"
-
自動トレーニングを使用することをお勧めします。これにより、レコメンデーションの関連性の維持と改善が容易になります。デフォルトでは、すべての新しいソリューションで自動トレーニングが使用されます。デフォルトのトレーニング頻度は 7 日ごとです。トレーニングの頻度は、ビジネス要件、使用するレシピ、データをインポートする頻度によって異なります。詳細については、「自動トレーニングの設定」を参照してください。
-
レシピに応じて、コードを変更してレシピ固有のプロパティとハイパーパラメータを設定したり (「」を参照ハイパーパラメータと HPO)、トレーニングに使用される列を設定したり (「」を参照トレーニング時に使用される列の設定 (AWS CLI))、トレーニングに使用されるアイテムインタラクションデータをフィルタリングしたりできます (「」を参照)トレーニングに使用するアイテムインタラクションデータの選択。
-
User-Personalization レシピ または Personalized-Ranking レシピレシピのいずれかを使用する場合、関連性に加えて、目的に合わせてソリューションを最適化できます。詳細については、「追加の目的のためのソリューションの最適化」を参照してください。
ソリューションを作成したら、今後の使用ARNに備えてソリューションを記録します。自動トレーニングでは、ソリューションバージョンの作成は、ソリューションが になった後 1 時間以内に開始されますACTIVE。1 時間以内にソリューションバージョンを手動で作成した場合、ソリューションは最初の自動トレーニングをスキップします。トレーニングの開始後、 ListSolutionVersionsAPIオペレーションを使用してソリューションバージョンの Amazon リソースネーム (ARN) を取得できます。ステータスを取得するには、 DescribeSolutionVersionAPIオペレーションを使用します。
ソリューションバージョンが になるとACTIVE、それを使用してレコメンデーションを取得する準備が整います。アクティブなソリューションバージョンの使用方法は、レコメンデーションの取得方法によって異なります。
リアルタイムのレコメンデーションについては、Amazon Personalize キャンペーンでACTIVEソリューションバージョンをデプロイします。キャンペーンを使用して、ユーザー向けのレコメンデーションを取得します。「キャンペーンを使用した Amazon Personalize ソリューションバージョンのデプロイ」を参照してください。
-
バッチレコメンデーションでは、バッチ推論ジョブまたはバッチセグメントジョブを作成するときにACTIVEソリューションバージョンを指定します。「バッチアイテムレコメンデーションの取得」または「バッチユーザーセグメントの取得」を参照してください。
ソリューションの作成 (AWS SDKs)
重要
デフォルトでは、すべての新しいソリューションで自動トレーニングが使用されます。自動トレーニングでは、ソリューションがアクティブである間にトレーニングコストが発生します。不要なコストを避けるため、完了したらソリューションを更新して自動トレーニングをオフにできます。トレーニングコストの詳細については、「Amazon Personalize の料金
を使用してソリューションを作成するには AWS SDKs、 CreateSolutionAPIオペレーションを使用します。次のコードは、自動トレーニングを使用するソリューションを作成する方法を示しています。5 日ごとに新しいソリューションバージョンが自動的に作成されます。
コードを使用するには、コードを更新してソリューションに名前を付け、データセットグループの Amazon リソースネーム (ARN) を指定し、オプションでトレーニング頻度を変更し、使用するレシピARNの を指定します。レシピの詳細については、「レシピの選択」を参照してください。
-
自動トレーニングを使用することをお勧めします。これにより、レコメンデーションの関連性の維持と改善が容易になります。デフォルトでは、すべての新しいソリューションで自動トレーニングが使用されます。デフォルトのトレーニング頻度は 7 日ごとです。トレーニングの頻度は、ビジネス要件、使用するレシピ、データをインポートする頻度によって異なります。詳細については、「自動トレーニングの設定」を参照してください。
-
レシピに応じて、コードを変更してレシピ固有のプロパティとハイパーパラメータを設定したり (「」を参照ハイパーパラメータと HPO)、トレーニングに使用される列を設定したり (「」を参照トレーニング時に使用される列の設定 (AWS SDKs))、トレーニングに使用されるアイテムインタラクションデータをフィルタリングしたりできます (「」を参照)トレーニングに使用するアイテムインタラクションデータの選択。
-
User-Personalization レシピ または recipe のいずれかを使用する場合Personalized-Ranking レシピ、関連性に加えて、目的に合わせてソリューションを最適化できます。詳細については、「追加の目的のためのソリューションの最適化」を参照してください。
ソリューションを作成したら、今後の使用ARNに備えてソリューションを記録します。自動トレーニングでは、ソリューションバージョンの作成は、ソリューションが になった後 1 時間以内に開始されますACTIVE。1 時間以内にソリューションバージョンを手動で作成した場合、ソリューションは最初の自動トレーニングをスキップします。トレーニングの開始後、 ListSolutionVersionsAPIオペレーションを使用してソリューションバージョンの Amazon リソースネーム (ARN) を取得できます。ステータスを取得するには、 DescribeSolutionVersionAPIオペレーションを使用します。
次の Python コードを使用して、自動トレーニングが開始されるまで待機できます。wait_for_training_to_start
メソッドは、最初のソリューションバージョンの ARN を返します。
import time import boto3 def wait_for_training_to_start(new_solution_arn): max_time = time.time() + 3 * 60 * 60 # 3 hours while time.time() < max_time: list_solution_versions_response = personalize.list_solution_versions( solutionArn=new_solution_arn ) solution_versions = list_solution_versions_response.get('solutionVersions', []) if solution_versions: new_solution_version_arn = solution_versions[0]['solutionVersionArn'] print(f"Solution version ARN: {new_solution_version_arn}") return new_solution_version_arn else: print(f"Training hasn't started yet. Training will start within the next hour.") time.sleep(60) personalize = boto3.client('personalize') solution_arn = "
solution_arn
" solution_version_arn = wait_for_training_to_start(solution_arn)
ソリューションバージョンが になるとACTIVE、それを使用してレコメンデーションを取得する準備が整います。アクティブなソリューションバージョンの使用方法は、レコメンデーションの取得方法によって異なります。
リアルタイムのレコメンデーションについては、Amazon Personalize キャンペーンでACTIVEソリューションバージョンをデプロイします。キャンペーンを使用して、ユーザー向けのレコメンデーションを取得します。「キャンペーンを使用した Amazon Personalize ソリューションバージョンのデプロイ」を参照してください。
-
バッチレコメンデーションでは、バッチ推論ジョブまたはバッチセグメントジョブを作成するときにACTIVEソリューションバージョンを指定します。「バッチアイテムレコメンデーションの取得」または「バッチユーザーセグメントの取得」を参照してください。