meridian.analysis.optimizer.BudgetOptimizer

Wykonuje scenariusze optymalizacji budżetu na podstawie Twojego modelu i wyprowadza ich wyniki.

Znajduje optymalny przydział budżetu, który maksymalizuje wynik na podstawie różnych scenariuszy, w których można dostosować budżet, dane i ograniczenia. Wyniki można wyświetlić w postaci wykresów i strony z wynikiem podsumowania w formacie HTML.

Metody

optimize

Wyświetl źródło

Znajduje optymalne przydzielenie budżetu, które maksymalizuje wynik.

Wynik to zwykle przychody, ale gdy wskaźnik KPI nie jest przychodem, a dane „przychody na wskaźnik KPI” są niedostępne, Meridian definiuje wynik jako sam wskaźnik KPI.

Argumenty
use_posterior Wartość logiczna. Jeśli True, budżet jest optymalizowany na podstawie rozkładu warunkowego modelu. W przeciwnym razie używana jest poprzednia dystrybucja.
selected_times Tupla zawierająca wymiary czasu rozpoczęcia i zakończenia w ramach okresu, w którym ma być przeprowadzana optymalizacja. Wybrane wartości czasu powinny być zgodne z współrzędnymi wymiaru czasu Meridian w modelu źródłowym. Domyślnie używane są wszystkie przedziały czasowe. Składnik czasu rozpoczęcia lub zakończenia może być None, co oznacza odpowiednio pierwszą lub ostatnią współrzędną czasu.
fixed_budget Wartość logiczna wskazująca, czy jest to optymalizacja budżetu stałego, czy elastycznego. Domyślna wartość to True. Jeśli ustawiona jest wartość False, pole target_roi musi zawierać wartość target_roi lub target_mroi.
budget Liczba wskazująca łączny budżet w przypadku scenariusza z budżetem stałym. Domyślnie jest to budżet historyczny.
pct_of_spend Lista liczb o rozmiarze n_total_channels zawierająca procentowy podział wydatków na wszystkie media i kanały RF. Kolejność musi być zgodna z InputData.media, a wartości muszą mieścić się w zakresie od 0 do 1. Ich suma musi wynosić 1. Domyślnie używana jest historyczna alokacja. Budżet i przydział są używane razem do określania wydatków na poziomie mediów, które nie są optymalizowane. Dane te są wykorzystywane do obliczania nieoptymalizowanych danych o skuteczności (np. zwrotu z inwestycji), a także do określania możliwego zakresu wydatków na poziomie mediów z uwzględnieniem ograniczeń wydatków.
spend_constraint_lower Lista liczb o typie n_total_channels lub zmiennoprzecinkowym (ta sama wartość dla wszystkich kanałów) wskazująca dolną granicę wydatków na poziomie mediów. Dolna granica wydatków na poziomie mediów to (1 - spend_constraint_lower) * budget * allocation). Wartość musi znajdować się w przedziale od 0 do 1. Domyślna wartość to 0.3 w przypadku budżetu stałego i 1 w przypadku budżetu elastycznego.
spend_constraint_upper Lista liczb o typie n_total_channels lub zmiennoprzecinkowym (takie same ograniczenia dla wszystkich kanałów), która wskazuje górną granicę wydatków na poziomie mediów. Górna granica wydatków na poziomie mediów to (1 + spend_constraint_upper) * budget * allocation). Domyślnie jest to 0.3 w przypadku budżetu stałego i 1 w przypadku budżetu elastycznego.
target_roi Wartość zmiennoprzecinkowa określająca ograniczenie docelowego ROI. Jest używana tylko w przypadku scenariuszy z elastycznym budżetem. Budżet jest ograniczony do momentu, gdy zwrot z inwestycji z łącznych wydatków osiągnie poziom target_roi.
target_mroi Wartość zmiennoprzecinkowa wskazująca docelową minimalną stopę zwrotu z inwestycji. Służy tylko do scenariuszy elastycznych budżetów. Budżet jest ograniczony do momentu, gdy marginalny ROI łącznych wydatków osiągnie wartość target_mroi.
gtol Liczba zmiennoprzecinkowa wskazująca dopuszczalny błąd względny budżetu używanego w konfiguracji siatki. Budżet zostanie zaokrąglony do wartości 10*n, gdzie n jest najmniejszą liczbą całkowitą, która jest mniejsza lub równa (budget * gtol).(budget - rounded_budget) Wartość gtol musi być mniejsza niż 1.
use_optimal_frequency Jeśli True, do optymalizacji używa optimal_frequency obliczanego przez przeszkolony model Meridian. Jeśli False, używa historycznej częstotliwości.
confidence_level Próg obliczania przedziałów ufności.
batch_size Maksymalna liczba losowań na łańcuch w każdej partii. Obliczenia są wykonywane partiami, aby uniknąć wyczerpania pamięci. Jeśli wystąpi błąd pamięci, spróbuj zmniejszyć batch_size. Obliczenia będą zazwyczaj szybsze przy większych wartościach batch_size.

Zwroty
Obiekt OptimizationResults zawierający zbiory danych optymalnego przydziału budżetu wraz z niektórymi wartościami pośrednimi, na podstawie których zostały one utworzone.