Comments 2
А можно добавить такие же графики для датасета Iris? Предыдущие статьи цикла именно его показывают и хотелось бы сравнить ограничивающие линии классов.
склонность к переобучению на сильно зашумленных данных
а вот тут было бы уместно рассказать о гиперпараметрах, позволяющих уменьшить склонность к переобучению. Вообще для всех рассмотренных методов, если есть возможность, нужно подобрать лучшие гиперпараметры под конкретный датасет (например через Optuna). Только в этом случае имеет смысл как-то сравнивать методы.
У методов, основанных на деревьях, один из таких гиперпараметров это минимальное число листьев на ветке. (Другой параметр - максимальная глубина дерева.)
В данном случае я специально решил использовать несбалансированный датасет, чтобы лучше показать различия алгоритмов, а именно их работу из коробки. Если же делать серьёзную предобработку и подбирать гиперпараметры, то: а) это займёт очень много времени; б) практически все алгоритмы будут показывать плюс-минус схожие результаты. Поскольку это все же учебный проект, то в самом начале каждой статьи имеются ссылки на ноутбуки, чтобы с ними можно было "поиграться".
В статье же про деревья уделялось достаточно внимания методам регуляризации, в т. ч. и продвинутым типа прунинга + во всех реализациях с нуля показаны основные гиперпараметры, отвечающие за работу алгоритмов. Логично, что при изучении Random Forest читатель уже должен быть знаком с деревьями, поэтому дублировать рассказ про те же гиперпараметры еще раз не имеет смысла.
Для того чтобы избежать пробелов в понимании ml-алгоритмов, лучше читать статьи по порядку, предложенному здесь.
Бэггинг и случайный лес. Ключевые особенности и реализация с нуля на Python