Посты для тега : ‘treepredict’

Восполнение отсутствующих данных

Еще одно достоинство деревьев решений заключается в их способности восполнять отсутствующие данные. В имеющемся у вас наборе данных какая-то информация может отсутствовать. Так, в рассматриваемом примере не всегда удается определить географическое местонахождение по IP-адресу, поэтому соответствующее поле может быть пусто. Чтобы приспособить дерево решений к такой ситуации, нужно будет по-другому реализовать функцию прогнозирования. Если отсутствуют […]

Читать далее »

Выбор наилучшего разбиения

Сделанное нами неформальное наблюдение о том, что переменная выбрана не очень хорошо, может быть и верным, но для реализации программы нужен способ измерения неоднородности множества. Требуется найти такую переменную, чтобы множества как можно меньше пересекались. Первое, что нам понадобится, – это функция для вычисления того, сколько раз каждый результат представлен в множестве строк. Добавьте ее […]

Читать далее »

Классификация новых наблюдений

Теперь нам необходима функция, которая классифицирует новое наблюдение в соответствии с деревом решений. Добавьте ее в файл treepredict.py: def classify(observation,tree): if tree.results!=None: return tree.results else: v=observation[tree.col] branch=None

Читать далее »

Отсечение ветвей дерева

У описанных выше методов обучения дерева есть один недостаток: оно может оказаться переученным (overfitted), то есть излишне ориентированным на данные, предъявленные в процессе обучения. Вероятность ответа, возвращенного переученным деревом, может оказаться выше, чем на самом деле, из-за того что были созданы ветви, лишь немного уменьшающие энтропию предъявленного множества наблюдений, хотя выбранное условие расщепления в действительности […]

Читать далее »

Классификатор на базе деревьев решений

Деревья решений рассматривались ранее  на примере построения модели поведения пользователя исходя из записей в протоколах сервера. Отличительной особенностью деревьев решений является исключительная простота интерпретации. На рис. 12.1 показан пример дерева:

Читать далее »

Рекурсивное построение дерева

Чтобы оценить, насколько хорош выбранный атрибут, алгоритм сначала вычисляет энтропию всей группы. Затем он пытается разбить группу по возможным значениям каждого атрибута и вычисляет энтропию двух новых групп. Для определения того, какой атрибут дает наилучшее разбиение, вычисляется информационный выигрыш, то есть разность между текущей энтропией и средневзвешенной энтропией двух новых групп. Он вычисляется для каждого […]

Читать далее »
 
Rambler's Top100