![]() |
Es la asignación optimizada del presupuesto.
meridian.analysis.optimizer.OptimizationResults(
meridian: meridian.model.model.Meridian
,
analyzer: meridian.analysis.analyzer.Analyzer
,
use_posterior: bool,
use_optimal_frequency: bool,
spend_ratio: np.ndarray,
spend_bounds: tuple[np.ndarray, np.ndarray],
_nonoptimized_data: xr.Dataset,
_nonoptimized_data_with_optimal_freq: xr.Dataset,
_optimized_data: xr.Dataset,
_optimization_grid: xr.Dataset
)
Es un objeto dataclass que contiene conjuntos de datos que se generan a partir de BudgetOptimizer
.
Estos conjuntos de datos incluyen lo siguiente:
nonoptimized_data
: Son las métricas de presupuesto sin optimizar (en función de la frecuencia histórica).nonoptimized_data_with_optimal_freq
: Son las métricas de presupuesto sin optimizar basadas en la frecuencia óptima.optimized_data
: Son las métricas de presupuesto optimizadas.optimization_grid
: Es la información de la cuadrícula que se usa para la optimización.
Las métricas (variables de datos) son el ROI, el mROI, el resultado incremental y el CPIK.
Además, aquí también se almacenan algunos valores intermedios y referencias al modelo y al analizador ajustados según la fuente. Estos resultan útiles para las visualizaciones y las depuraciones.
Métodos
get_response_curves
get_response_curves() -> xr.Dataset
Calcula las curvas de respuesta por situación de optimización del presupuesto.
Este método es un wrapper de Analyzer.response_curves()
que establece los siguientes argumentos para que sean coherentes con la situación de optimización del presupuesto especificada en la llamada a BudgetOptimizer.optimize()
que devolvió este resultado.
En particular, ocurre lo siguiente:
spend_multiplier
coincide con la cuadrícula de optimización discreta, teniendo en cuenta el tamaño del paso de la cuadrícula y cualquier límite de restricción a nivel del canal.selected_times
,by_reach
yuse_optimal_frequency
coinciden con los valores establecidos enBudgetOptimizer.optimize()
.
Returns | |
---|---|
Analyzer.response_curves() devuelve un conjunto de datos según la situación de optimización del presupuesto especificada en la llamada a BudgetOptimizer.optimize() que devolvió este resultado.
|
output_optimization_summary
output_optimization_summary(
filename: str, filepath: str
)
Genera y guarda el informe HTML del resumen de optimización.
plot_budget_allocation
plot_budget_allocation(
optimized: bool = True
) -> alt.Chart
Genera un gráfico circular que muestra la inversión asignada a cada canal.
Args | |
---|---|
optimized
|
Si es True , muestra la inversión optimizada. Si es False , muestra la inversión sin optimizar.
|
Returns | |
---|---|
Se devuelve un gráfico circular de Altair que muestra la inversión por canal. |
plot_incremental_outcome_delta
plot_incremental_outcome_delta() -> alt.Chart
Genera un gráfico de cascada que muestra el cambio en el resultado incremental.
plot_response_curves
plot_response_curves(
n_top_channels: (int | None) = None
) -> alt.Chart
Grafica las curvas de respuesta con las restricciones de inversión de cada canal.
Args | |
---|---|
n_top_channels
|
Es la cantidad opcional de los principales canales por inversión que se deben incluir. De forma predeterminada, se incluyen todos los canales. |
Returns | |
---|---|
Se devuelve un gráfico de Altair que muestra las curvas de respuesta con detalles de la optimización. |
plot_spend_delta
plot_spend_delta() -> alt.Chart
Genera un gráfico de barras que muestra el cambio optimizado en la inversión por canal.
__eq__
__eq__(
other
)
Devuelve self==value.