翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CloudWatch Evidently を使用した A/B テスト
レコメンダーを作成するか、キャンペーンを含むカスタムソリューションバージョンをデプロイしたら、Amazon Personalize レコメンデーションと Amazon CloudWatch Evidently を使用して A/B テストを実行できます。以下の動画では、CloudWatch Evidently を使用して Amazon Personalize のレコメンデーションに基づく A/B テストを実行するプロセスについて説明しています。手順については、「CloudWatch Evidently で A/B テストを実行する」を参照してください。
CloudWatch Evidently で A/B テストを実行する
Amazon Personalize と Amazon CloudWatch Evidently を使用して A/B テストを実行するには、CloudWatch Evidently プロジェクトを作成し、機能とそのバリエーションを定義して、実験をサポートするようにアプリケーションを更新してから、実験を作成して実行します。実験が実行されると、結果が CloudWatch Evidently で表示されます。
Amazon Personalize と CloudWatch Evidently で A/B テストを実行するには
-
新しい CloudWatch Evidently プロジェクトを作成します。プロジェクトは、CloudWatch リソースを論理的にグループ化したものです。プロジェクト内では、テストまたは起動をするバリエーションがある機能を作成します。詳細な手順については、Amazon CloudWatch ユーザーガイドの「新しいプロジェクトの作成」を参照してください。
-
プロジェクトに機能を追加し、そのバリエーションを定義します。この実験では、機能はクリック率など、テストしたいレコメンデーションのシナリオを表す必要があります。
機能を追加する際は、シナリオのさまざまなバリエーションを Amazon Personalize レコメンダーまたはカスタムキャンペーンにマッピングするための識別子を指定します。バリエーションごとに、文字列などのバリエーションタイプを指定し、バリエーションに名前を付けて値を指定します。
実験を実行すると、アプリケーションはバリエーションの値を使用して、レコメンデーションに使用する Amazon Personalize リソースを決定します。例えば、2 つの VIDEO_ON_DEMAND レコメンダーをテストする場合、1 つはユーザーのおすすめユースケース用に作成し、もう 1 つは現在のトレンドユースケース用に作成して、次の JSON を各バリエーションの値として設定できます。
{"type":"top-picks-recommendations","arn":"arn:aws:personalize:us-west-2:<acct-id>:recommender/top-picks-recommender"}
{"type":"trending-recommendations","arn":"arn:aws:personalize:us-west-2:<acct-id>:recommender/trending-now-recommender"}
アプリケーションがその識別子を使用して関連するリソースを識別できるのであれば、どのような識別子を指定してもかまいません。例えば、レコメンダーまたはキャンペーンの名前のみを指定し、アプリケーションのリソースの Amazon リソースネーム (ARN) を作成できます。
機能を追加する詳細な手順については、Amazon CloudWatch ユーザーガイドの「プロジェクトに機能を追加する」を参照してください。
-
実験をサポートするようにアプリケーションを更新します。
-
機能評価 — CloudWatch Evidently
EvaluateFeature
API オペレーションを使用して、各ユーザーセッションにバリエーションを割り当てます。EvaluateFeature
レスポンスには、前のステップで指定したバリエーション値が含まれます。この場合は、レコメンダーのタイプを持つ JSON オブジェクトで、レコメンダーの ARN です。レコメンデーションリクエストコードを更新して、このリソースからレコメンデーションを取得します。機能の評価については、Amazon CloudWatch ユーザーガイドの「EvaluateFeature の使用」を参照してください。
-
結果を記録する — ユーザーによるレコメンデーションと操作の結果を追跡するコードをアプリケーションに追加します。
CloudWatch Evidently での実験のメトリクスを追跡するには、CloudWatch Evidently
PutProjectEvents
API オペレーションを使用して各ユーザーの結果を記録します。例えば、実験に参加しているユーザーがレコメンデーションをクリックすると、このイベントの詳細が CloudWatch Evidently に送信されます。CloudWatch Evidently へのイベントの送信については、Amazon CloudWatch ユーザーガイド の「PutProjectEvents の使用」を参照してください。
Amazon Personalize レコメンデーションの関連性を高めるために、Amazon Personalize
PutEvents
API オペレーションを使用して結果イベントを記録できます。ドメインのユースケースまたはカスタムレシピでレコメンデーションのリアルタイム更新がサポートされている場合、Amazon Personalize はユーザーの最新のアクティビティから学習し、ユーザーがアプリケーションを使用するごとにレコメンデーションを更新します。更新をサポートしていない場合、Amazon Personalize は次回のモデル再トレーニング時にこのデータを使用するため、レコメンデーションに影響します。Amazon Personalize へのイベントのストリーミングについては、「イベントの記録」を参照してください。
-
-
実験を作成および開始します。実験を作成する際には、以下を指定できます。
-
機能 — 実験でテストする機能を選択します。
-
対象者 — 参加するユーザーの数と、機能のバリエーション間でトラフィックを分割する方法を設定します。
-
指標 — 実験の成功を左右する指標を指定します。例えば、クリック数があります。
実験の作成が完了したら、その期間を指定して実験を開始します。CloudWatch Evidently で実験を作成して開始する詳細な手順については、Amazon CloudWatch ユーザーガイド の「実験を作成する」を参照してください。
-
-
実験を実行すると、CloudWatch Evidently 実験ダッシュボードに結果が表示されます。実験結果の表示については、Amazon CloudWatch ユーザーガイドの「ダッシュボードに実験結果を表示する」を参照してください。
サンプル実装
以下のサンプル実装は、CloudWatch Evidently を使用して A/B テストを実装する方法を示しています。
-
A/B テストを実装するためのソースコードを含むリアルタイム API の完全な例については、AWSサンプル GitHub リポジトリ の「リアルタイム パーソナライゼーション API
」を参照してください。 -
パーソナライゼーションと A/B テストに関するワークショップを含むサンプル小売ウェブアプリケーションについては、AWS サンプル GitHub リポジトリの「小売デモ店舗
」を参照してください。CloudWatch Evidently と小売デモ店舗を使用して A/B テストを作成する方法を説明するノートブックについては、「小売デモ店舗実験ワークショップ - CloudWatch Evidently 」を参照してください。 -
CloudWatch Evidently で A/B テストを使用する方法を説明するチュートリアルとサンプル React アプリケーションについては、Amazon CloudWatch ユーザーガイド の「チュートリアル: Evidently のサンプルアプリケーションを使用した A/B テスト」を参照してください。