MultiDimensionalBudgetOptimizerWrapper.optimizar_presupuesto#
- MultiDimensionalBudgetOptimizerWrapper.optimize_budget(budget, budget_bounds=None, response_variable='total_media_contribution_original_scale', utility_function=<function average_response>, constraints=(), default_constraints=True, budgets_to_optimize=None, budget_distribution_over_period=None, cost_per_unit=None, callback=False, **minimize_kwargs)[fuente]#
Optimice la asignación del presupuesto para el modelo.
- Parámetros:
- presupuesto :
float|intfloat|int Presupuesto total a asignar.
- límites_presupuesto :
xr.DataArray|Nonexr.DataArray | python:Ninguno Límites de presupuesto por canal.
- response_variable
str Variable de respuesta a optimizar.
- utility_functionTipoDeFunciónUtilidad
Función de utilidad para maximizar.
- constraints
Sequence[Constraint] Custom constraints for the optimizer. Each element must be an instance of
Constraint.- default_constraintsbool
Si se deben agregar restricciones predeterminadas.
- presupuestos_a_optimizar :
xr.DataArray|Nonexr.DataArray | python:Ninguno Máscara que define qué presupuestos optimizar.
- distribución_presupuestaria_a_lo_largo_del_período :
xr.DataArray|Nonexr.DataArray | python:Ninguno Fixed temporal distribution of each budget cell across periods. Must have dims
("date", *budget_dims)where"date"has lengthnum_periods. Values must sum to 1 along"date"for every combination of the remaining dims (i.e.,budget_distribution_over_period.sum(dim="date")must be all ones). Each value is the fraction of that cell’s total budget assigned to the corresponding period. If None, budget is distributed uniformly (1 / num_periodsper period).- cost_per_unit
pd.DataFrameorxr.DataArrayorNone, optional Cost per unit conversion factors for the optimization period. Converts budgets from monetary units (e.g., dollars) to the model’s native channel units (e.g., impressions).
pd.DataFrame: Wide-format with a
"date"column matching the optimization window dates, plus one column per channel. Missing channels default to 1.0 (no conversion).xr.DataArray: Must have dims
("date", *budget_dims)wheredatehas lengthnum_periods.
If None, no conversion is applied (budgets are assumed to be in the model’s native units).
This is independent of the historical cost_per_unit.
- callbackbool
Si se debe devolver información de seguimiento de la optimización del progreso de la devolución de llamada.
- **minimize_kwargs
Argumentos adicionales para el optimizador.
- presupuesto :
- Devoluciones:
tuplePresupuestos óptimos y resultado de optimización. Si callback=True, también devuelve una lista de diccionarios con información de optimización en cada iteración.