ホテル予約データセットにおけるドリフト
前の章では、予約のキャンセルを予測するモデルについて、ビジネス価値と ROC AUC のパフォーマンスを計算しました。結果のプロットにいくつかのアラートが見られたため、分析データにドリフトが存在しないかを調査する必要があります。
この演習では、多変量ドリフト検知手法を初期化し、前の章で計算したパフォーマンス結果と比較します。
StandardDeviationThreshold はすでにインポート済みで、ビジネス価値と ROC AUC の結果は perf_results 変数に格納されています。また、feature_column_names も定義済みです。
この演習はコースの一部です
Pythonで学ぶ機械学習のモニタリング
演習の手順
StandardDeviationThresholdを初期化し、std_lower_multiplierを2、std_upper_multiplierパラメータを1に設定します。- 次の特徴量名をこの順序で追加します:
country,lead_time,parking_spaces,hotel。 - 事前に定義したしきい値と特徴量名を
DataReconstructionDriftCalculatorに渡します。 - 多変量ドリフト検知結果(
mv_results)とパフォーマンス結果(perf_results)の両方を含む比較プロットを表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# 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()