
Алгоритмы обнаружения выбросов, состязательных атак и дрейфа
Alibi Detect — это библиотека Python с доступным исходным кодом, focused on обнаружение выбросов, состязательных атак и дрейфа. Пакет направлен на покрытие как онлайн-, так и офлайн-детекторов для табличных данных, текста, изображений и временных рядов. Для обнаружения дрейфа поддерживаются бэкенды TensorFlow и PyTorch.
Для получения дополнительной информации о важности мониторинга выбросов и распределений в производственной среде, смотрите этот доклад с семинара Challenges in Deploying and Monitoring Machine Learning Systems ICML 2020, основанный на статье Monitoring and explainability of models in production и ссылающийся на Alibi Detect.
Для подробного введения в обнаружение дрейфа смотрите Protecting Your Machine Learning Against Drift: An Introduction. В докладе рассматривается, что такое дрейф и почему его стоит обнаруживать, различные типы дрейфа, как его можно обнаружить принципиальным образом, а также описывается анатомия детектора дрейфа.
Пакет alibi-detect можно установить из:
pip)conda/mamba)
Prophet: ```bash
pip install alibi-detect[prophet]
Для установки из conda-forge рекомендуется использовать mamba, который можно установить в базовое окружение conda с помощью:```bash conda install mamba -n base -c conda-forge
Чтобы установить alibi-detect:```bash
mamba install -c conda-forge alibi-detect
Для иллюстрации API мы воспользуемся детектором выбросов VAE.```python from alibi_detect.od import OutlierVAE from alibi_detect.saving import save_detector, load_detector
od = OutlierVAE(threshold=0.1, encoder_net=encoder_net, decoder_net=decoder_net, latent_dim=1024) od.fit(x_train)
preds = od.predict(x_test)
filepath = './my_detector/' save_detector(od, filepath) od = load_detector(filepath)
Предсказания возвращаются в виде словаря с ключами `meta` и `data`. `meta` содержит метаданные детектора, а `data` — сам словарь с фактическими предсказаниями. Он содержит показатели и пороговые значения для выбросов, состязательных примеров или дрейфа, а также предсказания о том, являются ли экземпляры, например, выбросами. Конкретные детали могут немного различаться от метода к методу, поэтому мы рекомендуем читателю ознакомиться с [поддерживаемыми типами алгоритмов](https://docs.seldon.io/projects/alibi-detect/en/stable/overview/algorithms.html).
## Поддерживаемые алгоритмы
В следующих таблицах показаны рекомендуемые случаи использования для каждого алгоритма. Столбец *Уровень признаков* указывает, можно ли выполнять обнаружение на уровне признаков, например, попиксельно для изображения. Дополнительную информацию см. в [списке ссылок на алгоритмы](#reference-list), где приведены ссылки на документацию и оригинальные статьи, а также примеры для каждого детектора.
### Обнаружение выбросов