Dryf w zbiorze danych dotyczącym rezerwacji hotelowych
W poprzednim rozdziale obliczyłeś wartość biznesową i wydajność mierzoną wskaźnikiem ROC AUC dla modelu przewidującego anulowania rezerwacji. Na wynikowych wykresach zauważyłeś kilka alertów, dlatego teraz warto zbadać, czy w danych analitycznych występuje dryf.
W tym ćwiczeniu zainicjujesz metodę wielowymiarowego wykrywania dryfu i porównasz jej wyniki z wynikami wydajności obliczonymi w poprzednim rozdziale.
StandardDeviationThreshold jest już zaimportowany wraz z wartością biznesową, a wyniki ROC AUC są przechowywane w zmiennej perf_results. Zdefiniowana jest też zmienna feature_column_names.
To ćwiczenie jest częścią kursu
Monitorowanie uczenia maszynowego w Pythonie
Instrukcje do ćwiczenia
- Zainicjuj metodę
StandardDeviationThresholdi ustaw parametrystd_lower_multiplierna2, astd_upper_multiplierna1. - Dodaj następujące nazwy cech:
country,lead_time,parking_spacesihotel. Zachowaj ich kolejność. - Przekaż wcześniej zdefiniowane progi i nazwy cech do
DataReconstructionDriftCalculator. - Wyświetl wykres porównawczy zawierający zarówno wyniki wielowymiarowego wykrywania dryfu (
mv_results), jak i wyniki wydajności (perf_results).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create standard deviation thresholds
stdt = StandardDeviationThreshold(____=____, ____=____)
# Define feature columns
feature_column_names = [____, ____, ____, ____]
# Intialize, fit, and show results of multivariate drift calculator
mv_calc = nannyml.DataReconstructionDriftCalculator(
column_names=____,
threshold = ____,
timestamp_column_name='timestamp',
chunk_period='m')
mv_calc.fit(reference)
mv_results = mv_calc.calculate(analysis)
mv_results.filter(period='analysis').____(____).plot().show()