Дерево решений — это традиционный алгоритм машинного обучения и один из начальных алгоритмов машинного обучения. На его основе выводятся такие алгоритмы, как random forest, GBDT, XGBOOST и др., очень эффективные в области CTR, поэтому изучение его можно рассматривать как единственный способ привести к продвинутым алгоритмам. в то же время он имеет очень сильную интерпретируемость, которая может решать проблемы регрессии и классификации, также считается хорошим выбором для демонстрации коммерческих приложений. Новичкам в изучении алгоритмов необходимо разбираться в деревьях решений, поэтому Pegasus.com пригласил г-на Хуан Кая, окончившего Лабораторию машинного зрения Университета Миссури, провести онлайн-трансляцию в прямом эфире вечером 27 марта Преподаватель поделился с вами актуальной теорией и практическим применением дерева решений.
Ниже приводится основное содержание этого обмена:
один. Введение
1. Прежде чем перейти к введению, давайте обсудим несколько основных вопросов:
Машинное обучение включает обучение с учителем и обучение без учителя. Обучение с учителем заключается в четком указании категории или значения каждой выборки.При обучении с учителем оно делится на задачи классификации и регрессии.Проблема классификации представляет собой прогноз категории каждой выборки, а задача регрессии представляет собой конкретный прогноз каждой образец числовое значение. Неконтролируемое обучение не дает класс или ценность образца, оно группирует его с помощью ряда алгоритмов.
Дерево решений, которое мы собираемся изучить сегодня, относится к обучению с учителем, которое может обрабатывать как классификацию, так и регрессию.
2. Введение в дерево решений:
Рисунок выше — это введение в дерево решений, вы можете сначала вкратце его понять, а потом будет более глубокое исследование.
два. Структура дерева решений
Мы видим, что левая часть рисунка выше представляет собой очень простую древовидную структуру, которая должна быть знакома тем, кто изучает структуры данных. Мы фокусируемся на корневом узле головы, листовые узлы ниже представляют результаты после классификации, а ветви ниже представляют условия оценки данных, например, первый слой больше 0,99, больше 1,20, больше 3,20 , и т.д.
3. Этапы использования дерева решений
1. Когда мы используем дерево решений, оно делится на два этапа: этап обучения и этап классификации.
На этапе обучения мы будем обучать модель на существующих данных.На этапе классификации мы будем использовать модель для прогнозирования данных.Обычно мы случайным образом делим данные на десять частей, обучаем восемь частей, берем две для тестирования. , и тест. Данные не будут отображаться в наших обучающих данных, а наши окончательные результаты основаны на тестовых данных и, наконец, проходят перекрестную проверку для получения точности.
2. Пример:
Давайте узнаем на примере иностранной кредитной карты.
В первом столбце указан идентификатор данных, во втором столбце указано, есть ли возврат налога, в третьем столбце указано семейное положение (холост, разведен, женат), в четвертом столбце указан налогооблагаемый доход, а в пятом столбце указано, что мы хотим предсказать.
Если это серьезно, это может быть понято как то, имел ли человек историю мошенничества с кредитной картой.Если это не серьезно, это может быть понято как просроченная кредитная карта и так далее.
Мы можем сказать, что данные здесь имеют десять выборок и три атрибута: «категориальный» означает, что данные дискретны, «непрерывный» означает, что данные непрерывны, а «класс» означает категорию, которую мы хотим предсказать.
С помощью ряда перцептивных знаний одноклассник А может построить дерево решений справа на рисунке выше.Желтое слово указывает на то, какой столбец определяется, значение на стрелке указывает на значение суждения, а синее слово указывает на то, какой столбец определяется. к прогнозируемому результату.
Что касается модели одноклассника А, давайте посмотрим, как он ее оценил:
В это время одноклассник Б может чувствовать себя неудовлетворенным.Он думает, что брак может быть самым важным, поэтому ставит брак на вершину дерева решений:
Приведенный выше пример представляет собой перцептивное понимание дерева решений, и конечная цель достигается путем оценки каждого шага.
4. Как рационально построить дерево решений
Теперь давайте рационально подумаем, как построить дерево решений?
1. Основные этапы построения дерева решений:
Что касается задачи обрезания дерева, то из приведенного выше рисунка мы знаем, что она имеет два условия для завершения: одно состоит в том, что все листовые узлы принадлежат к одной и той же категории, а другое заключается в том, что выбраны все атрибуты-кандидаты. Когда конечное условие не выполняется, мы выбираем оптимальное свойство для построения.
2. Пример:
Поскольку все предыдущие оптимальные узлы вычислены, мы столкнемся с другими проблемами: «как выбрать оптимальный узел?» и «как работать с непрерывными данными при выборе узла?»
3. Как выбрать оптимальный узел:
Далее мы преодолеваем эти проблемы. Сначала введем понятие - информационная энтропия. Это физическое понятие, которое в основном описывает степень хаотичности информации. Чем больше энтропия, тем более хаотична информация. Его формула показана на следующем рисунке.
Вот некоторые свойства информационной энтропии:
При построении дерева решений мы выберем разницу в информационной энтропии для построения.Давайте рассмотрим пример:
В примере выше у нас есть 14 образцов, 5 — «Нет», 9 — «Да», атрибуты — погода, температура, влажность, ветрено или нет. Через эти четыре измерения мы решаем, играть в теннис или нет.
При выборе первого узла у нас есть четыре альтернативы:
Как выбрать лучший атрибут? Мы можем сначала вычислить исходную информационную энтропию.В исходных данных 14 отсчетов.Вводим формулу и находим, что исходная информационная энтропия равна 0,94.
Для первой альтернативной погоды мы можем разделить на три значения (солнечно, облачно, дождливо):
Получив соответствующие значения энтропии погоды, мы умножаем вероятность ее появления на соответствующие значения энтропии. Согласно атрибуту погоды мы получаем значение энтропии равное 0,693:
Таким же образом мы можем поочередно вычислить информационный прирост температуры, влажности и ветра:
Значение на приведенном выше рисунке - это информационный прирост нашего предыдущего родительского узла.Значение 5 раз не играть и 9 раз играть минус информационный прирост, полученный по условию, мы обнаружим, что на самом деле для погоды его прирост информации самый большой. , мы выберем погоду как лучший разделительный узел.
Во-вторых, метод расчета влажности заключается в том, чтобы получить скорость получения информации о ней, как мы упоминали ранее, а затем выбрать, какой из ее узлов является оптимальным:
После этих относительно простых методов построения выше мы можем получить окончательное дерево решений:
5. Обдумывание после построения дерева решений
После построения этого дерева решений дело не кончено, можно подумать, при построении модели мы всегда надеемся, что ее точность будет максимально высокой, но нужны ли нам такие результаты?
1. В машинном обучении есть термин «переоснащение». Это означает, что наша модель отлично работает на обучающих данных, но при столкновении с внешними данными она оказывается уязвимой.Давайте посмотрим на следующий рисунок:
Слева на картинке распределение обучающих данных В идеальном состоянии справа на картинке модель, которую мы хотим получить, но машина так не считает Машина считает, что ей больше подходит нарисовать кота Что будет в результате прохождения новых данных через этого кота?Мы не знаем, это называется Overfitting, то есть переобучение.
2. Дерево решений имеет очень хорошую способность классификации в обучающем наборе, но оно не особенно подходит для неизвестных тестовых данных, что приводит к переоснащению.На данный момент нам нужно обрезать.
Деревья решений делятся на предварительные и постобрезные. Предварительная обрезка заключается в определении количества выборок узлов, а также высоты и глубины дерева с помощью человеческих знаний, что очень удобно в эксплуатации. Но в практических приложениях мы выберем пост-обрезку.
Обрезка деревьев решений обычно выполняется следующим образом:
Наиболее часто используемые из них - это пессимистическое сокращение ошибок и сокращение сложности стоимости. Пессимистическое отсечение ошибок, предполагая, что точность дерева решений не меняется до и после отсечения, затем отсечения, точность не равна степени ошибки, если ошибка дерева решений после отсечения меньше верхнего предела Точность перед обрезкой, эффект Если они совпадают, выполняется обрезка. Мы считаем, что чем больше число, тем легче его переобучение, Сокращение сложности стоимости объединяет частоту ошибок и размер числа, чтобы сформировать новое значение, чтобы сбалансировать два фактора, а затем выбрать больший и сократить его. .
6. Дерево решений+
1. Отличия дерева решений:
Мы уже разъяснили этапы построения дерева.Упомянутый выше метод является более традиционным, который мы называем ID3.Кроме того,есть и другие методы.Давайте сравним:
В ID3 мы используем прирост информации, чтобы судить, что является максимальным значением энтропии родительского узла за вычетом энтропии дочернего узла. Идентификатор соответствует уникальному классу.В этом случае его значение прироста информации является наибольшим, и он предпочтительно выбирает идентификатор в качестве узла, который он разбивает.Поэтому наше дерево имеет только два слоя, один - идентификатор суждения, а другой это классификация суждений, это не имеет смысла, люди будут разрабатывать новые алгоритмы для решения этих проблем.
Первым новым алгоритмом является C4.5, который больше не использует разницу в приросте информации, а использует скорость прироста информации.Скорость прироста информации представляет собой энтропию дочернего узла, деленную на энтропию родительского узла, которая вполне может избежать проблемы с идентификатором. В то же время C4.5 также может работать с непрерывными данными и отсутствующими данными для достижения беспроигрышного эффекта.Во-вторых, C4.5 может решить проблему регрессии, оценив конкретное значение. Для больших данных вычисление энтропии требует логарифмирования, а скорость не особенно хороша.
Люди разработали новый алгоритм под названием CART, который использует коэффициент Джини для представления информационной энтропии, Он не только может хорошо отображать ход хранения информации, но и отказывается от использования логарифмических вычислений, которые являются более быстрыми и надежными. Обработка бинарных деревьев позволяет избежать фрагментации дерева.
2. Пример:
Давайте рассмотрим пример, чтобы углубить наше понимание.
Этот набор данных называется набором данных ириса.Это очень часто используемый классификационный набор экспериментальных данных на этапе начального обучения.Китайское название - набор данных цветка ириса.Каждые данные содержат 4 атрибута, чтобы предсказать, к какому ирису принадлежит.
На следующем рисунке показан конкретный демонстрационный процесс:
Следующая картинка представляет собой значение окончательного дерева решений, давайте кратко рассмотрим:
В нашем практическом приложении более часто используемый случайный лес на самом деле быстр, и его нелегко переобучить. Позже дерево решений также разработало дерево градиентного спуска GBDT, которое сочетает в себе идею «леса» и увеличивает вес неправильных выборок, которые могут выполнять обработку признаков.
В конце прямого эфира г-н Хуан Кай также терпеливо ответил на вопросы каждого.Давайте посмотрим:
1. Вы сами реализуете этот процесс расчета или сами вызываете встроенную функцию?
Учитель Хуан: Я предлагаю новичкам написать весь процесс расчета самостоятельно.Если пакет откорректирован, его можно использовать в работе, но он не подходит для углубления впечатления от обучения.
2. Требуют ли деревья решений большого количества математических формул?
Г-н Хуанг: Математическая формула дерева решений в основном отражена в расчете узлов, в том числе в том, как рассчитать прирост информации и теорию обрезки, в данном случае математических формул не так уж много.
3. Каковы сценарии применения деревьев решений?
Г-н Хуанг: На самом деле в нашей работе мы редко используем просто деревья решений, а обычно используем случайные леса и другие алгоритмы. С точки зрения представления данных, деревья решений дают людям очень интуитивное понимание и имеют уникальные преимущества.
Вышеупомянутые шесть частей являются основным содержанием этой онлайн-трансляции в прямом эфире.Для тех, кто хочет узнать все больше и больше подробностей, вы можете обратить внимание на сервисный номер: FMI Pegasus.Нажмите на строку меню Pegasus Live, чтобы узнать.