Isolation Forest: почему аномалии изолируются быстрее и что настраивать на практике?
Isolation Forest не описывает норму и не считает расстояния — он режет пространство случайными разрезами и смотрит, за сколько разрезов точка оказалась в одиночестве. Аномалия лежит в разреженной области, поэтому отделяется за меньшее число разрезов; средняя глубина изоляции по ансамблю деревьев и есть скор. Отсюда сильные стороны: линейная сложность, работа с сотнями признаков, отсутствие предположений о распределении, устойчивость к масштабу признаков. И слабые: метод плохо ловит локальные аномалии (точка внутри плотного облака, но в «дырке» между кластерами), страдает от неинформативных признаков — случайный разрез с равной вероятностью выберет мусорный столбец — и склонен к артефактам на осях координат. Основные настройки: n_estimators (100–300 достаточно), max_samples (по умолчанию 256 — не увеличивайте бездумно, субвыборка тут помогает), contamination — она не свойство данных, а решение о размере очереди на разбор.