Какие инструменты для обнаружения дрейфа данных знаете?
Что проверяют
Понимаете ли вы, что модель деградирует после выкатки, даже если код не менялся, и умеете ли заметить это раньше бизнеса. Следом спрашивают, какой статистикой вы сравниваете распределения и что делаете, когда дрейф найден.
Как отвечать
Коротко разведите виды: сдвиг признаков P(X), сдвиг целевой переменной P(y) и концептуальный дрейф, когда меняется сама зависимость P(y|X). Первые два видны без разметки, третий обычно только по метрикам качества.
Инструменты:
- Evidently: сравнивает текущее окно с эталонным по каждому признаку. Метод выбирает по типу признака и объёму: KS и хи-квадрат на малых выборках, расстояния Вассерштейна и Дженсена-Шеннона на больших;
- NannyML: полезна, когда разметка приходит с задержкой. Оценивает качество классификатора без меток (CBPE) и ловит многомерный дрейф через ошибку реконструкции PCA;
- Alibi Detect: детекторы от KS и MMD до работы с эмбеддингами текста и картинок, есть онлайн-режим;
- River: потоковые детекторы
ADWIN,PageHinkley,KSWIN. В River влилась scikit-multiflow, отдельно её больше не развивают; - TFDV и Great Expectations: скорее контроль схемы и качества данных, но расхождение между обучением и продом тоже ловят.
Метрики стоит знать и без библиотек: PSI с привычными порогами 0,1 и 0,25, тест Колмогорова-Смирнова, хи-квадрат. Результаты обычно пишут в Prometheus, алерты настраивают в Grafana, а реакцией бывает переобучение по расписанию или по сигналу.
Где спотыкаются
Гоняют статистические тесты на миллионах строк. p-value становится крошечным на любом мелком сдвиге, и алерт горит постоянно. На больших выборках смотрят на расстояния и размер эффекта, а не на значимость.
Приравнивают дрейф к падению качества. Признак может уехать и никак не повлиять на модель, поэтому следят за важными признаками и за распределением предсказаний.
Не определяют эталон. Без понятного референсного окна, будь то обучающая выборка или прошлый стабильный месяц, сравнивать просто не с чем.