Personalizer の用語

重要

2023 年 9 月 20 日以降は、新しい Personalizer リソースを作成できなくなります。 Personalizer サービスは、2026 年 10 月 1 日に廃止されます。

Personalizer では、強化学習の用語を使用します。 これらの用語は、Azure portal と API で使用されます。

概念的な用語

  • 学習ループ: パーソナル化によってメリットが得られるアプリケーションのあらゆる部分に対して、"学習ループ" と呼ばれる Personalizer リソースを作成します。 パーソナル化するエクスペリエンスが複数ある場合は、それぞれにループを作成します。

  • モデル:Personalizer モデルは、ユーザーの動作に関して学習したすべてのデータを取得し、Rank と Reward の呼び出しに送信した引数と学習ポリシーで決定されたトレーニング動作の組み合わせからトレーニング データを取得します。

  • オンライン モード: Personalizer の既定の学習動作である "学習ループ" では、機械学習を使用して、コンテンツの最上位のアクションを予測するモデルが構築されます。

  • 見習いモード:アプリケーションの結果とアクションに影響を与えることなく Personalizer モデルのトレーニングをウォームスタートできる学習動作です。

学習動作:

  • オンライン モード: 最適なアクションが返されます。 モデルでは、最適なアクションを使用して Rank 呼び出しに応答し、Reward 呼び出しを使用して学習し、時間の経過とともに選択内容が改善されていきます。
  • 見習いモード : 初心者として学習します。 モデルでは、既存のシステムの動作を観察することによる学習が行われます。 Rank 呼び出しでは、常にアプリケーションの既定のアクション (ベースライン) が返されます。

Personalizer の構成

Personalizer は、Azure portal から構成します。

  • 報酬: 報酬の待機時間、既定の報酬、および報酬の集計ポリシーの既定値を構成します。

  • 探索: 探索に使用する Rank 呼び出しの割合を構成します

  • モデルの更新頻度:モデルが再トレーニングされる頻度。

  • データ保有期間:データを保存する日数。 これは、学習ループの向上に使用されるオフライン評価に影響を与える可能性があります。

Rank および Reward API を使用する

  • Rank: 特徴を含むアクションとコンテキストの特徴を考慮して、探索または活用を使用して、最上位のアクション (コンテンツ項目) を返します。

    • アクション: アクションは、商品やプロモーションなど、選択対象のコンテンツ項目です。 Personalizer は、Rank API を介してユーザーに表示する最上位のアクション (返される報酬アクション ID) を選択します。

    • コンテキスト:より正確な順位を提供するために、コンテキストに関する情報を提供します。次に例を示します。

      • ユーザー。
      • ユーザーが使用しているデバイス。
      • 現在の時刻。
      • 現在の状況に関するその他のデータ。
      • ユーザーまたはコンテキストに関する履歴データ。

      特定のアプリケーションにおいて異なるコンテキスト情報がある場合があります。

    • 特徴 : コンテンツ項目またはユーザー コンテキストに関する情報のユニット。 集計された特徴のみを使用するようにしてください。 特定の時刻、ユーザー ID、その他の未集計データを特徴として使用しないでください。

      • "アクションの特徴" は、コンテンツに関するメタデータです。
      • "コンテキストの特徴" は、コンテンツが表示されるコンテキストに関するメタデータです。
  • 探索: Personalizer サービスは、最善のアクションを返す代わりに、ユーザーに対して別のアクションを選択するときに探索を行っています。 Personalizer サービスは、ドリフトや停滞を回避し、探索することで進行中のユーザーの動作に適応できます。

  • 学習ベストアクション:Personalizer サービスでは、現在のモデルを使用して、過去のデータに基づく最善のアクションを決定します。

  • 実験期間: そのイベントに対して Rank 呼び出しが行われた時点からの、Personalizer サービスが報酬を待つ時間の長さ。

  • 非アクティブなイベント: 非アクティブなイベントとは、Rank が呼び出されたときにクライアント アプリケーションによる決定によりユーザーに結果が表示されるかどうかが不明なイベントを表します。 非アクティブなイベントを使用すると、パーソナル化の結果を作成して保存した後、機械学習モデルに影響を与えることなくそれらを破棄することを決定できます。

  • 報酬: Rank API の返された報酬アクション ID に対してユーザーがどのように応答したかを示すメジャー (0 から 1 のスコア)。 0 から 1 の値は、その選択がパーソナル化のビジネス目標の達成にどのように役立ったかに基づいて、ビジネス ロジックによって設定されます。 学習ループでは、この報酬は個々のユーザー履歴として格納されません。

評価

オフライン評価

  • 評価:オフライン評価では、アプリケーションのデータに基づいて、ループに最適な学習ポリシーが決定されます。

  • 学習ポリシー:Personalizer によるすべてのイベントに対するモデルのトレーニング方法は、機械学習アルゴリズムの動作方法に影響するいくつかのパラメーターによって決まります。 新しい学習ループは既定の学習ポリシーから始まります。これにより、適度なパフォーマンスが得られます。 評価を実行すると、Personalizer では、お使いのループのユース ケースに合わせて特別に最適化された新しい学習ポリシーが作成されます。 評価時に生成された特定のループごとに最適化されたポリシーを使用すると、Personalizer ははるかに優れたパフォーマンスを発揮します。 この学習ポリシーの名前は、Azure portal の Personalizer リソースに対する [モデルと学習設定] の "学習設定" です。

見習いモードでの評価

見習いモードでは、次の評価メトリックが提供されます。

  • ベースライン – 平均報酬: アプリケーションの既定値 (ベースライン) の平均報酬。
  • Personalizer - 平均報酬: Personalizer で達成している可能性がある報酬合計の平均。
  • 平均ローリング報酬: ベースライン報酬と Personalizer 報酬の比率 – 最新の 1000 件のイベントで正規化されます。

次のステップ