Деревья классификации и регрессии

Термин CART был впервые введен Лео Брейманом для обозначения алгоритмов дерева решений, которые обеспечивают основу для таких важных алгоритмов, как деревья решений с пакетами, случайный лес и деревья решений с усилением. Деревья решений являются широко популярным и мощным методом машинного обучения для обеих классификаций. и задачи регрессии. Представление модели тележки - двоичное дерево. Каждый корневой узел представляет собой единственную вмененную переменную (x), листовые узлы дерева содержат выходную переменную (y), которая используется для прогнозирования.

классификация

На изображении выше показано дерево классификации радужной оболочки глаза. Классификация делится на три класса (отмечены на изображении - красный, синий и зеленый) и проходит по параметрам: длина / толщина чашелистиков (SepalLen, SepalWid) и длина / толщина лепестка (PetalLen, PetalWid). , все наши данные попадают в корневой узел нашего дерева решений, после выбора условия разделения каждый узел формирует класс в зависимости от того, сколько элементов N попадает в него во время начального разделения. набор данных (раздел), который легко разъединяет классы, содержащиеся в них, посредством серии условных разделений. Раздел считается чистым, если в нем существуют все данные определенного класса. То, как данные разделяются, зависит от условий, определяющих порядок их разделения. Каждый раз, когда данные разделяются условно, они могут быть снова разбиты до тех пор, пока все данные определенного класса не будут содержаться в конечном разделе (листовом узле). В результате это дерево почти идеально классифицировало исходные данные и дало нам наибольшую информационную выгоду, оправдывая наше первоначальное разбиение как наилучший из возможных вариантов.

регресс

Если в моделях классификации наши выходные данные представляют собой результирующие классы с регрессией, это значение целевой функции. В дереве регрессии идея такова: поскольку целевая переменная не имеет классов, мы подгоняем модель регрессии к целевой переменной, используя каждая из независимых переменных. Затем для каждой независимой переменной данные разделяются на несколько точек разделения. В каждой точке разделения «ошибка» между прогнозируемым значением и фактическими значениями возводится в квадрат, чтобы получить «сумму квадратов ошибок (SSE)». Ошибки точки разделения по переменным сравниваются, и переменная / точка, дающая самый низкий SSE, выбирается в качестве корневого узла / точки разделения. Этот процесс продолжается рекурсивно.

На изображении выше дерево регрессии определяет цены на землю в городе Бостон в зависимости от следующих параметров: LSTAT -% более низкий статус населения, RM - среднее количество комнат на жилище и другие параметры (см. [1] для подробнее) Соответственно здесь на каждом узле мы видим среднее значение (Avg) и стандартное отклонение (STD) значений целевой функции наблюдений, попавших в эту вершину. Общее количество наблюдений в узле (N). Результатом регрессии будет значение среднего (Avg), до которого падает наблюдение. Таким образом, изначально дерево классификации может работать для регрессии, однако для достижения хорошей регрессии обычно требуется больший размер дерева, чем при классификации. полученные результаты.

В чем преимущества и недостатки CART?

На деревья решений не влияет масштаб, они не нуждаются в большой предварительной обработке для работы, базовые допущения относительно того, как данные используются и оцениваются, не зависят от масштаба, чтобы быть эффективными, им все равно, как ваши данные распределенных, нет необходимости в специальном кодировании или фиктивном кодировании категориальных переменных или кодировании пустых значений, и их легко интерпретировать для нетехнических специалистов, но нет ничего идеального. Модели CART имеют тенденцию переоснащаться и плохо обобщаться. Алгоритмы обучения основаны на эвристике, такой как жадный алгоритм, в котором локально оптимальные решения принимаются на каждом узле. Такие алгоритмы не могут гарантировать возврат глобально оптимального дерева решений. Обучающиеся дерева решений создают предвзятые деревья, если некоторые классы доминируют. Поэтому рекомендуется сбалансировать набор данных перед подгонкой к дереву решений.