Personalizer の自動最適化 (プレビュー)

重要

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

はじめに

Personalizer の自動最適化を使用すると、モデルのトレーニングに使用された改善された学習設定が自動的に検索されて適用されることで、Personalizer ループの機械学習パフォーマンスを最善に維持するための手作業を減らすことができます。 Personalizer には、改善によって利益が失われる可能性がないように、新しい学習設定の適用には厳格な基準があります。

Personalizer の自動最適化はパブリック プレビューであり、機能、アプローチ、プロセスはユーザーのフィードバックに基づいて変更されます。

どのようなときに自動最適化を使用するか

ほとんどの場合は、自動最適化を有効にするのが最善のオプションです。 新しい Personalizer ループの場合、自動最適化は既定で "オン" になります。

自動最適化は、次の状況で役に立つ場合があります。

  • 多くのテナントによって使用されるアプリケーションを構築していて、それぞれに独自の Personalizer ループがあります。たとえば、複数の eコマース サイトをホストしている場合。 自動最適化を使用すると、多数の Personalizer ループの学習設定を手作業で調整する必要がなくなります。
  • Personalizer をデプロイし、それが正常に機能してよい報酬を得ることを検証してあり、機能にバグや問題がないことを確認してあります。

注意

自動最適化によって、Personalizer の学習設定が定期的に上書きされます。 ユース ケースまたは業界でモデルと設定の監査とアーカイブが必要な場合、または以前の設定のバックアップが必要な場合は、Personalizer API を使用して学習設定を取得したり、Azure portal 経由でダウンロードしたりできます。

自動最適化を有効または無効にする方法

自動最適化を有効にするには、Azure portal の [モデルと学習設定] ブレードのトグル スイッチを使用します。

または、Personalizer の /configurations/service API を使用して自動最適化を有効にすることもできます。

自動最適化を無効にするには、トグルをオフにします。

自動最適化のレポート

[モデルと学習設定] ブレードでは、自動最適化の実行の履歴と、それぞれで実行されたアクションを確認できます。

テーブルに以下の情報が表示されます。

  • 自動最適化の実行が行われた日時
  • 含まれていたデータ ウィンドウ
  • オンラインの報酬パフォーマンス、ベースライン、および見つかった最善の学習設定
  • 実行されたアクション: 学習設定が更新されたかどうか。

自動最適化履歴の各行の異なる学習設定の報酬パフォーマンスは、絶対数値およびベースライン パフォーマンスに対するパーセンテージとして示されます。

: ベースライン平均報酬が 0.20 と推定され、オンラインの Personalizer の動作で 0.30 が達成されている場合、これらはそれぞれ 100% および 150% と示されます。 自動最適化で平均報酬 0.40 を達成できる学習設定が見つかった場合は、200% (0.40 は 0.20 の 200%) と示されます。 信頼度のマージンでそれが許容されると仮定すると、新しい設定が適用された後、これらによって次の実行まで Personalizer がオンライン設定として使用されます。

分析のため、最大 24 回の過去の自動最適化実行の履歴が保持されます。 それぞれのオフライン評価とレポートの詳細を確認できます。 また、レポートにはこの履歴のすべての学習設定が含まれているので、検索してダウンロードまたは適用できます。

しくみ

使用される AI モデルは、Personalizer により、報酬に基づいて常にトレーニングされます。 このトレーニングはいくつかの "学習設定" に従って行われ、それにはトレーニング プロセスで使用されるハイパーパラメーターや他の値が含まれます。 これらの学習設定は、特定の Personalizer インスタンスに合わせて "チューニング" できます。

Personalizer には、"オフライン評価" を実行する機能も用意されています。 オフライン評価では、過去のデータが調べられ、Personalizer の異なるアルゴリズムやモデルで得られた平均報酬の統計的推定を生成できます。 このプロセスの間に、Personalizer によって、よりよい学習設定も検索され、その過去の期間におけるパフォーマンス (獲得した報酬の数) が見積もられます。

自動最適化の頻度

自動最適化は定期的に実行され、過去のデータに基づいて自動最適化が実行されます

  • アプリケーションにより過去 2 週間に約 20 MB を超えるデータが Personalizer に送信された場合、過去 2 週間のデータが使用されます。
  • アプリケーションから送信されたデータがこれより少ない場合は、Personalizer により、最適化に十分なデータが得られるまで、または保存されている最も早いデータ (データ保有日数まで) に達するまで、過去の日のデータが追加されます。

自動最適化が実行される正確な時間数と日数は、Personalizer サービスによって決定され、時間と共に変動します。

学習設定を更新するための条件

Personalizer により、これらの報酬推定を使用して、現在の学習設定を変更するかどうかが決定されます。 各推定は分布曲線であり、信頼限界の上限と下限は 95% です。 次の場合にのみ、Personalizer によって新しい学習設定が適用されます。

  • 評価期間中にさらに高い平均報酬が示され、かつ
  • それらの下限が 95% 信頼区間であり、オンライン学習設定の 95% 信頼区間の下限 "より高い"。 この条件は報酬向上を最大化するためのものであるのに対し、将来の利益損失の可能性を排除する試みは、Personalizer によって管理され、Seldonian アルゴリズムと AI の安全性に関する研究によって得られます。

自動最適化の制限

Personalizer の自動最適化は、将来のパフォーマンスを推定するための過去の期間の評価に基づいています。 世界、アプリケーション、ユーザーの外部要因により、過去の期間に対して行われた、Personalizer のモデルに関するこれらの推定と予測が、将来を代表するものではない可能性があります。

マルチスロット パーソナル化 API のプレビュー機能が有効にされている Personalizer ループでは、自動最適化プレビューを利用できません。

次の手順