- •Раздел 1. Накопление и обработка данных .…………………………… 5
- •Раздел 2. Оперативный анализ данных ….…………………………… 43
- •Раздел 3. Интеллектуальный анализ данных ………………………… 82
- •Раздел 4 Загрузка данных и программирование запросов ...………… 110
- •Раздел 5. Подготовка отчетов по результатам анализа …….……… 136
- •Раздел 1. Накопление и обработка данных Лекция 1. Информационно-аналитические системы
- •Операционная обработка данных
- •Оперативный анализ данных
- •Интеллектуальный анализ данных
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 2. Концепции хранения данных
- •Реляционные базы данных
- •Организация хранилищ данных
- •Концепция многомерной модели данных
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 3. Интеграция и трансформации данных
- •Платформа sql Server 2008
- •Система Management Studio
- •Служба sql Server Integration Services
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Раздел 3. Интеллектуальный анализ данных Лекция 8. Кластерный анализ данных
- •Формальная постановка задачи кластеризации
- •Меры близости в кластерном анализе
- •Иерархические алгоритмы кластеризации
- •Неиерархические алгоритмы кластеризации
- •Представление результатов кластеризации
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 9. Классификация и регрессия
- •Математические функции
- •Правила классификации
- •Деревья решений
- •Методы построения деревьев решений
- •Алгоритмы построения деревьев решений
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 10. Поиск ассоциативных правил
- •Цель лекции – изучение формализованной постановки и алгоритма решения задачи поиска ассоциативных правил.
- •Формальная постановка задачи
- •Обнаружение закономерностей в последовательностях данных
- •Алгоритм поиска ассоциативных правил Apriori
- •Представление результатов
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 8. Службы sql Server Analysis Services
- •Конструктор интеллектуального анализа данных
- •Мастер интеллектуального анализа данных
- •Создание структуры интеллектуального анализа
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Создание и представление источника данных
- •Загрузка с применением Integration Services
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 12. Основы языка Multidimensional Expressions
- •Оператор select
- •Алгебра множеств и операции с множествами
- •Функции языка mdx
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 13. Язык операций Data Mining
- •Ключевые концепции и объекты dmx
- •Синтаксис запросов dmx
- •Создание моделей интеллектуального анализа
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Раздел 5. Подготовка отчёта по итогам анализа Лекция 14. Служба отчетов Reporting Services
- •Архитектура службы отчётов
- •Средства проектирования запросов
- •Развёртывание Reporting Services
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 15. Источники данных для отчётов
- •Общие источники данных
- •Источники поддерживаемые Reporting Services
- •Создание, изменение и удаление источников
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Лекция 16. Конструирование и создание отчётов
- •Основы конструирования отчётов
- •Создание нерегламентированных отчётов
- •Создание отчётов с применением конструктора
- •Краткие итоги
- •Контрольные вопросы
- •Литература
- •Глоссарий
Методы построения деревьев решений
Построение деревьев
решений реализуется на основе методики
«разделяй и властвуй», предполагающей
рекурсивное разбиение множества объектов
из обучающей выборки на подмножества
(классы) объектов. При заданном аналитиком
множестве классов
и обучающей выборке
возможны следующие ситуации [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.
Для остановки работы алгоритма предложены различные правила. В правилах на основе статистических методов остановка выполняется оценка целесообразности дальнейшего разбиения. Это правило экономит время обучения, но снижает точность классификационных моделей. В правилах на основе ограничения глубины дерева остановка алгоритма осуществляется, если глубина построенного дерева превышает заданное значение. Разбиение объектов на классы должно быть нетривиальным и определённые узлы должны содержать примеры в количестве не меньше заданного количества по условию задачи.
