Почему для задачи обнаружения аномалий выбрали DBSCAN, а не классификацию?
Что проверяют
Умеете ли вы обосновать выбор метода условиями задачи, а не привычкой. Ключевой вопрос здесь один: есть ли у вас разметка. Всё остальное следует из ответа на него.
Как отвечать
Классификация требует размеченных примеров обеих сторон. В обнаружении аномалий их обычно нет: инциденты редки, часть из них никто не разметил, а новые типы не похожи на прошлые, и модель, обученная на старых, их просто не увидит. Отсюда переход к методам без учителя.
DBSCAN подходит, когда нормальные наблюдения образуют плотные сгустки:
- аномальность определяется не формой границы, а нехваткой соседей в радиусе, поэтому кластеры бывают любой формы и их число не задаётся заранее;
- точки, не попавшие ни в один кластер, помечаются как шум, и это готовый список кандидатов;
- параметров всего два: радиус окрестности и минимальное число соседей.
Обязательно назовите ограничения, иначе ответ выглядит рекламой. Метод плохо работает при кластерах разной плотности, потому что радиус один на всех, здесь берут HDBSCAN. В высокой размерности расстояния сближаются, и нужен отбор признаков или снижение размерности. Готового предсказания для новой точки у него нет, модель приходится пересчитывать, что неудобно для потока. Признаки обязательно масштабируют: радиус задан в единицах расстояния.
Рядом стоит упомянуть Isolation Forest и LOF, а когда разметка всё же накопится, задачу возвращают в классификацию.
Где спотыкаются
Говорят, что DBSCAN игнорирует выбросы. Наоборот, он их выделяет: точки шума и есть тот результат, ради которого метод взяли.
Второе: подбирают радиус на глаз. Его оценивают по графику расстояния до k-го соседа и ищут излом, а минимальное число соседей отталкивают от размерности данных. Иначе метод объявит шумом половину выборки либо не найдёт ничего.
Третье: считают результат ответом, а не гипотезой. Точка вне кластеров это кандидат, которого проверяет человек или правило, и без обратной связи от разбора инцидентов система быстро зарастает ложными срабатываниями.