
Деревья решений.ppt
- Количество слайдов: 47
Data Mining 1 История 2 Введение в Data Mining 3 Деревья решений 4 Метод ближайшего соседа
История Data Mining • 1960 -е гг. – первая промышленная СУБД система IMS фирмы IBM. • 1970 -е гг. – Conference on Data System Languages (CODASYL) • 1980 -е гг. – SQL • 1990 -е гг. – Data Mining
Возникновение Data Mining. Способствующие факторы • совершенствование аппаратного и программного обеспечения; • совершенствование технологий хранения и записи данных; • накопление большого количества ретроспективных данных; • совершенствование алгоритмов обработки информации.
Понятие Data Mining • Data Mining - это процесс обнаружения в сырых данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. Gregory Piatetsky-Shapiro • Это технология, которая предназначена для поиска в больших объемах данных неочевидных, объективных и полезных на практике закономерностей.
Мультидисциплинарность
Задачи Data Mining • • • Классификация Кластеризация Прогнозирование Ассоциация Визуализация анализ и обнаружение отклонений Оценивание Анализ связей Подведение итогов
Стадии Data Mining СВОБОДНЫЙ ПОИСК (в том числе ВАЛИДАЦИЯ) ПРОГНОСТИЧЕСКОЕ МОДЕЛИРОВАНИЕ АНАЛИЗ ИСКЛЮЧЕНИЙ
Методы Data Mining. Технологические методы. • Непосредственное использование данных, или сохранение данных: кластерный анализ, метод ближайшего соседа, метод kближайшего соседа, рассуждение по аналогии (этот метод будет рассмотрен подробнее) • Выявление и использование формализованных закономерностей, или дистилляция шаблонов: логические методы; методы визуализации; методы кросс-табуляции; методы, основанные на уравнениях
Методы Data Mining. Статистические методы. • • Дескриптивный анализ и описание исходных данных. Анализ связей (корреляционный и регрессионный анализ, факторный анализ, дисперсионный анализ). Многомерный статистический анализ (компонентный анализ, дискриминантный анализ, многомерный регрессионный анализ, канонические корреляции и др. ). Анализ временных рядов (динамические модели и прогнозирование).
Методы Data Mining. Кибернетические методы. • Искусственные нейронные сети (распознавание, кластеризация, прогноз); • Эволюционное программирование (в т. ч. алгоритмы метода группового учета аргументов); • Генетические алгоритмы (оптимизация); • Ассоциативная память (поиск аналогов, прототипов); • Нечеткая логика; • Деревья решений; этот метод будет рассмотрен подробнее. • Системы обработки экспертных знаний.
Визуализация инструментов Data Mining. • Для деревьев решений - визуализатор дерева решений, список правил, таблица сопряженности. • Для нейронных сетей - в зависимости от инструмента это может быть топология сети, график изменения величины ошибки, демонстрирующий процесс обучения. • Для карт Кохонена: карты входов, выходов, другие специфические карты. • Для линейной регрессии - линия регрессии. • Для кластеризации: дендрограммы, диаграммы рассеивания.
Проблемы и вопросы • Data Mining не может заменить аналитика! • Сложность разработки и эксплуатации приложения Data Mining. Основные аспекты: ØКвалификация пользователя ØСложность подготовки данных ØБольшой процент ложных, недостоверных или бессмысленных результатов ØВысокая стоимость ØНаличие достаточного количества репрезентативных данных
Области применения Data mining • Database marketers - Рыночная сегментация, идентификация целевых групп, построение профиля клиента • Банковское дело - Анализ кредитных рисков, привлечение и удержание клиентов, управление ресурсами • Кредитные компании - Детекция подлогов, формирование "типичного поведения" обладателя кредитки, анализ достоверности клиентских счетов , cross-selling программы • Страховые компании - Привлечение и удержание клиентов, прогнозирование фингансовых показателей • Розничная торговля - Анализ деятельности торговых точек, построение профиля покупателя, управление ресурсами • Биржевые трейдеры - Выработка оптимальной торговой стратегии, контроль рисков
Области применения Data mining. Продолжение. • Телекоммуникация и энергетика - Привлечение клиентов, ценовая политика, анализ отказов, предсказание пиковых нагрузок, прогнозирование поступления средств • Налоговые службы и аудиторы - Детекция подлогов, прогнозирование поступлений в бюджет • Фармацевтические компании - Предсказание результатов будущего тестирования препаратов, программы испытания • Медицина - Диагностика, выбор лечебных воздействий, прогнозирование исхода хирургического вмешательства • Управление производством - Контроль качества, материально-техническое обеспечение, оптимизация технологического процесса • Ученые и инженеры - Построение эмпирических моделей, основанных на анализе данных, решение научно-технических задач
Перспективы технологии Data Mining. • выделение типов предметных областей с соответствующими им эвристиками • создание формальных языков и логических средств, с помощью которых будет формализованы рассуждения • создание методов Data Mining, способных не только извлекать из данных закономерности, но и формировать некие теории, опирающиеся на эмпирические данные; • преодоление существенного отставания возможностей инструментальных средств Data Mining от теоретических достижений в этой области.
Литература по Data Mining • "Wikipedia about Data Mining" (http: //en. wikipedia. org/wiki/Data_mining) • "Data Mining Tutorials" (http: //www. eruditionhome. com/datamining/tut. html) • "Thearling intro paper" (http: //www. thearling. com/text/dmwhite. htm) • "Что такое Data mining? “ (http: //www. megaputer. ru/doc. php? classroom/whatis_ dm/whatis_dm. html) • "INTUIT. ru: Учебный курс - Data Mining“ (http: //www. intuit. ru/department/database/datamining/) • "Data Mining - подготовка исходных данных“ (http: //www. basegroup. ru/tasks/datamining_prepare. ht m)
Деревья решений. История и основные понятия. • Возникновение - 50 -е годы (Ховиленд и Хант (Hoveland, Hunt) ) • Метод также называют деревьями решающих правил, деревьями классификации и регрессии • Это способ представления правил в иерархической, последовательной структуре
Деревья решений. Пример 1.
Деревья решений. Пример 2.
Область применения деревья решений • Описание данных: Деревья решений позволяют хранить информацию о данных в компактной форме, вместо них мы можем хранить дерево решений, которое содержит точное описание объектов. • Классификация: Деревья решений отлично справляются с задачами классификации, т. е. отнесения объектов к одному из заранее известных классов. Целевая переменная должна иметь дискретные значения. • Регрессия: Если целевая переменная имеет непрерывные значения, деревья решений позволяют установить зависимость целевой переменной от независимых(входных) переменных. Например, к этому классу относятся задачи численного прогнозирования(предсказания значений целевой переменной).
Деревья решений. Преимущества метода. • Интуитивность деревьев решений • Возможность извлекать правила из базы данных на естественном языке • Не требует от пользователя выбора входных атрибутов • Точность моделей • Разработан ряд масштабируемых алгоритмов • Быстрый процесс обучения • Обработка пропущенных значений • Работа и с числовыми, и с категориальными типами данных
Деревья решений. Процесс конструирования. Основные этапы алгоритмов конструирования деревьев: • "построение" или "создание" дерева (tree building) • "сокращение" дерева (tree pruning).
Как построить дерево решений? • Пусть через {C 1, C 2, . . . Ck} обозначены классы(значения метки класса), тогда существуют 3 ситуации: 1. множество T содержит один или более примеров, относящихся к одному классу Ck. Тогда дерево решений для Т – это лист, определяющий класс Ck; 2. множество T не содержит ни одного примера, т. е. пустое множество. Тогда это снова лист, и класс, ассоциированный с листом, выбирается из другого множества отличного от T, скажем, из множества, ассоциированного с родителем;
Как построить дерево решений? 3. множество T содержит примеры, относящиеся к разным классам. В этом случае следует разбить множество T на некоторые подмножества. Для этого выбирается один из признаков, имеющий два и более отличных друг от друга значений O 1, O 2, . . . On. T разбивается на подмножества T 1, T 2, . . . Tn, где каждое подмножество Tiсодержит все примеры, имеющие значение Oi для выбранного признака. Это процедура будет рекурсивно продолжаться до тех пор, пока конечное множество не будет состоять из примеров, относящихся к одному и тому же классу
Деревья решений. Остановка построения дерева. Остановка - такой момент в процессе построения дерева, когда следует прекратить дальнейшие ветвления. Варианты остановки: • "ранняя остановка" (prepruning) • ограничение глубины дерева • задание минимального количества примеров
Деревья решений. Сокращение дерева или отсечение ветвей. Критерии: • Точность распознавания • Ошибка
Алгоритмы, реализующие деревья решений • CART, C 4. 5, New. Id, ITrule, CHAID, CN 2 1. CART (Classification and Regression Tree) – это алгоритм построения бинарного дерева решений – дихотомической классификационной модели. Каждый узел дерева при разбиении имеет только двух потомков. Как видно из названия алгоритма, решает задачи классификации и регрессии. 2. C 4. 5 – алгоритм построения дерева решений, количество потомков у узла не ограничено. Не умеет работать с непрерывным целевым полем, поэтому решает только задачи классификации. •
Классификация алгоритмов • Большинство из известных алгоритмов являются "жадными алгоритмами". Если один раз был выбран атрибут, и по нему было произведено разбиение на подмножества, то алгоритм не может вернуться назад и выбрать другой атрибут, который дал бы лучшее разбиение. И поэтому на этапе построения нельзя сказать даст ли выбранный атрибут, в конечном итоге, оптимальное разбиение. • Поскольку все объекты были заранее отнесены к известным нам классам, процесс построения дерева решений называется обучением с учителем. Процесс обучения также называют индуктивным обучением или индукцией деревьев.
Деревья решений. Алгоритмы. CART. • CART (Classification and Regression Tree) • разработан в 1974 -1984 годах четырьмя профессорами статистики - Leo Breiman (Berkeley), Jerry Friedman (Stanford), Charles Stone (Berkeley) и Richard Olshen (Stanford) • CART предназначен для построения бинарного дерева решений. Особенности: Ø функция оценки качества разбиения; Ø механизм отсечения дерева; Ø алгоритм обработки пропущенных значений; Ø построение деревьев регрессии.
Деревья решений. Алгоритмы. C 4. 5. • Строит дерево решений с неограниченным количеством ветвей у узла • Дискретные значения => только классификация • Каждая запись набора данных ассоциирована с одним из предопределенных классов => один из атрибутов набора данных должен являться меткой класса. • Количество классов должно быть значительно меньше количества записей в исследуемом наборе данных.
Правило разбиения. Каким образом следует выбрать признак? • Для построения дерева на каждом внутреннем узле необходимо найти такое условие (проверку), которое бы разбивало множество, ассоциированное с этим узлом на подмножества. В качестве такой проверки должен быть выбран один из атрибутов. Общее правило для выбора атрибута можно сформулировать следующим образом: выбранный атрибут должен разбить множество так, чтобы получаемые в итоге подмножества состояли из объектов, принадлежащих к одному классу, или были максимально приближены к этому, т. е. количество объектов из других классов ("примесей") в каждом из этих множеств было как можно меньше.
Теоретико-информационный критерий • Алгоритм C 4. 5, усовершенствованная версия алгоритма ID 3 , использует теоретико-информационный подход. Для выбора наиболее подходящего атрибута, предлагается следующий критерий: • где Info(T) – энтропия множества T, а • Множества T 1, T 2, . . . Tn получены при разбиении исходного множества T по проверке X. Выбирается атрибут, дающий максимальное значение по критерию (1)
Статистический критерий • Алгоритм CART использует так называемый индекс Gini (в честь итальянского экономиста Corrado Gini), который оценивает "расстояние" между распределениями классов. • Где c – текущий узел, а pj – вероятность класса j в узле c. CART был предложен Л. Брейманом (L. Breiman) и др.
Правило остановки. Разбивать дальше узел или отметить его как лист? • • В дополнение к основному методу построения деревьев решений были предложены следующие правила: Использование статистических методов для оценки целесообразности дальнейшего разбиения, так называемая "ранняя остановка" (prepruning). В конечном счете "ранняя остановка" процесса построения привлекательна в плане экономии времени обучения, но здесь уместно сделать одно важное предостережение: этот подход строит менее точные классификационные модели и поэтому ранняя остановка крайне нежелательна. Признанные авторитеты в этой области Л. Брейман и Р. Куинлен советуют буквально следующее: "Вместо остановки используйте отсечение". Ограничить глубину дерева. Остановить дальнейшее построение, если разбиение ведет к дереву с глубиной превышающей заданное значение. Разбиение должно быть нетривиальным, т. е. получившиеся в результате узлы должны содержать не менее заданного количества примеров.
Правило отсечения. Каким образом ветви дерева должны отсекаться? • Очень часто алгоритмы построения деревьев решений дают сложные деревья, которые "переполнены данными", имеют много узлов и ветвей. Такие "ветвистые" деревья очень трудно понять. К тому же ветвистое дерево, имеющее много узлов, разбивает обучающее множество на все большее количество подмножеств, состоящих из все меньшего количества объектов. • Ценность правила, справедливого скажем для 2 -3 объектов, крайне низка, и в целях анализа данных такое правило практически непригодно. Гораздо предпочтительнее иметь дерево, состоящее из малого количества узлов, которым бы соответствовало большое количество объектов из обучающей выборки. И тут возникает вопрос: а не построить ли все возможные варианты деревьев, соответствующие обучающему множеству, и из них выбрать дерево с наименьшей глубиной? К сожалению, это задача является NP-полной, это было показано Л. Хайфилем (L. Hyafill) и Р. Ривестом (R. Rivest), и, как известно, этот класс задач не имеет эффективных методов решения.
Отсечение ветвей • Для решения вышеописанной проблемы часто применяется так называемое отсечение ветвей (pruning). • Пусть под точностью (распознавания) дерева решений понимается отношение правильно классифицированных объектов при обучении к общему количеству объектов из обучающего множества, а под ошибкой – количество неправильно классифицированных. Предположим, что нам известен способ оценки ошибки дерева, ветвей и листьев. Тогда, возможно использовать следующее простое правило: 1. построить дерево; 2. отсечь или заменить поддеревом те ветви, которые не приведут к возрастанию ошибки. 3. В отличии от процесса построения, отсечение ветвей происходит снизу вверх, двигаясь с листьев дерева, отмечая узлы как листья, либо заменяя их поддеревом. Хотя отсечение не является панацеей, но в большинстве практических задач дает хорошие результаты, что позволяет говорить о правомерности использования подобной методики.
Преимущества использования деревьев решений Рассмотрев основные проблемы, возникающие при построении деревьев, было бы несправедливо не упомянуть об их достоинствах: • быстрый процесс обучения; • генерация правил в областях, где эксперту трудно формализовать свои знания; • извлечение правил на естественном языке; • интуитивно понятная классификационная модель; • высокая точность прогноза, сопоставимая с другими методами (статистика, нейронные сети); • построение непараметрических моделей. • В силу этих и многих других причин, методология деревьев решений является важным инструментом в работе каждого специалиста, занимающегося анализом данных, вне зависимости от того практик он или теоретик.
Деревья решений. Перспективы метода и выводы. • Разработка новых масштабируемых алгоритмов (Sprint, предложенный Джоном Шафером) • Метод деревьев - иерархическое, гибкое средство предсказания принадлежности объектов к определенному классу или прогнозирования значений числовых переменных. • Качество работы зависит как от выбора алгоритма, так и от набора исследуемых данных. • Чтобы построить качественную модель, необходимо понимать природу взаимосвязи между зависимыми и независимыми переменными и подготовить достаточный набор данных.
Метод "ближайшего соседа" или системы рассуждений на основе аналогичных случаев. Прецедент - это описание ситуации в сочетании с подробным указанием действий, предпринимаемых в данной ситуации. Этапы: • сбор подробной информации о поставленной задаче; • сопоставление этой информации с деталями прецедентов, хранящихся в базе, для выявления аналогичных случаев; • выбор прецедента, наиболее близкого к текущей проблеме, из базы прецедентов; • адаптация выбранного решения к текущей проблеме, если это необходимо; • проверка корректности каждого вновь полученного решения; • занесение детальной информации о новом прецеденте в базу прецедентов.
Метод "ближайшего соседа". Преимущества. • Простота использования полученных результатов. • Решения не уникальны для конкретной ситуации, возможно их использование для других случаев. • Целью поиска является не гарантированно верное решение, а лучшее из возможных.
Метод "ближайшего соседа". Недостатки. • Данный метод не создает каких-либо моделей или правил, обобщающих предыдущий опыт • Cложность выбора меры "близости" (метрики). • Высокая зависимость результатов классификации от выбранной метрики. • Необходимость полного перебора обучающей выборки при распознавании, следствие этого - вычислительная трудоемкость. • Типичные задачи данного метода - это задачи небольшой размерности по количеству классов и переменных.
Метод "ближайшего соседа". Решение задачи классификации новых объектов.
Метод "ближайшего соседа". Решение задачи прогнозирования.
Метод "ближайшего соседа". Оценка параметра k методом кросс-проверки. • Кросс-проверка - известный метод получения оценок неизвестных параметров модели. • Основная идея - разделение выборки данных на v "складок". V "складки" здесь суть случайным образом выделенные изолированные подвыборки.
Метод "ближайшего соседа". Примеры использования и реализации. • Использование - программное обеспечение центра технической поддержки компании Dell, разработанное компанией Inference. • Реализация - CBR Express и Case Point (Inference Corp. ), Apriori (Answer Systems), DP Umbrella (VYCOR Corp. ), KATE tools (Acknosoft, Франция), Pattern Recognition Workbench (Unica, США), а также некоторые статистические пакеты, например, Statistica.
? • Вопросы? ?