ЛР3
О чём вообще эта лаба

Перед началом

О чём вообще эта лаба

Учимся строить «деревья решений»: модели, которые задают вопросы вида «признак меньше порога?» и по ответам приходят к прогнозу. Потом собираем из многих деревьев лес и бустинг.

ЗаданиеЧто делаемБаллы
1.0 ФункционалыПишем три «измерителя беспорядка»: энтропия, Джини, MSE5
1.1 КлассификацияСвоё дерево с нуля, проверяем на ирисах (3 вида цветков)
1.2 РегрессияТо же дерево предсказывает продолжительность жизни в стране
2.1 Случайный лесСвой лес из 200 деревьев: уйдёт ли клиент из банка2
2.2 Важность признаковЧто сильнее всего говорит об уходе клиента1
2.3 Лес для регрессииЛес против одного дерева на продолжительности жизни1
3.1 БустингФункции потерь, их градиенты и свой градиентный бустинг3
3.2 Проверка бустингаСинус и отток клиентов: шаг ρ = 1 против подбираемого ρ2
Итого14

Слова, без которых дальше никак

Объект
Одна строка таблицы: один цветок, одна страна в одном году, один клиент.
Признак
Один столбец, свойство объекта: длина лепестка, расходы на медицину, возраст клиента.
Целевая переменная (y)
То, что хотим предсказать: вид цветка, сколько лет живут, ушёл ли клиент.
Классификация
Ответ из списка вариантов (вид цветка, ушёл / не ушёл).
Регрессия
Ответ это число (72.4 года).
Обучение (fit)
Модель смотрит на примеры с известными ответами и настраивается.
Предсказание (predict)
Модель отвечает для новых объектов.
train / test
Данные делим на две части: на train учим, на test проверяем. Как экзамен: проверять надо на задачах, которых ученик не видел.
Переобучение
Модель зазубрила обучающие примеры вместе с их случайностями и плохо работает на новых.
sklearn
Библиотека машинного обучения с готовыми моделями. Готовый лес из неё брать нельзя, только сравнивать.
На пальцах. Дерево решений это игра «20 вопросов» или определитель растений из учебника биологии: «стебель древесный? да. стоит прямо? да. один ствол? да. значит, дерево». Лаба учит компьютер самому придумывать такие вопросы по данным.
Пример дерева из ноутбука: вопросы про длину и ширину лепестка, в листьях класс
Картинка из задания: дерево для ирисов. В каждом прямоугольнике вопрос, внизу листья с ответом. Volume = сколько цветков дошло до листа, Impurity = беспорядок в нём.

Что сделано до тебя

Ловушка: забытый seaborn. В ячейке с синусом написано sns.scatterplot, но import seaborn as sns в исходном ноутбуке нет. Мы добавили его в первую ячейку, иначе там будет NameError.
Одна фразаЛаба про деревья решений: своё дерево для классификации и регрессии, свой случайный лес и свой градиентный бустинг.