Мало знаний, большой вызов! Эта статья участвует в "Необходимые знания для программистов«Творческая деятельность.
В дальнейшем я подведу итоги четырех лет моего университета.Хоть он и не идеален, я очень старался делать все, что хотел.
Алгоритмическое мышление
Дерево решений — это не просто бинарное дерево, оно также может иметь несколько ответвлений.
Короче говоря, этоОценка слой за слоем, чтобы получить окончательный результат.
? Древовидная структура
овалвнутренний узел, представляющийхарактеристика или атрибут, верхний узел является корневым узлом, и все ответвления начинаются отсюда
прямоугольникявляется листовым узлом, представляющимсвоего рода.
Если-то правило:
получение информации
Дерево решений основано на характеристиках каждого узла, чтобы оценивать слой за слоем, чтобы получить окончательный результат классификации, а появление прироста информации заключается в поиске оптимальных функций.Как отсортировать каждую функцию, можно сделать окончательный результат суждения наиболее разумным. . . .
1. Понятие энтропии
Прирост информации строится из энтропии. Энтропия означаетНеопределенность случайных величин, чем больше неопределенность, тем больше энтропия.
Поскольку энтропия связана с распределением случайных величин, мы можем получить:
Когда значения случайных величин распределены с равной вероятностью, соответствующая энтропия оказывается наибольшей. То есть, когда все значения признака одинаковы, содержащаяся информация является наибольшей, а неопределенность в это время наибольшей.
2. Получение информации
входить: обучающий набор данных D и функция A.
вывод: прирост информации g(D, A) функции A к набору обучающих данных D.
?♂️Три шага~
Шаг 1. Рассчитайте эмпирическую энтропию H(D) набора данных D.
Шаг 2. Рассчитайте эмпирическую условную энтропию H(D|A) объекта A для набора данных D.
Шаг 3 Рассчитайте формулу получения информации
Прирост информации представляет собой степень, в которой неопределенность информации класса Y уменьшается благодаря знанию признака А.
Есть много формул, головокружение? ? Будет понятно после прочтения примеров вопросов~
3. Объяснение примеров
Вход: обучающий набор данных D
Выход: путем вычисленияполучение информациивыбрать лучшие характеристики
Шаг 1 Рассчитайте эмпирическую формулу энтропии
В этом наборе обучающих данных, D = 15, есть две окончательные классификации: да (9), нет (6)
Подставьте в расчет, чтобы получить эмпирическую энтропию:
Шаг 2 Рассчитайте эмпирическую формулу условной энтропии
Пусть А1: возраст, А2: Есть ли работа, А3: У тебя есть свой дом, А4: Кредитная ситуация
① Возраст
Подставим в расчет, чтобы получить эмпирическую условную энтропию молодости, среднего возраста и старости:
Когда i=1 молодежь:
Когда i=2 средний возраст:
При i=3 старости:
Окончательная эмпирическая условная энтропия:
Шаг 3 Рассчитайте формулу получения информации
Точно так же мы можем рассчитать информационный прирост других функций.
Продолжите расчет трех предыдущих шагов и сведите результаты в таблицу:
Как можно видеть,иметь собственный домСоответствующая эмпирическая условная энтропия наименьшая, а прирост информации наибольший, а значит, если выбран этот признак, соответствующая неопределенность наименьшая, а выбор классификации наиболее четкий, то его можно установить как оптимальный признак ?
Конечно, внимательные друзья обнаружат, что если количество классификаций по разным признакам различно, то у некоторых их 3, например возраст (молодой, средний возраст, старый), а у некоторых 2, например, есть ли у вас собственный дом, при большом количестве классификаций возможно, что расчетный информационный прирост будет больше, видно, что,Прирост информации имеет тенденцию отдавать предпочтение функциям с большим количеством значений.
? Как уменьшить влияние принятия большего количества ценностей?
не волнуйся,коэффициент усиления информацииприходи~
коэффициент усиления информации
Энтропия обучающего набора данных D по отношению к признаку A:
Коэффициент усиления информации:
как рассчитатьШерстяная ткань?
показатьНапример:
Аналогично продолжаем вычислять A2, А3, А4Коэффициент прироста информации, соответствующий признаку, указан в таблице:
можно сравнитьиметь работу и кредитИз этих двух характеристик видно, что с точки зрения получения информации наиболее целесообразно выбрать кредитную ситуацию в качестве оптимальной характеристики, а с точки зрения коэффициента получения информации выбратьиметь работуБольше подходит в качестве оптимального признака
Подводя итог, можно сказать, что прирост информации имеет тенденцию иметь признаки с большим количеством значений, а коэффициент прироста информации имеет тенденцию иметь признаки с меньшим количеством значений.
Алгоритм генерации дерева решений
1. Алгоритм ID3
входить: обучающий набор данных, набор функций, порог
вывод: Древо решений
шаг 1 решениеВам нужно выбрать функции для создания дерева решений?
Case 1какВсе экземпляры принадлежат одному и тому же классу, тогда T — количество отдельных узлов, запишите класс экземпляра., который используется как маркер класса узла и возвращает
Case 2какВсе экземпляры в не имеют функций (),ноДля дерева с одним узлом запишитекатегория с наибольшим количеством экземпляров, иВ соответствии с принципом мажоритарного голосования используйте это как метку класса узла и верните.
Шаг 2. В противном случае рассчитайте информационный прирост каждой функции в A и выберите функцию A с наибольшим информационным приростом.g
Case 1какПрирост информации меньше, чем,ноДля дерева с одним узлом запишитеКатегория с наибольшим количеством экземпляров,
Case 2В противном случае следуйтевсе возможные значения,будетРазделить на несколько непустых подмножеств,будетВ качестве маркера используется категория с наибольшим количеством экземпляров, и строится дочерний узел, состоящий из узла и его дочерних узлов., и вернуться
шаг 3дочерние узлы, сэто тренировочный набор,Для набора функций рекурсивно вызовите вышеуказанные шаги, чтобы получить поддерево
У меня кружится голова ? Гораздо проще посмотреть на вопросы-примеры~
Пример объяснения
Еще последний пример
Вход: обучающий набор данных D
Выход: дерево решений.
шаг 1 решениеВам нужно выбрать функции для создания дерева решений?
- Итоговая классификация в обучающей выборке имеет 2 категории
- В тренировочном наборе есть несколько характеристик: возраст, наличие работы, владение домом и кредитный статус.
∴Необходимо выбрать функции для создания дерева решений
Шаг 2. Рассчитайте информационный прирост каждой функции в A и выберите функцию A с наибольшим информационным приростом.g
можно дать искусственно, и из значений прироста информации, полученных выше, видно, что все больше, чем, поэтому нет оснований говорить, что это дерево с одним узлом
Расчетное значение, основанное на информационном приросте каждой функции, которая была рассчитана выше.
Следовательно, мы можем определить, что корневой узел имеет наибольший прирост информации.у тебя есть собственный дом?По этому признаку обучающую выборку можно разделить наи
Видно, что у него есть свой домВсе соглашаются на кредит, поэтому в это время можно получить один листовой узел. без собственного домаСуществуют как согласованные кредиты, так и несогласованные кредиты, поэтому необходимо найти признаки, соответствующие внутренним узлам в соответствии с выбором признаков (рассчитать максимальный информационный прирост по этим трем признакам).
Во-первых, по возрастному признаку:
Из вышеприведенной таблицы видно, есть ли обучающий набор собственного дома, есть 9 экземпляров без собственного дома, 6 из них согласны на кредит, 3 не согласны на кредит, тогдаэмпирическая энтропияза
Молодость:
В среднем возрасте:
Видно, что для этого подмножества заем не согласован, тогда его эмпирическая условная энтропия равна 0
В старости:
Окончательная эмпирическая условная энтропияза:
возрастИнформационная выгода это:
Таким же образом вычислить, есть ли работа, кредитная ситуацияприрост информации, перечисленные в следующей таблице:
Для сравнения, наибольший информационный приростиметь работуЭта функция, затем мы выбираем ее для следующей функции.
существуетиметь работуПо этому признаку, если есть работа, все согласны на кредит, если нет работы, то кредит не согласован, и можно обнаружить, что никакой другой классификации по этому признаку нет.
Требование одного листового узла выполнено, поэтому генерация дерева решений завершена~?
2. Алгоритм С4.5
Если вы изучите алгоритм ID3, алгоритм C4.5 будет очень простым.
Алгоритм C4.5 очень похож на алгоритм ID3, разница в том, что C4.5 использует коэффициент прироста информации для выбора признаков и выбирает оптимальный признак с наибольшим коэффициентом прироста информации.
Код приведенного выше примера находится по адресу ?git ee.com/new-month-pro…
Добро пожаловать в гигантский указатель~
Использованная литература:Доктор Джейн - Генерация дерева решений