meridian.analysis.optimizer.OptimizationResults

最適化された予算配分。

これは、BudgetOptimizer から出力されたデータセットを含むデータクラス オブジェクトです。このデータセットには以下が含まれます。

  • nonoptimized_data: 最適化していない予算指標(過去のフリークエンシーに基づく)。
  • nonoptimized_data_with_optimal_freq: 最適なフリークエンシーに基づく、最適化していない予算指標。
  • optimized_data: 最適化した予算指標。
  • optimization_grid: 最適化に使用されるグリッド情報。

指標(データ変数)は、ROI、mROI、結果の増分、CPIK です。

また、一部の中間値と、ソースの適合モデルおよびアナライザへの参照もここに保存されます。これらは、可視化とデバッグに役立ちます。

meridian この予算配分の作成に使用された適合済み Meridian モデル。
analyzer 上記のモデルにバインドされたアナライザ。
use_posterior 事後分布を使用して予算を最適化したかどうか。False の場合、事前分布が使用されまています。
use_optimal_frequency 最適なフリークエンシーを使用して予算を最適化したかどうか。
spend_ratio 最適化していない予算指標を、最適化した予算指標にスケーリングするために使用する費用の比率。
spend_bounds 最適化していない予算指標を、最適化した予算指標にスケーリングするために使用する費用の制限。
nonoptimized_data 最適化していない予算指標(過去のフリークエンシーに基づく)。
nonoptimized_data_with_optimal_freq 最適なフリークエンシーに基づく、最適化していない予算指標。
optimized_data 最適化した予算指標。
optimization_grid 最適化に使用されるグリッド情報。
template_env この最適化した予算にバインドされた共有テンプレート環境。

メソッド

get_response_curves

ソースを表示

予算の最適化シナリオごとに応答曲線を算出します。

このメソッドは Analyzer.response_curves() のラッパーであり、この結果を返した BudgetOptimizer.optimize() 呼び出しで指定された予算の最適化シナリオと一致するように、次の引数を設定します。具体的には、次のとおりです。

  1. spend_multiplier は個別の最適化グリッドと一致し、グリッドのステップサイズとチャネルレベルの制約を考慮します。
  2. selected_timesby_reachuse_optimal_frequency は、BudgetOptimizer.optimize() で設定された値と一致します。

戻り値
この結果を返した BudgetOptimizer.optimize() 呼び出しで指定された予算最適化シナリオごとに、Analyzer.response_curves() から返されるデータセット。

output_optimization_summary

ソースを表示

HTML の最適化の概要の出力を生成して保存します。

plot_budget_allocation

ソースを表示

各チャネルに配分された費用を示す円グラフをプロットします。

引数
optimized True の場合、最適化した費用が表示されます。False の場合、最適化されていない費用が表示されます。

戻り値
チャネル別の費用を示す Altair 円グラフ。

plot_incremental_outcome_delta

ソースを表示

増分結果の変化を示すウォーターフォール グラフをプロットします。

plot_response_curves

ソースを表示

費用の制約を考慮して各チャネルの応答曲線をプロットします。

引数
n_top_channels 表示対象に含める、費用を基準とした上位のチャネルの数(省略可)。デフォルトではすべてのチャネルが含まれます。

戻り値
応答曲線と最適化の詳細を示す Altair プロット。

plot_spend_delta

ソースを表示

チャネル別の費用の最適化後の変化を示す棒グラフをプロットします。

__eq__

self==value を返します。