Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kurs.rtf
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
23.54 Mб
Скачать

Методы построения деревьев решений

Построение деревьев решений реализуется на основе методики «разделяй и властвуй», предполагающей рекурсивное разбиение множества объектов из обучающей выборки на подмножества (классы) объектов. При заданном аналитиком множестве классов и обучающей выборке возможны следующие ситуации [1]:

• множество содержит один или более объектов одного класса и дерево решений представляет собой лист, ассоциированный с классом ;

• множество не содержит ни одного объекта. Дерево решений лист и класс, ассоциированный с листом, выбирается из другого множества, отличного от , например, из родительского множества;

• множество содержит объекты, относящиеся к разным классам. Множество следует разбить на подмножества. С этой целью выбирается одна из независимых переменных , которая имеет отличные друг от друга значения. Исходное множество разбивается на подмножества, каждое из которых содержит все объекты, имеющие значения для выбранного атрибута. Процедура рекурсивно повторяется до формирования подмножеств с объектами одного класса.

Построение дерева решений производится сверху вниз. При этом алгоритмы построения деревьев решений являются «жадными алгоритмами» [4]. При построении деревьев решений решается две задачи [1]. Первая задача связана с определением на каждом внутреннем узле условия разделения множество объектов на подмножества. Условие определяется с применением одной независимой переменной. Эта переменная должна обеспечивать разбиение множества, при котором подмножества состоят из объектов одного класса или максимально отвечали требованию минимального количества в подмножестве объектов других классов.

Вторая задача связана с остановкой процедуры разбиения. Как правило, алгоритмы разбиения строят сложные деревья с множеством узлов и ветвей. Ветвистое дерево разбивает обучающее множество на большое количество подмножеств с небольшим количеством объектов. Аналитику предпочтительнее иметь дерево с небольшим количеством узлов, содержащих большое количество объектов из обучающей выборки. Для решения этой задачи часто применяют процедуру отсечения ветвей. Отсечение ветвей производится снизу вверх. Вначале отсекают листья дерева. Узлы, оказавшиеся на периферии дерева, отмечают как листья или заменяют их поддеревом. Отсечение в большинстве случаев даёт хорошие результаты и находит практическое применение.

Все объекты заранее отнесены к известным классам, такой процесс построения дерева решений называется обучением с учителем (supervised learning). Процесс обучения также называют индуктивным обучением или индукцией деревьев (tree induction).

Алгоритмы построения деревьев решений

При построении дерева на каждом внутреннем узле находят условие, разделяющее ассоциированное с этим узлом множество на подмножества. Конкретное содержание условия определяется выбранным атрибутом. Общее правило для выбора атрибута: выбранный атрибут должен разбивать исходное множество на подмножества, состоящие из объектов одного класса или классы, максимально приближены к этому. Другими словами, количество объектов из других классов (примесей) в каждом подмножестве должно быть минимальным.

Известно значительное число алгоритмов, реализующих деревья решений. Наибольшее распространение получили два алгоритма:

  • алгоритм CART (Classification and Regression Tree), реализующий построение бинарного дерева решений для дихотомической классификационной модели. Все узлы дерева при разбиении имеет двух потомков. В алгоритме используется теоретико-информационный критерий оценки качества разбиения. С применением алгоритма, решаются задачи классификации и регрессии;

  • алгоритм C4.5 (Iterative Dichotomizer), реализующий построение дерева решений, в котором количество потомков у каждого узла не ограничено. В алгоритме используется статистический критерий оценки качества разбиения. Алгоритм не работает с непрерывным множеством значений целевой функции и поэтому применяется только для решения задач классификации.

Алгоритм построения бинарного дерева CART  предложен Л. Брейманом и представляет собой дихотомическую классификационную модель. В алгоритме CART используется индекс Gini (предложен итальянским экономистом Corrado Gini). В соответствие с индексом Gini «расстояние» между распределениями классов в узле оценивается в следующем виде:

,

где  – текущий узел; – вероятность (частота) класса в узле .

В алгоритме C4.5 для выбора наиболее подходящего атрибута разбиения, предлагается следующий критерий:

, (1)

где,  – энтропия исходного множества , – энтропия подмножеств, полученных при разбиении исходного множества по условию. Энтропия подмножеств объектов , определяется выражением:

Окончательно выбирается атрибут, дающий максимальное значение по критерию(1). Впервые эта мера была предложена Р. Куинленом в разработанном им алгоритме ID3. Кроме вышеупомянутого алгоритма C4.5, есть еще целый класс алгоритмов, используют этот критерий . В SQL Server Data Mining используется алгоритм Microsoft Decision Trees.

Для остановки работы алгоритма предложены различные правила. В правилах на основе статистических методов остановка выполняется оценка целесообразности дальнейшего разбиения. Это правило экономит время обучения, но снижает точность классификационных моделей. В правилах на основе ограничения глубины дерева остановка алгоритма осуществляется, если глубина построенного дерева превышает заданное значение. Разбиение объектов на классы должно быть нетривиальным и определённые узлы должны содержать примеры в количестве не меньше заданного количества по условию задачи.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]