Бизнес аналитика от данных к знаниям скачать pdf

Бизнес-аналитика, От данных к знаниям, Паклин Н.Б., Орешков В.И., 2013.

   Книга представляет собой руководство для профессиональных бизнес-аналитиков, занимающихся внедрением корпоративных аналитических систем, В теоретической части последовательно освещаются современные технологии сбора и анализа структурированной информации: хранилища данных, ETL, OLAP, Data Mining, Knowledge Discovery in Databases, В практической части приводятся примеры решения бизнес-задач на аналитической платформе Deduetor Academic.
В данное, второе, издание включены разделы по последовательным шаблонам, байесовскому классификатору, обучению в условиях несбалансированности классов, расширена практическая часть.
Книга будет полезна всем интересующимся вопросами интеллектуального анализа данных и методами автоматического поиска закономерностей в массивах информации.
Для специалистов в области анализа данных, студентов и аспирантов.

Бизнес-аналитика, От данных к знаниям, Паклин Н.Б., Орешков В.И., 2013

Особенности данных, накопленных в компаниях.
Данные, которые накапливают предприятия и организации в базах данных и прочих источниках (так называемые бизнес-данные), имеют свои особенности. Рассмотрим их.

Бизнес-данные редко накапливаются специально для решения задач анализа. Предприятия и организации собирают данные для коммерческих целей: ведения учета, проведения финансового анализа, составления отчетности, принятия решений и т. п. Этим бизнес-данные отличаются от экспериментальных данных, которые собираются для исследовательских целей. Основными потребителями бизнес-данных обычно являются лица, принимающие решения в компаниях.

Бизнес-данные, как правило, содержат ошибки, аномалии, противоречия и пропуски. Это следствие того, что компании не собирают данные с целью анализа. В них появляются ошибки различной природы, что снижает качество данных.

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

ОГЛАВЛЕНИЕ.
Предисловие авторов.
Об авторах.
От издательства.
Вступительное слово.
Введение.
ЧАСТЬ I. ТЕОРИЯ БИЗНЕС-АНАЛИЗА.
Глава 1. Технологии анализа данных.
Глава 2. Консолидация данных.
Глава 3. Трансформация данных.
Глава 4. Визуализация данных.
Глава 5. Очистка и предобработка данных.
Глава б. Data Mining: задача ассоциации.
Глава 7. Data Mining: кластеризация.
Глава 8. Data Mining: классификация и регрессия. Статистические методы.
Глава 9. Data Mining: классификация и регрессия. Машинное обучение.
Глава 10. Анализ и прогнозирование временных рядов.
Глава 11. Ансамбли моделей.
Глава 12. Сравнение моделей.
ЧАСТЬ II. БИЗНЕС-АНАЛИЗ В DEDUCTOR.
Глава 13. Аналитическая платформа Deductor.
Глава 14. Консолидация данных и аналитическая отчетность аптечной сети.
Глава 15. Ассоциативные правила в стимулировании розничных продаж.
Глава 16. Сегментация клиентов телекоммуникационной компании.
Глава 17. Скоринговые модели для оценки кредитоспособности заемщиков.
Глава 18. Прогнозирование продаж товаров в оптовой компании.
Глава 19. Повышение эффективности массовой рассылки клиентам.
Заключение.
Литература.
Алфавитный указатель.

Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:

Скачать книгу Бизнес-аналитика, От данных к знаниям, Паклин Н.Б., Орешков В.И., 2013 — fileskachat.com, быстрое и бесплатное скачивание.

Скачать zip
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России.Купить эту книгу

Скачать
— djvu — pdf — Яндекс.Диск.

Дата публикации: 29.12.2020 07:36 UTC

Теги:

учебник по бизнесу :: бизнес :: Паклин :: Орешков


Следующие учебники и книги:

  • Чему не учат в российских школах бизнеса, Богаченко С.А.
  • Как открыть хлебопекарный и кондитерский бизнес, Машков Д.
  • Интернет и бизнес, Как использовать современные технологии и не остаться в дураках, Гришин В.Ю., 2012
  • Электронная торговля, Учебник, Дыганова Р.Р., Иванов Г.Г., Салихова Р.Р., Матосян В.А., 2021

Предыдущие статьи:

  • Открытие учебного центра профессионального обучения, преимущества и недостатки: учебное пособие, Штырляева Е.А., Могиляс М.Ю., 2020
  • Клонирование бизнеса, Франчайзинг и другие модели быстрого роста, Ватутин С., Тришин М., 2014
  • Ресторан от одного до сети, Опыт построения и управления, Горбунов С.В., 2017
  • Аналитическая культура, от сбора данных до бизнес-результатов, Андерсон К., Константинова Ю., Салахиев Р., 2017

                    Н. Паклин, В. Орешков


-


АНАПИТИКА:


от AaHHblX к знаниям


Учебное пособие
2
e издание,
исправленное



 BaseGroupM Labs
, ТЕхнолоrии АНАЛИЗА ДАННЫХ



ппTEP@


Москва . Санкт
Петербурr . Нижний HOBropoA . Воронеж
POCTOB
Ha
ДOHY . Екатеринбурr . СаМ'1ра . Новосибирск
Киев. Харьков. Минск
2013





ББК 65.в6 УДК 330.43 П13 Рецензенты: Завкафедрой информационных систем и технолоrий Нижеrородскоrо филиала rосударственноrо университета Высшей школы экономики, канд. техн. наук, профессор э. А. Бабкин; Директор научно исследовательскоrо института Российской экономической академии им. r. В. Плеханова, д p техн. наук, профессор о. А. Косоруков. Паклин Н. Б., Орешков В. и. П13 Биэнес аналитика: от данных к энаниям (+СО): Учебное пособие. 2 e иэд., испр. СПб.: Питер, 2013. 704 с.: ил. ISBN 978 5-459 00717 6 Книrа представляет собой руководство для профессиональных бизнес аналитиков, занимаю щихся внедрением корпоративных аналитических систем. В теоретической части последовательно освещаются современные технолоrни сбора и анализа структурированной информации: хранили ща данных, ETL, OLAP, Data Mining, Кnowledge Discovery in Databases. В практической части приводятся примеры решения бизнес задач на аналитической платформе Deductor Academic. В данное, второе, издание включены разделы по последовательиым шаблонам, байесовскому классификатору, обучению в условиях несбалансированности классов, расширена практическая часть. Книrа будет полезна всем интересующимся вопросами интеллектуальноrо анализа данных и методами автоматическоrо поиска закономерностей в массивах информации. Для специалистов в области анализа даниых, студентов и аспирантов. ББК 65.в6 УДК 330.43 Все права защищены. Никакая часть данной книrи не может быть воспроизведена в какой бы то ни было фор- ме без письменноro разрешения владельцев авторских прав. ISBN 97B 5-459 00717-6 @ 000 Издательство "Питер», 2013
Краткое содержание Предисловие авторов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Об авторах. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 От издательства. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Вступительное слово . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Введение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 ЧАcrь 1. ТЕОРИЯ БИЗНЕС АНАЛИЗА rлава 1. Технолоrии аналиэа данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 rлава 2. Консолидация данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . бl rлава 3. Трансформация данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 138 rлава 4. Виэуалиэация данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 173 rлава 5. Очистка и предобработка данных. . . . . . . . . . . . . . . . . . . . . . . . . . . 211 rлава 6. Data Мiпiпg: эадача ассоциации . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 rлава 7. Data Мiпiпg: кластериэация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 rлава 8. Data Мiпiпg: классификация и реrрессия. Статистические методы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 rлава 9. Data Мiпiпg: классификация и реrрессия. Машинное обучение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 rлава 10. Аналиэ и проrноэирование временных рядов. . . . . . . . . . . . . . . . 514 rлава 11. Ансамбли моделей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 rлава 12. Сравнение моделей. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 ЧАcrь 11. БИЗНЕС-АНАЛИЗ В DEDUcrOR rлава 13. Аналитическая платформа Deductor. . . . . . . . . . . . . . . . . . . . . . . . 600 rлава 14. Консолидация данных и аналитическая отчетность аптечной сети. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 rлава 15. Ассоциативные правила в стимулировании роэничных продаж. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 rлава 16. Сеrментация клиентов телекоммуникационной компании . . . . . 643 rлава 17. Скоринrовые модели для оценки кредитоспособности эаемщиков . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657 rлава 18. Проrноэирование продаж товаров в оптовой компании . . . . . . . б76 rлава 19. Повышение эффективности массовой рассылки клиентам. . . . . 682 Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689 Литература. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690 Алфавитный укаэатель . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
Оrлавление Предисловие авторов. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Об авторах. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 От издательства. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Вступительное слово . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Введение. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Современная бизнес аналитика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 ЧАСТЬ 1. ТЕОРИЯ БИ3НЕС-АНАЛИ3А rлава 1. Технолоrии анализа данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.1. Введение в анализ данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.2. Принципы анализа данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.3. Структурированные данные. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1.4. Подrотовка данных к анализу. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1.5. Технолоrии КОО и Data Мiпiпg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 1.6. Аналитические платформы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 1.7. Введение в алrоритмы Data Мiпiпg. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 rлава 2. Консолидация данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . б1 2.1. Задача консолидации ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 2.2. Введение в хранилища данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 2.3. Основные концепции хранилищ данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 2.4. MHoroMepHbIe хранилища данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 2.5. Реляционные хранилища данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 2.6. rибридные хранилища данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Оrлавление 5 2.7. Виртуальные хранилища данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 2.8. Нечеткие срезы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 2.9. Введение в EТL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 100 2.10. Извлечение данных в EТL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 103 2.11. Очистка данных в EТL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 2.12. Преобразование данных в EТL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 113 2.13. Заrрузка данных в хранилище. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 119 2.14. Заrрузка данных из локальных источников. . . . . . . . . . . . . . . . . . . . . . . . . .. 123 2.15. Обоrащение данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 131 rлава 3. Трансформация данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 138 3.1. Введение в трансформацию данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 138 3.2. Трансформация упорядоченных данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 142 3.3. rруппировка данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 151 3.4. Слияние данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 154 3.5. Квантование. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1БО 3.б. Нормализация и кодирование данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1бб rлава 4. Визуализация данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 173 4.1. Введение в визуализацию. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 173 4.2. Визуализаторы общеrо назначения. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 177 4.3. ОLAР анализ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , . . . . . . . . . . . . . . .. 184 4.4. Визуализаторы для оценки качества моделей ..... . . . . . . . . . . . . . . . . . . .. 192 4.5. Визуализаторы, при меняемые для интерпретации результатов анализа. . . . . . 202 rлава 5. Очистка и предобработка данных. . . . . . . . . . . . . . . . . . . . . . . . . . . 211 5.1. Оценка качества данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 5.2. Технолоrии и методы оценки качества данных. . . . . . . . . . . . . . . . . . . . . . . . . 217 5.3. Очистка и предобработка .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 5.4. Фильтрация данных. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 5.5. Обработка дубликатов и противоречий. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 5.б. Выявление аномальных значений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 5.7. Восстановление пропущенных значений. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 5.8. Введение в сокращение размерности. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 5.9. Сокращение числа признаков . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 5.10. Сокращение числа значений признаков и записей . . . . . . . . . . . . . . . . . . . . . 270 5.11. Сэмплинr. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 rлава б. Data Mining: задача ассоциации .. . . . . . . . . . . . . . . . . . . . . . . . . . . 281 б.1. Ассоциативные правила. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 б.2. Алrоритм Apriori. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 6.3. Иерархические ассоциативные правила. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 б.4. Последовательные шаблоны . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
6 Оrлавление rлава 7. Data Mining: клаcrериэация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 7.1. Введение в кластеризацию. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 7.2. Алrоритм кластеризации k means. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 7.3. Сети Кохонена. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 7.4. Карты Кохонена. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 7.5. Проблемы алrоритмов кластеризации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 rлава 8. Data Mining: классификация и реrрессия. Статиcrические методы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 8.1. Введение в классификацию и реrрессию . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 8.2. Простая линейная реrрессия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 8.3. Оценка соответствия простой линейной реrрессии реальным данным . . . . . . . 356 8.4. Простая реrрессионная модель . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 8.5. Множественная линейная реrрессия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 8.6. Модель множественной линейной реrрессии . . . . . . . . . . . . . . . . . . . . . . . . .. 376 8.7. Реrрессия с катеrориальными входными переменными. . . . . . . . . . . . . . . . . . . 380 8.8. Методы отбора переменных в реrрессионные модели ................... 387 8.9. Оrраничения применимости реrрессионных моделей. . . . . . . . . . . . . . . . . . . . 396 8.10. Основы лоrистической реrрессии. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 8.11. Интерпретация модели лоrистической реrрессии . . . . . . . . . . . . . . . . . . . . . . 411 8.12. Множественная лоrистическая реrрессия. . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 8.13. Простой байесовский классификатор. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 rлава 9. Data Mining: классификация и реrрессия. Машинное обучение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 9.1. Введение в деревья решений. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 9.2. Алrоритмы построения деревьев решений. . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 9.3. Алrоритмы ID3 и С4.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 9.4. Алrоритм CдRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 9.5. Упрощение деревьев решений. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 9.6. Введение в нейронные сети. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 9.7. Искусственный нейрон. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 9.8. Принципы построения нейронных сетей. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 9.9. Процесс обучения нейронной сети. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 9.10. Алrоритмы обучения нейронных сетей. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498 9.11. Алrоритм обратноrо распространения ошибки. . . . . . . . . . . . . . . . . . . . . . . . 507 rлава 10. Аналиэ и проrноэирование временных рядов. . . . . . . . . . . . . . . . 514 10.1. Введение в проrнозирование. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 10.2. Временной ряд и ero компоненты. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 10.3. Модели проrнозирования. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 10.4. Проrнозирование в торrовле и лоrистике. . . . . . . . . . . . . . . . . . . . .. . ... . . 540
Оrлавление 7 rлава 11. Ансамбли моделей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 11.1. Введение в ансамбли моделей. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 11.2. Бэrrинr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " 548 11.3. Бустинr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 11.4. Альтернативные методы построения ансамблей. . . . . . . . . . . . . . . . . . . . . . . 557 rлава 12. Сравнение моделей. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 12.1. Оценка эффективности и сравнение моделей. . . . . . . . . . . . . . . . . . . . . . . . . 563 12.2. Оценка ошибки модели . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 12.3. Издержки ошибочной классификации .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 572 12.4. Lift и Рrоfit кривые . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576 12.5. RОС анализ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 586 12.6. Обучение в условиях несбалансированности классов. . . . . . . . . . . . . . . . . . . 593 ЧАСТЬ 11. БИ3НЕС АНАЛИ3 В DEDUCТOR rлава 13. Аналитическая платформа Deductor. . . . . . . . . . . . . . . . . . . . . . . . 600 rлава 14. Консолидация данных и аналитическая отчетность аптечной сети. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 rлава 15. Ассоциативные правила в стимулировании роэничных продаж. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 rлава lб. Сеrментация клиентов телекоммуникационной компании . . . . . 643 rлава 17. Скоринrовые модели АЛя оценки кредитоспособности эаемщиков . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657 rлава 18. Проrноэирование продаж товаров в оптовой компании . . . . . . . 676 rлава 19. Повышение эффективности массовой рассылки клиентам. . . . . 682 3аключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689 Литература. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690 Алфавитный укаэатель . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
Предисловие авторов Книrа, которую вы держите в руках, в какой то степени уникальна. Во первых, ей присущи системность и rлубина изложения материала, чеrо так не хватает россий ским изданиям по бизнес аналитике (да и самих книr, к сожалению, единицы). Bo вторых, материал рассчитан не на разработчиков информационно аналитических систем (проще rоворя, проrpаммистов), а на тех, кто этими системами пользует ся, аналитиков. В третьих, большинство рассмотренных технолоrий анализа данных можно про верить в действии на при мере решения актуальных бизнес задач (создание хранилищ данных, OLAP, скоринr, оптимизация массовой рассылки и др.) на аналитической платформе Deductor Academic. Несмотря на то что у книrи два автора, за этим проектом стоит MHoro талантли вых людей, и в первую очередь коллектив российской компании BaseGroup Labs, разработчика аналитической платформы Deductor. На протяжении мноrих лет KOM пания целенаправленно занимается анализом данных, и сеrодня ощутимы резуль таты этой кропотливой работы десятки выполненных проектов, более 90 вузов партнеров, образовательный портал с е lеаrпiпg курсами по бизнес аналитике, накопленный опыт решения разнообразных бизнес аналитических задач. Книrа в целом ориентирована на широкий Kpyr читателей от IТ специа листов до экономистов и медиков то есть на всех желающих познакомиться с современными технолоrиями анализа данных, Однако в значительной мере мы ее писали для аналитиков, которые хотят, чтобы накопленные в компании данные превратились в знания, а не лежали мертвым rpузом. Как учебное пособие книrа в первую очередь предназначена для студентов Ha правлений и специальностей «Прикладная информатика!>, «Бизнес информатика», а также друrих родственных направлений, Области, которые затраrивает современная бизнес аналитика, мноrочисленны. Это математика, информатика, базы данных, статистика, методы визуализации и мноrие друrие. При написании rлав, относящихся к теории бизнес анализа, нам часто приходилось искать баланс между полнотой и простотой изложения. Исполь зование Data Mining требует осторожности, поскольку некорректное применение ero методов и технолоrий, вызванное недостаточными знаниями и квалифика цией, может привести к ложным выводам инеправильно принятым на их основе решениям. Поэтому профессиональный аналитик должен хорошо владеть этими технолоrиями. Именно по этим причинам значительное внимание в книrе уделено вопросам сбора и консолидации, преобразования и очистки данных, алrоритмам, а также методическим моментам процесса анализа выдвижению rипотез, сбору информации, типам и видам данных. Очень ценным мы считаем материал rлав 11 и 12, так как вопросы сравнения моделей и их ансамблей в русскоязычных источ
Предисловие авторов 9 никах освещены скудно, и мы искренне надеемся, что он будет полезен не только начинающим, но и опытным бизнес аналитикам. Сюжеты некоторых из приведенных в учебном пособии примеров позаимствова ны из двух замечательных книr Data Mining Methods and Models (2006) и Discovering Knowledge in Data (2005) американскоrо профессора Daniel Т. Larose. Интерес, проявленный к первому изданию настоящей книrи (2009 т.), подвиr нул нас на подrотовку второто. В текст были внесены изменения, направленные на уточнение и уrлубление некоторых понятий и определений; исправлены обна руженные, в том числе с помощью читательских отзывов, опечатки, неточности и ошибки. В книry добавлены новые материалы по нечетким срезам, последова тельнЫМ шаблонам, байесовскому классификатору, кривым «точность полнота!>, обучению в условиях несбалансированности классов. Как и в первом издании, мы не ставили цель охватить все существующие в бизнес аналитике алrоритмы и методы, но то, что предлаrается для изучения, рассказывается подробно и почти всетда поясняется при помощи расчетноrо примера. Существенной переработке подверrлись rлава 8 и материал о визуализации связей в rлаве 4, Кроме тото, в части II практически м при мерам уделено больше внимания по сравнению с пре дыдущим изданием. Общая концепция книrи, введение, заключение, rлава 1, разделы 2.8,7.1,7.5, 10.4 и все rлавы части II подrотовлены Н. Паклиным; rлавы 2, 3, 5, 6, 9 11 и разде лы 7.2 7.4, 12.1 12.S написаны В. Орешковым; rлавы 4, 8 и раздел 12,6 представля ют собой итоr совместноro труда авторов. В разделе 8.8 использовались материалы, предоставленные А. Сениным сотрудником BaseGroup Labs. Содержание мноrих rлав пособия опробовано Н. Паклиным при чтении курсов «Проектирование информационно аналитических систем!> и «Интеллектуальные информационные системы!> в Рязанском филиале Московското тосударственното университета экономики, статистики и информатики. Хочется выразить оrромную блаrодарность: А. И, Арустамову директору и rлавному вдохновителю компании BaseGroup Labs; всем преподавателям вузов партнеров, активно использующих Deductor в учебном процессе; рецензентам пособия профессору Э. А. Бабкину и профессору О. А. Косорукову за ценные замечания и рекомендации, которые были учтены авторами. Также выражаем искреннюю признательность профессору МИРЭА Л. С. Болотовой за внимание к нашей книrе. С авторами можно связаться по адресу edu@basegroup.ru. Ждем ваших пред ложений и замечаний.
Об авторах Николай Паклин Окончил Ижевский rосударственный технический университет по специаль ности «Информационные системы и технолоrии», в 2004 [, защитил диссертацию на соискание ученой степени кандидата технических наук. С 2005 т. сотрудник компании BaseGroup Labs, в которой занимается внедрением информационно аналитических систем и разработкой корпоративных учебных курсов по бизнес аналитике. Опыт преподавательской деятельности более 5 лет. Область научных и практических интересов связана с алrоритмами машинноro обучения, Data Mining и корпоративными информационно аналитическими системами, Вячеслав OpeIllКoB Окончил Рязанскую rосударственную радиотехническую академию по специ альности «Радиоэлектронные системы и комплексы». В настоящее время науч ный сотрудник кафедры радиоуправления и связи Рязанскоrо тосударственното радиотехническоrо университета. Сфера научных интересов Data Mining, анализ данных, цифровая обработка сиrналов и изображений в системах телекоммуника ций. С 2002 т. сотрудничает с BaseGroup Labs в качестве техническоrо писателя.
ОТ издательства Ваши замечания, предложения и вопросы отправляйте по адресу электронной почты salnikova@msk.piter.com (издательство «llитер», редакция специальной ли тературы). Мы будем рады узнать ваше мнение! На сайте издательства http://www.piter.com вы найдете подробную информацию о наших книrах,
Вступительное слово Известно, что современное общество вступило в новый этап cBoero развития, называемый информационным или постиндустриальным, Под этим обычно пони мается, что знания и информация стали rлавной движущей и производительной общественной силой, определяющей как духовное, так и материальное состояние личности, компании, rосударства в целом. От умения производить, искать, aHa лизировать, классифицировать, обобщать, распознавать, перерабатывать, пред ставлять информацию и принимать решения сеrодня напрямую зависят качество жизни человека и общества, их информационная и общественная беЗОrIасность. Все перечисленные процессы относятся к числу духовных, или идеальных, Примени тельно к ним справедлива прямая зависимость между уровнем духовноrо развития человека, ero способностями к творчеству и объемами информации, которые он может усваивать и перерабатывать, Отсюда становится видимой стратеrическая направленность эволюции человечества в целом. Ее можно охарактеризовать как тенденцию перехода от материальноrо общества к духовному, Вторая тенденция тоже про ступает достаточно явно и состоит в том, что след ствием перехода к информационному обществу является ero структурная и MaTe риальная трансформация: исчезают информационные барьеры между rосударст вами, корпорациями, языками, rлобализация естественное следствие развития информационноrо общества, Это предъявляет новые требования к человеку, к уровню ero подrотовки, к ero информационной культуре. Если еще 10 15 лет назад под информационной куль турой личности, общества, корпорации и т, д, понималась просто компьютерная rpaMOTHocTb (владение навыками работы с компьютером), то сеrодпя владение методами и технолоrиями работы с данными и знаниями, с базами данных и зна ний, Умение работать с информацией становится rлавным условием при приеме на работу, при определении перспективноrо роста личности и компании, Современное общество характеризуется еще одной важной деталью: оно по дошло к пороrу, коrда одновременно сконцентрировались orpoMHbIe массивы информации (в корпорациях, в rосударственных департаментах, в службах соци альноrо обеспечения и т. д,) В виде баз данных; значительно возросли мощности вычислительной техники, систем и средств связи и передачи данных; Интернет стал всеобщим единым хранилищем данных и знаний для человечества; четко сформировалась потребность в новых возможностях взаимодействия с данными и со средствами их обработки. Наконец, явственно сформировался социальный заказ на достаточно полные и доступные отечественные издания, посвященные информационно аналитической обработке больших объемов данных, и на COOTBeT ствующие проrраммные средства. Выяснилось, например, что сведения о методах
Вступительное слово 13 и технолоrиях хранилищ данных и об интеллектуальном анализе данных содержат ся в основном в научных изданиях, в том числе в рамках тематики искусственноrо интеллекта; практически отсутствуют издания, приrодные в качестве учебников и учебных пособий для вузов. Выход в свет такото полноrо и подробноrо издания, как «Бизнес аналитика: от данНЫХ к знаниям» в 2009 т., на мой взrляд, стал событием. Предлаrаемое внима нию читателей второе издание, исправленное и дополненное новыми материалами и примерами, является вполне лоrичным и необходимым. Учебное пособие может быть использовано в первую очередь студентами и ac пирантами, обучающимися по специальностям, связанным с информационными технолоrиями. Конечно, дисциплина под названием «Бизнес аналитика» не входит в вузовские учебные проrраммы. Но мноrие вопросы, рассматриваемые в книrе, так или иначе включены в курсы по системам поддержки принятия решений, искусственному интеллекту, интеллектуальным информационным технолоrиям, Поэтому преподавателям будет несложно адаптировать материал пособия к чи таемым курсам, Ориентация авторов на мировой уровень исследований в области бизнес ана литики привела к тому, что в книrе содержится довольно мното анrлоязычных Tep минов и аббревиатур наподобие Data Warehousing, Know/edge Discovery in Databases и Data Mining, к которым российские читатели еще не привыкли. Да и в качестве дополнительной литературы предлаrаются в основном учебники на анrлийском языке, Это является определенным недостатком, хотя авторы старались сделать пособие самодостаточным. Но достоинств у книrи во мното раз больше. Она способствует формированию у читателя четкоrо представления о месте и роли информационно аналитических технолоrий (а также проrpаммных аналитических платформ на их основе) в решении актуальных управленческих задач, изучению сложившейся в этой области терминолоrии, освоению системных научных подхо дов к подrотовке и анализу больших массивов данных, Важно, что присутствует практическая часть, тде на базе аналитической платформы Deductor показываются бизнес кейсы из различных прикладных областей: это ведет к усвоению получен ных теоретических знаний. Современному бизнесу не обойтись без информационно аналитической под держки, решения задач проrнозирования, управления рисками и пр. Помимо проrpаммноrо обеспечения, нужны специалисты, которые будут внедрять анали тические проекты. Данное учебное пособие, безусловно, вносит вклад в решение этих задач. л. с. Болотова, доктор технических наук, профессор Московскою института радиотехники, эле-ктроники и автоматики
Введение Современная бизнес"аналитика Еще несколько лет назад рынок корпоративных аналитических систем в России был настолько мал, что вопросы и проблемы бизнес аналитики обсуждались в узком KPYry профессионалов, а к запуску аналитических проектов относились с большим недоверием. Однако с тех пор, как компании получили возможность собирать и хранить значительные объемы информации, ситуация коренным образом изменилась: в стране начался экспоненциальный рост рынка систем бизнес аналитики. Это му немало способствовали снижение сложности и стоимости внедрения таких систем и примеры успешных решений в области корпоративных аналитических систем. Первыми возможности бизнес аналитики оценили банки, а также страховые, телекоммуникационные и ToproBbIe компании. Они научились извлекать полезные знания и выrоду из orpoMHoro количества информации, собранной и хранящейся в корпоративных базах данных, Сеrодня очевидно, что без анализа данных в усло виях конкурентной борьбы не обойтись, Что же скрывается за термином «бизнес аналитика» (Business Intelligence)? у Hero нет единоrо определения, слишком большой спектр технолоrий он включает в себя. Можно признать удачным и емким определение авторитетной консалтинrо вой компании IDC (http://idc.com!): бизнес аналитика это «инструменты и Прило жения для поиска, анализа, моделирования и доставки информации, необходимой для принятия решений!>. Бизнес аналитика мультидисциплинарная область, находящаяся на стыке информационных технолоrий, баз данных, алrоритмов интеллектуальной обработки информации, математической статистики и методов визуализации. Решения принимаются руководителями, и задача бизнес аналитики сделать все, чтобы эти решения были оптимальными и своевременными. За rотовыми отчетами, которые, кстати, MOryT содержать не только цифры в различных разре зах, но и правила, зависимости, тенденции, проrнозы (то есть знания), скрывается нелеrкий труд бизнес аналитика, Эта книrа адресована в первую очередь будущим бизнес аналитикам, стремя щимся освоить современные технолоrии анализа данных или уrлубить имеющиеся
Введение IS знания, Вам дается уникальная возможность не только изучить теоретические аспекты хранилищ данных, их очистки и предобработки, Data Mining и др., но и приобрести навыки решения актуальных бизнес задач на аналитической платформе Deductor, которую уже свыше 90 вузов России, Беларуси и Украины официально используют в учебном процессе для преподавания курсов по анализу данных (разработчик компания BaseGroup Labs). Книrа, несомненно, будет также интересна IT специалистам, планирующим внедрение систем бизнес аналитики в компаниях и желающим поближе познакомиться с возможностями корпоратив ных информационно аналитических систем. Книrа состоит из двух частей теоретической и практической. Важно отметить, что теория не привязана к конкретным проrpаммным продуктам, а значит, является универсальной, Путь от сырых данных к знаниям в бизнес анализе довольно длинный. Поэтому теоретическая часть книrи Теория бизнес ана.лиза. разбита на rлавы, каждая из которых посвящена какой либо одной задаче. Первая rлава «ТеХНОЛОlИИ анализа да1l1lЪtx» является вводной, В ней излаrа ются базовые сведения о принципах анализа, подrотовке информации, CTPYK турированных данных и технолоrиях Knowledge Discovery in Databases и Data Mining. Данные нередко хранятся в разрозненных источниках, поэтому MorYT иметь различные форматы и типы. Решение задачи сбора информации, приrодной для анализа в едином источнике, при помощи технолоrии MHoroMepHbIx и реляционных хранилищ данных изложено в rлаве «Консолидация даннъа», Для решения аналитических задач собранную воедино информацию часто требуется rpуппировать, фильтровать, кодировать и преобразовывать в опреде ленный вид при помощи специальных техник, о которых рассказывается в rлаве «Трансформация даннъа», Нереrламентированные запросы и аналитическая ОLАР отчетность HeOTЪ емлемые составляющие любоrо аналитическоrо проекта по бизнес анализу. Кроме Toro, существует множество способов расширенной визуализации от rрафиков и диаrpамм до специализированных визуализаторов для оценки качества Moдe лей и интерпретации выявленных зависимостей. Все эти вопросы рассматриваются в rлаве «Визуализация данных», В условиях постоянноrо роста объемов информации критически важным CTa новится качество данных, Пропуски, дубликаты, противоречия и аномалии со всеми этими проблемами необходимо бороться, используя специальные методы и алrоритмы, чему посвящена rлава «Очистка и предобработка даннъа». Часто бизнес аналитика оrpаничивается решением перечисленных выше задач, Представленный в понятной форме отчет действительно помоrает руководителю оперативно принять решение, Но с повышением сложности задач одним только визуальным анализом не обойтись. На помощь приходит проrнозное модели рование и извлечение знаний. Этим технолоrиям в книrе уделено значительное внимание.
16 Введение В rлавах 6 9 под общим названием «Data Mining» последовательно изла rаются алrоритмы решения основных классов задач Data Mining: ассоциация, кластеризация, классификация и реrрессия. Рассматриваются алrоритмы Ma шинноrо обучения и математической статистики, неоднократно показавшие свою эффективность при решении практических задач в системах бизнес аналитики: нейронные сети, деревья решений, линейная, лоrистическая реrрессия и др. Алrоритмы описываются достаточно подробно: чтобы исключить опасность по явления недостоверных выводов и ложных тенденций, аналитик должен хорошо понимать оrраничения каждоrо метода и природу данных, с которыми работает тот или иной алrоритм. Мноrие процессы отражают динамику: продажи, поставки, заявки, трафик. Поэтому в бизнес аналитике важную роль иrрает проrнозирование, для чеrо необ ходим о владение методами анализа временных рядов, Эти вопросы раскрываются в rлаве «Анализ и пРО11l0зирование временных рядов», Разнообразие алrоритмов Data Mining rоворит о том, что не существует одноrо универсальноrо метода для решения всех задач, В то же время, если объединить усилия нескольких методов, можно значительно повысить качество решения аналитических задаЧ. Поэтому в rлаве 11 «Ансамбли моделеЙ$> рассматриваются современные подходы к комбинированию и объединению моделей: бустинr, бэr rинr и стэкинr. Разнообразие алrоритмов порождает проблему выбора лучшей модели на основе объективных критериев. Этому посвящена rлава 12 «Сравнение моделеЙ$>, В ней рассматриваются Lift и Рrоfit кривые, RОС анализ и смежные темы. Знание MeTO ДОВ сравнения моделей позволит при необходимости реализовать автоматический пере бор моделей, что важно при конвейерной обработке больших массивов данных и промышленном проrнозировании. Стоит сказать, что пособие ориентировано как на профессиональных читателей и студентов старших курсов, так и на тех, кто только начал интересоваться анализом данных. Можно следующим образом условно разделить читателей книrи на KaTe rории: О специалисты в области хранилищ данных, OLAP и ETL rлавы 1 5; о начинающие аналитики Data Mining rлавы 1, 3, 4, 6 (кроме 6.3 6,5), 7, 9 (кроме 9.3, 9.4 и 9.10); О специалисты, занимающиеся проrнозированием временных рядов rлавы 1, 3,4,10; О профессиональные аналитики Data Mining rлавы 1, 3 12, [лава 8 рассчитана на подrотовленноrо читателя и требует присутствия у Hero базовых знаний по теории вероятностей и математической статистике. При первом чтении ее можно про пустить, освоив только тему «Введение в классификацию и реrрессию». Однако ценность всей rлавы заключается в наличии материала по лоrистической реrpессии, без знания которой невозможно овладеть технолоrиями построения скоринrовых карт оценки кредитоспособности, столь востребованными в банковской бизнес аналитике,
Введение 17 Те разделы по Data Mining, в которых подробно рассматриваются алrоритмы, также рассчитаны на читателя, знающеrо основы вузовскоrо курса высшей MaTe матики, и новичок может их пропустить. Вторая часть Бизнес ана.лиз в Deductor. содержит примеры решения за дач на базе аналитической платформы Deductor в различных областях: розничной торrовле, банкинrе, телекоммуникациях, маркетинrе, Эти разделы рекомендуются для изучения всем читателям вне зависимости от уровня подrотовки. На прилаrаемом ком:пакт диске содержатся дистрибутив Deductor Academic, демонстрационные файлы с данными для примеров, приводимых в книrе, а также дополнительные материалы,
Часть Теория бизнес--анализа
анализа данных Технолоrии 1.1. Введение в анализ данных Методолоrия анализа Анализ данных широкое понятие, Сеrодня существуют десятки ero определений. В самом общем смысле анализ данных это исследования, связанные с обсчетом мноrомерной системы данных, имеющей множество параметров. В процессе анализа данных исследователь производит совокупность действий с целью формирования определенных представлений о характере явления, описываемоrо этими данными. как правило, для анализа данных используются различные математические методы, Анализ данных нельзя рассматривать только как обработку информации после ее сбора. Анализ данных это прежде Bcero средство про верки rипотез и решения задач исследователя. Известное противоречие между оrpаниченными познавательными способностями человека и бесконечностью Вселенной заставляет нас использовать модели и модели рование, тем самым упрощая изучение интересующих объектов, явлений и систем, Слово «модель» (лат, modelium) означает «мера», «способ», «сходство с какой то вещью», Построение моделей универсальный способ изучения окружающеrо мира, позволяющий обнаруживать зависимости, проrнозировать, разбивать на rруппы и решать множество друrих задач. Основная цель моделирования в том, что модель должна достаточно хорошо отображать функционирование моделируемой системы. ОПРЕДЕЛЕНИЕ Модель объект или описание объекта, системы для замещения (при определенных усло- виях, предположениях, rипотезах) одной системы (то есть ориrинала) друrой системой для лучшеrо изучения ориrинала или воспроизведения каких либо ero свойств.
rлава 1. Технолоrии анализа данных 21 ОПРЕДЕЛЕНИЕ Моделирование универсальный метод получения, описания и использования знаний. Применяется в любой профессиональной деятельности. По виду моделирования модели делят: О на эмпирические полученные на основе эмпирических фактов, зависимостей; О теоретические полученные на основе математических описаний, законов; О смешанные, полуэмпирические полученные на основе эмпирических зависи мостей и математических описаний, Нередко теоретические модели появляются из эмпирических, например, мноrие законы физики первоначально были получены из эмпирических данных, ПРИМЕР Совокупность предприятий функционирует на рынке, обмениваясь товарами, сырьем, услуrами, информацией. Если описать зкономические законы, правила взаимодействия на рынке с помощью математических соотношений, например системы алrебраических уравнений, rAe неизвестными будут величины прибыли, получаемые от взаимодействия предприятий, а коэффициентами уравнения значения интенсивности таких взаимодей- ствий, то получится математическая модель экономической системы, то есть экономико- математическая модель системы предприятий на рынке. Таким образом, анализ данных тесно связан с моделированием. Отметим важные свойства любой модели, о Упрощенность. Модель отображает только существенные стороны объекта и, кроме тоro, должна быть проста для исследования или воспроизведения, О Конечность. Модель отображает ориrинал лишь в конечном числе ero отноше ний, и, кроме тоro, ресурсы моделирования конечны, О Приближенность, Действительность отображается моделью rpубо или прибли женно. О Адекватность. Модель должна успешно описывать моделируемую систему. О Целостность, Модель реализует некоторую систему (то есть целое). О Замкнутость, Модель учитывает и отображает замкнутую систему необходимых основных rипотез, связей и отношений. О Управляемость, Модель должна иметь хотя бы один параметр, изменениями KOToporo можно имитировать поведение моделируемой системы в различных условиях, Аналитический ПОДХОД к моделированию Модель в традиционном понимании представляет собой результат отображения одной структуры (изученной) на друryю (малоизученную). Так, отображая физи ческую систему ( объект) на математическую (например, математический аппарат
22 Часть 1. Теория биэнес аналиэа уравнений), получим физико математическую модель системы, или математи ческую модель физической системы. Любая модель строится и исследуется при определенных допущениях, rипотезах. Делается это обычно с помощью MaTeMa тических методов. ПРИМЕР Рассмотрим экономическую систему. Величина ожидаемоrо спроса s на будущий месяц (t + 1) рассчитывается на основе формулы s(t + 1) == [s(t) + s(t 1) + s(t 2)] /3. то есть как среднее от продаж эа предыдущие три месяца. Это простейшая математиче ская модель проzноза продаж. При построении этой модели были приняты следующие rипотеэы. Во первых. rодовая сеэонность в продажах отсутствует. BO BTOPЫX. на величину продаж не влияют никакие внешние факторы: действия конкурен- тов, макроэкономическая ситуация и т. д. Использовать такую модель леrко: имея данные о продажах за предыдущие месяцы, по формуле мы получим проrноз на будущий месяц. Такой подход к моделированию в литературе называют а1tШlитичес'К1J.JИ. Аналитический подход к моделированию базируется на том, что исследова т ль при изучении СИстемы отталкивается от модели (рис. 1.1). В этом случае он по тем или иным соображениям выбирает подходящую модель. Как правило, это теоретическая модель, закон, известная зависимость, представленная чаще Bcero в фу1t'Кцио1tШlъ1tом виде (например, уравнение, связывающее выходной па раметр у с входными воздействиями XI, Х2.'.). Варьирование входных параметров на выходе даст результат, который моделирует поведение системы в различных условиях. > . с::::::) 8 C::::::) I Рщу "" Исследователь Рис. 1.1. Движение от модели к результату ПРИМЕР Рассмотрим фиэическую систему. Тело массой т. на которое воэдействует сила Е. CKaTЫ вается по наклонной плоскости с ускорением а. Исследуя такие системы. Ньютон получил математическое соотношение F == та. Это математическая модель физической систе- мы. При построении этой модели были приняты следующие rипотеэы. 1. Поверхность идеальна (то есть коэффициент трения равен нулю). 2. Тело находится в вакууме (то есть сопротивление воздуха равно нулю). з. Масса тела неизменна. 4. Тело движется с одинаковым постоянным ускорением в любой точке. При моделировании мноrих физических явлений мы используем закон Ньютона и дела ем выводы.
rлава 1. Технолоrии анализа данных 23 Результат моделирования может соответствовать действительности, а может и не соответствовать. В последнем случае исследователю ничеrо не остается, Kpo ме как выбрать друryю модель или друrой метод ее исследования. Новая модель, возможно, будет более адекватно описывать рассматриваемую систему. При аналитическом подходе не модель <тодстраивается» под действительность, а мы пытаемся подобрать существуюШJjЮ аналитическую модель тaKUМ образом, чтобы она адекватно отражала реальность. Модель всеrда исследуется каким либо методом (численным, качественным и т. п.). Поэтому выбор метода моделирования часто означает выбор модели. Информационный подход к моделированию При использовании в бизнесе традиционноrо аналитическоrо подхода неизбежно возникнут проблемы из за несоответствия между методами анализа и реальностью, которую они призваны отражать. Существуют трудности, связанные с формали зацией бизнес процессов. Здесь факторы, определяющие явления, столь мноrооб разны и мноrочисленны, их взаимосвязи так «переплетены , что почти никоrда не удается создать модель, удовлетворяющую таким же условиям, Простое наложение известных аналитических методов, законов, зависимостей на изучаемую картину реальности не принесет успеха. В сложности и слабой формализации бизнес процессов rлавным образом «ви новат» человеческий фактор, поэтому бывает трудно судить о характере законо мерностей априори (а иноrда и апостериори, после реализации какorо либо MaTe матическоrо метода). С одинаковым успехом описывать эти закономерности MOryT различные модели. Использование разных методов для решения одной и той же задаЧИ нередко приводит исследователя к противоположным выводам. Какой метод выбрать? Получить ответ на подобный вопрос можно, лишь rлубоко проанализи ровав как смысл решаемой задачи, так и свойство используемоrо математическоrо аппарата. Поэтому в последние rоды получил распространение информационный подход к моделированию, ориентированный на использование данных, Ero цель освобож дение аналитика от рутинных операций и возможных сложностей в понимании и применении современных математических методов, При информационном подходе реальный объект рассматривается как «черный ЯЩИк», имеющий ряд входов и выходов, между которыми моделируются некоторые связи. Иными словами, известна только структура модели (например, нейрон ная сеть, линейная реrрессия), а сами параметры модели <<подстраиваются под данные, которые описывают поведение объекта. Для корректировки параметров модели используется обратная связь отклонение результата моделирования от действительности, а процесс настройки модели часто носит итеративный (то есть цикличный) характер (рис, 1.2), Таким образом, при информационном подходе отправной точкой являются данные, характеризующие исследуемый объект, и модель <тодстраивается» под действительность.
24 Часть 1. Теория биэнес аналиэа И сследовател ь 8 I > Данные ... I I L J Корректировка Модель .. I I Результат Факт Рис. 1.2. Построение модели от данных Если при аналитическом подходе мы можем выбрать модель, даже не имея ни каких экспериментальных данных, характеризующих свойства системы, и начать ее использовать, то при информационном подходе без данных невозможно построить модель, так как ее параметры полностью определяются ими. ПРИМЕР В банковском риск менеджменте широко известна модель Дюрана для расчета рей тинrа кредитоспособности заемщика. которая получила распространение в 40 50 e rr. хх в. На основе собственноrо опыта Дюран разработал балльную модель для оценки за емщика по совокупности ero имущественных и социальных параметров (возраст, пол, профессия и т. д.). Преодолев некоторый nopor, заемщик считался кредитоспособным. Эта модель представляет собой аналитическую зависимость у == /(Х). rAe у рейтинr. Х набор признаков заемщика. Если перед современным российским банком встанет задача рассчитать рейтинr заем щика, банк может воспользоваться моделью Дюрана. Однако будет ли адекватной для современной российской действительности модель. разработанная в середине прошлоrо века на Западе? Естественно. не будет. так как она не учитывает закономерности между характеристиками российских заЕ:МЩИКОВ (возраст. образование, доход и т. д.) И дефолт ностью по кредитам. Если же банк возьмет собственные данные по кредитным историям и на их основе построит модель. рассчитывающую рейтинr клиента. то, вполне вероятно. она окажется работоспособной. В первом случае, KorAa мы брали модель Дюрана. мы использовали аналитический подход. Во втором информационный; для построения модели нам понадобились данные Kpe дитные истории заемщиков банка. Модели, полученные с помощью информационноrо подхода, учитывают специфи ку моделируемою объекта, явления, в отличие от аналитическоrо подхода. Для биз нес процессов последнее качество очень важно, поэтому информационный подход леr в основу большинства современных промышленных технолоrий и методов анализа данных: Knowledge Discovery in Databases, Data Mining, машинноrо обучения. Однако концепцИЯ моделей от дaHHЫX требует тщательноrо подхода к Ka честву исходных данных, поскольку ошибочные, аномальные и зашумленные данные MOryT привести к моделям и выводам, не имеющим никакоrо отношения к действительности. Поэтому в информационном моделировании важную роль иrрают консолидация данных, их очистка и обоrащение.
rлава 1. Технолоrии анализа данных 25 Модель, построенная на некотором множестве данных, описывающих реальный объект или систему, может оказаться не работающей на практике, поэтому в ин формационном моделировании используются специальные приемы: разделение данных на обучающее и тестовое множества, оценка обучающей и обобщающей способностей модели, про верка предсказательной силы модели, В дальнейшем, rоворя об анализе данных, мы будем предполаrать использование именно информационноrо подхода, Поскольку данные MOryT быть представлены в различной форме, Kpyr рассмотрения будет оrраничен областью структуриро ванных данных. Инструментальной поддержкой процесса построения моделей на основе информационноrо подхода выступают современные технолоrии анализа данных KDD и Data Mining, а средством построения прикладных решений в области анализа аналитические платформы. 1.2. Принципы анализа данных Процесс анализа в информационном подходе к анализу данных, помимо модели, присутствуют еще три важные составляющие: эксперт, rипотеза и аналитик ОПРЕДЕЛЕНИЕ Эксперт специалист в предметной области, профессионал, который за roAbI обучения и практической деятельности научился эффективно решать задачи, относящиеся к KOH кретной предметной области. Эксперт ключевая фиryра в процессе анализа. По настоящему эффективные аналитические решения можно получить не на основе одних лишь компьютерных проrpамм, а в результате сочетания лучшеrо из Toro, что MOryT человек и компью тер, Эксперт выдвиrает rипотезы (предположения) и для проверки их ДOCТOBep ности либо просматривает некие выборки различными способами, либо строит те или иные модели, ПРИМЕР rипотезой в анализе данных часто выступает предположение о влиянии какоrо-либо фактора или rруппы факторов на результат. К примеру, при построении проrноза про даж допускается предположение, что на величину будущих продаж существенно влияют продажи за предыдущие периоды и остатки на складе. При оценке кредитоспособности потенциальноrо заемщика выдвиrается rипотеза, что на кредитоспособность влияют социально экономические характеристики клиента: возраст, образование, семейное положение и т. п. в крупных проектах по созданию прикладных аналитических решений участву ют, как правило, несколько экспертов, а также аналитик
26 Часть 1. Теория бизнес анализа ОПРЕДЕЛЕНИЕ Аналитик специалист в области анализа и моделирования. Аналитик на достаточном уровне владеет какими либо инструментальными и проrраммными средствами анализа данных, например методами Data Мiпiпg. Кроме Toro, в обязанности аналитика входят функции систематизации данных, опроса мнений экспертов, координации действий всех участников проекта по анализу данных. Аналитик иrрает роль «мостика» между экспертами, то есть является связу ющим звеном между специалистами разных уровней и областей. Он собирает у экспертов различные rипотезы, выдвиrает требования к данным, проверяет rипотезы и вместе с экспертами анализирует полученные результаты, Аналитик должен обладать системными знаниями, так как помимо задаЧ анализа на ero пле чи часто ложатся технические вопросы, связанные с базами данных, интеrрацией с источниками данных и производительностью. Поэтому в дальнейшем rлавным лицом в анализе данных мы будем считать анали ТИка, предполarая, что он тесно сотрудничает с экспертами предметных областей. ПРИМЕР в орrанизации создается законченное аналитическое решение в области отчетности и про- rнозирования продаж. Оно включает в себя консолидацию данных, настройку отчетов, построение моделей проrнозирования и др. В реализации проекта участвуют специалисты из нескольких подразделений предприятия: высшее руководство, зкономисты, лоrистики, проrраммисты, администраторы баз данных. Аналитик обеспечивает связь между всеми участниками проекта и координирует проект в целом. Несмотря на то что существует множество аналитических задач, можно Bыдe лить две основные rруппы методов их решения (рис. 1.3): О извлечение и визуализация данных; О построение и использование моделей. Аналитик, эксперт rипотеэа(предположение) Извлечение и визуализация OLAP, таблицы, диаrраммы, карты... Построение и применение моделей Проrноэирование, иэвлечение правил." Интерпретация реэулыатов Рис. 1.3. Общая схема анализа
rлава 1. Технолоrии анализа данных 27 Извлечение и визуализация данных Чтобы получить новые знания об исследуемом объекте или явлении, не обязатель но строить сложные модели. Часто достаточно посмотреть на данные в нужном виде, чтобы сделать определенные выводы или выдвинуть предположение о xa рактере зависимостей в системе, получить ответ на интересующий вопрос. Это помоrает сделать визуализация. В случае визуализации аналитик некоторым образом формулирует запрос к ин формационной системе, извлекает нужную информацию из различных источников и просматривает полученные результаты. На их основе он делает выводы, которые и являются результатом анализа. Существует множество способов визуализации даннЫХ: О MHoroMepHbIe кубы (кросс таблицы и кросс диаrpаммы); О таблицы; о диаrpаммы, rистоrpаммы; О карты, проекции, срезы и т. п. Проиллюстрируем вышесказанное. На рис. 1.4 приведены два способа визуали зации одних и тех же данных по продажам в аптечной сети: в виде таблицы и в виде rpафика. ДОта 'Oтд 18.06.2007 Апrека 1 = ! О 6,iб6i1 а.1. 1. .0 .2007IАr1Тека 1 18.06.2007: Апrека 1 18,06.2007 .Апrека 2 18.06.2007' Апrека 2 " 19:062007 'Апrека 1" 19.06:2007 - Ar;; 1 - "" , ,-,-- 19,06.2007 Апrека 1 .. 19,06.2007 Апrека 1 ,19,06?OQ7 ;Апrека 1 19,06.2007 Апrека 1 .t cgммa 3' 86.37 . 51],?3 X .",............li6,26 1 4.93 l' 122, 5 1: 68,5 4: 52.4 } .!5(41 l' Зl} 1 8.14 1 -: :. 2,24 1 : 353.46 t!'" е!!!:. и и де ин ц рую cpeд a . Виrаt'w! НЫ и вита ОI]Efl.обt:! ! cpeдCТB L:1мм номод я.! РЫ ; Местные анестетики :.Антисе ики и еЗИНфицир щие средства ; Витамины и витаминоподобные средства 7А':n- сеrпик " дези Ф ц щие 'cp; Ba : J.!! ; _ м п 'I I?P l е!1чеrоннь е средства и препараты желчи ; Местные анестетики ... .. _. .. _. .. ............... . . .. . . ._ О:.И КРОЭ.-!1 менты ." ... . 06.цетонизи юшие с едства и aцarтroreHbI i I ЗОО 000 L : I c:::::::JЗ25 200.14 Аптека 1 I I 250 000 I I C:::::::J 1З1 781.85 Аптека 2 L I I I I c:::::::J125 4В5.9б Аптека З I ' IU 200 000 L ::! : I ::! I I >- 150 000 I I r U I 100 000 50 000 о '-------------- ............, I Аптека 1 Аптека 2 Аптека З Отдел. Наименование Рис. 1.4. Два способа представления данных: табличный и rрафический
28 Часть 1. Теория бизнес анализа в первом случае, rляДЯ на таблицу, нам трудно сделать какие либо выводы относительно динамики продаж. Во втором варианте, представив те же данные в виде сумм продаж в разрезе аптек и построив столбчатую диаrpамму, мы видим, что самые большие продажи приходятся на «Аптеку 1», Несомненными достоинствами визуализации являются относительная про стота создания и введения в эксплуатацию подобных систем и возможность их применения практически в любой сфере деятельности, Кроме Toro, в этом случае по максимуму используются знания эксперта в предметной области и ero способ ность принимать во внимание мноrие трудно формализуемые факторы, ВЛИЯющие на бизнес. Недостатками визуализации являются неспособность людей обнаружить дo статочно сложные и нетривиальные зависимости, а также невозможность отделить знания от эксперта и тиражировать знания, Этапы моделирования Построение моделей универсальный способ изучения окружающеrо мира, позво ляющий обнаруживать зависимости, проrнозировать, разбивать на rpуппы и решать множество друrих важных задач. Но самое rлавное: полученные таким образом знания можно тиражировать. ОПРЕДЕЛЕНИЕ Тиражирование знаний совокупность методолоrических и инструментальных средств создания моделей. которые обеспечивают конечным пользователям возможность исполь- зовать результаты моделирования для принятия решений без необходимости понимания методик, при помощи которых зти результаты получены. Процесс построения моделей состоит из нескольких шаrов (рис, 1,5), Формулирование цели моделирования. При построении модели следует OT талкиваться от задачи, которую можно рассматривать как получение ответа на интересующий заказчика вопрос. Например, в розничной торrовле к таким вопросам относятся следующие, О Какова структура продаж за определенный период? О Какие клиенты приносят наибольшую прибыль? О Какие товары продаются или заказываются вместе? О Как оптимизировать товарные остатки на складах? В этом случае можно rоворить о создании модели проrнозирования продаж, модели выявления ассоциаций и т. д, Данный этап также называют анализом пpo блемной ситуации, Подrотовка и сбор данных. Информационный подход к моделированию oc нован на использовании данных, подrотовить и систематизировать которые OT дельная задача, Принципам подrотовки данных, а также их очистке и обоrащению посвящены отдельные rлавы.
rлава 1. Технолоrии анализа данных 29 Формулирование цели моделирования Подrотовка и сбор данных Поиск модели, объясняющей имеющиеся данные Проверка полученной модели Да практикой Да Качество Нет модели приемлемое? Эксплуатация Добавление/исключение факторов Добавление новых данных Рис. 1.5. Процесс построения модели Поиск модели. После сбора и систематизации данных переходят к поиску Moдe ли, которая объясняла бы имеющиеся данные, позволила бы добиться эмпирически обоснованных ответов на интересующие вопросы. В промышленном анализе дaH ных предпочтение отдается самообучающимся алrоритмам, машинному обучению, методам Data Mining. Если построенная модель показывает приемлемые результаты на практике (Ha пример, в тестовой эксплуатации), ее запускают в промышленную эксплуатацию, Так, при тестовой эксплуатации скоринrовой модели, рассчитывающей кредитный рейтинr клиента и принимающей решение о выдаче кредита, каждое решение может подтверждаться человеком кредитным экспертом, При запуске скоринrа в промышленную эксплуатацию человеческий фактор удаляется теперь решение принимает только компьютер, Если качество модели неудовлетворительное, то процесс построения модели повторяется, как это показано на рис. 1,5. Моделирование позволяет получать новые знания, которые невозможно извлечь каким либо друrим способом. Кроме Toro, полученные результаты представляют собой формализованное описание HeKoero процесса, вследствие чеrо поддаются автоматической обработке, Однако результаты, полученные при использовании моделей, очень чувствительны к качеству данных, к знаниям аналитика и экспертов
30 Часть 1. Теория бизнес-анализа и к формализации caMoro изучаемоrо процесса. К тому же Почти всеrда имеютСЯ случаи, не укладывающиеся ни в какие модели. На практике подходы комбинируются. Например, визуализация данных Ha водит аналитика на некоторые идеи, которые он пробует проверить при помощи различных моделей, а к полученным результатам применяются методы визуали зации. Полнофункциональная система анализа не должна замыкаться на применении только одноrо подхода или одной методики. Механизмы визуализации и построе ния моделей должны дополнять друr друrа. Максимальную отдачу можно полу чить, комбинируя методы и подходы к анализу данных. 1.3. Структурированные данные Данные, описывающие реальные объекты, процессы и явления, MOryT быть пред ставлены в различных формах и иметь разные тип и вид, Формы представления данных ОПРЕДЕЛЕНИЕ Данные сведения. которые характеризуют систему. явление. процесс или объект. представленные в определенной форме и предназначенные для дальнейшеrо использо- вания. По степени структурированности выделяют следующие формы представления данных: О неструктурированные; О структурированные; О слабоструктурированные, к нестру'/(турировттым относятся данные, произвольные по форме, включаю щие тексты и rpафику, мультимедиа (видео, речь, аудио), Эта форма представления данных широко используется, например, в Интернете, а сами данные представля ются пользователю в виде отклика поисковыми системами. Стру'/(турированные данные отражают отдельные факты предметной области. Структурированными называются данные, определенным образом упорядоченные и орrанизованные с целью обеспечения возможности применения к ним некоторых действий (например, визуальноrо или машинноro анализа). Это основная форма представления сведений в базах данных. Орrанизация Toro или иноrо вида хранения данных (структурированных или неструктурированных) связана с обеспечением доступа к ним. Под доступом по нимается возможность выделения элемента данных (или множества элементов) среди друrих элементов по каким либо признакам с целью выполнения некоторых действий над элементом,
rлава 1. Технолоrии анализа данных 31 ОДНОЙ из самых распространенных моделей хранения структурированных дaH ных является таблица. В ней все данные упорядочиваются в двумерную структуру, состоящую из столбцов и строк (рис. 1.6). Столбцы (поля, колонки, переменные, атрибуты, признаки) "' 111 111 111 111 Строки (записи, прецеденты, примеры) ( 0111 DIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID DIIIDIIIDIIIDIIID 111 111 111 DIIIDIIIDIIIDIIID Рис. 1.6. Структурированный набор данных в ячейках такой таблицы содержатся элементы данных: символы, числа, лоrи ческие значения. Неструктурированные данные неприrодны для обработки напрямую Meтoдa ми анализа данных, поэтому такие данные подверrаются специальным приемам структуризации, причем сам характер данных в процессе структуризации может существенно измениться. Например, в анализе текстов (Text Mining) при структурировании из исходноrо текста может быть сформирована таблица с частотами встречаемости слов, и уже такой набор данных будет обрабатываться методами, приrодными для структури рованных данных. слабоструктурuроваllllыe данные это данные, для которых определены He которые правила и форматы, но в самом общем виде. Например, строка с адресом, строка в прайс листе, фио и т. п. В отличие от неструктурированных, такие дaH ные с меньшими усилиями преобразуются к структурированной форме, однако без процедуры преобразования они тоже неприrодны для анализа. На рис. 1.7 приведен пример стандартизации строки с адресом.
32 Часть 1. Теория бизнес анализа I З90045 r. Рязань, ул. Ленина, д. 45 корп. 11 Попе Значение Индекс З90045 rород Ряэань > Улица Ленина ДОМ 45 Корпус Рис. 1.7. Стандартиэация слабоструктурированных данных Подавляющее большинство методов анализа данных работает только с xopo шо структурированными данными, представленными в табличном виде, поэтому дальнейшее изложение во всей книrе ведется применительно к структурированным данным. Типы данных Все структурированные данные делятся на пять типов: О uелый (количество товара, код товара и т. п.); О вещественный (цена, скидка и т. п.); Остроковый (фамилия, наименование, адрес, пол, образование и т. п.); О лоrический; О дата/время. Среди строковых данных можно выделить два подтипа: О упорядоченные ( ординальные); О катеrориальные. В обоих случаях переменная относится к одному из значений дискретноrо Ha бора классов С.... Ck и описывает некоторые качественные свойства объекта. Но если в случае ординальных данных эти классы можно упорядочить, то в случае KaTero риальных данных нельзя. При сравнении катеrориальных данных применимы только две операции: «paвHO (==) и «не paвHO (",). В табл. 1.1 только одно поле Образование является упорядоченным, а все остальные катеrориальными. Таблица 1.1. Множество данных одной системы КОД эаявки Фамилия Образование Профессия ropoA Z Ol Иванов Высшее Инженер Москва Z 02 Кузнецова Среднее Бухrалтер Коломна Значения в столбце Образование можно упорядочить по убыванию: Bы шее> Среднее> Началъное > ... . Со значениями полей Код заявки, Фамилия, Профессия, Тород проделывать упорядочение бессмысленно, применимы лишь операции «paвHO и «не paBHO .
rлава 1. Технолоrии анализа данных 33 Виды данных ПО виду данные делятся на непрерывные и дискретные. опРЕДЕЛЕНИЕ Непрерывные данные данные, значения которых MOryт принимать какое уrодно значение в некотором интервале. Над непрерывными данными можно про изводить арифметические операции сложения, вычитания, умножения, деления, и они имеют смысл. Примерами непрерывных данных являются возраст, любые стоимостные показатели, количественные оценки (количество товара, объем продаж, вес OT rрузки), ОПРЕДЕЛЕНИЕ Дискретные данные значения признака. общее число которых конечно либо бесконечно, но может быть подсчитано при помощи натуральных чисел от oAHoro до бесконечности. С дискретными данными не MOryт быть произведены никакие арифметические действия, либо они не имеют смысла. Дискретными данными являются все данные CтpoKoBoro и лоrическоrо типа. Дискретными MOryT быть и числовые данные. Например, поле Код товара, прини мающее значения целоrо типа, дискретно, так как операции сложения, вычитания, умножения над Кодом товара не имеют смысла, Соответствие возможных видов данных типам данных приведено в табл, 1.2, Таблица 1.2. Соответствие между типами и видами данных Тип данных Вид данных Непрерывный Дискретный Целый + + Вещественный + + Строковый + Лоrический + Дата/время + + Аналитику важно понимать природу данных для выбора адекватных методов их предобработки, очистки и построения моделей. Представления наборов данных По отношению к задаче анализа наборы данных MorYT быть упорядоченными инеупорядоченными. В уnорядоче1l1ЮМ наборе данных каждому столбцу соответствует один фактор, а в каждую строку заносятся упорядоченные по какому либо признаку события с интервалом периода между строками. Часто таким признаком выступает время. На рис, 1,8 приведены примеры упорядоченных наборов данных временной ряд
34 Часть 1. Теория бизнес анализа (слева, упорядочен по дате) и ряд показаний датчика зонда (справа, упорядочен по rлубине скважины). I .....L Дarа I )(QличеСТ6Q .1, ..:.i 01 01,20Q7 4 .J 01,01.2007: 1 01,01.2007 1 02,012007 6' ::j 02012007' 2 .J 02,01:2007 12 02,01,2007 1 ' j 03.oJ.2007 6 J. 03.01.2007 з' C ммa J ,2 Ч 1 72.48 173.32' 294.84 ' 405.76 : , 'j 303 1.3.t 210.5, 521.i6 156-9 , лфина 1 , 887,9 888.1 888.3 888.5 888.7 8,8.9 889.1 ш "ш Щ3 К. l ' 8.85 '9.627 14.584' " 21.647' .1,7.172' ш II ' 2.886 2.506 DS j 0.218' 0.216 0.217 0.21?, 0:2 1 , i:I.2 5, 0.217 0.2191 Рис. 1.8. Примеры упорядоченных наборов данных в неупорядоченном наборе каждому столбцу соответствует фактор, а в каждую строку заносится пример (ситуация, прецедент), соответственно, упорядоченность строк не требуется. Пример Taкoro набора данных приведен на рис. 1.9. НQМербatfl< <РИлиaдbl rlЭPQД I СсБСТ"6liНЬfe акти6Ь }, 8неШТQрrбанк 'ш.ш.ш-.-.-ш. 32 MQCK"a ш... 23236327 3 rаЗПРQмбанк I 27 MQCK6a 9255041 4 000 "МеJIA наРQI:IНЫЙ ПРQмышленный банк' 4 MQCK6a 26409116 5' МеJIA наРQI:IНЫЙ МQСКQ"СКИЙ Банк I 1 MQCК6a 1176462 '6 ОАОШ"АЛЬ<РА:БАНК" 17 M K6a 12446938' ,ш ' ' ;:; Ы" Ш" : :' ::::er еРб рr ;:: '9" АКБ "РОСБАНК" [ОАО) 1 3 MOCK a 469144 9 , ' i'О;А КБ"ДИБ;' шшш, О Москва 2616993 Рис. 1.9. Пример неупорядоченноrо набора данных Особо выделяют mра1lЗа'Кцuонные данные. Под mра1lЗа'Кцuей подразумеваются несколько объектов или действий, являющихся лоrически связанной единицей (рис. 1.10). Очень часто данный механизм используется для анализа покупок (чеков) в супермаркетах. Но в общем случае речь может идти о любых связанных объектах или действиях. Одна транзакция А транэа Товар 10200 Йоryрт "Чудо» 0,4 10200 Батон "Ряэанский» 10201 Вода "Боржоми.. 0,5 10201 Сахарный песок Рис. 1.10. Транзакционные данные 1.4. Подrотовка данных к анализу Информационный подход к анализу базируется на различных алrоритмах извлече ш ния закономерностей из исходных данных, результатом работы которых являются
rлава 1. Технолоrии анализа данных 35 модели, Таких алrоритмов довольно MHoro, но они не способны rарантировать качественное решение. Никакой, даже весьма изощренный, метод сам по себе не дасТ хорошеro результата, так как критически важным является качество исходных данНЫХ, Чаще Bcero именно оно становится причиной неудачи, Несмотря на то что существуют специальные методы очистки данных, понимание и соблюдение принципов сбора и подrотовки данных значительно облеrчит построение моделей и позволит получить хорошие результаты. Особенности данных, накопленных в компаниях Данные, которые накапливают предприятия и орrанизации в базах данных и про чих источниках (так называемые бизнес данные), имеют свои особенности, Pac смотрим их. Бизнес данные редко накапливаются специально для решения задач анализа, Предприятия и орrанизации собирают данные для коммерческих целей: ведения учета, проведения финансовоrо анализа, составления отчетности, принятия реше ний и Т, п, Этим бизнес данные отличаются от экспериментальных данных, которые собираются для исследовательских целей. Основными потребителями бизнес дан ныХ обычно являются лица, принимающие решения в компаниях. Бизнес данные, как правило, содержат ошибки, аномалии, противоречия и пpo пуски. Это следствие Toro, что компании не собирают данные с целью анализа, В них появляются ошибки различной при роды, что снижает качество данных. С точки зрения анализа объемы хранимых данных очень велики. Современные базы данных содержат меrабайты и rиrабайты информации. Для ресурсоемких алrоритмов анализа данных таблицу объемом 50 тыс. записей можно считать боль шой, поэтому при построении моделей важно применять процедуры сэмплинrа, сокращения записей и отбора информативных признаков либо использовать спе циальные масштабируемые алrоритмы, способные работать на больших наборах данных. Отмеченные особенности бизнес данных влияют как на сам процесс анализа, так и на подrотовку и систематизацию данных. Формализация данных При сборе данных нужно придерживаться следующих принципов, 1. Абстраzироваться от существующих информационных систем и имеющихся в наличии данных, Большие объемы накопленных данных совершенно не rOBo рят о том, что их достаточно для анализа в конкретной компании, Необходимо отталкиваться от задачи и подбирать данные для ее решения, а не брать име ющуюся информацию. К примеру, при построении моделей проrноза продаж опрос экспертов показал, что на спрос очень влияет цветовая характеристика товара, Анализ имеющихся данных продемонстрировал, что информация о ЦBe те товарной позиции отсутствует в учетной системе. Значит, нужно каким то
,sb Часть 1. Теория бизнес анализа образом добавить эти данные, иначе не стоит рассчитывать на хороший резуль тат использования моделей, 2. Описать все факторы, потенциально влияющие на анализируемый nроцесс/ объект. Основным инструментом здесь становится опрос экспертов и людей, непосредственно владеющих проблемной ситуацией, Необходимо максимально использовать знания экспертов о предметной области и, полаrаясь на здравый смысл, постараться собрать и систематизировать максимум возможных пред положений и rипотез, 3. Эксnертно оценить значимость каждою фактора, Эта оценка не является окончательной, она будет отправной точкой. В процессе анализа вполне может выясниться, что фактор, который эксперты посчитали очень важным, таковым не является, и наоборот, незначимый, с их точки зрения, фактор может оказы вать значительное влияние на результат, 4. Определить способ представления информации число, дата, да/нет, катеюрия (то есть тип данных). Определить способ представления, то есть формализовать некоторые данные, просто. Например, объем продаж в рублях это определен ное число. Но довольно часто бывает непонятно, как представить фактор. Чаще Bcero такие проблемы возникают с качественными характеристиками, Напри мер, на объемы продаж влияет качество товара, Качество сложное понятие, но если этот показатель действительно важен, то нужно придумать способ ero формализации. Скажем, качество можно определять по количеству брака на тысячу единиц продукции либо оценивать экспертно, разбив на несколько Ka теrорий отлично/хорошо/удовлетворительно/плохо, 5, Собрать все леlкодостуnные факторы. Они содержатся в первую очередь в источ никах структурированной информации учетных системах, базах данных и т, п. 6. Обязательно собрать наиболее значимые, с точки зрения экспертов, факторы. Вполне возможно, что без них не удастся построить качественную модель. 7. Оценить сложность и стоимость сбора средних и наименее важных по значимо сти факторов, Некоторые данные леrкодоступны, их можно извлечь из суще ствующих информационных систем. Но есть информация, которую непросто собрать, например сведения о конкурентах, поэтому необходимо оценить, во что обойдется сбор данных, Сбор данных не является самоцелью, Если информацию получить леrко, то, естественно, нужно ее собрать. Если сложно, то необходимо соизмерить затраты на ее сбор и систематизацию с ожидаемыми результатами. Рассмотрим эти принципы на примере формализации данных при решении задачи проrнозирования спроса. На этапе описания факторов, влияющих на про дажи, и выдвижения rипотез полезно составить таблицу факторов и их значимости (табл. 1,3). При создании подобной таблицы следуют принципам 1 3 формализации данных. Далее необходимо определить способ представления данных и оценить стоимость их сбора, К таблице добавятся еще два столбца (табл. 1.4). И уже после этоrо можно принимать решение о том, какие факторы включать в анализ, а Ka
rлава 1. Технолоrии анализа данных 37 кими пренебречь, Очевидно, что все леrкодоступные показатели с высокой экс перТНОЙ значимостью требуется включать в рассмотрение, А фактором «Качество продукции!>, например, можно пренебречь: по мнению экспертов, он малозначим, а стоимость ero сбора велика. Таблица 1.3. Факторы, влияющие на продажи, и их значимость Фактор Экспертная оценка значимости (1 100) Сезон 100 День недели 80 объем продаж за предыдущие недели 100 объем продаж за аналоrичный период прошлоrо roда 95 Рекламная кампания 60 Маркетинroвые мероприятия 40 Качество продукции 30 Рейтинr бренда 25 Отклонение цены от среднерыночной 60 Наличие данноrо товара у конкурентов 15 Таблица 1.4. Факторы, влияющие на продажи, с оценками экспертов Фактор Экспертная оценка Способ Экспертная значимости (1 100) представления оценка CI10ЖНОСТИ получения Сезон 100 Число Низкая День недели 80 Дата Низкая Объем продаж 100 Число Низкая за предыдущие недели Объем продаж 95 Число Низкая за аналоrичный пе риод прошлоrо [ода Рекламная кампания 60 Число Средняя Маркетинrовый 40 Число Средняя бюджет Качество продукции 30 Строка(плохое/хо Высокая рошее/отличное) Рейтинr бренда 25 Строка (известный/ Средняя малоизвестный и т. д,) Отклонение цены 60 Число Средняя от среднерыночной Наличие данноrо 15 Лоrическое (да/нет) Средняя товара у конкурентов
38 Часть 1. Теория бизнес анализа Методы сбора данных Есть несколько методов сбора необходимых для анализа данных. 1. Получение из учетных систем, Обычно в учетных системах есть различные M ханизмы построения отчетов и экспорта данных, поэтому извлечение Нужной информации из них чаще Bcero относительно несложная операция. 2. Получение дaHHых из косвенных источников информации. О мноrих показателях можно судить по косвенным признакам, и этим нужно воспользоваться. Напри мер, можно оценить реальное финансовое положение жителей определенноrо реrиона следующим образом, В большинстве случаев имеется несколько TOBa ров, предназначенных для выполнения одной и той же функции, но отличаю щихся по цене: товары для бедных, средних и боrатых, Если получить отчет о продажах товара в интересующем реrионе и проанализировать пропорции, в которых продаются товары для бедных, средних и боrатых, то можно предпо ложить, что чем больше доля дороrих изделий из одной товарной rруппы, тем более состоятельны в среднем жители данноrо реrиона, 3, Использование открытых источников, Большое количество данных присут ствует в таких открытых источниках, как статистические сборники, отчеты корпораций, опубликованные результаты маркетинrовых исследований и пр. 4, При обретение аналитических отчетов у специализированных компаний, На рынке работает множество компаний, которые профессионально зани маются сбором данных и представлением результатов клиентам для после дующеrо анализа, Собираемая информация обычно представляется в виде различных таблиц и сводок, которые с успехом можно применять при aHa лизе. Стоимость получения подобной информации чаще Bcero относительно невысока. 5, Проведение собственных маркетИНlOвых исследований и аналоlUЧНЫХ Mepo прuятий по сбору данных. Этот вариант сбора данных может быть достаточно дороrостоящим, но в любом случае он существует, 6, Ввод данных вручную. Данные вводятся по различноrо рода экспертным оценкам сотрудниками орrанизации. Такой метод является наиболее TPYДO емким. Методы сбора информации существенно отличаются по стоимости и необходи мому времени, поэтому следует соизмерять затраты с результатами. Возможно, от сбора некоторых данных придется отказаться, но факторы, которые эксперты oцe нили как наиболее значимые, нужно собрать обязательно, несмотря на стоимость этих работ, либо вообще не проводить анализ, Данные должны быть собраны в единую таблицу в формате Excel, DBase, в TeK стовые файлы с разделителями или в набор таблиц в любой реляционной СУБД (системе управления базами данных), то есть должны быть представлены в CТPYK турированном виде, Кроме Toro, необходимо унифицировать представление данных: один и тот же объект должен везде описываться одинаково.
rлава 1. Технолоrии анализа данных 39 Информативность данных Одной из распространенных ошибок при сборе данных из структурированных источников является стремление взять для анализа как можно больше признаков, описывающих объекты. Между тем предварительная оценка данных, которая про водится визуально при помощи таблиц и базовой статистической информации по набору данных, существенно помоrает в определении информативности признаков с точки зрения анализа. Среди неинформативных признаков выделяется четыре типа: О признаки, содержащие только одно значение (рис. 1.11, а); О признаки, содержащие в основном одно значение (рис. 1.11, б); о признаки с уникальнь/М,и значениями (рис. 1.11, в); О признаки, между которъ/М,и имеет место сильная корреляция, в этом случае для анализа можно взять один столбец (рис. 1.11, z). ПрИЩ4ак. 1 1 1 1 1 1 1 1 1 1 1 1 а HaK 1 1 О 1 1 1 1 1 1 б 1 1 1 naC Ta 09З6 866096 8З55 51294З 8017 098471 2762 9455З5 0459 997701 6291 817248 0094 88З508 6З85 082612 9290 7З2ЗОО 7022 7З6158 З127 709ЗЗ2 4179 171975 п Gеn<kп """' , Жен О Жен О Жен О Муж 1 Муж 1 Жен О Жен О Муж 1 Муж 1 Жен О Жен О Муж 1 Рис. 1.11. Примеры неинформативных приэнаков r в Признаки, содержащие в основном одно значение, не всеrда MOryT быть неин формативными, MHoroe зависит от целей анализа. Например, при решении задачи анализа отклонений такие признаки MorYT существенно повлиять на построение моделей. Требования к данным Аналитические инструменты пытаются построить модели на основе предложенных данных, поэтому чем ближе данные к действительности, тем лучше. Необходимо понимать: модель не может «знать»> о том, что находится за пределами собранных для анализа данных. Например, если при создании системы диаrностики больных
40 Часть 1. Теория бизнес анализа использовать только сведения о больных людях, то модель не будет знать о суще ствовании в природе здоровых людей. Существуют требования к минимальным объемам данных для возможноСти построения моделей на их основе. В зависимости от представления данных и pe шаемой задачи эти требования различны. Для временных рядов, которые относятся к упорядоченным данным, требова ния следующие, Если для моделируемоrо бизнес процесса (например, продажи) характерна сезонность/цикличность, то необходимо иметь данные хотя бы за один полный сезон/цикл с возможностью варьирования интервалов (понедельное, помесячное и т, д,). Максимальный rоризонт проrнозирования зависит от объема данных: данные за 1,5 тода проrноз возможен максимум на 1 месяц; данные за 2 3 тода на 2 месяца. Для неуnорядоченных данных требования следующие. о Количество примеров (прецедентов) должно быть значительно больше коли. чества факторов. О Желательно, чтобы данные покрывали как можно больше ситуаций реальноrо процесса. О Пропорции различных примеров (прецедентов) должны примерно COOTBeT ствовать реальному процессу. Транзакцuонные данные. Анализ транзакций целесообразно производить на большом объеме данных, иначе MOryT быть выявлены статистически необоснован ные правила, Алrоритмы поиска ассоциативных связей способны быстро перера батывать orpoMHbIe массивы данных. Примерное соотношение между количеством объектов и объемом данных следующее: О 300 500 объектов не менее 10 тыс. транзакций; О 500 1000 объектов более 300 тыс. транзакций. 1.5. Технолоrии КОО и Data Mining Информационный подход к анализу получил распространение в таких методиках извлечения знаний, как KDD (Knowledge Discovery in Databases) и Data Mining. Сеrодня на базе этих методик создается большинство прикладных аналитических решений в бизнесе и мноrих друrих областях. Методика извлечения знаний Несмотря на разнообразие бизнес задач, почти все они MOryT решаться по единой методике. Эта методика, зародившаяся в 1989 т., получила название Knowledge Discovery in Databases извлечение знаний из баз данных. Она описывает не KOH кретный алrоритм или математический аппарат, а последовательность действий, которую необходимо выполнить для обнаружения полезноrо знания. Методика не зависит от предметной области; это набор атомарных операций, комбинируя
rлава 1. Технолоrии анализа данных 41 которые можно получить нужное решение. KDD включает в себя этапы подrо товки данных, выбора информативных признаков, очистки, построения моделей, постобработки и интерпретации полученных результатов. Ядром этоrо процесса явЛЯются методы Data Mining, позволяющие обнаруживать закономерности и зна иия (рис. 1.12). опРЕДЕЛЕНИЕ Knowledge Discovery in Databases процесс получения из данных знаний в виде зависимо стей. правил, моделей. обычно состоящий из таких зтапов, как выборка данных. их очистка и трансформация, моделирование и интерпретация полученных результатов. Рассмотрим последовательность шаrов, выполняемых в процессе KDD. Рис. 1.12. Этапы KDD Выборка данных. Первым шаrом в анализе является получение исходной BЫ борки. На основе отобранных данных строятся модели. Здесь требуется активное участие экспертов для вьщвижения rипотез и отбора факторов, влияющих на aHa лизируемый процесс. Желательно, чтобы данные были уже собраны и консолиди рованы. Крайне необходимы удобные механизмы подrотовки выборки: запросы, фильтрация данных и сэмплинr. Чаще Bcero в качестве источника рекомендуется использовать специализированное хранилище данных, консолидирующее всю необходимую для анализа информацию. Очистка данных. Реальные данные для анализа редко бывают хорошеrо каче ства. Необходимость в предварительной обработке при анализе данных возникает независимо от Toro, какие технолоrии и алrоритмы используются. Более Toro, эта задача может представлять самостоятельную ценность в областях, не имеющих непосредственноrо отношения к анализу данных. К задачам очистки данных OT носятся: заполнение пропусков, подавление аномальных значений, сrлаживание. исключение дубликатов и противоречий и пр.
42 Часть 1. Теория бизнес анализа Трансформация данных. Этот шаr необходим для тех методов, при использо вании которых исходные данные должны быть представлены в KaKOM TO опреде ленном виде. Дело в том, что различные алrоритмы анализа требуют специальным образом подrотовленных данных. Например, для проrнозирования необходимо преобразовать временной ряд при помощи скользящеrо окна или вычислить arpe rированные показатели, К задачам трансформации данных относятся: СКользящее окно, приведение типов, выделение временных интервалов, квантование, с6рти ровка, rpуппировка и пр. Data Mining. На этом этапе строятся модели. Интерпретация. В случае, коrда извлеченные зависимости и шаблоны He прозрачны для пользователя, должны существовать методы постобработки, позволяяющие привести их к интерпретируемому виду. Для оценки качества полученной модели нужно использовать как формальные методы, так и знания аналитика. Именно аналитик может сказать, насколько применима полученная модель к реальным данным. Построенные модели являются, по сути, форма лизованными знаниями эксперта, а следовательно, их можно тиражировать, Найденные знания должны быть при мени мы и к новым данным снекоторой степенью достоверности. ПРИМЕР Имеется сеть маrазинов розничной торrовли. Пусть требуется получить проrноз объемов продаж на следующий месяц. Первым шаroм будет сбор истории продаж в каждом Mara- зине и объединение ее в единый набор данных. Следующим шаrом станет предобработка собранных данных: их rруппировка по месяцам, сrлаживание кривой продаж, исключение из рассмотрения факторов, слабо влияющих на объемы продаж. Далее следует построить модель зависимости объемов продаж от выбранных факторов, после чеrо можно получить проrноз, подав на вход модели историю продаж. Зная проrнозное значение, ero можно использовать, например, в приложениях для оптимизации товарных запасов. Data Mining Термин Data Mining дословно переводится как добыча данных» или раскопка даННЫХj> и имеет в анrлоязычной среде несколько определений. ОПРЕДЕЛЕНИЕ Data Мiпiпg обнаружение в сырых данных ранее неизвестных, нетривиальных, практи- чески полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. Зависимости и шаблоны, найденные в процессе применения методов Data Mining, должны быть нетривиальными и ранее неизвестными, например, сведения о средних продажах таковыми не являются, Знания должны описывать новые связи между свойствами, предсказывать значения одних признаков на основе друrих, Нередко KDD отождествляют с Data Mining, Однако правильнее считать Data Mining шаrом процесса KDD.
rлава 1. Технолоrии анализа данных 43 Data Mining это не один метод, а совокупность большоrо числа различных етОДОВ обнаружения знаний. Существует несколько условных классификаций :адач Data Mining. Мы будем rоворить о четырех базовых классах задач. Классифи'/{ация это установление зависимости дис'/{ретной выходной nepeMeH 1. 1/ОЙ ОТ входных переменных. 2. Реzрессия это установление зависимости непрерывной выходной переменной от входных переменных. 3. Кластеризация это rpуппировка объектов (наблюдений, событий) на основе данных, описывающих свойства объектов. Объекты внутри кластера должны быть похожими друr на друrа и отличаться от друrих, которые вошли в друrие кластеры. 4. Ассоциация выявление закономерностей между tвязанными событиями, При мером такой закономерности служит правило, указывающее, что из события Х следует событие У. Такие правила называются ассоциативными. Впервые эта задача была предложена для нахождения типичных шаблонов покупок, co вершаемых в супермаркетах, поэтому иноrда ее называют анализом рыночной корзины (rnarket basket analysis). Если же нас интересует последовательность про исходящих событий, то можно rоворить о nоследователъных шаблонах установлении закономерностей между связанными во времени событиями. Примером такой закономерности служит правило, указывающее, что из собы тия Х спустя время t последует событие У. Кроме перечисленных задач, часто выделяют анализ отклонений (deviation detection), анализ связей (link alalysis), отбор значимых nрuзна'/{ов (feature selection), хотя эти задачи rpаничат с очисткой и визуализацией данных. Задача классификации отличается от задачи реrpессии тем, что в классифи кации на выходе присутствует переменная дискретноrо вида, называемая меткой класса. Решение задачи классификации сводится к определению класса объекта по ero признакам, при этом множество классов, к которым может быть отнесен объект, известно заранее. В задаче реrpессии выходная переменная является непре рывной множеством действительных чисел, например сумма продаж (рис. 1.13). К задаче реrрессии сводится, в частности, проrнозирование BpeMeHHoro ряда на Основе исторических данных. Вход 1 " эаемщИ Алrоритм ,. классификации , Класс Плохой К» Вход 1 продаж Алrоритм , реrрессии Сумма Вход N Вход N Рис. 1.13. Иллюстрация эадачи классификации (слева) и эадачи реrpессии (справа) Кластеризация отличается от классификации тем, что выходная переменная не требуется, а число кластеров, в которые необходимо сrpуппировать все множество
44 Часть 1. Теория бизнес анализа данных, может быть неизвестным. Выходом кластеризации является не rотовый ответ (например, <<плохо /«удовлетворительно /«хорошо ), а rруппы ПОХОЖих объектов кластеры. Кластеризация указывает только на схожесть объектов, и не более Toro. Для объяснения образовавшихся кластеров необходима их дo полнительная интерпретация (рис. 1.14). в о 1 хд Номер r класте АпJ"QРИТМ r кластеризации r r хо N ра t . в д Рис. 1.14. Иллюстраuия эадачи кластериэации Перечислим наиболее известные способы применения этих задач в экономике. Классифи'/{ация используется, если заранее известны классы, например при отнесении HOBoro товара к той или иной товарной rруппе, отнесении клиента к какой либо катеrории (при кредитовании к однсй из rрупп риска). Реzрессия используется для установления зависимостей между факторами. Ha пример, в задаче проrнозирования зависимая величина объемы продаж, а фак торами, влияющими на нее, MorYT быть предыдущие объемы продаж, изменение курсов валют, активность конкурентов и т. д. Или, например, при кредитовании физических лиц вероятность возврата кредита зависит от личных характеристик человека, сферы ero деятельности, наличия имущества. Кластеризация может использоваться для сеrментации и построения профилей клиентов. При достаточно большом количестве клиентов становится трудно под ходить к каждому индивидуально, поэтому их удобно объединять в rpуппы cer менты с однородными признаками. Выделять cerMeHTbI можно по нескольким rруппам признаков, например по сфере деятельности или rеоrpафическому распо ложению. После кластеризации можно узнать, какие cerMeHTbI наиболее активны, какие приносят наибольшую прибыль, выделить характерные для них признаки. Эффективность работы с клиентами повышается блаrодаря учету их персональных предпочтений. Ассоциативllыe правила помоrают выявлять совместно приобретаемые TO вары. Это может быть полезно для более удобноrо размещения товара на при лавках, стимулирования продаж. Тоrда человек, купивший пачку спаrетти, не забудет купить к ней бутылочку соуса. последователыllеe шаБлоllы MOryT исполь зоваться при планировании продаж или предоставления услуr. Они похожи на ассоциативные правила, но в анализе добавляется временной показатель, то есть важна последовательность совершения операций. Например, если заемщик взял потребительский кредит, то с вероятностью 60 % через полrода он оформит кредитную карту. Для решения вышеперечисленных задач используются различные методы и алrоритмы Data Mining. Ввиду Toro что Data Mining развивается на стыке таких дисциплин, как математика, статистика, теория информации, машинное обучение,
rлава 1. Технолоrии анализа данных 45 ТеОРИЯ баз данных, проrpаммирование, параллельные вычисления, вполне законо мерно, что большинство алrоритмов и методов Data Mining были разработаны на основе подходов, при меняемых в этих дисциплинах (рис. 1.15). Теория PM. / ....., ОЗtа Mining " ;;. Рис. 1.15. Мультидисциплинарный характер Data Mining в общем случае непринципиально, каким именно алrоритмом будет решаться задача, rлавное иметь метод решения для каждоro класса задач. На сеrодняшний день наибольшее распространение в Data Mining получили методы машинноro обучения: деревья решений, нейронные сети, ассоциативные правила и т. д. ОПРЕДЕЛЕНИЕ Машинное обучение (machine lеаrniпg) обширный подраздел искусственноrо интеллекта. изучающий методы построения алrоритмов, способных обучаться на данных. Общая постановка задачи обучения следующая. Имеется множество объектов (ситуаций) и множество возможных ответов (откликов, реакций). Между OTBeTa ми и объектами существует некоторая зависимость, но она неизвестна. Известна только конечная совокупность прецеде1lтов пар вида «объект OTBeT , Ha зываемая обучающей выборкой. На основе этих данных требуется обнаружить зависимость, то есть построить модель, способную для любоrо объекта выдать достаточно точный ответ. Чтобы измерить точность ответов, вводится критерий качества. Решение подавляющеrо большинства бизнес задач сводится к процессу КОО. Ранее были описаны базовые блоки, из которых собирается практически любое
4ti Часть 1. Теория бизнес анализа бизнес решение. Рисунок 1.16 иллюстрирует некоторые популярные бизнес задачи, которые решаются алrоритмами Data Mining. Бизнес решения I I I I I I I , Аналиэ Разделительная Нейронные Деревья Линейная : последова кластериэация сети решений и лоrистическая : тельностей реrрессия : Алrори ы : Ассоциативные правила Рис. 1.16. От бизнес решений к алrоритмам Data Mining Отметим, что Data Mining не оrpаничивается алrоритмами решения упомяну тых классов задач. Существует несколько современных подходов, которые встраи ваются внутрь алrоритмов машинноrо обучения, придавая им новые свойства. Так, zеllетuческuе алюрuтмы призваны эффективно решать задачи оптимизации, поэтому их можно встретить в процедурах обучения нейронных сетей, карт Koxo нена, лоrистической реrpессии, при отборе значимых признаков. Математический аппарат llечеткойлоlUКU (fuzzy logic) также успешно включается в состав практиче ски всех алrоритмов Data Mining; так появились нечеткие нейронные сети, нечет кие деревья решений, нечеткие ассоциативные правила. Объединение технолоrии хранилищ данных и нечетких запросов позволяет аналитикам получать llечеткuе срезы. И подобных примеров множество. Причины распространения КОО и Data Mining в KDD и Data Mining нет ничеrо принципиаJIЬНО HOBoro. Специалисты в различ ных областях человеческоrо знания решали подобные задачи на протяжении He СКОльких десятилетий. Однако в последние rоды интеллектуальная составляющая бизнеса стала возрастать и для распространения технолоrий KDD и Data Mining были созданы все необходимые и достаточные условия.
rлава 1. Технолоrии анализа данных 47 1. Развитие технолоrий автоматизированной обработки информации создало основу для учета сколь уrодно большоrо количества факторов и достаточноrо объема данных. 2. возникла острая нехватка высококвалифицированных специалистов в области статистики и анализа данных, Поэтому потребовались технолоrии обработки и анализа, доступные для специалистов любоrо профиля за счет применения методов визуализации и самообучающихся алrоритмов, 3, Возникла объективная потребность в тиражировании знаний, Полученные в процессе KDD и Data Mining результаты являются формализованным описа нием HeKoero процесс а, а следовательно, поддаются автоматической обработке и повторному использованию на новых данных, 4. На рынке появились проrpаммные продукты, поддерживающие технолоши KDD и Data Mining, аналитические платформы. С их помощью можно создавать полноценные аналитические решения и быстро получать первые результаты. 1.6. Аналитические платформы Даже самые мощные технолоши извлечения закономерностей и машинноrо обуче ния, такие как KDD и Data Mining, не представляют особой ценности без инстру мента.'lЬНОЙ поддержки в виде соответствующеrо прOlРа.м.мноlO обеспечения. Рынок проrpаммных средств продолжает формироваться по сей день, однако в этой области уже можно выделить некоторые стандарты де факто, Проrраммное обеспечение в области анализа данных Рынок проrpаммноrо обеспечения KDD и Data Mining делится на несколько cer ментов (рис, 1,17), РЫНОК nporpaMMHoro обеспечения KDD и Data Mining Статистические пакеты с воэможностями Data Мiпiпg Аналитические платформы Настольные пакеты Data Мiпiпg СУБД с набором алrоритмов Data Мiпiпg Рис. 1.17. Классификация ПО в области Data Mining и KDD Статистические пакеты с возможносm.я.м,и Data Miпiпg и настольные пакеты Data Miпiпg ориентированы в основном на профессиональных пользователей. Их отличительные особенности:
48 Часть 1. Теория бизнес анализа о слабая интеrрация с промышленными источниками данных; О бедные средства очистки, предобработки и трансформации данных; О отсутствие rибких возможностей консолидации информации, например, в СПе циализированном хранилище данных; О конвейерная (поточная) обработка новых данных затруднительна или реaJlИ зуется встроенными языками проrpаммирования и требует высокой КВaJIИфИ кации; О из за использования пакетов на ЛОКaJIЬНЫХ рабочих станциях обработка боль ших объемов данных затруднена. Плюсом статистических пакетов является их широкая распространенность. Ha стольные пакеты Data Mining MOryT быть ориентированы на решение всех классов задач Data Mining или какоrо либо одноrо, например кластеризации или класси фикации, Вместе с тем эти пакеты предоставляют боrатые возможности в плане aJIrоритмов, что достаточно для решения исследовательских задач. Существует HeMaJIO свободно распространяемых настольных пакетов Data Mining с открытыми исходными кодами. Однако создание эффективных прикладных решений промышленноrо уровня с помощью таких пакетов затруднено, поэтому в бизнес аНaJIитике, как правило, используются СУБД с элементами Data Mining и аналитические платформы. Практически все крупные производители систем управления базами данных включают в состав своих продуктов средства для аНaJIиза данных и поддержку хранилищ данных, Эти инструменты как бы встраиваются в СУБД. Отличительные особенности СУБД с элементами Data Mining: О высокая производительность; О aJIrоритмы аНaJIиза данных по максимуму используют преимущества СУБД; О жесткая привязка всех технолоrий аНaJIиза к одной СУБД; О сложность в создании прикладных решений, поскольку работа с СУБД ориен тирована на проrpаммистов и администраторов баз данных. Аналитические платформы В отличие от СУБД с набором aJIrоритмов Data Mining, анaJIитические платфор мы изнаЧaJIЬНО ориентированы на аНaJIИЗ данных и предназначены для создания rOToBbIx решений, ОПРЕДЕЛЕНИЕ Аналитическая платформа специализированное проrраммное решение (или набор pe шений), которое содержит в себе все инпрументы для извлечения закономернопей из сы- рых данных: средпва консолидации информации в едином ипочнике (хранилище данных), извлечения, преобразования, трансформации данных, алrоритмы Data Мiпiпg, средпва визуализации И распространения результатов среди пользователей, а также возможнопи конвейерной обработки новых данных.
rлава 1. Технолоrии анализа данных 49 в аналитической платформе, как правило, всеrда присутствуют rибкие и разви тые средства консолидации, включающие боrатые механизмы иmеrpации с промыш ленными источниками данных, инструменты очистки и преобразования структури рованнЫХ данных и их последующее хранение в едином источнике в MHoroMepHoM вИде в хранилище данных. Модели, описывающие выявленные закономерности, правила и проrнозы, также хранятся в специальном источнике данных репози тариИ моделей. На рис. 1.18 изображена типовая схема системы на базе аналитической плат формы. - - - -- r-- --------------- ---------------------- ---------------------------------------, __ ...........-;r. _ в и т р и н ы д а н н ы х П : ; - -------------------------------------------- ----------------------------------------- Иэвлечение, эаrруэка, очистка, преобраэование, обновление -------------------------------------------- ------ -- ---------- -----------------------, J r9lAl J LYLJ Репозитарий моделей Мониторинr [Администрирование) Хранилище данных uuu L L J[ JL Баэы данных Внешние источники I______--------------------------------------------- Рис. 1.18. Аналитическая платформа Вообще rоворя, приведенную на рис. 1.18 систему можно построить с ис пользованием нескольких проrpаммных решений, например разделить функции извлеченияjзаrрузки, ОLАР отчетности, хранилища данных, Data Mining между различным проrраммным обеспечением. Но чтобы эти отдельные компоненты превратились в полноценную аналитическую систему, необходимо про извести ин теrpацию между ними на уровне обмена данными, а еще лучше метаданными.
50 Часть 1. Теория бизнес анализа Языки визуальноrо моделирования Основным препятствием на пути все более широкоrо применения методов и про rpaмMHbIx средств анализа данных является сложность инструментов. Поэтому важно освободить аНЭJIитика от необходимости уrлубленноrо понимания сложных математических алrоритмов. Своеобразным ответом на это требование стало по явление языков ВИЗУЭJIьноrо моделирования. Сеrодня их наличие является CTaH дартом де факто в полноценной аналитической платформе. Язык моделирования позволяет анЭJIИТИКУ в визуальной среде строить последо вательности шarов по обработке данных от получения сырых данных до конечноrо результата. Шаrи представляют собой набор атомарных по отношению к данным операций, каждую из которых можно представить отдельным узлом. При меры таких операций: выборка данных, фильтрация, сортировка, добавление HOBoro столбца, построение модели Data Mining и т. п. Набор узлов образует rpафическую диаrpaмму. Такой способ представления очень близок к рассуждениям и действиям аНЭJIитика, которые он так или иначе проделывает. Существует две формы пред ставления ди arpамм: в виде дерева и в виде zрафа (рис, 1.19). .;i [jХЛ (LOANS) иэsлечение nPOUВCDa (Анкеты) i Ei т <РИflЫР ((KQДДHKeты! < 1 000] , fiiiI !I- Внешнее fIeВOe СО<ШИНение (LOANS5 : Пoraweния) Gii. (jp Н стройка набора данных (ДaearьКpeдиr) e' :e Замена ЭI1a'etIИЙ. ДавarЬКpeдиr Gi-III КaJ1bК!II1ЯТОР: Возраст; СоеокynДо><щ (;;j,(jp Настройка набора ДilННЫJ< .9( МQAель1А. Дереео решений.1, все заемщики 9ё:: МфеflЬ 1В . Дереео peweний.2- все заемщики 13 .fe Замена знaчeниIt. Поп. Авrомо6иl1l>, ДавarЬКpeдиr i е. (jp Hacтpoi1KII Нllбор данных (Поп.. Аln'омо6иflЬ. ДаеarЬКpeдиr) a,(l]- МQAель 1 С - ЛorиcтичecIaЯ реrpecсия. есе заемщики Соprироека' Рeйrинr iJ т <РИI1l>ТР 1ICeмeйнoef10пожение); 'Женar/зsм!fЖем') @ , ...... .. ........... J=:: Дерево решений tY :EI Калы(улятор Настройка пол ! е!. Товары ............ "+,,, W' Диаrpамма T/ Модель 1 Модель 2 Рис. 1.19. Яэыки виэуальноrо моделирования: в виде дерева (вверху), в виде rpафа (внизу) I I I i .. { ; Результат rлава 1. Технолоrии анализа данных 51 обrцие особенности языков моделирования в аналитических платформах следуюrцие. CI БазоВЫМ узлом, с KOToporo начинается диаrрамма, является узел импорта, поскольку в аналитических платформах обычно отсутствуют средства для ручноrо ввода данных; предполаrается, что данные уже имеются в каких либо источниках. CI [рафическое изображение, соответствуюrцее какому либо узлу, несет в себе больШОЙ семантический смысл. Оно помorает аналитику различать узлы по функциям и определять их активность (часто erцe не выполненный узел поме чается значком ceporo цвета, а выполненный цветным). CI Диаrрамма описывает формализованную последовательность действий над данными, и эти действия можно повторить на совершенно друrих данных, предварительно настроив соответствие колонок. Каждая из форм представления имеет как достоинства, так и недостатки. У дe ревьев более жесткая структура по сравнению с rрафами, поэтому, к примеру, отображение двух узлов, сливаюrцихся в один, затруднено. Вместе с тем дерево более компактно (в rpафе обязательно присутствуют стрелки, которые занимают место на диаrpамме), что очень важно при большом количестве узлов, и позволяет выполнять множество интуитивно понятных операций, связанных с манипу Лиро ванием ветвями (копирование, удаление, перенос и т. д.). 1.7. Введение в алrоритмы Data Mining Цель применения моделей в методах Data Mining выявление новых свойств и закономерностей исследуемых объектов и процессов. Поэтому информационный подход здесь очень кстати: модель должна самостоятельно обнаружить в данных присуrцие им закономерности (в большинстве случаев ранее неизвестные и CKpЫ тые) и при обрести свойства, необходимые для отражения этих закономерностей. Комплекс методов, используемых для создания таких моделей, называется машин HЪLМ обучением, а сами модели обучаемъLМИ. В дальнейшем мы будем рассматри вать модели именно в контексте машинноrо обучения. В основе машинноrо обучения лежит обучающая выборка. Она может быть либо получена как совокупность наблюдений за развитием объекта или процесса в про ШЛОМ, либо (что встречается реже) создана экспертом или аналитиком на основе некоторых rипотез, аналоrий, личноrо опыта и даже интуиции. Слово «выборка>.> в данном случае означает, что, возможно, для обучения модели мы будем исполь зовать не все имеюrциеся данные, а некоторое их подмножество, наиболее полно отражаюrцее искомые свойства и закономерности (методы получения выборок будут изучаться в разделе 5.11). Данные из обучаюrцей выборки последовательно предъявляются модели, в pe зультате чеrо модель приобретает необходимые свойства. Этот процесс называет ся обучением. Он является итеративной процедурой, rде на каждом шаrе модели
52 Часть 1. Теория бизнес анализа предъявляется объект данных из обучающей выборки и в соответствии справилом, называемым алlоритмом обучения, про изводится корректировка параметров MO дели до тех пор, пока она не придет в состояние, которое позволит ей выполнять требуемое преобразование. После Toro как модель обучена и протестирована, ее можно применять на Практике. Обучающая выборка в машинном обучении любая модель отображает некоторое множество BXOД ных переменных Х в множество выходных У. Поскольку в большинстве случаев исследуемые объекты и процессы описываются несколькими признаками, то правильнее rоворить не о переменных, а о векторах: входном Х == (х., Х2... Х п ) И BЫ ходном У == (Yt, У2... Ут). Если модель работает корректно и выполняет требуемое преобразование, то на каждое входное воздействие Х модель всеrда будет форми ровать на выходе правильный отклик У, то есть всеrда найдет для любой точки множества Х соответствующую ей точку множества У (рис. 1.20). Рис. 1.20. Отображение, представляемое обучающей выборкой Если модель не обучена и находится в некотором начальном состоянии, то на каждое входное воздействие х' она будет формировать на выходе произвольное , значение У , которое может оказаться сколь уrодно далеким от желаемоrо. Для обучения модели необходимо использовать обучающие пpuмepы, в каждом из которых для заданноrо входноrо воздействия указывается соответствующий ему правильный результат. Именно из таких обучающих примеров и состоит обу чающая выборка. ОПРЕДЕЛЕНИЕ Обучающая выборка набор данных, каждая запись KOToporo представляет собой обуча ющий при мер, содержащий заданное входное воздействие, и соответствующий ему npa вильный выходной результат.
rлава 1. Технолоrии анализа данных 53 ИНЫМИ словами, обучающая выборка представляет собой функцию, заданную табличНО парами входных и выходных векторов [(X j V 1 ), (X 2 V 2 )...(X k V k )]. Напри м:ер, обучающая выборка для обучения умножению и сложению будет содержать четыре переменные две входные и две выходные. Входными переменными будут два числа (apryMeHTa) Х! и Х2, которые требуется умножить или сложить, а BЫXOД НЫМИ У! и У2 результаты сложения и умножения. Фраrмент такой обучающей выборки представлен в табл. 1.5. Таблица 1.5. Фраrмент обучающей выборки ApryMeHT 1 ApryMeHT 2 Сумма Проиэведение 4 6 10 24 5 8 13 40 2 9 11 18 Поля обучающей выборки, содержащие входные переменные, обычно также называются входными, а поля, в которых содержатся выходные переменные, то есть заранее известный результат, целевыми. ЗАМЕЧАНИЕ Каждый, кто учился в школе, имел дело с различными обучающими выборками, простейшие из которых алфавит и таблица умножения. В алфавите входным воздействием является rрафический образ буквы, а выходным соответствующий звук или наоборот. При обу- чении ребенку MHoroKpaTHo предъявляют весь набор букв, а затем требуют повторить са- мостоятельно. На начальной стадии обучения количество ошибок велико, но постепенно уменьшается. В таблице умножения более сложное входное воздействие два сомножи- теля, выходное резулыатумножения. При формировании обучающей выборки неизбежно возникает вопрос о числе примеров в ней. Единоrо и универсальноrо правила здесь не существует. Все за висит от структуры модели, характера обучающих данных и сложности решаемой задачи. Интуитивно понятно, что чем больше данных используется для обучения, тем успешнее оно будет. Однако при этом не стоит забывать, что увеличение числа примеров увеличивает также вычислительные и временные затраты на обучение Модели. Кроме Toro, чаще rоворят не о количестве примеров, а о репрезентативности выборки в целом. Под репрезентативностью понимается, насколько хорошо обу чающая выборка отражает характер преобразования, которое модель должна ВЫПОk нять после обучения. С одной стороны, чем сложнее преобразование, тем большее число примеров потребуется. С друrой если при меры плохо подобраны и слабо отражают зависимость между входными и выходными переменными, то даже очень большое число примеров не rарантирует хороших результатов при обучении. Чтобы обучение было эффективным, примеры обучающей выборки должны отражать как можно больше разнообразных комбинаций «вход BЫXOД , а сама BЫ борка удовлетворять определенным критериям качества данных, то есть в ней не должно бьпь дублирующих, противоречивых и недостоверных примеров, Представьте, например, что таблица умножения, которая печатается на обложке школьных
54 Часть 1. Теория бизнес анализа тетрадей, наполовину состоит из одинаковых примеров, а друrая ее половина COДep жит примеры типа 2 . 2 == 5 или 4 . 3 == 28 и т. д. Получится обучить ребенка умНоже нию по такой таблице? Ответ очевиден. Если обучающая выборка содержит дубли- каты, противоречия и просто неправильные примеры, то независимо от количеСтва используемых примеров ожидать хороших результатов вряд ли стоит. Таким образом, чтобы набор данных можно было использовать для обучения модели, он должен: О отражать правила и закономерности исследуемоrо процесса; О быть репрезентативным, то есть содержать достаточное количество уникаль ных примеров, как можно полнее отражающих закономерности исследуемоrо процесс а; О удовлетворять определенным критериям качества, а именно не содержать дуб ликаты и противоречия, про пуск и и аномальные значения. Как сформировать обучающую выборку? Для этorо можно использовать два метода: О естественный обучающая выборка формируется на основе прошлых наблю- дений за развитием исследуемоrо процесса. В этом случае примеры берутся из базы данных предприятия, бухrалтерских документов, результатов научных экспериментов и т. д. Например, при проrнозировании продаж чаще Bcero дoc таточно иметь сведения о продажах за некоторый промежуток времени; О жспертный обучающая выборка формируется специалистом в данной предмет- ной области. Он определяет факторы, влияющие на решение задачи, и подбирает примеры, отражающие правило, по которому ищется решение, Этот метод наибо- лее эффективен для ориrинальных, не имеющих типовоrо решения задач. Обучение с учителем и без учителя При обучении моделей используются две методики (или, как иноrда rоворят, пара диrмы): с учителем (supervised learning) и без учителя (unsupervised learning). Обучение с учителем предполаrает, что модели предъявляются примеры, COCTO ящие из пар известный вход известный выход». То есть обучение про изводится на основе заранее определенных (целевых) значений, с которыми сравниваются реальные значения, сформированные моделью на выходе. Типичным приложением, в котором необходимо обучение с учителем, является классификация, поскольку классы предполаrаются заданными заранее. В этом случае целевой переменной будет метка класса. При обучении без учителя настройка параметров модели производится ис- ключительно на основе информации о ее текущем состоянии и значений входных переменных в обучающих примерах. При этом целевые значения не используются. Такие модели часто называют самоорrанизующимися, а сам процесс обучения без учителя самоорrанизацией. Одним из rлавных приложений обучения без учи теля является кластеризация, поскольку кластеры из начально не определяются,
r rлава 1. Технолоrии анализа данных 55 а формируются естественным образом на основе Toro, насколько близки значения "знаков объектов. ор,' обучающее и тестовое множества ВаЖнейшИМ свойством любой модели, которое она должна приобрести в процессе обучения, является способностъ к обобщению. Если модель обучилась и приобрела '3fY СJ10собность, то она будет выдавать правильный результат при подаче на ее вход не только данных, на которых она обучалась, но и новых данных, не участвовавших в ороцессе обучения. Чтобы про верить способность модели к обобщению, всю обучающую выборку разделяют на два множества обучающее и тестовое (рис. 1.21). Примеры из обучающеro множества используются непосредственно для обучения модели. При мерЫ из TecToBoro множества для обучения не применяются, а используются для J1роверкИ обобщающей способности модели. Разделение примеров на обучающее и тестовое множества производится обычно в случайном порядке или с примене нием различных методов сэмплинrа. Обучающая выборка Обучающее множество Модель :;; 1-- со 1-- .а с; >- '" Q) а. Тестовое множество Рис. 1.21. Обучающее и тестовое множества Torдa в процессе обучения модели можно выделить две ошибки: ошибку обу чения и ошибку обобщения. Ошибка обучения это ошибка, допущенная моделью на обучающем множе СТве. На каждой итерации обучения для непрерывной выходной переменной она рассчитывается как среднеквадратичная ошибка: Е == t(y(i) y i»)2, ;==1 rде N число обучающих примеров; уи) значение на выходе модели для irro примера; y O целевое (то есть желаемое) значение. Если решается задача классификации, то ошибка вычисляется как kjN, rде k число неправильно классифицированных примеров.
56 Часть 1. Теория бизнес анализа Ошибка обобщения это ошибка, полученная на тестовых примерах, то есть вычисляемая по тем же формулам, но для TecToBoro множества. Если в результате обучения была получена достаточно малая ошибка как на обучающем, так и на тестовом множестве, то можно заключить, что модель приоб рела обобщающую способность. 3АМЕЧАНИЕ Обобщающие свойства модель может приобрести только при обучении на большом числе разнообразных примеров. При этом количество комбинаций «вход выход» В примерах обучающей выборки должно быть избыточным, то есть в несколько раз превышать число пара метров модели, настраиваемых в процессе обучения. В зтом случае параметры Moдe ли будут адаптироваться не к отдельным комбинациям «вход выход», а к закономерно- стям и правилам исследуемоrо процесса. Если число комбинаций в обучающих примерах будет не избыточным, а примерно равным числу параметров модели, то модель просто «запомнит» все обучающие примеры и не приобретет способности к обобщению. Прак тическое применение модели, которая в процессе обучения не приобрела способности к обобщению, не имеет смысла. Хотя существуют модели, целью которых служит именно запоминание эталонных образов для решения задачи их распознавания, например ас- социативная память. Но там возникают друrие проблемы, связанные с максимальным объемом памяти. Размеры обучающеrо и TecToBoro множеств зависят от особенностей конкретной задаЧИ. Обучающее множество обычно больше, чем тестовое, и содержит достаточ- но примеров для качественноrо обучения модели. Размер TecToBoro множества определяется запасом примеров обучающей выборки. Если примеров едва хватает на обучение, то тестовое множество придется взять поменьше 5 % от общеrо объема выборки. Если же обучающая выборка обладает достаточным запасом примеров, тестовое множество можно выбрать и больше 20 30 %. Эффект переобучения Процесс обучения модели можно рассматривать как задачу минимизации функции выходной ошибки E(t), rде t номер итерации обучения. В процессе обучения ошибки обучения и обобщения монотонно уменьшаются. В то же время после определенной итерации может наблюдаться возрастание ошибки обобщения, что rоворит об ухудшении обобщающей способности модели (рис. 1.22). На рис. 1.22 представлен характер поведения ошибки обучения Е т и ошибки обобщения Е т . Как видно, ошибка обучения постоянно снижается; ошибка обоб- щения сначала снижается, а затем возрастает. Этот эффект называется переобучением (overtraining, overfitting) и имеет место в случае, Korдa количество итераций обучения превосходит некоторое оптимальное значение. Обучающие данные, возможно, содержат шумоподобные изменения слу- чайноrо характера. В процессе обучения параметры модели сначала адаптируются к изменениям, отражающим закономерности в данных, Затем по мере более точной настройки модели ее параметры начинают адаптироваться к незначительным флук туациям данных. Эффект переобучения вызван слишком детальной подстройкой rлава 1. Технолоrии анализа данных 57 nарам:етров модели, коrда она начинает воспроизводить незначительные изменения случайноrо характера. Данная ситуация поясняется на рис. 1.23. 0,8 UJ 0,6 са '" 10 S :3 о 0,4 о: са :х: Е т О х JS CD 0,2 о о 200 400 600 800 1000 1200 Число итераций обучения, t Рис. 1.22. Поведение ошибки обучения и ошибки обобщения зо 25 15 20 10 5 о 2 з 4 5 6 7 Рис. 1.23. Иллюстрация эффекта переобучения На рис. 1.23 сплошной линией представлен процесс, исследуемый с помощью модели. Но поскольку отдельные наблюдения процесса подвержены случайным флуктуациям, обучающая выборка содержит данные, отражаемые пунктирной линией. В процессе обучения модель сначала адаптируется к «крупномасштабным» данным, а затем ко все более малым изменениям в них. Очевидно, что снизить вероятность переобучения можно путем предобработки с целью crлаживания данных и очистки их от шума.
58 Часть 1. Теория бизнес анализа Контролировать появление переобучения можно с помощью ошибки обоб щения: как только ошибка на тестовом множестве начинает возрастать, процесс обучения следует принудительно остановить, Вычислительная сложность алrоритмов как критерий их сравнения Для различных классов задач Data Mining, а также для работы с данными различ ной природы и размерности в настоящее время разработано множество алrоритмов, использующих самые разные математические подходы и методы. При выборе алrоритма используют следующие критерии: О производительность (вычислительная сложность) объем вычислений при реализации алrоритма должен обеспечивать ero выполнение за разумное время и по возможности быть нетребовательным к ресурсам компьютера; О устойчивость алrоритм должен обеспечивать достижение достоверных pe зультатов даже при низком качестве исходных данных, наличии в них шумов, аномалий и противоречий; О точность алrоритм должен обеспечивать работу модели на требуемом уровне точности. В большинстве случаев эти требования противоречат друr друrу: чем точнее и быстрее работает алrоритм, тем он сложнее в вычислительном плане и более требователен к ресурсам компьютера. Поэтому каждый раз при выборе алrоритма нужно оценить все ero преимущ ства и недостатки, примерить» их к особенно стям решаемой задачи. Так, если известно, что исходные данные низкоrо качества (то есть содержат аномалии и шумы, являются неполными и противоречивыми и т. д.), то предпочтение следует отдать более устойчивым методам, возможно, в ущерб скорости и точности; если объем исходных данных очень велик, то на первое место выходит производительность и т. д. При выборе наилучшеrо алrоритма для решения конкретной задачи в первую очередь учитывается вычислительная сложность. Это вполне оправданно, по скольку большинство задач в бизнес аналитике имеет дело с большими объемами данных и важно знать, как поведет себя алrоритм в условиях возрастания объемов обрабатываемых данных, какие ресурсы (объем памяти, дисковое пространство и т. д.) при этом потребуются. Как основной критерий эффективности алrоритма используется тpyдoeM кость количество элементарных операций, которые необходимо выполнить для решения задачи с помощью данноrо алrоритма. При анализе трудоемкости рассматривается функция трудоемкости отношение, связывающее объем BXOД ных данных алrоритма с количеством элементарных операций, которое требуется для их обработки. Трудоемкость алrоритма может по разному зависеть от входных данных. Tpy доемкость одних алrоритмов зависит от количества входных данных, друrих от
rлава 1. Технолоrии анализа данных 59 НХ значений. В некоторых случаях на трудоемкость может повлиять и порядок поступления данных. одним из наиболее простых видов анализа, используемых при сравнении TPYДO еМКОСТИ алrоритмов, является асимптотический, Используемая в асимптотическом аНализе оценка ФУНКЦИИ трудоемкости, называемая сложностью aлzориm.мa, позволя ет оценить, насколько быстро растет трудоемкость алrоритма с увеличением объема входных данных. Обычно эта оценка представляется в виде O(j(N)) , rдe f(N) Функ цИЯ сложности, а N число обрабатываемых наблюдений или примеров. Можно выделить следующие функции сложности, которые позволяют оценить ожидаемые вычислительные затраты и требуемые ресурсы при реализации Toro или иноrо алrоритма. Наименее затратными являются алrоритмы, для которых функция сложности имеет видf(N) == С иf(N) == CN, rде С константа. В первом случае вычислительные затраты не зависят от количества обрабатываемых данных, а во втором линейно возрастают с их увеличением. Встречаются функции слож НОСТИ С лоrарифмической или экспоненциальной зависимостью типаf(N) == 10g(N) илиf(N) == , rде С константа. Самыми затратными являются алrоритмы, слож ность которых имеет степенную зависимость от числа обрабатываемых наблюдений f(N) == C N И факториальную зависимостьf(N) == N!. Понятие масштабируемых алrоритмов Чтобы алrоритм машинноrо обучения Mor работать с большими массивами данных, он должен быть масштабируемым (scalable). Признаком этоrо качества является то, что вычислительные затраты растут прямо пропорционально увеличению объема обрабатываемых данных, то есть при увеличении объема данных в два раза число вычислительных операций также увеличивается в два раза. В Data Mining масшта бируемость предполаrает следующие свойства алrоритма: О однопроходность алrоритм должен использовать минимально возможное KO личество сканирований набора данных, лучше, если сканирование будет одно; о возможность отсечения по времени алrоритм должен быть способен вьщать наилучшее на данный момент решение в любое время, даже если процесс BЫ числений не доводится до естественной остановки; О пpepъtвaeMocтb и продолжаемость алrоритм должен предусматривать возмож ность временной приостановки и продолжения работы. Промежуточные pe зультаты должны сохраняться, при этом должна обеспечиваться возможность продолжения вычислений, в том числе с использованием новых данных; О оzраниченность по обоему требуемой памяти алrоритм должен работать в пределах оrpаниченноrо объема памяти компьютера, выделяемоrо пользова телем; О однонаправленность при проходе базы данных считывание записей произво дится только В одном направлении. Такой режим работы называется режимом однонаправленноrо указателя: указатель движется только вперед без возмож ности обратноrо перемещения.
60 Часть 1. Теория бизнес анализа Некоторые алrоритмы машинноrо обучения, изначально не являющиеся Mac штабируемыми, MorYT быть доработаны и модифицированы для обеспечения возможности их масштабирования. Основная цель масштабирования предостав ление возможности обрабатывать большие объемы данных за приемлемое время. Таким образом, при выборе алrоритма важно понимать ero достоинства и Heдo статки, учитывать природу данных, с которыми он лучше работает, и способность к масштабируемости. ПЕРСОНАЛИИ rриroрий Пятецкий-Шапиро (Gregory Piatetsky Shapiro) основатель направлений Data Мiп- iпg и Кпоwlеdgе Discovery iп Databases, президент компании КDпuggеts, исследователь в области анализа данных и машинноro обучения с мировым именем. Принимает участие в работе мноrих орrанизаций в сфере Data Мiпiпg, в конференциях по анализу данных, консультирует компании по вопросам разработки и применения методов автоматическоrо извлечения закономерностей. Получил степени маrистра (1979) и доктора наук (1984) в Нью-Йоркском университете на факультете компьютерных наук. До 1997 r. про работал в GTE Laboratories исследовательском центре крупной телекоммуникационной компании. Там Пятецкий Шапиро реализовал первый проект по применению в бизнесе методов Кпоwlеdgе Discovery iп Databases и Data Мiпiпg, за V.OTOPbIM последовали еще несколько успешных проектов. До 2001 r. возrлавлял компанию KSP (позже приобретена Хсhапgе), специализирующуюся в области консалтинrа и разработки инструментов Data Мiпiпg. В последующие несколько лет до создания компании КDпuggеts работал профессором в американских и британских университетах: преподавал и разрабатывал курсы по машинному обучению, Data Мiпiпg в бизнесе и медицине. Автор и соавтор более 50 публикаций, в том числе известной на весь мир статьи From Data Mining to Кпоwlеdgе Discovery iп Databases. Схема процесса получения знаний из данных, представленная в этой статье, сеrодня приводится в любом учебнике по Data Мiпiпg. Соавтор двух книr, ставших бестселлерами: Кпоwlеdgе Discovery iп Databases (1991) и Аdvапсеs iп Кпоwlеdgе Discovery iп Databases (1996). Усама Файад (Usama Fayyad) один из идеолоrов технолоrий KDD и Data Мiпiпg, стоявший у их истоков. В настоящее время работает в научно исследовательском центре Yahoo Re search Labs в качестве исполнительноrо вице-президента. В 1991 r. получил степень доктора наук в области инженерии в Мичиrанском университете (США); также имеет степени маrистра в области компьютерных наук (1986) и математики (1989). Автор более 100 публикаций, посвященных интеллектуальным системам и Data Мiпiпg; член американской ассоциации искусственноrо интеллекта. Под ero редакцией выпущено две книrи по Data Mini пg. Реryлярно принимает участие в научных конференциях и симпозиумах по всему миру. С 1989 по 1996 r. Файад занимался анализом научных данных в лаборатории NASA, а затем в течение пяти лет работал в исследовательском центре Мicrоsоft по созданию и исследо- ванию алrоритмов Data Мiпiпg. Мноrие ero идеи и разработки получили развитие в Data Мiпiпg-технолоrиях Мicrоsоft. В 2000 r. Файад основал собственную компанию DigiМiпе (сейчас Rеvепuе Sсiепсе), занимающуюся анализом веб-данных.
Консолидация данных 2.1. Задача консолидации Введение Ценность и достоверность знаний, полученных в результате интеллектуальноrо анализа бизнес данных, зависит не только от эффективности используемых aHa литических методов и алrоритмов, но и от Toro, насколько правильно подобраны и подrотовлены исходные данные для анализа. Обычно руководителям проектов по бизнес аналитике с нуля приходится сталки ваться со следующей ситуацией. Во первых, данные на предприятии расположены в различных источниках самых разнообразных форматов и типов в отдельных файлах офисных документов (Excel, Word, обычных текстовых файлах), в учет ных системах ( lС:Предприятие , «Паруо и др.), в базах данных (Oracle, Access, dBase и др.). Bo вторых, данные MOryT быть избыточными или, наоборот, недоста точными. А в третьих, данные являются rpязными», то есть содержат факторы, мешающие их прав ильной обработке и анализу (пропуски, аномальные значения, дубликаты и противоречия). Поэтому, прежде чем приступать к анализу данных, необходимо выполнить ряд процедур, цель которых доведение данных до приемлемоrо уровня качества и информативности, а также орrанизовать их интеrpированное хранение в CTPYK турах, обеспечивающих их целостность, непротиворечивость, высокую скорость и rибкость выполнения аналитических запросов. ОПРЕДЕЛЕНИЕ Консолидация комплекс методов и процедур, направленных на извлечение данных из различных источников, обеспечение необходимоrо уровня их информативности и качества, преобразование в единый формат, в котором они MOryт быть заrружены в хранилище данных или аналитическую систему.
62 Часть 1. Теория бизнес анализа Консолидация данных является начальным этапом реализации любой анали тической задачи или проекта. В основе консолидации лежит процесс сбора и ор' rанизации хранения данных в виде, оптимальном с точки зрения их обработки на конкретной аналитической платформе или решения конкретной аналитической задачи, Сопутствующими задачами консолидации являются оценка качества дaH ных и их обоrащение. Основные критерии оптимальности с точки зрения консолидации данных: О обеспечение высокой скорости доступа к данным; О компактность хранения; О автоматическая поддержка целостности структуры данных; О контроль непротиворечивости данных. Источники данных Ключевым понятием консолидации является источник данных объект, содержа щий структурированные данные, которые MOryT оказаться полезными ДЛЯ решения аналитической задачи. Необходимо, чтобы используемая аналитическая платформа моrла осуществлять доступ к данным из этоrо объекта непосредственно либо после их преобразования в друrой формат, В противном случае очевидно, что объект не может считаться источником данных. Аналитические приложения, как правило, не содержат развитых средств ввода и редактирования данных, а работают с уже сформированными выборками. Таким образом, формирование массивов данных для анализа в большинстве случаев ло жится на плечи заказчиков аналитических решений. Основные задачи консолидации данных в процессе консолидации данных решаются следующие задачи: О выбор источников данных; О разработка стратеrии консолидации; О оценка качества данных; О обоrащение; о очистка; О перенос в хранилище данных. Сначала осуществляется выбор источников, содержащих данные, которые MOryт иметь отношение к решаемой задаче, затем определяются тип источников и MeTO дика орrанизации доступа к ним, В связи с этим можно выделить три основных подхода к орrанизации хранения данных. Данные, хра1lЯщиеся в отдельных (локальных) файлах, например в текстовых файлах с разделителями, документах Word, Excel и т, д. TaKoro рода источником может быть любой файл, данные в котором орrанизованы в виде столбцов и за писей. Столбцы должны быть типизированы, то есть содержать данные одноrо
rлава 2. Консолидация данных 63 типа, например только текстовые или только числовые. Преимущество таких ис точников в том, что они MOryT создаваться и редактироваться с помощью простых И популярных офисных приложений, работа с которыми не требует от персонала специальной подrотовки. К недостаткам следует отнести то, что они далеко не всеrда оптимальны с точки зрения скорости доступа к ним, компактности пред ставления данных и поддержки их структурной целостности, Например, ничто не мешает пользователю табличноrо процессора разместить в одном столбце данные различных типов (числовые и текстовые), что впоследствии обязательно приведет к проблемам при их обработке в аналитическом приложении, Базы дтты.x (БД) различных СУБД, таких как Oracle, SQL Server, Firebird, dBase, FoxPro, Access и т, д. Файлы БД лучше поддерживают целостность CTPYK туры данных, поскольку тип и свойства их полей жестко задаются при построении таблиц. Однако для создания и администрирования БД требуются специалисты с более высоким уровнем подrотовки, чем для работы с популярными офисными приложениями, Специализированные хранилища даннъа (ХД) являются наиболее предпочти тельнЫМ решением, поскольку их структура и функционирование специально оптимизируются для работы с аналитической платформой, Большинство ХД обес печивают высокую скорость обмена данными с аналитическими приложениями, автоматически поддерживают целостность и непротиворечивость данных. [лавное преимущество ХД перед остальными типами источников данных наличие ceMaн тическоrо слоя, который дает пользователю возможность оперировать терминами предметной области для формирования аналитических запросов к хранилищу. При разработке стратеrии консолидации данных необходимо учитывать xa рактер расположения источников данных локальный, коrда они размещены на том же ПК, что и аналитическое приложение, либо удаленный, если источники доступны только через локальную или [лобальную компьютерные сети. Характер расположения источников данных может существенно повлиять на качество собранных данных (потеря фраrментов, несоrласованность во времени их обнов ления, противоречивость и т. д,). Друrой важной задачей, которую требуется решить в рамках консолидации, является оценка качества данных с точки зрения их приrодности для обработки с помощью различных аналитических алrоритмов и методов, В большинстве случаев исходные данные являются «rрязнЫМИ», то есть содержат факторы, не позволяющие их корректно анализировать, обнаруживать скрытые структуры и закономерности, устанавливать связи между элементами данных и выполнять друrие действия, которые MorYT потребоваться для получения аналитическоrо решения. К таким факторам относятся ошибки ввода, про пуски, аномальные зна чения, шумы, противоречия и т. д, Поэтому перед тем, как приступить к анализу данных, необходимо оценить их качество и соответствие требованиям, предъ Являемым аналитической платформой, Если в процессе оценки качества будут выявлены факторы, которые не позволяют корректно применить к данным те или иные аналитические методы, необходимо выполнить соответствующую очистку даннъа.
64 Часть 1. Теория бизнес анаЛиза ОПРЕДЕЛЕНИЕ Очистка данных комплекс методов и процедур. направленных на устранение причин, мешающих корректной обработке: аномалий, пропусков. дубликатов. противоречий, шу- мов и т. д. Еще одной операцией, которая может понадобиться при консолидации данных, является их обоrащение. ОПРЕДЕЛЕНИЕ Обоrащение процесс дополнения данных некоторой информацией. позволяющей повы- сить эффективность решения аналитических задач. Обоrащение позволяет более эффективно использовать консолидированные данные. Ето необходимо применять в тех случаях, котда данные содержат Heдo статочно информации для удовлетворительноro решения определенной задачи анализа. Обоrащение данных позволяет повысить их информационную насыщен ность и, как следствие, значимость для решения аналитической задачи. Обобщенная схема процесса консолидации Место консолидации в общем процессе анализа данных может быть пред ставлено в виде структурной схемы (рис. 2.1). Источники данных EТL , I I I I I , , , , 3arpY3Ka ' (Lo<;jding) Хранилище данных Иэвлечение (Extraction) Преобра- эование (Transformation) Запрос JJ. Рис. 2.1. Процесс консолидации данных в основе процедуры консолидации лежит процесс ETL (extraction, transfonnation, loading). Процесс ETL решает задачи извлечения данных из разнотипных источни ков, их преобразования к виду, приrодному для хранения в определенной структуре, а также зarpузки в соответствующую базу или хранилище данных. Если у аналитика возникают сомнения в качестве и информативности исходных данных, то при He
rлава 2. Консолидация данных 65 обходИМОСТИ он может задействовать процедуры оценки их качества, очистки или обоrащения, которые также являются составными частями процесса консолидации данных. прИМЕР процесс сбора, хранения и оперативной обработки данных на типичном предприятии обычно содержит несколько уровней. На верхнем уровне располаrаются реляционные SQL-ориентированные СУБД типа SQL Server, Oracle и т. д. На втором файловые серверы с некотороЙ системой оперативной обработки или сетевые версии персональных СУБД типа R Base, FoxPro, Access и т. д. И наконец, на самом нижнем уровне расположены локальные пк: отдельных пользователей с персональными источниками данных. Чаще всеro инфор- мация на них собирается в виде файлов офисных приложений Word, Excel, текстовых файлов и т. д. Из источников данных всех перечисленных уровней информация в COOTBeT сТВИИ с некоторым реrламентом должна перемещаться в хд. Для этоrо необходимо обеспечить выrpузку данных из источников, провести их преобразование к виду, соответствующему структуре хд, а при необходимости выполнить их обоrащение и очистку. Таким образом, консолидация данных является сложной мноrоступенчатой процедурой и важнейшей составляющей аналитическоrо процесса, обеспечива ющей высокий уровень аналитических решений, 2.2. Введение в хранилища данных Введение к середине 80 x п. хх в, практически полностью завершился первый этап OCHa щения бизнеса и [осударственных структур средствами вычислительной техники и начался период бурноrо развития информационных систем для орrанизации сбора и хранения больших массивов различноrо рода деловой и служебной ин формации. В основном это были корпоративные системы, предназначенные для оперативной обработки информации, которые обслуживали бухrалтерию, ин формационные архивы, телефонные сети, реrистрацию документов, банковские операции и т. д. С появлением персональных компьютеров такие системы стали доступными для множества мелких и средних фирм, предприятий и орrанизаций. Системы оперативной обработки информации получили название OLTP (On Line Transaction Processing оперативная, то есть в режиме реальноrо времени, обра ботка транзакций), ОПРЕДЕЛЕНИЕ Транзакция некоторый набор операций над базой данных, который рассматривается как единое завершенное, с точки зрения пользователя, действие над некоторой информацией, обычно связанное с обращением к базе данных.
66 Часть 1. Теория бизнес анализа Обобщенная структура системы OLTP представлена на рис. 2.2. Оператор Оператор . ".. r Оператор Оператор ПРИМЕР 1 Реляционная СУБД Рис. 2.2. ОLТР система Оператор 1/ . по с::::::::> Оператор Оператор Типичным примером применения ОLТР систем является массовое обслуживание клиен тов, например бронирование авиабилетов или оплата услуr телефонных компаний. Обе эти ситуации имеют два общих свойства: очень большое число клиентов и непрерывное поступление информации. При бронировании авиабилетов из мноrочисленных пунктов продажи непрерывно cre кается информация об уже проданных билетах. которую вводят со своих рабочих мест операторы продавцы. В той же БД формируется информация о свободных местах. С точки зрения данной задачи транзакция включает в себя набор таких действий, как: · запрос оператора о наличии свободных мест на тот или иной рейс; · отклик БД с предоставлением соответствующей информации; · ввод оператором информации о клиенте, номере заказанноrо места и оплаченной сумме (возможно, будет присутствовать еще какая либо служебная вспомоrательная информация); · передача новой информации в базу данных и внесение в нее соответствующих изме нений; · передача оператору подтверждения о том. что операция выполнена успешно. Такие транзакции выполняются тысячи раз в день в сотнях пунктов продаж. Очевидно. что основным приоритетом в данном случае является обеспечение минимальноrо времени отклика при максимальной заrрузке системы. Рассмотрим характерные черты AaHHOro процесса. свойственные в той или иной мере всем ОLТР системам.
rлава 2. Консолидация данных 67 . Запросы и отчеты полностью реrламентированы. Оператор не может сформировать соб ственный запрос, чтобы уточнить или проанализировать какую либо информацию. . Как только перелет завершился, информация об обслуживании AaHHoro клиента теряет смысл, становится неаюуальной и подлежит удалению по про шествии определенноrо времени (то есть исторические данные не поддерживаются). . Операции производятся над данными с максимальным уровнем детализации, то есть по каждому клиенту в отдельности. Ситуация коренным образом меняется, коrда руководство авиакомпании прини мает решение об изучении пассажиропотоков с целью, например, их оптимизации. Такие исследования MorYT быть реакцией на информацию о том, что в последнее время во мноrих пунктах продаж участились случаи нехватки билетов на опре деленные маршруты, что позволяет сделать предположение о целесообразности орrанизации дополнительных рейсов. Однако для проведения таких исследований необходимы как минимум три вещи. Во первых, нужны данные о продажах билетов за достаточно длительный период (He сколько месяцев или лет), BO BTOpЫX, данные не должны содержать противоречий, пропусков, аномальных значений и друтих факторов, которые не позволят выполнить корректный анализ. В третьих, необходима дополнительная информация о бизнес среде: о конкурентах, рыночных тенденциях, ценах на топливо и пр. Очевидно, что типичная ОLТР система не может обеспечить ничеrо из перечисленноrо. Именно с пониманием этих проблем приходит осознание необходимости использования более развитых систем хранения данных, ориентированных на анализ. Предпосылки появления ХД [лавное требование к ОLТР системам быстрое обслуживание относительно простых запросов большоrо числа пользователей, при этом время ожидания BЫ полнения типовоrо запроса не должно превышать несколько секунд. Со временем в таких системах начали аккумулироваться большие объемы данных документы, сведения о банковских операциях, информация о клиентах, заключенных сделках, оказанных услуrах и т, д. Постепенно возникло понимание Toro, что сбор данных не самоцель, Собранная информация может оказаться весьма полезной в процессе управления орrанизацией, поиска путей совершенствования деятельности и получения посредством этоrо KOH курентных преимуществ. Но для этоrо нужны системы, которые позволяли бы BЫ полнять не только простейшие действия над данными: подсчитывать суммы, средние, максимальные и минимальные значения. Появилась потребность в информационных системах, которые позволяли бы проводить rлубокую аналитическую обработку, для чет необходимо решать такие задачи, как поиск скрытых структур и закономерностей в массивах данных, вывод из них правил, которым подчиняется данная предметная область, стратеrическое и оперативное планирование, формирование нереrламенти рованных запросов, принятие решений и проrнозирование их последствий. Понимание преимуществ, которые способен дать интеллектуальный анализ, привело к появлению HOBoro класса систем информационных систем поддерж1CU
68 Часть 1. Теория бизнес анализа прuнятuя реШe1lUЙ (uнфор.мацuо1t1(blХ СППР), ориентированных на аналитическую обработку данных с целью получения знаний, необходимых для разработки реше пий в области управления. Дополнительным стимулом совершенствования ЭТИХ систем стали такие факторы, как снижение стоимости высокопроизводительных компьютеров и расходов на хранение больших объемов информации, появлеНие возможности обработки больших массивов данных и развитие соответствующих математических методов. Обобщенная структурная схема информационной СП пр представлена на рис. 2.3. Реляционная СУБД или хранилище Оперативный аналиэ OLAP g g Аналитическая система LJ Менеджер Интеллектуальны! аналиэ Data Mining g Эксперт 'g Оператор Аналитик Рис. 2.3. Структура информационной СППР в основе работы с такой СППР лежат запросы, с которыми к ней обращается пользователь (лицо, принимающее решение (ЛПР) менеджер, эксперт или aHa литик). При этом запросы, допустимые в традиционных системах оперативной обработки данных, очень примитивны. Например, для банка это может быть запрос типа <.Сколько денеr на счету клиента?", или «Сколько денеr клиент потратил за последний месяц?",. Очевидно, что ценность информации, полученной с помощью подобноrо запроса, невелика. В то же время аналитическая система может ответить на rораздо более сложные запросы, например: «Определить среднее время между выставлением и оплатой счета для каждой катеrории клиентов",. В процессе разработки систем анализа информации и методолоrии их приме нения обнаружил ось, что для эффективноrо функционирования такие системы должны быть орrанизованы несколько иным способом, чем тот, который приме няется в ОLТР системах. Это обусловлено следующими причинами. О Для выполнения сложных аналитических запросов необходима обработка больших массивов данных из разнообразных источников. О Для выполнения запросов, связанных с анализом тенденций, проrнозированием протяженных во времени процессов, необходимы исторические данные, накоп ленные за достаточно длительный период, что не обеспечивается обычными ОLТР системами. О Данные, используемые для целей анализа и обслуживания аналитических за просов, отличаются от используемых в обычных ОLТР системах. При аналити
rлава 2. Консолидация данных 69 чесКоЙ обработке предпочтение отдается не детальным данным, а обобщенным (аrреrированным). Очевидно, что для анализа продаж крупноrо супермаркета интерес представляет не информация об отдельных покупках, а скорее сведения о продажах в течение определенных временных интервалов (например, недели или месяца). В связи с этим можно выделить ряд принципиальных ОТЛИЧИЙ сп ПР и OLTP систем. Эти отличия представлены в табл, 2,1. Таблица 2.1. Отличия СППР и ОLТР систем СВОЙСТВО OL ТР-система сп ПР Цели использования Быстрый поиск, простей Аналитическая обработка с целью данНЫХ шие алrоритмы обработки поиска скрытых закономерностей, построения проrнозов и Moдe лей и т. д. Уровень обобще Детализированные Как детализированные, так и обоб ния (детализации) щенные (аrpеrированные) данных Требования к каче Возможны некорректные Ошибки в данных не допускаются, ству данных данные (ошибки реrистра поскольку MoryT привести к He ции, ввода и т. д.) корректной работе аналитических алrоритмов Формат хранения Данные MOryT храниться Данные хранятся и обрабатываются данных в различных форматах в едином формате в зависимости от при ложения, в котором они были созданы Время хранения Как правило, не более [оды, десятилетия данных [ода (в пределах отчетноrо периода) Изменение данных Данные MorYT добавлять Допускается только пополнение; ся, изменяться и удалять ранее добавленные данные изменять ся ся не должны, что позволяет обеспе чить их хронолоrию Периодичность Часто, но внебольших Редко, но в больших объемах обновления объемах Доступ к данным Должен быть обеспечен Должен быть обеспечен доступ доступ ко всем текущим к историческим (то есть накоплен (оперативным) данным ным за достаточно длительный период времени) данным с соблюдением их хронолоrии Характер выполня Стандартные, HaCTpoeH Нереrламентированные, формируе емых запросов ные заранее мые аналитиком Ha лету'" в зависи мости от требуемоrо анализа Время выполнения Несколько секунд До нескольких минут запроса
70 Часть 1. Теория бизнес анализа Как видно из табл. 2.1, требования к СП ПР и ОLТР системам существенно отличаются, Поэтому в СП ПР используются специализированные базы данных, которые называются хранШlИЩпми данных (ХД). Хранилища данных ориентиро ваны на аналитическую обработку и удовлетворяют требованиям, предъявляемым к системам поддержки принятия решений. Основные особенности концепции ХД В настоящее время однозначноrо определения ХД не существует, из за Toro что разработано большое количество различных архитектур и технолоrий хд, а сами хранилища используются для решения самых разнообразных задач, Каждый автор ВЮIадывает в это понятие свое видение вопроса. Обобщая требования, предъявля емые к СППр, можно дать следующее определение ХД, которое не претендует на полноту и однозначность, но позволяет понять основную идею, ОПРЕДЕЛЕНИЕ Хранилище данных разновидноаь сиаем хранения, ориентированная на по,Мержку про цесса анализа данных, обеспечивающая целоаноаь, непротиворечивоаь и хронолоrию данных, а также высокую скороаь выполнения аналитических запросов. Важнейшим элементом ХД является семантический слой механизм, позволя ющий аналитику оперировать данными посредством бизнес терминов предметной области, Семантический слой дает пользователю возможность сосредоточиться на анализе и не задумываться о механизмах получения данных. Типичное ХД существенно отличается от обычных систем хранения данных, [лавным отличием являются цели использования. Например, реrистрация про даж и выписка соответствующих д()кументов задача уровня ОLТР систем, использующих обычные реляционные СУБД, Анализ динамики продаж и спроса за несколько лет, позволяющий выработать стратеrию развития фирмы и спла нировать работу с поставщиками и клиентами, удобнее Bcero выполнять при поддержке ХД. Друrое важное отличие заключается в динамике изменения данных. Базы данных в ОLТР системах характеризуются очень высокой динамикой изменения записей из за повседневной работы большоrо числа пользователей (откуда, кстати, велика вероятность появления противоречий, ошибок, нарушения целостности данных и т, д,). Что касается ХД, то данные из Hero не удаляются, а пополнение происходит в соответствии с определенным реrламентом (раз в час, день, неделю, в определенное время). Основные требования к ХД Чтобы ХД выполняло функции, соответствующие ero основной задаче поддерж ке процесса анализа данных, оно должно удовлетворять требованиям, сформу лированным Р Кимбаллом, одним из авторов I<онцепции ХД:
rлава 2. Консолидация данных 71 (J высокая скорость получения данных из хранилища; (J автоматическая поддержка внутренней непротиворечивости данных; (J возможность получения и сравнения срезов данных; (J нaJIичие удобных средств для просмотра данных в хранилище; (J обеспечение целостности и достоверности хранящихся данных. Чтобы соблюсти все пере численные требования, для построения и работы хд. как правило, используется не одно приложение, а система, в которую входит несколько проrраммных продуктов. Одни из них представляют собой собственно систему хранения данных, друrие средства их просмотра, извлечения, заrpузки ит.д. В последние десятилетия технолоrия ХД стремительно развивается, Десятки компаний предлаrают на рынке свои решения в области хд, и тысячи орrанизаций уже используют это мощное средство поддержки аналитических проектов. 2.3. Основные концепции хранилищ данных Основные положения концепции ХД Принято считать, что у истоков концепции ХД стоял технический директор KOM пании Prism Solutions Билл Инмон, который В начале 1990 x п. опубликовал ряд работ, ставших основополаrающими для последующих исследований в области аналитических систем, В основе концепции ХД лежат следующие положения: О интеrрация и соrласование данных из различных источников, таких как обыч ные системы оперативной обработки, базы данных, учетные системы, офисные документы, электронные архивы, расположенные как внутри предприятия, так и во внешнем окружении; О разделение наборов данных, используемых системами выполнения транзакций и СППР. Инмон дал следующее определение ХД: предмет11O ориентирова1l1lЫЙ, интеlрИ рованный, неUЗМ,е1iЯемый и поддерживающий ХРОНОЛОlИЮ набор данных, предназна ченный для обеспечения пРИ1iЯтия управленческих решений. Под предметной ориентированностью в данном случае подразумевается, что ХД должно разрабатываться с учетом специфики конкретной предметной области, а не аналитических приложений, с которыми ero предполаrается использовать. CTPYK тура ХД должна отражать представления аналитика об информации, с которой ему приходится работать, Интеlрированность означает, что должна быть обеспечена возможность за rрузки в ХД информации из источников, поддерживающих различные форматы данных и созданных в различных приложениях учетных системах, базах дaH ных, электронных таблицах и друrих офисных приложениях, поддерживающиХ
72 Часть 1. Теория бизнес анализа структурированность данных (например, текстовые файлы с разделителями), При этом данные, допускающие различный формат (например, числа, дата и вре- мя), в процессе заrpузки должны быть преобразованы к единому представлению, Кроме Toro, очень важно проверить заrружаемые данные на целостность и не- противоречивость, обеспечить необходимый уровень их обобщения (аrреrирова_ ния). Объем данных в хранилище должен быть достаточным для эффективноrо решения аналитических задач, поэтому в ХД может накапливаться информация за несколько лет и даже десятилетий, ПрUllцuп llеuзмеllчuвостu предполаrает, что, в отличие от обычных систем опе- ративной обработки данных, в ХД данные после заrpузки не должны подверrаться каким-либо изменениям, за ИСЮIючением добавления новых данных. И наконец. поддержка хрОllОЛОlUU означает соблюдение порядка следования за- писей, для чеrо в структуру ХД вводятся ЮIючевые атрибуты Дата и Время. Кроме Toro, если физически упорядочить записи в хронолоrическом порядке, например в порядке возрастания атрибута Дата, можно уменьшить время выполнения ана- литических запросов. Использование концепции ХД в сппр и анализе данных способствует дости- жению таких целей, как: D своевременное обеспечение аналитиков и руководителей всей информацией, необходимой для выработки обоснованных и качественных управленческих решений; О создание единой модели представления данных в орrанизации; О создание интеrрированноrо источника данных, предоставляющеrо удобный доступ к разнородной информации и rарантирующеrо получение одинаковых ответов на одинаковые запросы из различных аналитических приложений, Задачи, решаемые ХД Процесс разработки ХД весьма трудоемок, некоторые орrанизации затрачивают на Hero несколько месяцев и даже лет, а также ВЮIадывают значительные финансовые средства. Основными задачами, которые требуется решить в процессе разработки ХД, являются: О выбор структуры хранения данных, обеспечивающей высокую скорость ВЫПОk нения запросов и минимизацию объема оперативной памяти; О первоначальное заполнение и последующее пополнение хранилища; О обеспечение единой методики работы с разнородными данными и создание удобноrо интерфейса пользователя, Kpyr задач интеллектуальноrо анализа данных весьма широк, а сами задачи существенно различаются по уровню сложности, Поэтому в зависимости от спе- цифики решаемых задач и уровня их сложности архитектура ХД и модели данных, используемых для их построения, MOryT различаться, Обобщенная концептуальная схема ХД пред ставлена на рис. 2.4.
rлава 2. Консолидация данных 73 ИСТОЧНИКИ данных MeTaдaHtlbIe Технические 11 Биэнес метаданные с Визуапи;шция. отчет... 11:1 Пользователь Рис. 2.4. Концептуальная схема хд Соrласно схеме данные извлекаются из различных источников и заrружаются в ХД, которое содержит как собственно данные, представленные в соответствии с некоторой моделью, так и метаданные. Детализированные и аrреrированные данные Данные в ХД хранятся как в деталUЗUРО6тl1l0М, так и в azpezup06тl1l0M виде. ДaH ные в детализированном виде поступают непосредственно из источников данных и соответствуют элементарным событиям, реrистрируемым ОLТР системами. Такими данными MorYT быть ежедневные продажи, количество произведенных изделий и т. д. Это неделимые значения, попытка дополнительно детализировать которые лишает их лоrическоro смысла. Мноrие задачи анализа (например, проrнозирование) требуют использования данных определенной степени обобщения. Например, суммы продаж, взятые по дням, MOryт дать очень неравномерный ряд данных, что затруднит выявление xapaKTep ных периодов, закономерностей или тенденций. Однако, если обобщить эти данные
74 Часть 1. Теория бизнес анализа в пределах недели или меrяца и взять сумму, среднее, максимальное и минималЬНое значения за соответствующий период, то полученный ряд может оказаться более информативным. Процесс обобщения детализированных данных называется alpe luрова1luем, а сами обобщенные данные аlреzuроваllllыuu (иноrда аrpеrатами). Обычно аrpеrированию подверrаются числовые данные (факты), они ВЫЧИСЛЯЮТСЯ и содержатся в ХД вместе с детализированными данными. Поскольку один и тот же набор детализированных данных может породить He сколько наборов аrpеrированных данных с различной степенью обобщения, объем ХД возрастает, иноrда существенно. Например, набор, содержащий данные о про дажах по дням в течение rода, помимо своих 360 значений, по рождает 52 значения с обобщением по неделям и 12 по месяцам. Если при этом вычисляются все виды аrреrации сумма, среднее, максимальное и минимальное значения за COOTBeT ствующий период, то количество хранящихся аrpеrированных значений составит уже (52 + 12) .4 == 256. Иноrда это при водит к «взрывному», неконтролируемому росту ХД и вызывает серьезные технические проблемы: хранилище «распухает», из за Toro что непрерывный поток входных данных автоматически аrреrируется в соответствии с настройками ХД, Однако с этим приходится мириться: если бы аrреrированные данные не содержались в ХД, а вычислялись в процессе выполне ния запросов, время выполнения запроса увеличилось бы в несколько раз. Метаданные Слово «метаданные» (от rpеч. meta и лат. data) буквально переводится как «данные о данных». Метаданные в широком смысле необходимы для описания значения и свойств информации с целью лучшеrо ее понимания, использования И управле ния ею. Любой человек, который читал книrи или пользовался библиотекой, в той или иной мере имел дело с метаданными. ПРИМЕР Всем хорошо извеано, что в любой книrе, помимо собавенно текаа, содержится значитель- ное количеаво дополнительной информации. Цель ее заключается в том, чтобы, во первых, помочь читателю быстрее ознакомиться с содержимым книrи и осмыслить ero, BO BTOpЫX, описать аруктуру книrи для более зффективноrо поиска нужной информации. Для решения первой задачи служат такие элементы, как аннотация, комментарии, rлоссарий, приме чания и т. д. Для поиска нужной информации используются оrлавление, названия rлав, параrрафов и разделов, номера араниц, колонтитулы, предметный указатель и т. д. Kpo ме этоrо, читателю MOryт понадобиться сведения об авторах или об издательаве. Вся эта информация, которая не является чааью книrи, а служит для повышения зффективноаи работы с ней, и представляет собой метаданные. В библиотеке метаданные применяются для поиска нужных изданий и отслеживания их перемещений, например, сиаематический или алфавитный каталоrи, в которых испольэуются названия книr, фамилии авторов, roA издания и т. д. Таким образом, метаданные имеют очень большое значение при работе с различноrо рода информацией. с точки зрения IT технолоrий метаданные любая информация, необходи мая для анализа, проектирования, построения, внедрения и применения KOM
rлава 2. Консолидация данных 75 I1ыо ер нойй информационной системы, Одно из основных назначений MeTaдaH IlbIx повышение эффективности поиска. Поисковые запросы, использующие метаданные, делают возможным выполнение сложных операций по фильтрации и отбору данных, Если рассматривать понятие «метаданные» в контексте технолоrии ХД, то ero можно определить следующим образом. опРЕДЕЛЕНИЕ Метаданные высокоуровневые средства отражения информационной модели и опи сания структуры данных, используемой в )(д. Метаданные должны содержать описание структуры данных хранилища и структуры данных импортируемых ИСТОЧНИКОВ. Метаданные хранятся отдельно от данных в так называемом репозитарии метаданных. Метаданные являются ключевым фактором успеха при разработке и BHeдpe нии хд. Они содержат всю информацию, необходимую для извлечения, преобра зования и заrpузки данных из различных источников, а таюке для последующеrо использования и интерпретации данных, содержащихся в ХД. Можно выделить два уровня метаданных технический (административный) и бизнес уровень, Технический уровень содержит метаданные, необходимые для обеспечения функционирования хранилища (статистика заrрузки данных и их использования, описание модели данных и т, д.). Бизнес метаданные обеспечи вают пользователю возможность концентрироваться на процессе анализа, а не на технических аспектах работы с хранилищем; они включают бизнес термины и определения, которыми привык оперировать пользователь. Фактически бизнес метаданные представляют собой описание предметной облас ти, для работы в которой создается аналитическая система или ХД, к формированию бизнес метаданных должны активно привлекаться эксперты и аналитики, которые впоследствии и будут использовать систему для получения аналитических отчетов. Бизнес метаданные описывают объекты предметной области, информация о KO торых содержится в ХД, атрибуты объектов и их возможные значения, COOTBeT ствующие поля в таблицах и т. д. Бизнес метаданные образуют так называемый семантический слой. Пользователь оперирует близкими ему терминами предметной области: товар, клиент, продажи, покупки и т. д., а семантический слой транслирует бизнес термины в низкоуровневые запросы к данным в хранилище. Способы использованияХД С помощью аналитическоrо приложения, используемоrо совместно с ХД, можно формировать запросы и получать по ним данные из хранилища, Данные MorYT визуализироваться непосредственно либо подверrаться обработке средствами аналитическоrо приложения, тоrда визуализируются результаты этой обработки, Спектр аналитических задач очень широк Соответственно, и методики при менения ХД дЛЯ решения тех или иных задач весьма разнообразны. Тем не менее можно выделить три основных подхода к использованию ХД:
76 Часть 1. Теория бизнес анализа о реlулярные отчеты подrотовка отчетов стандартных форм, получаемых MIIQ_ rOKpaTHo с определенной периодичностью; О нереlЛаментирооанные запросы возможность получать ответы на не стандарт- ные, сформированные «по требованию» вопросы; о интеллектуальный анализ данных поддержка процесса интеллектуальноrо анализа больших массивов данных с целью выявления скрытых закономерно- стей, структур и объектов, построения моделей, проrнозов и т. д. Краткий обзор архитектур ХД Разработка и построение корпоративноrо ХД это дороrостоящая и трудоемкая задача, Успешность внедрения ХД во MHoroM зависит от уровня информатизации бизнес процессов в компании, установившихся информационных потоков, объема и структуры используемых данных, требований к скорости выполнения запро сов и частоте обновления хранилища, характера решаемых аналитических задач и т. д. Чтобы приблизить ХД к условиям и специфике конкретной орrанизации, в настоящее время разработано несколько архитектур хранилищ реляционные, MHoroMepHbIe, rибридные и виртуальные, Реляционные ХД используют классическую реляционную модель, характерную для оперативных реrистрирующих ОLТР систем. Данные хранятся в реляционных табли цах, но образуют специальные структуры, эмулирующие мноrомерное представление данных. Такая технолоrия обозначается аббревиатурой ROLAP Relational OLAP. МНОlOмерные ХД реализуют MHoroMepHoe представление данных на физическом уровне в виде MHoroMepHbIx кубов, Данная технолоrия получила название МОLЛР MultidimensionalOLAP. Тибридные ХД сочетают в себе свойства как реляционной, так и мноrомерной модели данных. В rибридных ХД детализированные данные хранятся в реляцион ных таблицах, а arperaTbI в MHoroMepHbIx кубах. Такая технолоrия построения ХД называется HOLAP Hybrid OLAP. Виртуальные ХД не являются хранилищами данных в привычном понимании. В таких системах работа ведется с отдельными источниками данных, но при этом эмулируется работа обычноrо ХД, Иначе rоворя, данные не консолидируются фи зически, а собираются непосредственно в процессе выполнения запроса. Кроме Toro, все ХД можно разделить на одноплатформенные и кросс платфор менные, Одноплатформенные ХД строятся на базе только одной СУБД, а KpOCC платформенные MOryT строиться на базе нескольких СУБД. 2.4. MHorOMepHbIe хранилища данных Основное назначение MHoroMepHbIx хранилищ данных (МХД) поддержка систем, ориентированных на аналитическую обработку данных, поскольку такие хранилища лучше справляются с выполнением сложных нереrламентированных запросов,
rлава 2. Консолидация данных 77 Мноrомерная модель данных, лежащая в основе построения MHoroMepHbIx xpa f{J1ЛИЩ данных, опирается на концепцию MHoroMepHbIx кубов, или rиперкубов, Они представляют собой упорядоченные MHoroMepHbIe массивы, которые также часто f{азывютT ОLАР кубами (аббревиатура OLAP расшифровывается как On Line Analytical Processing оперативная аналитическая обработка). Технолоrия OLAP представляет собой методику оперативноrо извлечения нужной информации из больших массивов данных и формирования соответствующих отчетов, ОСНОВЫ MHoroMepHoro представления данных Сущность MHoroMepHoro представления данных состоит в следующем. Большинство реальных бизнес процессов описывается множеством показателей, свойств, атрибу ТОВ и Т, д. Например, для описания процесс а продаж MOryT понадобиться сведения о наименованиях товаров или их rpупп, о поставщике и покупателе, о rороде, rде производились продажи, а также о ценах, количествах проданных товаров и общих суммах. Кроме Toro, для отслеживания процесса во времени должен быть введен в рассмотрение такой атрибут, как дата, Если собрать всю эту информацию в таблицу, то она окажется сложной для визуальноrо анализа и осмысления. Более Toro, она может оказаться избыточной: если, например, один и тот же товар продавался в один и тот же день в различных rородах, то придется несколько раз повторить одно и то же соответствие «rород товар» с указанием различных суммы и количества. Все это способно окончательно запутать и сбить с толку любоrо, кто попытается извлечь из такой таблицы полезную информацию с целью анализа текущеrо состояния продаж и поиска путей оптимизации процесса торrовли. Указанные проблемы возникают по одной простой причине: в моской таблице хранятся MHoroMepHbIe данные. Проясним суть вопроса с помощью rеометрической аналоrии. Представьте себе трехмерную фиrуру (например, тетраэдр или параллелепипед) и спроецируйте ero на плоскость, а затем по полученной плоской проекции попытайтесь оценить форму и размеры исходной объемной фиrypы. Сделать это будет трудно: во первых, потеряна информация об одном измерении, а BO BTOpЫX, фиrура теперь представ лена в совершенно несвойственном ей плоском виде, Примерно то же самое можно сказать об информации, представленной несколь кими рядами данных. Каждый такой ряд (поле таблицы) можно рассматривать как cBoero рода информационное измерение, и тоrда «плоская» таблица может быть Интерпретирована как результат преобразования мноrомерной информационной структуры в совершенно несвойственную ей плоскую форму. Чтобы компенси ровать потерю информации от исключения одноrо или нескольких измерений, приходится усложнять структуру таблицы, а это в большинстве случаев приводит к тому, что разобраться в ней становится очень сложно, Можно пойти друrим путем выполнить декомпозицию информации в He сколько более простых таблиц, связать их некоторым набором отношений и перейти к реляционной модели, которую используют классические базы данных. Однако доказано, что реляционная модель не является оптимальной с точки зрения задаЧ анализа, поскольку предполаrает высокую степень нормализации, в результате чеrо
78 Часть 1. Теория бизнеС Clнализа снижается скорость выполнения запросов, Поэтому разработка мноrомерной MO дели представления данных, которая реализуется с помощью MHoroMepHbIx кубов, стала естественным шarом. ЗАМЕЧАНИЕ Не следует пытаться провести rеометрическую интерпретацию понятия «мноrомерный куб», поскольку это просто служебный термин, описывающий метод представления дaH ных. Измерения и факты базовые понятия мноrомерной модели данных в основе MHoroMepHoro представления данных лежит их разделение на две rpуп пы измерения и факты, Измерения это катеrориальные атрибуты, наименования и свойства объ ектов, участвующих в некотором бизнес процессе, Значениями измерений являются наименования товаров, названия фирм поставщиков и покупателей, фи о людей, наЗвания rородов и т. д, Измерения MorYT быть и числовыми, если какой либо катеrории (например, наименованию товара) соответствует числовой код, но в любом случае это данные дискретные, то есть принимающие значения из оrраниченноrо набора, Измерения качественно описывают исследуемый бизнес процесс. Факты это данные, количественно описывающие бизнес процесс, непрерыв ные по своему характеру, то есть они MOryT принимать бесконечное множество значений. Примеры фактов цена товара или изделия, их количество, сумма продаж или закупок, зарплата сотрудников, сумма кредита, страховое вознаrpаж дение и т, д. Структура MHoroMepHoro куба Мноrомерный куб можно рассматривать как систему координат, осями которой являются измерения, например Дата, Товар, Покупателъ. По осям будут откла дываться значения измерений даты, наименования товаров, названия фирм по купателей, фИО физических лиц и т, д, В такой системе каждому набору значений измерений (например, «дата TO вар покупатеЛЬ1> ) будет соответствовать ячейка, в которой можно разместить числовые показатели (то есть факты), связанные с данным набором. Таким обра зом, между объектами бизнес процесса и их числовыми характеристиками будет установлена однозначная связь, Принцип орrанизации MHoroMepHoro куба поясняется на рис, 2.5. В ячейке 1 будут располаrаться факты, относящиеся к продаже цемента 000 «СпеЦСТРОЙ1> 3 ноября, в ячейке 2 к продаже плит ЗАО «Пирамида» 6 HO ября, а в ячейке 3 к продаже плит 000 «Спецстрой» 4 ноября.
rлава 2. Консолидация данных 79 Бетон 2 Товар Цемент Керамэит Плиты Кирпич ЗАО «Пирам ида" ЗАО «Строитель» 000 «Спецстрой" Покупатель 02.11 03.11 04.11 05.11 Об.11 Дата Рис. 2.5. ПРИНЦИП орrаниэации MHoroMepHoro куба Мноrомерный взrляд на измерения Дата, Товар и Покупателъ представлен на рис. 2.6. Фактами в данном случае MOryT быть Цена, Количество, Сумма. Тоща выделенный cerMeHT будет содержать информацию о том, сколько плит, на какую сумму и по какой цене приобрела фирма 3АО «Строителъ» 3 ноября. Товар Керамэит Плиты ' . . . Факты I ' . I - i - I Бетон Кирпичи Дата 000 «Спецстрой" ЗАО «Строитель» ЗАО "Пирамида" 000 «Стройсервис" Покупатель Рис. 2.6. Иэмерения и факты в MHoroMepHoM кубе
80 Часть 1. Теория бизнес анализа Таким образом, информация в MHoroMepHoM хранилище данных является ло- rически целостной. Это уже не просто наборы строковых и числовых значений, которые в случае реляционной модели нужно получать из различных таблиц, а це- лостные структуры типа «кому, что и в каком количестве было продано на данный момент временю>. Преимущества MHoroMepHoro подхода очевидны, О Представление данных в виде MHoroMepHbIx кубов более наrлядно, чем сово- купность нормализованных таблиц реляционной модели, структуру которой представляет только администратор БД. о Возможности построения аналитических запросов к системе, ИСПОльзующей МХД, более широки. о в некоторых случаях использование мноrомерной модели позволяет значи тельно уменьшить продолжительность поиска в МХД, обеспечивая выпол- нение аналитических запросов практически в режиме реальноrо времени, Это связано с тем, что аrреrированные данные вычисляются предварительно и хранятся в MHoroMepHbIx кубах вместе с детализированными, поэтому тратить время на вычисление arperaToB при Dыполнении запроса уже не нужно. В принципе, ОLАР куб может быть реализован и с помощью обычной pe ляционной модели. В этом случае имеет место эмуляция MHoroMepHoro пред ставления совокупностью плоских таблиц. Такие системы получили название ROLAP Relational OLAP. Использование мноrомерной модели данных сопряжено с определенными трудностями. Так, для ее реализации требуется больший объем памяти, Это связано с тем, что при реализации физической мноrомерности используется большое количество технической информации, поэтому объем данных, который может поддерживаться МХД, обычно не превышает нескольких десятков rиrа байт, Кроме Toro, мноrомерная структура труднее поддается модификации; при необходимости встроить еще одно измерение требуется выполнить физическую перестройку Bcero MHoroMepHoro куба, На основании этоrо можно сделать вывод, что применение систем хранения, в основе которых лежит MHoroMepHoe представ ление данных, целесообразно только в тех случаях, коrда объем используемых данных сравнительно невелик, а сама мноrомерная модель имеет стабильный набор измерений. Работа с измерениями в процессе поиска и извлечения из rиперкуба нужной информации над ero изме- рениями про изводится ряд действий, наиболее типичными из которых являются: О сечение (срез); О транспонирование; О свертка; О детализация,
rлава 2. Консолидация данных 81 Сечение заключается в выделении подмножества ячеек rиперкуба при фик сировании значения одноrо или нескольких измерений. В результате сечения получается срез или несколько срезов, каждый из которых содержит информацию, связанную со значением измерения, по которому он был построен. Например, если выполнить сечение по значению ЗАй Строителы> измерения Пакупателъ, то полученный в результате срез будет содержать информацию об истории про даЖ всех товаров данноrо предприятия, которую можно будет свести в плоскую таблицу. При необходимости оrраничить информацию только одним товаром (например, керамзитом) потребуется выполнить еще одно сечение, но теперь уже по значению Керамзит измерения Товар. Результатом построения двух срезов бу деТ информация о продажах одной фирме по одному товару. Манипулируя таким образом сечениями rnперкуба, пользователь всеrда может получить информацию в нужном разрезе. Затем на основе построенных срезов может быть сформирована кросс таблица и с ее помощью очень быстро получен необходимый отчет. Данная методика лежит в основе технолоrии ОLАР анализа. На рис. 2.7 схематично пред ставлены сечения rиперкуба. Слева сечение BЫ полнено при некотором фиксированном значении измерения Дата. Полученный срез (светло серая область) содержит информацию обо всех товарах и всех поку пателях на определенную дату. На правом фрarменте рисунка получено два среза, пересечение которых будет содержать информацию обо всех покупателях, но на определенный товар и на определенную дату. Товар Дата Товар "" / Дата Рис. 2.7. Сечения rиперкуба Покупатель Транспонирование (вращение) обычно применяется к плоским таблицам, полу ченным, например, в результате среза, и позволяет изменить порядок представле ния измерений таким образом, что измерения, отображавшиеся в столбцах, будут отображаться в строках, и наоборот. В ряде случаев транспонирование позволяет сделать таблицу более нarлядной.
82 Часть 1. Теория бизнес анализа Операции свертки (rруппи:ровки) и детализации (декомпозиции) возможныI только тоrда, коrда имеет место иерархическая подчиненность значений измере- ний. При свертке одно или несколько подчиненных значений измерений заменя- ются теми значениями, которым они подчинены. При этом уровень обобщения данных уменьшается. Так, если отдельные товары образуют rруппы, например Стройматериалы, то в результате свертки вместо отдельных наименований то- варов будет указано наименование rруппы, а соответствующие им факты будут аrреrированы. Проиллюстрируем результаты свертки: в табл. 2.2 представлена исходная таблица, а в табл. 2.3 результат ее свертки по измерению Товар. Таблица 2.2. Исходная таблица rруппа Товар Сумма Стройматериалы Кирпич 22 000 Цемент 12 000 Керамзит 4500 Доска 7400 Инструмент Отвертка 1200 Электропила 7600 Дрель 2450 Шпатель 780 Таблица 2.3. Результат свертки исходной таблицы по измерению «Товар>,> rруппа Сумма Стройматериалы 45 900 Инструмент 12 030 Детализация это процедура, обратная свертке; уровень обобщения данных уменьшается. При этом значения измерений более BbIcoKoro иерархическоrо уровня заменяются одним или несколькими значениями более низкоrо уровня, то есть вме- сто наименований rpупп товаров отображаются наименования отдельных товаров. 2.5. Реляционные хранилища данных в начале 1970 x п. анrло-американский ученый Э. Кодд разработал реляционную модель орrанизации хранимых данных, которая положила начало новому этапу эволюции СУБД. Блаrодаря простоте и rибкости реляционная модель стала доми нирующей, а реляционные С УБД стали промышленным стандартом де факто. ОПРЕДЕЛЕНИЕ Реляционная база данных (relational database) совокупность отношений, содержащих всю информацию, которая должна храниться в базе. Физически это выражается в том, что информация хранится в виде двумерных таблиц, связанных с помощью ключевых полей.
rлава 2. Консолидация данных 83 Применение реляционной модели при создании ХД в ряде случаев позволяет получить преимущества над мноrомерной технолоrией, особенно в части эффектив liO СТИ работы с большими массивами данных и использования памяrn компьютера. На основе реляционных хранилищ данных (РХД) строятся RO LАР системы, и эта идеЯ тоже принадлежит Кодцу. В основе технолоrии РХД лежит принцип, в соответствии с которым измерения хранятся в ruiоских таблицах так же, как и в обычных реляционных СУБД, а факmы (атреrируемые данные) в отдельных специальных таблицах этой же базы данных. При этом таблица фактов является основой для связанных с ней таблиц измерений. Она содержит количественные характерисrnки объектов и собыrnй, совокупность которых предполаrается в дальнейшем анализировать. Схемы построения РХд На лоrическом уровне различают две схемы построения РХД звезда и CHe жинка . При использовании схемы звезда» центральной является таблица фактов, с которой связаны все таблицы измерений. Таким образом, информация о каждом измерении располаrается в отдельной таблице, что упрощает их просмотр, а саму схему делает лоrически прозрачной и ПОНЯ1ной пользователю (рис. 2.8). То..,... fород., Кирпич Плиты Керамэит Цемент Доски Уrолок Швеллер Трубы Ряэань Касимов Шацк Ряжск Шилово Таблица фактов Цена Количество Сумма Остаток Задолженность сжупатепь Дата 000 «Проrpесс» ЗАО «Спецстрой» 000 «Монтажник» ИП Сидоров ЗАО «Стройсервис» 000 «Технопарк» 01.07.06 02.07.06 03.07.06 05.07.06 Рис. 2.8. Схема построения РХД <.звезда!>
84 Часть 1. Теория бизнес анализа Однако размещение всей информации об измерении в одной таблице оказы вается не всеrда оправданным. Например, если продаваемые товары объединены в rруппы (имеет место иерархия), то придется тем или иным способом показать, к какой rpуппе относится каждый товар, что приведет к MHoroKpaTHoMY повто рению названий rрупп. Это не только вызовет рост изБЫТОЧНОС111, но И повысит вероятностЬ возникновения Пр0111Боречий (если, например, один и тот же т, ошибочно отнесут к разным rруппам). Для более эффективной работы с иерархическими измерениями была разра ботана модификация схемы «звезда),>, которая получила название «снежинка),>. [лавной особенностью схемы СllеЖUllка» является то, что информация об одном измерении может храниться в нескольких связанных таблицах. То есть если хотя бы одна из таблиц измерений имеет одну или несколько связанных с ней друrих таблиц измерений, в этом случае будет применяться схема «снежин ),> (рис. 2.9). Тип Областной Районный J101<aJ1И3aЦИ l' Иноrородний Местный Товар" rруппа TOвapQ Стройматериалы 1 Металлоиэдели я l"opoA Кирпич Плиты Керамэит Цемент Доски Уrолок Швеллер Трубы Таблица фактов Цена Количество Сумма Остаток Задолженность Покупате,nь Дата 01.07.06 02.07.06 03.07.06 05,07.06 000 «Проrресс» ЗАО «Спецстрой» 000 «Монтажник), ИП Сидоров ЗАО «Стройсервис» 000 «Технопарк» Рис. 2.9. Схема построения РХД «снежинка!> Основное функциональное отличие схемы «снежинка),> от схемы «звезда),> это возможность работы с иерархическими уровнями, определяющими степень дeTa лизации данных. В приведенном примере схема «снежинка),> позволяет работать с данными на уровне максимальной детализации, например с каждым товаром
rлава 2. Консолидация данных 85 отдельно, или использовать обобщенное представление по rpуппам товаров с co ответствующей аrреrацией фактов. Выбор схемы для построения РХД зависит от используемых механизмов сбора 1I обработки данных. Каждая из схем имеет свои преимущества и недостатки, KO торые, однако, MorYT проявляться в большей или меньшей степени в зависимости от особенностей функционирования ХД в целом. К преимуществам схемы «звезда» можно отнести: а простоту и лоrическую прозрачность модели; а более простую процедуру пополнения измерений, поскольку приходится рабо тать только с одной таблицей, Недостатками схемы «звезда!> являются: а медленная обработка измерений, поскольку одни и те же значения измерений MOryT встречаться несколько раз в одной и той же таблице; а высокая вероятность возникновения несоответствий в данных (в частности, противоречий), например, из за ошибок ввода. Преимуществами схемы «снежинка!> являются следующие: а она ближе к представлению данных в мноrомерной модели; О процедура заrpузки из РХД в MHoroMepHbIe структуры более эффективна и про ста, поскольку заrрузка про изводится из отдельных таблиц; о HaMHoro ниже вероятность появления ошибок, несоответствия данных; О большая, по сравнению со схемой «звезда», компактность представления дaH ных, поскольку все значения измерений упоминаются только один раз. Недостатки схемы «снежинка»: О достаточно сложная для реализации и понимания структура данных; О усложненная процедура добавления значений измерений. Кроме тоro, существует ряд технических особенностей, которые MOryT опреде лить предпочтения разработчиков РХД при выборе схемы ero построения. Преимущества и недостатки РХД Основные преимущества РХД следующие: О практически неоrраниченный объем хранимых данных; О поскольку реляционные СУБД лежат в основе построения мноrих систем опе ративной обработки (OLTP), которые обычно являются rлавными источника ми данных дЛЯ ХД, использование реляционной модели позволяет упростить процедуру заrрузки и интеrpации данных в хранилище; О при добавлении новых измерений данных нет необходимости выполнять слож ную физическую реорrанизацию хранилища, в отличие, например, от MHoro мерных ХД;
86 Часть 1. Теория бизнес анализа о обеспечиваются высокий уровень защиты данных и широкие возмоЖНости разrраничения прав доступа, [лавный недостаток реляционных хранилищ данных заключается в том что при использовании высокото уровня обобщения данных и иерархичност измерений в таких хранилищах начинают «размножаться» таблицы атретатов. В результате скорость выполнения запросов реляционным хранилищем замед ляется. В то же время в мнотомерных хранилищах, тде данные хранятся в виде Мнorо мерных кубов, эта проблема практически не возникает и в большинстве случаев удается достичь более высокой скорости выполнения запросов. Таким образом, выбор реляционной модели при построении ХД целесообразен в следующих случаях. О Значителен объем хранимых данных (мнотомерные ХД становятся неэффек, тивными). О Иерархия измерений несложная (друrими словами, немното аrреrированных данных). О Требуется частое изменение размерности данных. При использовании реляци онной модели можно оrpаничиться добавлением новых таблиц, а для MHoroMep ной модели придется выполнять сложную перестройку физической структуры хранилища. 2.6. rибридные хранилища данных Мноrомерная и реляционная модели хранилищ данных имеют свои преимущества и недостатки. Например, мноrомерная модель позволяет быстрее получить ответ на запрос, но не дает возможности эффективно управлять такими же большими объемами данных, как реляционная модель, Лоrично было бы использовать такую модель ХД, которая представляла бы собой комбинацию реляционной и мноrомерной моделей и позволяла бы сочетать высокую производительность, характерную для мноrомерной модели, и возможность хранить сколь утодно большие массивы данных, присущую pe ляционной модели. Такая модель, сочетающая в себе принципы реляционной и мноrомерной моделей, получила название zuбрuдной, или HOLAP (Hybrid OLAP). Хранилища данных, построенные на основе HOLAp, называются rибридными хранилищами данных ([ХД) (рис. 2.10), [лавным принципом построения [ХД является то, что детализированные данные хранятся в реляционной структуре (ROLAP), которая позволяет хранить большие объемы данных, а аrpеrированные в мноrомерной (MOLAP), которая позволяет увеличить скорость выполнения запросов (поскольку при выполнении аналитических запросов уже не требуется вычислять arperaTbI).
rЛава 2. Консолидация данных 87 ИСТОЧНИКИ данных Хранилище данных Деталиэированные данные ROLAP Аrреrированные данные MOLAP Метаданные Технические 11 Биэнес метаданные ВизyenиЗ8ЦИЯ, отчеты 10 Польэователь Рис. 2.10. fибридное ХД ПРИМЕР в супермаркете. ежедневно обслуживающем десятки тысяч покупателей, установлена реrистрирующая ОLТР система. При этом максимальному уровню детализации реrистри руемыхданных соответствует покупка по одному чеку. в котором указываются общая сумма ПОКУПКИ. наименования или коды приобретенных товаров и стоимость каждоrо товара. Оперативная информация, состоящая из детализированных данных, консолидируется в реляционной структуре )(Д. ( точки зрения анализа представляют интерес обобщенные данные. например. по rруппам товаров. отделам или некоторым интервалам дат. Поэтому исходные детализированные данные аrреrируются и вычисленные arperaTbI сохраняются в мноrомерной структуре rибридноro )(Д.
вв Часть 1. Теория бизнес анализа Система реrистрации продаж (OLTP) rибридное хд , .........- МOLAP . ROLAP Аrреrирование (arperaYЫ (чеки) по arделам и К8Т8ropиt1М, JOвap<*,) Если данные. поступающие из ОLТР системы. имеют большой объем (несколько десятков тысяч заПисей в день и более) и высокую степень детализации, а для анализа использу- ются в ОСновном обобщенные данные, rибридная архитектура хранилища оказывается наиболее подходящей. Недостатком rибридной модели является усложнение администрирования ХД из за более сложноrо реrламента ero пополнения, поскольку при этом He обходимо СОrласовывать изменения в реляционной и мноrомерной структурах. Однако существует и ряд преимуществ, делающих rибридную модель ХД при влекательной. О Хранение данных в реляционной структуре делает их в большей степени сис темно независимыми, что особенно важно при использовании в управлении предприятием экономической информации (показателей). О Реляционная структура формирует устойчивые и непротиворечивые опорные точки для MHoroMepHoro Хранилища. О Поскольку реляционное хранилище поддерживает актуальность и корректность данных, оно обеспечивает очень надежный транспортный уровень для доставки информации в MHoroMepHoe хранилище. Витрины данных С rибридной архитектурой ХД обычно связывают еще одно важное понятие витрины данных (data marts). Ситуация, коrда для анализа необходима вся инфор мация, содержащаяся в ХД, возникает крайне редко. В большинстве случаев под разделения ПредпрИЯТИЯ или орrанизации используют профильную информацию, касающуюся только Toro направления деятельности, которое они обслуживают. Как правило, объем такой тематической информации невелик по сравнению с об щим объемом хранилища и вполне эффективно может обслуживаться MOLAP системой. Концепция витрины данных заключается в выделении профильных данных, чаще Bcero используемых по определенному направлению деятельности, в отдельный набор и в орrанизации ero хранения в отдельной мноrомерной БД, подключенной к централизованному РХД.
rлава 2. Консолидация данных 89 Чаще Bcero Д7IЯ построения витрин данных используется мноrомерная модель, поскольку при небольших объемах данных она обеспечивает более быстрый отклик }ia запросы, чем реляционная, хотя в некоторых случаях используется и реляцион }iЗЯ модель. ОПРЕДЕЛЕНИЕ Витрина данных специализированное локальное тематическое хранилище, подключен ное к централизованному ХД и обслуживающее отдельное подразделение орrанизации или определенное направление ее деятельности. На рис. 2.11 изображена система консолидации с использованием витрин данных. Источники данных Централизованное хранилище данных ROLAP a:::I J II:C::I J MOLAP Витрина данных Витрина данных Витрина данных [g [g [g Польэователь Польэователь Польэователь Польэователь Рис. 2.11. Консолидация с использованием ви1рин данных Использование витрин данных имеет следующие преимущества, делающие их ближе и доступнее конечному пользователю: О содержание данных, тематически ориентированных на КOHKpeтHoro пользова теля; О относительно небольшой объем хранимых данных, на орrанизацию и поддерж ку которых не требуется значительных затрат; О улучшенные возможности в разrpаничении прав доступа пользователей, так как каждый из них работает только со своей витриной и имеет доступ только к ин формации, относящейся к определенному направлению деятельности.
90 Часть 1. Теория ()изнес анализа Использование витрин данных наиболее эффективно в крупных орrаниза циях с большим количеством независимых подразделений, каждое из которыJ решает собственные аналитические задачи. В этом случае витрины данных MOryJ применяться как самостоятельно, так и вместе с централизованным хд. Однак( использование самостоятельных витрин данных сопряжено с такой проблемой, юu MHoroKpaTHoe дублирование данных в различных витринах, что в конечном итон может привести к противоречивости данных. Использование витрин данных вместе с централизованными хд ПОЗВОЛЯС1 повысить достоверность данных, получаемых пользователями витрин, поскольк) витрины питаются данными из хранилищ, rде автоматически подцерживаетС$ целостность и непротиворечивость данных и производится их очистка. Кроме Toro корпоративная информационная система может эффективно наращиваться з< счет добавления новых витрин данных. И наконец, использование витрин данныJ позволяет снизить наrpузку на централизованное хд. Примером орrанизации централизованноrо хд с витринами данных для пред. приятия с большим количеством подразделений может служить схема, представ. ленная на рис. 2.12. ИСТОЧНИКИ данных Централизованное хранилище данных Витрина данных Витрина данных Витрина данных Q Отдел эакупок Отдел продаж Маркетинrовый Рекламный отдел отдел Рис. 2.12. Централизованное хд с витринами данных в настоящее время концепция витрин данных находит очень широкое приме. нение при построении систем бизнес аналити:ки, особенно для мноrопрофильньп предприятий со сложной орrанизационной структурой.
rлава 2. Консолидация данных 91 2.7. Виртуальные хранилища данных при всех положительных сторонах хранилища данных как отдельноrо консолиди pOBaHHoro источника встречаются ситуации, коrда эта идея не работает. Дело в том, что устоявшейся практикой является ночная заrpузка собранных за день данных 113 ОLТР систем в ХД, Такой реrламент позволяет уменьшить наrрузку на OLTP Сl1стему в течение рабочеrо дня, то есть в период ее активноrо использования. Чаще чеМ один раз в сутки пополнять ХД смысла не имеет. Однако подобное положение вещей не обеспечивает возможности анализировать информацию в течение рабо чеrо дня сразу по мере ее постуrurения. Иноrда это очень критично, и приходится I1скать альтернативу традиционному (физическому) ХД. Кроме Toro, неизбежной проблемой при использовании ХД в бизнес аналитике является избыточность. Она снижает эффективность использования дисковоrо пространства и оперативной памяти серверов, а при очень больших объемах xpa Jfящейся и обрабатываемой информации может вызвать снижение производитель ности, возрастание времени ожидания отклика на запрос и даже привести к полной неработоспособности системы, Избыточность в той или иной степени характерна как для реляционных, так и для MHoroMepHbIx хранилищ, Ситуация усуryбляется еще и тем, что ХД хранят историческую информацию и реализуют принцип неизменчивости данных, То есть в отличие от обычных систем оперативной обработки (ОLТР систем), rде хранятся лишь актуальные данные, а данные, утратившие актуальность, уничтожаются, ХД MOryT только по полняться новыми данными, а удаление исторических данных не производится, Кроме Toro, часто требуется хранить большие объемы аrреrированных данных. В совокупности эти факторы MOryT привести к «взрывному!> росту объемов ХД. Хотя ради справедливости заметим, что непрекращающееся развитие информа ционных технолоrий приводит к снижению стоимости хранения информации на машинных носителях. Преодолеть вышеперечисленные проблемы позволяет концепция вирmуалЬНОlО хранилища дaHHых (ВХД). В ее основе лежит принцип, в соответствии с которым данные из локальных источников, внешнеrо окружения, баз данных и учетных систем не консолидируются в единое ХД физически, а извлекаются, преобразу Ются и интеrрируются непосредственно при выполнении запроса в оперативной памяти компьютера. Фактически запросы адресуются непосредственно к источ никам данных. ОПРЕДЕЛЕНИЕ Вир-туальным хранилищем данных называется система, которая работает с разрозненными источниками данных и змулирует рабо-ту обычноro хранилища данных, извлекая, преобразуя и интеrрируя данные непосредственно в процессе выполнения запроса. Преимущества TaKoro подхода очевидны. О Появляется возможность анализа данных в ОLТР системе сразу после их по стуrurения без ожидания заrрузки в хранилище.
92 Часть 1. Теория бизнес анализа о Минимизируется объем требуемой дисковой и оперативной памяти, по- скольку отсутствует необходимость хранения исторических данных и MHoro- численных аrреrированных данных для различных уровней обобщения информации. о Наличие в вхд развитоrо семантическоrо слоя позволяет аналитику полно- стью абстраrироваться от проблем, связанных с процессом извлечения дaHНЬnC из разнообразных источников, и сосредоточиться на решении задач аналИЗа данных. При работе с вхд пользователь, можно сказать, имеет дело с «иллюзией. хранилища данных (рис. 2.13). Виртуальность предполаrает, что ВХД существует только до тех пор, пока работает соответствующее приложение. Как только оно завершает работу, виртуальное хранилище прекращает существование. ИСТОЧНИКИ данных Виртуальное хранилище данных Запросы t т .. 1 Данные -t';" АнМИТИ"Iеская система I Польэователь Рис. 2.13. Виртуальное хд Концепция ВХД имеет ряд недостатков по сравнению с хд, rде информация консолидируется физически. О Увеличивается наrpузка на ОLТР систему, потому что, помимо обычных поль зователей, к ней обращаются аналитики с нереrламентированными запросами. В результате производительность ОLТР системы падает. О Источники данных, информация из которых запрашивается в вхд, MorYT оказаться недоступными, если доступ к ним осуществляется по сети или если
rлава 2. Консолидация данных 93 изменилось место их локализации, Временная недоступность хотя бы одноrо из источников может привести к не возможности выполнения запроса или к ис кажению представленной по нему информации, (J Отсутствует автоматическая поддержка целостности и непротиворечивости данныХ, MorYT быть утеряны отдельные фраrменты документов и т. д, (J Данные в источниках хранятся в различных форматах и кодировках, что может привести к ошибкам при их обработке и к искажению информации, полученной в ответ на запрос. (J Из за возможной несоrласованности моментов пополнения источников данных и из за отсутствия поддержки в них хронолоrии по одному и тому же запросу в различные моменты времени MOryT быть получены отличающиеся данные. (J Практически невозможна работа с данными, накопленными за долrий период времени, поскольку в ВХД доступны только те данные, которые находятся в источниках в конкретный момент времени. Важнейшей особенностью ВХД является то, что они, работая непосредственно с источниками, содержащими данные оперативноrо учета, имеют дело с данными в пределах HeKoToporo периода актуальности. Это связано с тем, что ОLТР систе мы не хранят исторические данные. Поэтому если исторические данные иrрают важную роль при анализе, то предпочтительно применять разновидности ХД с физической консолидацией данных, А ВХД следует использовать в системах, ориентированных на анализ оперативной информации, актуальной только в тече ние оrpаниченноrо периода. Довольно типична ситуация, коrда оперативные реrистрационные данные заносятся в обычное офисное приложение, например в таблицы Excel, Это MOryT быть сведения о поступлении или об отrрузке товара, о наличии ero на складе и т. д. Для такой информации характерна высокая скорость пополнения. Опе ративную деятельность, как правило, осуществляют менеджеры по продажам, складские работники и т, д" то есть персонал, уровень компьютерной подrотовки KOToporo соответствует офисным приложениям, Более стабильная информация, например, о клиентах или поставщиках хранится в учетной системе, поддержи ваемой администратором. При необходимости проанализировать, например, эф фективность работы с клиентами на основе их покупательской активности система самостоятельно обращается к соответствующим источникам (Excel, базы данных, текстовые файлы и др,), собирая нужную информацию, При этом пользователь работает с ними как с единым источником информации, несмотря на то что данные получены из нескольких источников различных типов. Такая ситуация схематично про иллюстрирована на рис. 2.14. Даже коrда одна и та же фирма выступает и в роли поставщика, и в роли по купателя, не происходит дублирования или противоречия, В одном случае запрос связывает фирму с данными из таблицы <!:Поставки , а в друrом с данными из таблицы <!:Отrpузки . Таким образом, виртуальное хранилище, формируя запрос «на лету», позволяет минимизировать избыточность и более эффективно исполь зует дисковое пространство,
94 Часть 1. Теория бизнес анализа Клиент MS Ехсеl Фирма rород Адрес Товар ВХД Цена Фирма Кол во НЩ1И11'1'ЦiМ:кая rород смстема Сумма Товар Кол во А Поставки dBase IV Товар o I Цена Польэователь Кол во Сумма Рис. 2.14. Вариант орrанизаuии ВХД Таким образом, применение вхд оказывается полезным для предприятий, которые не имеют технических средств и квалифицированноrо персонала для поддержки физических хд. Особенно велики преимущества ВХД при необхо димости анализировать самую свежую информацию. В ВХД отсутствует этап заrpузки данных, поэтому временной интервал между появлением информации в ОLТР системе и ее rотовностью к анализу данных минимален. При этом следует учитывать, что, поскольку ВХД по.zщерживает историческую информацию только за период актуальности ОLТР систем, применение тaKoro хранилища оправданно лишь тоrда, коrда исторические данные для анализа не требуются. 2.8. Нечеткие срезы Хороший пример обоrащения одной технолоrии (хранилища данных) дрyrой (He четкая лоrика) демонстрируют нечеткие срезы (fuzzy slices). Под ними понимают ся фильтры по измерениям, в которых Фиryрируют нечеткие величины, например «все молодые заемщики с небольшим ДOXOДOM . В реляционных базах данных эту роль выполняют нечеткие запросы (fuzzy queries, flexible queries), которые впервые предложены в начале 80 x п. в работах д. Дюбуа и [. Прада.
rлава 2. Консолидация данных 95 Так как информация в ХД присутствует в четком виде, для использования в фильтрах нечетких понятий нужно предварительно формализовать их, что дела ется при помощи нечетких множеств, описание которых при водится ниже, Нечеткие множества Математическая теория нечетких множеств (fuzzy sets) инечеткая лоrика (fuzzy logic) являются обобщениями классической теории множеств и классической формальной лоrики, Данные понятия были впервые предложены американским ученым Лотфи Заде (Lotfi Zadeh) в 1965 [. Основной причиной появления новой теории стало наличие нечетких и приближенных рассуждений при описании че ловеком процессов, систем, объектов. Характеристикой нечеткоrо множества выступает функция принадлежности (membership function), Обозначим через fl(X) степень принадлежности элемен та х к нечеткому множеству, представляющую собой обобщение понятия характери стической функции обычноrо множества. Тоrда нечетким множеством С называется множество упорядоченных пар вида С == {fl(X)/X}, при этом fl(X) может принимать любые значения в интервале [О, 1], Х Е Х. Значение fl(X) == О означает отсутствие принадлежности к множеству, 1 полную принадлежность. Проиллюстрируем это на простом примере, Формализуем неточное определение «неблаrонадежный заемщик . В качестве Х (область рассуждений) будет выступать количество случаев просроченной задолженности по кредиту за последние 6 меся цев, Пусть оно изменяется от О до 6. Нечеткое множество, определенное экспертом, может выrлядеть следующим образом: с == {о/о; 0,4/1; 0,7/2; 0,9/3; 1/4; 1/5; 1/6}, Так, заемщик, совершивший две просрочки, принадлежит к множеству неблarо надежный» со степенью принадлежности 0,7, Для одноrо банка такое число просро чек может быть крайне существенным, для друrоrо просто тревожным сиrналом. Именно в этом и проявляется нечеткость задания соответствующеrо множества. Для переменных, относящихся к непрерывному виду данных, функцию при надлежности удобнее задать аналитической формулой и для наrлядности изобра зить rрафически. Существует свыше десятка типовых форм кривых для задания функций принадлежности, Рассмотрим самые популярные кусочно линейные: треуrольную и трапецеидальную (рис. 2,15). о о х х а ь с а ь с d Рис. 2.15. Типовые функции принадлежности
96 Часть 1. Теория бизнес анализа 1jJеуlOЛЬНая функция принадлеЖ1l0сти определяется тройкой чисел (а, Ь, с), и ее значение в точке Х вычисляется соrласно выражению: x a а S Х S Ь, b a ' fl(X) == C X Ь s Х s с, c b ' О, в остальных случаях, Аналоrично для задания трапецеидальной функции принадлежности необхо дима четверка чисел (а, Ь, с, d): x a , а<х<Ь, b a 1, Ь S Х S с, d x , c<x<d, d c fl(X) == О, в остальных случаях. Для нечетких множеств, как и для обычных, определены основные лоrические операции. Самыми необходимыми для расчетов являются пересечение, объедине ние и отрицание, О Пересечение двух нечетких множеств А п В (нечеткое И»): !l(X) == min(!lA(X), !lB(X» ' о Объединение двух нечетких множеств А u В (нечеткое ИЛИ!»: !l(X) == max(!lA(X), !lix». о Отрицание нечеткоrо множества ,А: !l(X) == 1 !lA(X), rде !l(x) результат операции; !lA(X) степень принадлежности элемента Х к множеству А; !lB(X) степень принадлежности элементах к множеству В. Совокупность нечетких множеств, относящихся к одному объекту, образует линrвистическую переменную, Например, линrвистическая переменная Воз раст может принимать значения Молодой, Средний, Пожилой (их еще называют базовым терм множеством, или термами). Зададим область рассуждений в виде Х == {х 10::; х:5: 90} (rоды). Теперь осталось построить функции принадлежности для каждоrо терма (рис, 2.16). Каждая функция принадлежности описывается четверкой чисел: Молодой == == {о; о; 12; 40}, Средний == {20; 30; 50; 70}, Пре'КJlОННЫЙ == {50; 60; 90; 90}.
rлава 2. Консолидация данных 97 J.l(x) 1,0 0.8 п(>жило 0,6 0,4 0,2 О 10 20 ЗО 40 50 60 70 80 90 х Рис. 2.16. rрафическое иэображение линrвистической переменной «Воэраст Принцип формирования нечетких срезов Линrвистические переменные можно задать для любоrо измерения, атрибута из мерения или факта, значения KOToporo имеют непрерывный вид. Их параметры: названия, терм множества, параметры функций принадлежности будут coдep жаться в семантическом слое хранилища данных (рис. 2.17). Нечеткое h -::::: Деталиэированные данные ROLAP Семантический слой I Метаданные I Линrвистические переменные л;< q r и п е р к у б / иэмерение Нечеткое " / / / иэмерение " / / / V / Нечеткий факт / Нечеткий u @] среэ Нечеткое иэмерение Рис. 2.17. Вариант орraниэации хранилища данных с поддержкой нечетких среЭОБ Результатом выполнения нечеткоrо среза, помимо caMoro подмножества ячеек rиперкуба, удовлетворяющих заданным условиям, является индекс соответствия
98 Часть 1. Теория бизнес анализа l1(х) 1,0 с1 о Х, Х, Рис. 2.18. Нечеткое множество 1. Задание нечеткоrо среза 2. Задание минимальноrо индекса соответствия з. Преобразование нечеткоrо среза в SQL эапрос 4. Запрос к ХД 5. Расчет С/ для каждой записи в запросе б. Сортировка набора данных по убыванию С/ Рис. 2.19. Алrоритм получения нечеткоrо среза х срезу СI Е [О, 1]. Он представляет собой итоrо- вую степень принадлежности к нечетким мно- жествам измерений и фактов, участвующих в сечении куба, и рассчитывается для каждой записи набора данных, Чтобы ускорить выпол- нение запросов к ХД, часто задают веРХНЮIQ rpаницу индекса соответствия СI а. Это по- зволяет уже на уровне SQL запроса отсеять записи, которые заведомо не будут удовлет, ворять минимальному пороrу индекса соот- ветствия (рис, 2,18), На рисунке видно, что элементы нечет- Koro множества со значениями в интервале [Хl; Х2] обеспечат степень принадлежности не ниже а. Алrоритм формирования нечеткоrо среза иллюстрирует схема (рис, 2,19), На шаrе 1 используется семантический слой храни- лища данных. На шаrе 3 в результирующий SQL запрос попадают rраницы с учетом ми нимальноrо индекса соответствия а, Шаr 5 предполаrает применение нечетких лоrиче ских операций. Рассмотрим пример. Пусть в хранилище содержится информация о соискателях BaKaH сий, и срез (четкий) по измерениям Код aHKe ты, Возраст и Стаж работы обеспечивает следующий набор данных (табл. 2.4), Очевидно, что Код анкеты это служебное поле. Для возраста будем использовать линr- вистическую переменную, определенную на рис. 2.16, а для поля Стаж работы перемен ную, определенную на рис. 2.20. Каждая функ- ция принадлежности описывается числами: Малый == {о; о; 6}, Продолжительный == {3; 6; 10; 20}, Большой == {15; 25; 40; 40}. Таблица 2.4. Срез по измерениям «Возраст!> и <!Стаж работы!> Код анкеты Возраст Стаж работы 1 23 4 2 34 11 3 31 10 4 54 36
rлава 2. Консолидация данных 99 КОД анкеты Возраст СТаж работы 46 26 5 6 38 15 21 1 7 8 23 2 9 30 8 10 30 12 J..l(x) Малый Пl?одолжите ьны 1, Большой О, 5 1 О 15 20 25 ЗО З5 40 Х О, О, Рис. 2.20. rрафическое изображение линrвистической переменной Стаж работы!> Сделаем нечеткий срез «Возраст == Средний и Стаж работы == Продолжитель НЫЙ». Например, для анкеты 4 получим: . . ( 70 54 ) СI == mln(flcf'C""lIii (54), flII Р ()Il Il .'ЖIIН',"ЫJl"ii (36)) == mln 20 ,1 == 0,8. Аналоrично рассчитаем степени принадлежности к итоrовому нечеткому MHO жеству для каждоrо претендента, зададим минимальный индекс соответствия, равный 0,3, и получим результат, показанный в табл. 2.5. Таблица 2.5. Результат нечеткоrо среза Код анкеты Возраст СТаж работы Индекс соответствия 3 31 10 1 9 30 8 1 б 38 15 1 2 34 11 0,9 10 30 12 0,8 8 23 2 0,3 1 23 4 0,3 Нечеткий поиск в хранилищах данных принесет аналитику максимальную поль зу в случаях, коrда требуется не только извлечь информацию, оперируя нечеткими понятиями, но и каким то образом проранжировать ее по убыванию (возрастанию) Степени релевантности запроса. Это позволит ответить на следующие вопросы: каких КЛиентов обзвонить в первую очередь, кому сделать рекламное предложение и т. д.
100 Часть 1. Теория бизнес анализа 2.9. Введение в ETL Извлечение данных из разнотипных источников и пере нос их в хранилище данных с целью дальнейшей аналитической обработки связаны с рядом проблем, ОСНОвнь!_ ми из которых являются нижеследующие. О Исходные данные расположены в источниках самых разнообразных типов и форматов, созданных в различных приложениях, и, кроме Toro, MorYT Ис пользовать различную кодировку, в то время как для решения задач анализа данные должны быть преобразованы в единый универсальный формат, который поддерживается ХД и аналитическим приложением. О Данные в источниках обычно излишне детализированы, Torдa как для решения задач анализа в большинстве случаев требуются обобщенные данные. о Исходные данные, как правило, являются «rpязными», то есть содержат раз личные факторы, которые мешают их корректному анализу. Поэтому для пере носа исходных данных из различных источников в ХД следует использовать специальный инструментарий, который должен извлекать данные из источников различноrо формата, преобразовывать их в единый формат, Поддер живаемый ХД, а при необходимости производить очистку данных от факторов, мешающих корректно выполнять их аналитическую обработку, Такой комплекс проrраммных средств получил обобщенное название ETL (от анrл, extraction, transformation, loading «извлечение», «преобразование», «заrpузка1». Сам про цесс переноса данных и связанные с ним действия называются ЕТL-процессом, а соответствующие проrpаммные средства ETL cucтeMa.мu, ОПРЕДЕЛЕНИЕ ETL комплекс методов, реализующих процесс переноса исходных данных из различ- ных источников в аналитическое приложение или поддерживающее ero хранилище данных. Основные цели и задачи процесса ETL Приложения ETL извлекают информацию из одноrо или нескольких источников, преобразуют ее в формат, поддерживаемый системой хранения и обработки, которая является получателем данных, а затем заrpужают в нее преобразованную информа- цию, Изначально ЕТL системы использовались для пере носа информации из более ранних версий различных информационных систем в новые. В настоящее время ЕТL системы все более широко применяются именно для консолидации данных с целью их дальнейшеrо анализа. Очевидно, что поскольку ХД MOryT строиться на основе различных моделей данных (MHoroMepHbIx, реляционных, rибридных), то и процесс ETL должен разрабатываться с учетом всех особенностей используемой в ХД модели. Кроме Toro, желательно, чтобы ЕТL система была универсальной, то есть моrла извлекать и пере носить данные как можно большеrо числа типов и форматов.
rлава 2. Консолидация данных 101 Независимо от особенностей построения и функционирования ЕТL система должна обеспечивать выполнение трех основных этапов процесса переноса данных (ЕТL процесса). CJ Извлечение дaHHы.. На этом этапе данные извлекаются из одноrо или He скольких источников и подrотавливаются к преобразованию. Следует OTMe тить, что для KoppeKTHoro представления данных после их заrрузки в ХД из источников должны извлекаться не только сами данные, но и информация, описывающая их структуру, из которой будут сформированы метаданные для хранилища. CJ Преобразование дтfны.. Производятся преобразование форматов и кодировки данных, а также их обобщение и очистка. CJ Заlрузка дaHHых запись преобразованных данных в соответствующую сис тему хранения, Перемещение данных в процессе ETL можно разбить на последовательность процедур, представленных следуюшей функциональной схемой (рис. 2.21). ИСТОЧНИКИ данных Извлечение Преобразование Заrрузка ХА Данные Очистка данных , Данные , структур,ы Метаданные i ,]Метаданные I , I .. - Рис. 2.21. Обобщенная структура процесса ETL 1. Извлечеmtе. Данные извлекаются из источников и заrpужаются в промежуточ ную область. 2. Пош;к ошибок Производится проверка даlШЫХ на соответствие спецификациям и возможность последующей заrpузки в ХД. з. Преобразоваmtе. Данные rpуппируются и преобразуются к виду, COOTBeTCTBY ющему структуре ХД. 4. Распределение. Данные распределяются на несколько потоков в соответствии с особенностями орrанизации процесса их зarpузки в ХД.
102 Часть 1. Теория бизнес анализа 5. Вставка. Данные заrpужаются в хранилише получатель. С точки зрения процесса ETL архитектуру ХД можно представить в виде тре) компонентов (рис. 2.22), таких как: О источник данных содержит структурированные данные в виде отдеЛЬНОF таблицы, совокупности таблиц или просто файла, даlШые в котором, например упорядочены в типизированные столбцы, отделенные друr от дрyrа некоторЫМf символами разделителями; О промежуточная областъ содержит вспомоrательные таблицы, создаваемы( временно и исключительно для орrанизации процесса выrpузки; О получателъ данных ХД или просто БД, в которую должны быть помешень извлеченные данные. Поток данных r Промежyrочнан область Вcnомоraтельные таблицы Получатель данных (ХД,БД) Источник данных Правила обработки (аналитик) Рис. 2.22. Потоки данных в ETL Перемещение данных от источника к получателю называется потоком дaHHых Требования к орraнизации потоков даlШЫХ описываются аналитиком. ETL часто рассматривают как просто подсистему переноса данных из различ ных источников В централизованное хранилише. Что касается самих хранилиu данных, то они, cTporo rоворя, не связаны с решением какой либо KOHKpeTHoi аналитической задачи. Задача хранилища обеспечивать надежный и быстрыi доступ к данным, поддерживать их хронолоrию, целостность и непротиворечи вость. Поэтому на первый взrляд ETL оказывается отделенным от собственнс анализа данных. Однако такой взrляд на ETL не позволит добиться преимущеСТЕ которые можно получить, если рассматривать ero как неотъемлемую часть анали тическоrо процесса. Опытный аналитик знает особенности и характер данных, циркулируюши: на различных уровнях корпоративной информационной системы, частоту и: обновления, степень «заrрязненности , уровень их значимости и т. д. Это дае' ему возможность с помощью комбинации различных методов преобразованш данных в ETL добиться достаточноrо уровня обобшения и качества дaHHЫ
rлава 2. Консолидация данных 103 (опавших в хранилище, выбрать оптимальный реrламент и технические требо ( П б v v j3а НИЯ ero пополнения. оследнее осо енно важно для орrанизации со сложнои fliоrоуровневой филиальной структурой и большим количеством подразделе tIl 1Й . Например, если известно, что информация, поступающая из определенных подразделений фирмы, является самой важной и полезной, а также часто анали зируется, то в реrламент переносаданных в хранилище можно внести COOTBeTCTBY lO1дие приоритеты, Таким образом, ETL следует рассматривать не только как процесс переноса данНЫХ из одноrо приложения в друrое, но и как инструмент их подrотовки к aHa лизу, 2.10. Извлечение данных в ETL Введение Начальным этапом процесс а ETL является процедура извлечения записей из источника данных и подrотовка содержащейся в них информации к процессу преобразования, При разработке процедуры извлечения данных в первую очередь необходимо определить реrламент заrрузки ХД и соответственно частоту выrрузки данных из ОLТР систем или отдельных источников, Например, выrрузка может произ водиться по истечении заданноrо BpeMeHHoro интервала (день, неделя, месяц или квартал), В некоторых случаях предусматривается возможность внереrламентноrо извлечения данных после завершения определенноrо бизнес события (приобре тение HOBoro бизнеса, открытие филиала, поступление большой партии товаров), В зависимости от объема извлекаемых данных, сложности доступа к ним и CKOpO сти работы оборудования, выrpузка данных занимает определенное время, которое так и называют «окно выrpузки». Очевидно, что в течение «окна выrрузки» резко увеличивается наrрузка на компьютерную сеть орrанизации и ее работа может оказаться частично или полностью парализованной, Особенно это актуально для ОLТР систем, rде в такие периоды может резко возрасти время ожидания откли Ка. Поэтому «окно выrрузки» стараются выбрать так, чтобы оно в минимальной Степени влияло на рабочий процесс, например в обеденный перерыв, сразу по завершении рабочеrо дня или ночью, Если выrрузку данных производить более часто, то, с одной стороны, количе ство «окон заrрузки» увеличивается, но поскольку за меньший период в OLTP СИстеме накапливается меньше изменений, то «окна заrpузки» становятся короче И наrрузка на систему ниже, Процедуру извлечения можно реализовать двумя основными способами. 1, Извлечение данных с помощью специа.лизированных проrраммных средств (рис. 2.23).
104 Часть 1. Теория бизнес анализа OL TP система Данные 10 :::Е S ф ... C'I U>O SCI. U ... I:[] о 11 с: EТL хд Рис. 2.23. Первый способ извлечения данных в ETL Преимущества данноrо способа заключаются в том, что использование спе циализированных проrрамм позволяет, во первых, избежать необходимости оснащать ОLТР системы средствами выrpузки, BO BTOpЫX, учитывать особен ности Bcero ЕТL процесса уже в процесс е выrрузки. В случае, коrда данные извлекаются из локальных источников (отдельных документов, таблиц и т. д,), альтернативы использованию специальных средств нет, поскольку такие виды Источников данных не содержат средств выrpузки данных, 2. Извлечение данных средствами той системы, в которой они хранятся (рис. 2,24). OL ТР система , , ..... ........ Данные Подсистема EТL хд выrруэки I I I "-..... I I Рис. 2.24. Второй способ извлечения данных в ETL Поскольку средства самовыrpУЗКИj> разрабатываются с учетом особенностей структуры данных ОLТР системы, это позволяет адаптировать процедуру из влечения к структуре извлекаемых данных, что в ряде случаев делает процесс более эффективным. После извлечения данные помещаются в так называемую промежуmочную об ласmъ, rде для каждоrо источника данных создается своя таблица или отдельный файл (или и то и друrое). В некоторых случаях, коrда требуется выrpузить данные из нескольких источников одноrо типа, для них создается общая таблица; одно из ее полей указывает на источник, из KOToporo бьши взяты данные. Пример подобной схемы орrанизации выrpузки приведен на рис. 2,25, Чтобы начать процесс извлечения данных, в общем случае необходимо исполь зовать некоторую служебную информацию: О имя набора данных, из KOToporo следует извлечь записи; О номер записи, с которой начинается извлечение;
rлава 2. Консолидация данных 105 ИСТОЧНИКИ даннЫХ Промежуточная область Таблица (txt) ХА Рис. 2.25. Схема орrанизации ETL о количество извлекаемых записей; О формат представления данных; О максимальная длина записи, доступная для извлечения, и т. д. Выбор используемых источников данных Перед тем как приступить к процессу извлечения данных, необходимо определить, в каких именно источниках хранятся данные, которые должны попасть в храни лище. Все источники можно разделить на две rруппы расположенные в корпо ративных информационных системах и на локальных компьютерах отдельных пользователей, С точки зрения соблюдения реrламента и периодичности заrpузки данных в ХД предпочтительны источники из первой rpуппы, поскольку они также функционируют в соответствии с определенным порядком, который проще соrласо вать с периодичностью заrpузки данных в хранилище, Что касается источников на локальных ПК, то обычно никаких сколь нибудь строrих правил работы с ними не устанавливается: пользователи включают и выключают компьютеры, коrда хотят; постоянно возникают те или иные проблемы с сетью и т. д. Тем не менее именно на локальных компьютерах часто собирается очень ценная для анализа информация. Поэтому при выборе источников данных для заrpузки в хд необходимо учитывать следующие факторы: О значимость данных с точки зрения анализа; О сложность получения данных из источников; О возможное нарушение целостности и достоверности данных; О объем данных в источнике. Как правило, приходится искать компромисс между этими факторами. Напри мер, данные MOryт представлять несомненную ценность для анализа, но сложность их извлечения или некорректность структуры может свести на нет все преимущества
106 Часть 1. Теория биэнес аналиэа от их использования. В друrом случае данные леrкодоступны и не требуют допол- нительной обработки при заrpузке в ХД, но при этом практически не представляют интереса с точки зрения анализа. Особенности орrанизации процесса извлечения данных После Toro как источники, из которых будут извлекаться данные, выбраны, необ- ходимо определить, все ли имеющиеся в источниках данные нужны в ХД, Если извлекать нужно не все записи подряд, а только определенные, аналитик может описать набор условий, которые позволят отобрать только записи, пред. ставляющие интерес, Например, можно поставить условие, что записи, которые содержат информацию о продажах на сумму меньше заданной, извлекать и поме- щать в ХД не нужно, поскольку их ценность с точки зрения результатов аналИза ничтожна, ПРИМЕР Леrко представить, что посетитель супермаркета зашел туда случайно: не для покупки това- ра, а чтобы переждать дождь, встретиться с кем-то, помочь донести сумки и т. д. При ЗТОМ он приобретает коробку спичек, авторучку или друryю мелочь, которую Mor купить и на обыч- ном уличном лотке. Однако даже для спичечноrо коробка пробивается чек и создается со- ответствующая запись в реrистрирующей системе. И запись о покупке спичечноro коробка за 50 коп. требует места на диске или в памяти не меньше, чем о продаже бутылки коньяка за 1000 руб. в результате после аrреrирования данных о продажах за день по отделу выяс- няется, что зареrистрировано 100 продаж, которые дали в сумме 300 руб., и 10 продаж на общую сумму 15 000 руб. Возникает вопрос: нужно ли тратить время на обработку и хра- нение orpoMHoro количества записей, вклад которых в результат анализа будет ничтожен. Более Toro, включение в анализ информации о мелких покупках, сделанных случайными клиентами, может только помешать, например, построению модели поведения постоянных клиентов. Позтому аналитик может задать условие, что извлекаться должны лишь те записи, в которых значение поля «Сумма» не менее 20 руб. Друrой важный момент определение rлубины выrpузки данных по времени, Очевидно, что все записи понадобятся только при первичном заполнении хранили ща. В процессе ero пополнения из источников должны извлекаться лишь те записи, которые добавлялись или изменялись после прошлоrо извлечения. Иноrда храни лища полностью очищают и перезаrpужают. Но это возможно только в случае, если ХД не очень большое и процесс реrенерации занимает не слишком MHoro времени, а также если реrенерация происходит редко и за промежуток времени между ними большая часть данных изменяется или утрачивает актуальность. Вопрос определения rлубины выrрузки актуален только при начальной за rрузке хранилища, коrда требуется определить, информация за какой период времени является актуальной. В простейшем случае, коrда никаких соображений на этот счет нет, можно заrpузить все имеющиеся записи. Однако этот подход не всеrда оптимален, поскольку в хранилище может оказаться MHoro информации, не представляющей ценности для анализа в связи с потерей актуальности. Ta ким образом, выбор rлубины выrрузки исторических данных должен обеспечить
rлава 2. Консолидация данных 107 j{ОМnРОМИСС между объемом выrpужаемых данных и их ценностью с точки зрения аlI аЛиза . Процедура определения rлубины выrpузки облеrчается, если в источнике дaH lIы:x: nрисутствует поле, в котором указывается время создания и изменения каждой записи, В этом случае отбирать извлекаемые записи по времени можно с помощью lIесложноrо фильтра. При повторных заrpузках ХД важно не только определить rлубину выrpузки, tЮ и орrанизовать поиск измененных данных вообще, Для этой цели разработаны различные методики, например использование меток времени. Для каждой изме lIеlIlIОЙ записи создается метка, указывающая на время изменения, и при очередной выpузкеe извлекаются только те записи, метки времени которых созданы позднее прошлоrо извлечения, Если источником данных является реляционная СУБД, то часто используются так называемые триrrеры (triggers) специальные процедуры, запускаемые aBTO матически при выполнении операций вставки, обновления или удаления. Триrrеры позволяют сохранять измененные записи в специальной таблице (таблице изме нений), из которой они мотут быть извлечены при следующей выrpузке, Однако использование триrrеров существенно увеличивает наrpузку на систему, поэтому, если система уже работает с большой наrpузкой, к применению триrrеров надо подходить осторожно, Особенности извлечения данных из различных типов источников Процесс извлечения данных в рамках ETL существенно зависит от типов и CTPYK туры источников данных, Можно выделить три разновидности источников данных, с которыми чаще всето сталкиваются орrанизаторы аналитических проектов. Базы данных (SQL Server, Oracle, Firebird, Access и т. д.), В большинстве слу чаев извлечение данных из баз данных не вызывает проблем, поскольку структура данных в них жестко задана, соответствует определенным стандартам и общепри нятым требованиям. Кроме тото, во мноrих СУБД предусмотрен автоматический контроль за целостностью и непротиворечивостью данных, СТРУКТУРИРОВaJПlые файлы различных форматов. Такие файлы очень широко распространены, поскольку средства их создания (в большинстве случаев это ти повые офисные приложения) общедоступны и не требуют высокой квалификации персонала и высокой производительности систем. К таким источникам относятся текстовые файлы с разделителями, файлы электронных таблиц (например, Excel, СSV файлы, НТМL документы и т. д.). Здесь проблем больше, поскольку пользо ватель может допускать ошибки, пропуски, вводить противоречивые данные, Te рять фраrменты данных и т. д. Пользователи офисных приложений часто понятия не имеют о том, что такое тип данных, и уж тем более не связывают вводимые ими данные с задачами будущеrо анализа, Очевидно, что в этой ситуации при извлече нии данных можно столкнуться с чем утодно. Единственным плюсом является то,
108 Часть 1. Теория биэнес аналиэа что для доступа к типовым структурированным данным можно при менять таКИе стандартные средства, как ODBC и ADO. Неструктурированные источники. Как правило, эта ситуация требует особо rо внимания. Если избежать использования неструктурированных ИСТОЧНИКов I1е получается, нужно применить специальные средства их преобразования в струк_ турированный вид. Коrда источник невелик, возможно, это удастся сделать вручную. Но в большинстве случаев приходится разрабатывать специальный ин- струментарий, учитывающий особенности орrанизации данных в источнике и То, какую структуру из них следует создать. Существуют также rOToBbIe проrpаММНые системы для решения этой задачи. Конечная цель структурирования так упо- рядочить данные в файле, чтобы их в том или ином виде можно было заrрузить в реляционную таблицу, Таким образом, извлечение данных из ОLТР систем, СУБД и отдельных CТPYK турированных источников в рамках ЕТL-процесса может оказаться задачей доста- точно сложной в техническом плане и важной для эффективноrо анализа данных, Поэтому разработкой и орrанизацией процесса извлечения данных должны зани- маться как технические специалисты, так и аналитики. 2.11. Очистка данных в EТL Два уровня очистки данных Наличие «rрязных» данных одна из важнейших и трудно формализуемых проблем аналитических технолоrий вообще и ХД в частности. Очистка данных обязательна при их переrрузке в хранилище, и при разработке стратеrии ETL это му уделяется большое внимание, Следует отметить, что, помимо очистки данных перед их заrpузкой в хранилище, пользователь может выполнить дополнительную очистку средствами аналитической системы уже после выполнения запроса к хд. Такое дублирование вполне оправданно по ряду причин. О В данных, извлекаемых из различных источников, MOryт содержаться проблемы, из за которых выполнить заrpузку данных в ХД будет невозможно, о Конечный пользователь чаще Bcero не имеет представления обо всех особен ностях данных в источниках, из которых они извлекаются, и поэтому не может (и не должен) разрабатывать стратеrию очистки. О Вторичная очистка данных, предусмотренная в аналитической системе, по своим методам и целям существенно отличается от очистки данных в процессе ETL. Целесообразность применения Toro или иноrо метода очистки данных, полученных в результате запроса из хд. определяется пользователем, исходя из особенностей конкретной задачи анализа. При этом часто используется субъ- ективное мнение аналитика, основанное на личном опыте. Например, одному специалисту rладкость ряда данных покажется недостаточной для решения определенной задачи анализа и он применит процедуру crлаживания для
rлава 2. Консолидация данных 109 ОЧИСТКИ ОТ шумов или аномальных значений. В то же время друrой аналитик скажет, что в результате сrлаживания вместе с шумом и аномалиями подавлены изменения, несущие полезную информацию. О Некоторые виды ошибок (например, противоречия и аномальные значения) MorYT быть обнаружены только после консолидации данных, Действительно, нельзЯ сделать вывод, что некоторое значение является аномальным, пока не произведено ero сравнение с соседними значениями. Таким образом, первичная очистка данных в процесс е ETL носит в большей CTe пени технический характер. Ее основная задача подrотовить данные к заrрузке в хранилище, Вторичная очистка в аналитической системе является пользователь скай, она направлена на подrотовку данных к решению конкретной аналитической задачи. Поэтому оба этапа очистки одинаково важны и необходимы. Критерии оценки качества данных Чтобы разработать методику очистки данных в процессе ETL, необходимо опре делить критерии оценки их качества, Одним из таких критериев является критич ность ошибок. В этой связи данные MorYT быть разделены на три катеrории: О данные BbIcoKoro качества, не нуждающиеся в очистке; О данные, содержащие критичные ошибки, из за которых они в принципе не MO ryT быть заrружены в ХД (например, буква или пробел в числовом значении, неправильный разделитель целой и дробной частей числа и т. д,). То есть кри тичными являются ошибки, которые делают невозможной дальнейшую работу с данными; О данные, содержащие некритичные ошибки, которые не мешают их заrрузке в ХД, но при этом данные являются некорректными с точки зрения их анализа (аномальные значения, про пуски, дубликаты, противоречия и т. д.), Некритичные ошибки MOryT быть исправлены в процесс е анализа данных cpeд ствами аналитической системы, Основные виды проблем в данных, из за которых они нуждаются в очистке Существует несколько проблем, из за которых данные нуждаются в очистке. Наиболее широко распространены проблемы, связанные с нарушением структуры данных: О корректность форматов и представлений данных; О уникальность первичных ключей в таблицах БД; О полнота и целостность данных; О полнота связей; О соответствие некоторым аналитическим оrраничениям и т. д.
110 Часть 1. Теория бизнес анализа Для каждоrо CTPYKтypHOrO уровня данных отдельной ячейки, записи, целой таблицы, отдельной БД или множества БД характерны свои факторы, снижаюЩИе качество данных. Наиболее типичные ошибки, соответствующие СТРУКтурным единицам БД, пред ставлены в табл. 2.6, Таблица 2.6. Типичные ошибки, соответствующие структурным единицам БД Ячейка Запись Таблица Отдельная БД Множество БД Орфоrpафические Проти Дублирова Целостность Несоответствия ошибки воречия ние записей данных структуры данных Пропуски в данных между Фиктивные зна ячейками Одинаковые наиме чения нования различных атрибутов Лоrические HeCOOT П ротиворечи Противоречия Различное представ ветствия вые записи ление однотипных данных Закодированные Различная временная значения шкала Составные значения На уровне отдельной ячейки таблицы наиболее характерны следующие ошибки, Орфоzрафичес'/{ие ошиб'/{и или опечат'/{и MOryT привести к неправильному по ниманию или искажению данных. Например, ошибка в названии фирмы приведет к появлению двух разных фирм с одинаковыми реквизитами, что вызовет проти воречия, ошибки в отчетах и т, д, Пропус"Ки дттых отсутствие данных в тех ячейках, rде они должны быть. Про пуски MOryT быть вызваны ошибкой оператора или отсутствием COOTBeTCTBY ющей информации. Например, что означает отсутствие информации о продажах в супермаркете на определенную дату? Если в этот день маrазин был закрыт, то есть продаж не было, в соответствующей ячейке должен стоять ноль. Если же маrазин работал, то, скорее Bcero, имеет место ошибка оператора, Однако при автоматиче ской заrpузке orpoMHoro количества данных, что имеет место в большинстве KOp поративных систем, разобраться с каждым отдельным случаем про пуска данных невозможно. Поэтому на этапе очистки данных в ETL необходимо разработать методику восстановления пропущенных данных, которая как минимум делала бы их корректными с точки зрения совместимости со структурой хранилища. Что касается корректности с точки зрения анализа, то большинство аналитических систем содержит средства восстановления пропущенных данных способом, KOTO рый предпочтет аналитик (начиная от установки значения вручную до применения сложных статистических методов). Фи'/{тивные значения данные, не имеющие смысла, никак не связанные с описываемым ими бизнес процессом. Подобная ситуация возможна, если опе ратор системы OLTP, не располаrая необходимой информацией, ввел в ячейку произвольную последовательность символов, Оператор бывает вынужден это rлава 2. Консолидация данных 111 сделать, коrда система не позволяет продолжать работу, пока соответствующая .ячейка не будет заполнена. Так, если клиент забыл указать в анкете возраст, то оператор может ввести значение О или 999. При этом лучше, если значение явно <1не лезет ни в какие ворота!>, поскольку в таком случае вероятность Toro, что оно будет принято за реальное, уменьшается. Вообще, обнаружить и отфильтровать фиктивные значения довольно трудно, поскольку понятие «смысл» является субъективным и не поддается формализации. Поэтому на этапе очистки данных средствами ETL можно выработать только общие формальные методы обна руж ения фиктивных значений и борьбы с ними, Например, можно установить правило: «Если возраст клиента больше 150, то заменить ero на значение О», Коrда при последующем анализе аналитик встретит такое значение, он поймет, что значение фиктивное, и примет меры к ero замене на более правдоподобное (например, среднее по выборке), Существует и друrой способ борьбы с фиктив НЫМИ значениями. Можно проинструктировать операторов ОLТР систем или персонал, который занимается сводками данных в офисных приложениях, что при отсутствии реальных данных должен вводиться специальный код, который при обработке в процессе ETL распознавался бы как фиктивное значение, За тем к таким данным можно применить обработку, предписанную аналитиком. Наконец, если фиктивные значения являются аномальными (что чаще Bcero и имеет место), то они MorYT быть обнаружены и скорректированы средствами аналитической системы. ЛОlUческие несоответствия возникают, если значение в ячейке не COOTBeTCTBY ет лоrическому смыслу поля таблицы. Например, вместо наименования фирмы указан ее банковский счет, Закодированные значения сокращения, аббревиатуры, замена наименований числовыми кодами. Составные значения появляются в файлах, rде структура полей жестко не зада на, например в обычных текстовых файлах, электронных таблицах и т. д. Составное значение может получиться, если оператор реrистрационной системы ошибочно ввел два отдельных значения или более в ячейку, предназначенную для одноrо зна чения. Например, в системе предусмотрены отдельные поля для фамилии, имени и отчества клиента, а неопытный оператор ввел все эти значения в одно поле Фа N.UЛИЯ. Друrой вариант: для каждоrо из элементов адреса клиента предусмотрены отдельные поля, а весь адрес оказался введен в поле Индекс. На уровне записи возникают в основном проблемы противоречивости данных в различных ячейках. Например, сумма, на которую был продан товар, не COOTBeT ствует произведению цены за единицу и количества проданных единиц. На уровне таблицы основными проблемами являются дублирующие и проти воречивые записи. Дубликаты это полностью идентичные записи. Сами по себе они не вызыва ют нарушений в структуре данных, и их наличие не является критичным. Однако дубликаты также MorYT вызвать ряд проблем. О Увеличивается объем данных и, соответственно, время, требуемое на их заrpуз ку и обработку,
112 Часть 1. Теория бизнес анализа D Временные затраты при аналитической обработке дубликатов увеличиваются , при этом качество анализа не повышается. D Дубликаты MOryT ухудшить качество аналитических моделей, основанных На обучении (нейронные сети, деревья решений). Если значительный Проц е lf1' обучающей выборки для таких моделей будут составлять дублирующие записи то результаты обучения MOryT ухудшиться. ' Аналитические системы обычно содержат средства для обнаружения и удале- ния дублирующих записей. Поэтому если в процесс е ETL борьба с дубликатами не была предусмотрена, это можно будет сделать при подrотовке данных к ана- лизу непосредственно в аналитической системе. Противоречивыми являются записи, которые для двух различных объектов содержат одинаковые значения уникальных атрибутов, Например, в базе дaH ных клиентов для двух разных орrанизаций указаны одинаковые банковские реквизиты. На уровне отдельной БД основной проблемой является нарушение целост- ности данных, которое заключается в том, что происходит рассоrласование между различными объектами БД, Например, если в БД есть документ, со- провождающий сделку с каким-либо клиентом, то, как правило, при создании HOBoro документа имя клиента не вводится вручную, а выбирается из списка клиентов, содержащеrося в друrой таблице БД и открывающеrося при заПОk нении соответствующеrо поля, В результате документ содержит не собственно имя клиента, а ссылку на соответствующий объект друrой таблицы. Если по какой либо причине объект (то есть запись о клиенте) будет удален, то ДOKY мент не сможет быть сформирован, из за Toro что объект, на который имеется ссылка, оказывается недоступен. На уровне множества БД возникают проблемы, связанные с отличиями CТPYK туры данных в различных базах: D различные правила назначения имен полей (например, различное число сим волов, допустимых В имени поля, наличие пробелов, символов национальных алфавитов и т, д.); D различия в используемых типах полей; D одинаковые названия полей для разных атрибутов (например, в одном источ- нике данных поле Name содержит названия фирм, а в друrом наименования товаров ); D различная временная шкала (например, данные, описывающие один и тот же бизнес-процесс, хранятся в двух разных файлах, но в одном из них представлена ежедневная информация, а в друrом еженедельная). Стратеrия очистки данных должна разрабатываться с учетом особенностей предметной области, функционирования ОLТР-систем и порядка сбора данных. Например, принимая решение о включении в процесс обработки данных ETL средств для борьбы с дубликатами, аналитик должен выяснить, MOryT ли В бизнес- процессе возникать идентичные объекты или события, происходящие в одном
rлава 2. Консолидация данных 113 временном интервале. Если да, то две одинаковые записи, определяемые как дуб дl1 каты , MOryт описывать разные объекты или события. Очевидно, что в этом случае к обработке дубликатов следует подходить с осторожностью, чтобы не потерять полезнуЮ информацию. Кроме Toro, необходимо помнить, что полностью очистить данные удается очень редко. Существуют проблемы, которые не получается решить независимо от степени приложенных усилий. Бывают случаи, коrда некорректное примене Jfие методов очистки данных только усуryбляет ситуацию. Иноrда использование очень сложных алrоритмов очистки увеличивает время переноса данных в ХД дО неприемлемой величины. Поэтому не Bcerдa следует стремиться к полной очистке данных. Лучше обеспечить компромисс между сложностью используемых алrорит мов, затратами на вычисление, временем, требуемым на очистку, и ее результатами. Если достоверность каких то данных не влияет на результаты анализа, то от их очистки, возможно, следует вообще отказаться. 2.12. Преобразование данных в ETL Этап ЕТL процесса, следующий за извлечением, преобразование данных. Ero цель подrотовка данных к размещению в ХД и приведение их к виду, наиболее удобному для последующеrо анализа, При этом должны учитываться некоторые выдвиrаемые аналитиком требования, в частности, к уровню качества данных. Поэтому в процессе преобразования может быть задействован самый разнообраз ный инструментарий, начиная от простейших средств ручноrо редактирования данных до систем, реализующих весьма сложные методы обработки и очистки данных. В процессе преобразования данных в рамках ETL чаще Bcero выполняются следующие операции (рис. 2.26): О преобразование структуры данных; О аrpеrирование данных; О перевод значений; О создание новых данных; О очистка данных, ПреоБР8ЭОВ8ние A8HHIoIX Иэвлеченные данные (промежуточные таблицы) 3аrруэка данных вХД Рис. 2.26. Процесс преобраэования данных в ETL Рассмотрим каждую из этих операций более детально.
114 Часть 1. Теория БИ3Нес анализа Преобразование структуры данных Во мноrих случаях данные поступают в хранилище, интеrpируясь из множества Ис- точников, которые создавались с помощью различных проrpаммных средств, методо_ лоrий, соrлашений, стандартов и т. д. Данные из таких источников MOryт отличаТЬСJj своей структурной орrанизацией: соrлашениями о назначении имен полей и таблиц, порядком их описания, форматами, типами и кодировкой данных, например точ- ностью представления числовых данных, используемыми разделителями цело» и дробной частей, разделителями rpупп разрядов и т, д, Следовательно, во мноrиx случаях извлеченные данные неприrодны для непосредственной заrpузки в ХД из-за отличия их структуры от структуры соответствующих целевых таблиц ХД, При этом если таблицы фактов чаще Bcero соответствуют требованиям хд, то таблицы измерений нуждаются в дополнительной обработке и, может быть, объединении. Так, если в источнике, полученном из одноrо филиала, информация о Покупа- телях хранится в поле Customer Id, а в источнике, полученном из друrоrо филиа- ла, в поле Clieпts Name, то для создания одноrо измерения Покупаmель придется решать задачу их объединения. Дополнительная обработка структуры данных также требуется в ситуации, коrда одно подразделение фирмы представляет информацию о цене и количестве проданных товаров, а друrое о количестве товаров и общей сумме продаж. В Ta ком случае потребуется привести информацию о продажах, полученную из обоих источников, к общему виду, Аrреrирование данных Как правило, в качестве источников данных для хранилищ выступают системы опе ративной обработки данных (ОLТР системы), учетные системы, файлы различных СУБд, локальные файлы отдельных пользователей и т. д. Общим свойством всех этих источников является то, что они содержат данные с максимальной степенью детализации сведения о ежедневных продажах или даже о каждом факте продажи в отдельности, об обслуживании каждоrо клиента и т, д. Распространено мнение, что такое детальное воспроизведение событий в исследуемом бизнес процессе только пойдет на пользу, поскольку данные никоrда не бывают лишними и чем больше их будет собрано, тем точнее окажутся результаты анализа. Это не совсем так. Элементарные события, из которых состоит бизнес-процесс, например обслуживание одноrо клиента, выполнение одноrо заказа и т. д" KOTO рые также называют атомарными (то есть неделимыми), по своей сути являются случайными величинами, подверженными влиянию множества различных случай- ных факторов от поrоды до настроения клиента. Следовательно, информация о каждом отдельном событии в бизнес-процессе практически не имеет ценности. Действительно, на основании информации о продажах за один день нельзя сделать вывод обо всех особенностях торrовли. Точно так же нельзя выработать стратеrию работы с клиентами на основе исследования поведения одноrо клиента.
rлава 2. Консолидация данных 115 Иными словами, для достоверноrо описания предметной области использо а JIи е даннЫХ с максимальным уровнем детализации не всеrда целесообразно, в v б поэтому наибольшии интерес для анализа представляют данные, обо щенные по JIeKOToPOMY интервалу времени, по rpуппе клиентов, товаров и т. д. Такие обоб J1(eJIHbIe данные называются аzреzировшl1lыиu (иноrда аrреrатами), а сам процесс IIХ вычисления аzреmрова1lием. В результате аrреrирования большое количество записей о каждом событии J:J 6изнес процессе заменяется относительно небольшим количеством записей, содержащих аrреrированные значения. Например, вместо информации о каждой IIЗ 365 ежедневных продаж в rоду в результате аrреrирования будут храниться 52 записи с обобщением по неделям, 12 по месяцам или 1 за rод. Если цель анализа разработка проrноза продаж, то для краткосрочноrо оперативноrо проrноза достаточно использовать данные по неделям, а для долrосрочноrо CTpa теrическоrо проrноза по месяцам или даже по rодам. Фактически при аrpеrировании производится объединение нескольких записей в одну с вычислением аrpеrированноrо значения на основе значений каждой запи си. При вычислении arperaToB может быть использовано несколько способов. [:J Среднее для данных, расположенных в пределах интервала, в котором они обобщаются, вычисляется среднее значение. Затем все записи из данноrо ин тервала заменяются одной, содержащей их среднее значение (рис. 2.27). Дата Цена Коп-во Сумма 07.04 150,00 20 3000,00 08.04 135,00 10 1З50,ОО 09.04 220,00 15 ЗЗОО,ОО 10.04 17З,ОО 5 865,00 11.04 245,00 24 5880,00 12.04 96,00 12 1152,00 1З.04 110,00 З20 3520,00 Рис. 2.27. Пример аrpеrирования а Сумма аrperируемые записи заменяются одной, в которой указывается сумма аrpеrируемых значений. а MaKCUМYM в результирующей записи остается максимальное значение из всех объединяемых. а МИ1lUМУМ в результирующей записи остается минимальное значение из всех объединяемых.
116 Часть 1. Теория БИ3Нес анализа D Количество уникальных значений результатом аrреrирования будет число уникальных значений, появляющихся в ячейках одноrо и Toro же поля. Так для поля, содержащеrо информацию о профессии клиента, данный способ ar реrирования покажет, сколько раз та или иная профессия появлялась в СПИСl(е Например, если в 25 записях в поле профессия имело место значение СистеJ.t ный аналитик, а в 50 Менеджер, то в результате аrреrирования мы получим число 2. О Количество результатом аrреrирования будет число записей, содержащихся: в поле. В приведенном выше примере с профессиями клиентов при этом вари анте аrреrирования получим 75. О Медиана вычисляется: медиана аrреrируемых значений, Медиана Пред ставляет собой порядковую статистику, рассчитываемую следующим об разом. Набор аrреrируемых значений, например продажи по дням недели, сортируется в порядке возрастания, Torдa медианой будет центральный элемент упорядоченноro набора, если этот набор содержит нечетное количество значений, или среднее двух центральных элементов, если число элементов четное. Например, пусть каждый день в течение недели продажи составляли {100, 120, 115, 119, 107, 131, 102}. Тоrда для определения медианы нужно выстроить эти значения по возрастанию: {100, 102, 107, 115, 119, 120, 131}. Значение центральноrо элемента полученной последовательности, то есть 115, и будет медианой, Если продажи осуществлялись только 6 дней в неделю (воскресенье выходной), то будет получена последовательность из четноrо числа значений {100, 107, 115, 119, 120, 131}. В этом случае медиана будет равна: (115 + 119) /2== 117. Закономерен вопрос: нужно ли аrреrировать все данные без разбору по всем возможным уровням обобщения или к этому следует подходить внимательно? Для ответа необходимо изучить наиболее вероятные направления использования данных в ХД. Однако если хранилище находится на стадии разработки и BHe дрения и методика ero использования еще не до конца проработана, то сделать это трудно. Тем не менее, если опросить потенциальных пользователей ХД, что именно они хотят получить, возможно, некоторые сведения на этот счет удастся разыскать, Из всех возможных вариантов аrреrирования следует выбрать наиболее значи мые с точки зрения планируемых направлений анализа, а от остальных отказаться, Очевидно, можно отказаться от arperaToB, которые имеют малое число подчинен ных аrреrированных значений (например, аrреrирование ежемесячных продаж за квартал), поскольку их леrко вычислить в процессе анализа, Или, наоборот, можно отказаться от arperaToB с максимальной степенью детализации (например, аrреrирование ежедневных продаж), Второй вариант наиболее предпочтителен, поскольку на первый взrляд сулит существенную экономию, так как число дней в rоду умножается на число товаров и продавцов. Однако если данные о продажах являются разреженными, то есть не каждый товар продается ежедневно, то эконо мия может оказаться весьма незначительной. rлава 2. Консолидация данных 117 выбор нужных arperaToB всеrда определяется особенностями бизнеса, При этом следует помнить, что arperaTbI, требуемые для анализа, MorYT быть вычислены непосредственно при выполнении аналитическоrо запроса к ХД, хотя тем самым :ремя ero выполнения несколько увеличится, Подобный подход позволяет, напри мер, отказаться от аrреrирования редко используемых данных, ТаКИМ образом, выбор правильной стратеrии аrреrирования данных в ETL сложная и противоречивая задача. Увеличение числа arperaToB в хд приводит К увеличению ero размеров и сложности структуры данных, Снижение числа arpe raTOB в хд может привести к необходимости их вычисления в процессе выполнения аналитических запросов, что увеличит время ожидания пользователя. Следова тельНО, необходимо обеспечить разумный компромисс между этими факторами, Существует и более простое правило, определяющее стратеrию аrреrирования: создавайте только те arperaTbI, которые с большой долей вероятности по надобятся при анализе данных. Перевод значений Часто данные в источниках хранятся с использованием специальных кодировок, которые позволяют сократить избыточность данных и тем самым уменьшить объ ем памяти, требуемой для их хранения. Так, наименования объектов, их свойств и признаков MoryT храниться в сокращенном виде. В этом случае перед заrрузкой данных в хранилище требуется выполнить перевод таких сокращенных значений в более полные и, соответственно, понятные. Например, соrласно заведенному в орrанизации порядку идентификационный номер операции может быть закодирован в виде 06 04 12 62, rде 06 04 число и месяц, 12 код товара, 62 код реrиона. Такое представление позволяет хранить данные очень компактно. Однако для заполнения соответствующих измерений в мноrомерной модели запись необходимо декодировать, Кроме Toro, часто возникает необходимость конвертировать числовые данные, например преобразовать вещественные в целые, уменьшить избыточную точность представления чисел, использовать экспоненциальный формат и т, д. Создание новых данных в процессе зarpузки в ХД может понадобиться вычисление некоторых новых данных на основе существующих, что обычно сопровождается созданием новых полей. Ha пример, О LТР система содержит информaцmo только о количестве и цене проданноro товара, а в целевой таблице хд есть поле Сумма, Torдa в процессе преобразования необходимо вычислить сумму как произведение цены на количество проданных еди Ниц товара. Таким образом, будет создано поле, содержащее новую информацию. Еще одним возможным примером новых данных, создаваемых в процессе обра ботки, являются экономические, финансовые и друrие показатели, которые MOryT быть вычислены на основе имеющихся данных. Так, на основе данных о продажах можно рассчитать рейтинr популярности товаров и создать новое поле, в котором
118 Часть 1. Теория бизнес анализа для каждоrо товара будет указано соответствующее рейтинrовое значение (напри_ мер, по пятибалльной системе). Создание новой информации на основе имеющихся данных тесно связано с та- ким важным процессом, как обоrащение данных, которое может ПРОИЗВОДИтьсSl (частично или полностью) на этапе преобразования данных в ETL. ArpеrироваНие также может рассматриваться как создание новых данных, Очистка данных Сбор данных в процессе ETL производится из большоrо числа источников, мноrие из которых не содержат автоматических средств поддержки целостности, непро- тиворечивости и KoppeKTHoro представления данных. В связи с этим при переНосе информации в ХД приходится сталкиваться с потоками «rpязных!> данных, которые MOryт стать причиной неправильных результатов анализа и даже сделать невозмож- ным применение некоторых аналитических алrоритмов и методов. По этой причине в процессе ETL применяется очистка процедура корректировки данных, которые в каком либо смысле не удовлетворяют определенным критериям качества, то есть содержат нарушения структуры данных, противоречия, пропуски, дубликаты, He правильные форматы и т, д, Некоторые проблемы в данных являются критичными и даже не позволяют ВЫПОk нить зarpузку данных в ХД (как правило, это нарушения структуры и некоррекrnые форматы данных). Дрyrие проблемы менее критичны, не мешают переносу данных в ХД, но не позволяют их коррекrnо анализировать (пропуски, противоречия и дуб ликатыI.. Критичные проблемы в даJlliЫХ должны устраняться непосредственно в про цессе ETL. Некритичные факторы, снижающие качество данных, MOryт устраняться как в процессе ETL, так и при подrотовке их к анализу в аналитической системе. Очистка данных одна из наиболее важных и в то же время наиболее слож ных и трудно поддающихся формализации задач ЕТL процесса, поскольку набор факторов, снижающих качество данных, весьма разнообразен и может постоянно меняться. Поэтому очистке данных при разработке ЕТL процессов уделяют боль шое внимание. Выбор места для выполнения преобразований данных в принципе, преобразование данных может быть выполнено на любом этапе ETL процесса. Но иноrда требуется выбрать оптимальное место для осуществления преобразования. Некоторые виды преобразований удобнее выполнять «на лету!>, в процессе извлечения данных из источника, друrие в промежуточной области, третьи в процессе заrpузки данных в ХД. Рассмотрим преимущества и HeДOCTaT ки этих вариантов, О Преобразование в nроцессе извлечения данных. На данном этапе лучше Bcero выполнять преобразование типов данных и про изводить фильтрацию записей, представляющих интерес для ХД. в идеальном случае должны отбираться толь rлава 2. Консолидация данных 119 ко те записи, которые изменялись или создавались после прошлой заrрузки. Недостаток повышение нarрузки на ОLТР систему или БД, CI Преобразование в промежуточной области перед заzрузкой даШtЫХ в хра1fWlИ ще наилучший вариант для интеrрации данных из множества источников, поскольку в процессе извлечения данных, очевидно, этоrо сделать нельзя, В про меЖУТОЧНОЙ области целесообразно выполнять такие виды преобразований, как сортировка, rруппировка, обработка временных рядов и т. п. CI Преобразование в nроцессе заzрузки данных в хд. Отдельные простые преобра зованиЯ, например преобразование реrистров букв в текстовых полях, MoryT быть выполнены только после заrpузки данных в хранилище. Таким образом, все операции преобразования, которые MOryT потребоваться при переносе данных в ХД, обычно не сосредотачиваются на одном шаrе ЕТL процес са, а распределяются по различным этапам в зависимости от Toro, rде выполнение преобразования более эффективно. 2.13. Заrрузка данных в хранилище После Toro как данные извлечены из различных источников и выполнены преоб разование, аrpеrация и очистка данных, осуществляется последний этап ETL за rpузка данных в хранилище. Процесс заrpузки заключается в переносе данных ИЗ промежуточных таблиц в структуры хранилища данных. От продуманности и оп тимальности процесса заrрузки данных во мнorом зависит время, требуемое для полноro цикла обновления данных в ХД, а также полнота и корректность данных в хранилище. Орrанизация процесса заrрузки Первыми в процессе заrpузки данных в ХД обычно заrpужаются таблицы uзмере НИЙ, которые содержат сурроютные J<.ЛЮЧИ и друryю описательную информацию, необходимую для таблиц фактов. При заrрузке таблиц измерений требуется и добавлять новые записи, и из менять существующие, Например, измерение Клиент может содержать десятки ТЫсяч клиентов, при этом информация меняется только для незначительноrо их Числа (не более 10 %). Нужно добавить данные о новых клиентах и одновременно модифицировать информацию о существующих. При добавлении новых данных в таблицу измерений требуется определить, не Существует ли в ней соответствующая запись, Если нет, то она добавляется в таб ЛИцу. В противном случае MOryT использоваться различные способы обработки ИЗменений в зависимости от Toro, нужно ли поддерживать старую информацию в хранилище с целью ее последующеrо анализа. Например, если изменился только адрес клиента, то в большинстве случаев нет необходимости хранить старый адрес, rrоэтому запись может быть просто обновлена,
120 Часть 1. Теория бизнес анализа у быстро растущих компаний часто возникают новые реrионы продаж, Наари_ мер, если сначала реrионом продаж была только Рязанская область, то ВПОСлед_ ствии он может расшириться на весь Центральный федеральный oKpyr (Цфо) и далее на всю Российскую Федерацию, Если в ХД требуется хранить как старую rеоrрафическую иерархию, так и обновленную, можно создать дополнительную таблицу измерений, записи которой будут содержать и старые rеоrрафичеСКие данные, и новые. В качестве альтернативы можно добавить дополнительные rrолл в существующие таблицы, чтобы сохранить старую информацию и добавить НО- вую. При заrpузке таблицы фактов новая информация обычно добавляется в КОНец таблицы, чтобы не изменять существующие данные. Неполная заrрузка данных Одной из основных проблем данноro этапа ETL является то, что далеко не всеrда данные заrружаются полностью: в заrрузке некоторых записей может быть OTKa зано. Отклонение записей происходит по следующим причинам. О На этапе преобразования данных не удалось исправить все критичные ошибки, которые блокируют заrрузку записей в ХД. о Некорректный порядок заrрузки данных, Например, предпринимается попыт ка заrрузить факты для значения измерения, которое еще не было заrружено. Причиной этоrо является неправильная разработка ЕТL процесса. О Внутренние проблемы ХД, например недостаток места в нем. О Прерывание процесса заrрузки или остановка ero пользователем. Независимо от причин результатом всеrда оказывается наличие определенноrо количества записей, которые не попали в хранилище. Как правило, предусмотрена система извещения пользователя о том, что хранилище содержит не полностью заrруженные данные. Это необходимо потому, что если неполные данные будут использованы для анализа (при этом аналитик пребывает в уверенности, что дан- ные достоверны), то последствия MorYT быть непредсказуемыми. Например, если не до конца заrрузились данные о продажах по определенным товарным позициям и последующий анализ выявит падение продаж, то руководство компании может ошибочно исключить такие товары из ассортимента как не пользующиеся спросом, хотя на самом деле это не так При появлении данных, попытка заrpузки которых потерпела неудачу, необхо- димо предусмотреть следующие действия (рис. 2,28): О сохранить данные, не попавшие в ХД, в виде таблицы или файла Toro же фор- мата, что и исходная таблица или файл (такие таблицы обычно называют таб- лицами ИС1Ulючений); О провести анализ отклоненных данных для выявления причин, по которым они не были заrpужены; О при необходимости про извести дополнительную обработку и очистку данных, после чеrо предпринять повторную попытку их заrрузки,
rлава 2. Консолидация данных 121 _- - - . - - - . . . . . . . . . . . . . Промежуточная область Источники данных CI М '<t rn rn rn rn :s: :s: :s: :s: 1:; 1:; 1:; 1:; о о о о rn rn rn rn ...... ...... ...... ...... Таблица исключений хд ДОnOllНМТ&lIьна51 обработка Повторная эаrруэка Рис. 2.28. Последовательность действий при наличии отклоненных эаписей в процедуре эаrpуэки в хд Если и повторная попытка заrpузки данных не увенчалась успехом, то в храни лище окажутся неполные данные, анализ которых может привести к неправильным выводам. Для решения этой проблемы можно: 1:1 восстановить состояние хранилища, каким оно было до заrpузки (например, с помощью резервной копии или операции отката, если она предусмотрена); 1:1 полностью очистить в ХД таблицы с неполными данными, чтобы исключить некорректные результаты их анализа; 1:1 оставить все как есть и уведомить пользователя о возникших проблемах. В этом случае аналитик узнает, что заrpуженная информация недостоверна, и будет использовать ее с определенными оrpаничениями. Мноrопоточная орrанизация процесса заrрузки данных При очередной заrpузке в ХД переносится не вся информация из ОLТР системы, а только та, которая была изменена в течение промежутка времени, прошедшеrо с Предыдущей заrpузки. При этом можно выделить два вида изменений добав JIение и обновление (дополнение). CI Добавление в ХД передается новая, ранее не существовавшая информация, например сведения о продажах, произошедших с прошлой заrрузки, о появле нии HOBoro клиента, товара и т. д. CI Обновление (дополнение) в ХД передается информация, которая существова ла ранее, но по какой либо причине была изменена или дополнена (например, изменился rород, в котором живет клиент).
122 Часть 1. Теория бизнес анализа Для обеспечения этих функций заrружаемые данные распределяются по ДBY параллельным потокам (data flow) потоку добавления и потоку обновлеНI1я: (рис. 2.29). r ПромежуточнаR область ХА ИСТОЧНИКИ данных ,ШШШ .... ПОТОК добавления Новые эаписи ПОТОК обновления Обновление, дополнение L Рис. 2.29. Поток добавления и поток обновления Для распределения заrружаемых данных на потоки используются среДСТВа мониторинrа изменений в данных. Они фиксируют состояние данных в неКОТорые моменты времени и определяют, какие данные были изменены или дополнены. Применяются следующие методы: О полное сравнение заrружаемых записей со всей информацией, которая уже содержится в хранилище. Данный способ является самым простым и в то же время самым трудоемким в плане вычислительных затрат; О использование признаков модифицированных данных или полей Дата/Время для определения последнеrо изменения записи (если такие поля предусмотрены в источнике данных). Распределение заrpужаемых данных на поток добавления и поток обновления позволяет выполнять перенос данных в хранилище с помощью обычных запросов, не используя какие либо фильтры для разделения данных на новые и обновляющие, Обновление данных должно производиться cTporo в соответствии с требова ниями к обеспечению истории данных, то есть не должно приводить к потере уже существующих данных, за исключением особых случаев. Следует отметить, что при разработке методики заrрузки данных в ХД нет общеrо подхода к тому, как модифицировать таблицы измерений. Например, еслИ изменилось описание HeKoToporo продукта, придется создать новое поле в табли це, чтобы сохранить старое описание и добавить новое. Если требуется сохранить все старые описания продукта, то придется создавать новую запись для каждоro изменения и назначать соответствующие ключи. Постзаrрузочные операции После завершения заrрузки выполняются дополнительные операции над дaH ными, только что заrpуженными в ХД, перед тем как сделать их доступными для пользователя. Такие операции называются постзаlрузоч1fыu." К ним относятся переиндексация, верификация данных и т. д. С точки зрения аналитика, наиболее важной задачей является верификация данных. Прежде чем использовать новые данные для анализа, полезно убедиться
rлава 2. Консолидация данных 123 вl1Х надежности и достоверности. Для этих целей можно предусмотреть комплекс верификационных тестов. Например: (J при суммировании продаж по одному измерению результат должен совпадать с соответствующей суммой, полученной по друrому, связанному с ним измере нию, то есть сумма продаж по всем товарам за месяц должна соответствовать сумме сделок, заключенных со всеми клиентами за тот же период; (J итоrовый показатель за месяц должен соответствовать сумме ежедневных или еЖенедельных показателей в этом месяце; (J суммарная выручка по всем реrионам за текущий месяц должна соответствовать сумме продаж по всем реrиональным дилерским центрам. Кроме Toro, может оказаться полезным сравнивать данные не только в различ нЫХ разрезах после их заrpузки в ХД, но и с источниками данных. Так, если зна qенИЯ KaKoro либо показателя в источнике и хранилище равны, то все нормально, в противном случае данные, возможно, некорректны. Если тестирование показало, что несоответствия, позволяющие заподозрить потерю или недостоверность данных, отсутствуют, то можно считать заrрузку данных в ХД успешной и приступать к анализу новой информации. 2.14. 3аrрузка данных из локальных источников Довольно часто возникают ситуации, коrда данные для анализа приходится им портировать непосредственно из источников, минуя хранилища данных и друrие промежуточные системы. Это может потребоваться в случае, коrда орrанизация отказалась от использования ХД или коrда хранилище имеется, но данные из He которых источников не MOryT быть В Hero зarpужены по техническим причинам, из за несоответствия моделям и форматам данных, используемым в ХД. Таким образом, часть данных поступает в аналитическую систему через ХД с соответствующей очисткой и подrотовкой, а друrая часть непосредственно из Источников (рис. 2.30). Источники данных Учетные системы СУБД Текстовые файлы с разделителями (txt, csv) DВF файлы Аналитическая система ETL (очистка, интеrрирование, обоrащение) хд Рис. 2.30. 3аrpуэка данных иэ локальных источников
124 Часть 1. Теория бизнес анализа Извлечение данных напрямую из источников имеет свои преимущества и Недо_ статки, а также порождает ряд проблем, связанных как непосредственно с про- цессом извлечения, так и с качеством полученных данных, Преимущества и недостатки отказа от хранилищ данных [лавным преимуществом, которое дает использование хранилищ данных в аНа- литических технолоrиях, является повышение эффективности и достовеРНОСТI1 анализа данных, особенно для поддержки принятия стратеrических решений, Это достиrается за счет оптимизации скорости доступа к данным, ВОЗМОЖНОСТI1 интеrрации данных различных форматов и типов, автоматической поддеРЖКI1 целостности и непротиворечивости, обеспечения хронолоrии и истории дaH ных, Тем не менее некоторые орrанизации не используют хранилища данных для консолидации анализируемой информации, При необходимости выполнения анализа данные заrружаются в аналитическое приложение непосредственно из источников, rде они содержатся, а семантический слой обеспечивается cpeДCTBa ми caMoro аналитическоrо приложения. Причины отказа от использования ХД MorYT быть следующими, 1. Орrанизация не располаrает достаточными ресурсами (финансовыми, техни ческими, кадровыми) для разработки, приобретения и поддержки ХД. 2. Унаследованная система аналитической обработки эффективно функциони- рует с использованием обычной реляционной СУБД, и руководство не видит смысла в дороrостоящем и трудоемком процессе внедрения ХД. 3, Объем анализируемых данных невелик, а применяемые технолоrии анализа данных несложны. В частности, не требуется поддержка хронолоrии данных, для анализа используются только данные за актуальный период и т. д. 4. Роль анализа в деятельности орrанизации невысока, администрация не oco знала ero значимость в получении конкурентных преимуществ. Таким образом, причин для отказа от использования ХД в аналитическом процессе достаточно MHoro и все они MorYT быть по-своему арrументированы. В некоторых случаях отказ от ХД дает определенные преимущества: аналитиче ский процесс становится проще и дешевле; нет необходимости разрабатывать KOH цепцию ero внедрения; не нужны сложный процесс ETL и друrие сопутствующие затраты. Кроме Toro, процессы, связанные с поддержкой ХД, интеrрирование данных из различных источников и ETL, если они недостаточно продуманЫ и некачественно реализованы, способны не только свести на нет все преимущест' ва, которые дает ХД, но и ухудшить ситуацию, породив массу ошибок и проблем с получением данных. Возможно также, что лучше быстро реализовать аналити чес кий процесс в упрощенном варианте, чем rодами отлаживать взаимодействие ОLТР-систем с ХД,
rлава 2. Консолидация данных 125 проблемы, возникающие при прямом доступе к источникам данных ОтJ<а з от использования ХД дЛЯ консолидации и интеrpирования данных не только ,х)!<аеТ эффективность анализа, достоверность и значимость ero результата, но сНх. I1 J10рождает ряд дополнительных проблем как техническоrо, так и методическоrо nлаf/а, Конечно, они присутствуют и при использовании хд, но в этом случае они автоматически решаются самим хранилищем и поддерживающими ero проrpам lf/Ы МИ средствами. При осуществлении прямоrо доступа к источникам данных ользователь (эксперт, аналитик) вынужден сталкиваться с этими проблемами неп0средственно, К таким проблемам относятся следующие. Необходимость самостоятельно определять ТIПI и формат источника данных. Узf/атЬ тип и формат файла можно по ero расширению, Однако, если приходится иметь дело с экзотическим форматом или типом файла, этот вопрос может потребо вать дополнительноrо исследования, Например, если речь идет о текстовом файле с разделителями, то ТХТ формат известен любому, кто работал на компьютере, по скольку ero освоение обычно начинается с создания простейших текстовых файлов, Б то же время формат CSV в повседневной работе используется достаточно редКО и поэтому большинству пользователей неизвестен. Кроме Toro, при заrpузке данных из СУБД пользователь сталкивается с поиском нужной таблицы, что само по себе не очень сложно, но может занять определенное время. Отсутствие ПОJПlOцеlПlOrо семантическоrо слоя Toro уровня, который имеется в ХД. При работе с хд, которое обеспечивает семантический слой, преобразующий высокоуровневые запросы пользователей в низкоуровневые запросы к источникам данных, пользователь оперирует такими бизнес терминами предметной области, как наименования товаров и клиентов, цена, количество, сумма, наценка, скидка и т. д. При работе с источниками данных напрямую аналитик вынужден иметь дело непосредственно с именами полей источника, которые в большинстве случаев Вводятся на латинице и не всеrда понятны, поэтому приходится тратить время на то, чтобы разобраться, в каком поле содержатся нужные данные. Отсутствие жесткой поддержки структуры и форматов данных. При непосред Ственной работе с источниками данных часто приходится иметь дело с файлами, в которых структура и формат данных жестко не заданы. Типичный пример TeK Стовый файл с разделителями, в котором даННЫе упорядочены в столбцы, отделен НЫе друr от друrа однотипными символами разделителями. В таких файлах MoryT быть любые нарушения структуры и форматов данных. В них MoryT содержаться Неполные поля и записи, использоваться различные символы разделители столб цов, про из вольные разделители целой и дробной частей и rpупп разрядов в чис Лах. В одном и том же столбце MoryT оказаться и строковые, и числовые данные, различные форматы даты и т. д. Особенно это характерно для файлов, которые Создавались без учета перспективы анализа данных. В подобной ситуации ничеrо Не остается, кроме как попытаться выполнить корректировку данных средствами, И:меющимися в аналитическом приложении. Иноrда структура данных в файле
126 Часть 1, Теория бизнес анализа оказывается настолько искаженной, что ero заrрузка в аналитическую систему Не- возможна. Тоrда редактировать данные приходится непосредственно в ИСТОЧНИ1<е И в том и в друrом случае ручная корректировка данных является очень тpyдoeMKO и затратной по времени. Если затраты на подrотовку данных превышают их ценность с точки зрения анализа, то, возможно, от работы с ними следует вообще отказаться. Отсутствие автоматических средств поддержки целостности, неПРОТИВОРе_ чивости и уникальности данных. Эта проблема rлавным образом возникает при работе с локальными файлами, При извлечении данных может произойти разрыв связей между атрибутами и, как следствие, потеря целостности данных. Отсутствие средств автоматическоrо аrpеrирования и создания новых дан- ных. При использовании ХД предусмотрены автоматические аrреrирование дaH ных и расчет вычисляемых значений (обычно в процессе ETL). Эти новые даННые сохраняются и остаются доступными в любой момент, что ускоряет выполнение аналитических запросов. Коrда заrрузка данных производится напрямую из ис- точников, аrреrирование и вычисление новых данных приходится делать непо- средственно в ходе выполнения запросов либо вручную, что существенно снижает скорость работы. Отсутсmие средсm автоматическоrо контроля ОIIШбок и очистки данных. Это приводит к тому, что в аналитическую систему заrружаются «rрязные» даННЫе, зачастую неприrодные для анализа, поэтому пользователь должен самостоятельно (визуально и с помощью статистических характеристик или специальных средств, если они доступны) оценить качество данных, степень их приrодности для анализа и применить необходимые методы очистки. Необходимость настройки механизмов доступа к истоЧШIКам данных. Для ocy ществления непосредственноrо доступа к различным источникам данных обычно используются стаlЩартные механизмы доступа ODBC, ADO и OLE DB, Чтобы указанные компоненты функционировали правильно, они должны быть COOTBeT ствующим образом настроены, что также зачастую ложится на плечи пользователя или системноrо администратора. Преимущества использования непосредственноrо доступа к источникам данных Помимо недостатков, использование непосредственноrо доступа к источникаМ данных имеет ряд преимуществ, О Отсутствие ЕТL-процесса снимает проблему «ОКна заrpузки», то есть промежут- ка времени, в течение которorо производятся заrpузка ХД и сопутствующие ей операции, Обычно во время «окна заrpузки» наrpузка на систему предприятия резко возрастает, а производительность работы пользователей, наоборот, падаеТ, при этом само ХД может оказаться частично или полностью недоступным, О Возможность внереrламентноrо использования источников данных, Обычно обновление данных в хранилище про изводится в соответствии с определенныМ реrламентом, Это в некоторой степени связывает руки пользователю, Например, rлава 2. Консолидация данных 127 еСЛИ заrрузка новой информации в ХД осуществляется раз в неделю, а непо средственный доступ к источникам данных не предусмотрен, то пользователю приходится ждать, пока данные не появятся в ХД и не станут доступными, [J ВОЗМОЖНОСТЬ получать для анализа данные, которые почему либо не попали в хранилище (например, по техническим причина м как не представляющие ценности). Кроме Toro, у сотрудников орrанизаций часто накапливаются дaH ные, собранные ими для собственноrо использования, На первый взrляд такие данные кажутся свалкой информационноrо мусора (чем чаще Bcero и являются), поскольку при их сборе и орrанизации используются нестандартные методы, отличные от тех, которые при меняются при сборе и консолидации данных через хранилище. Однако именно блаrодаря этому на основе таких данных можно получить очень интересные и нестандартные аналитические решения. О Пользователь имеет возможность работать с данными в их первозданном» виде, что представляет особый интерес, поскольку при заrрузке данных в ХД в них вносятся изменения, которые в некоторых случаях влияют на их изна чальный смысл. Таким образом, необходимость в орrанизации непосредственноrо доступа к раз личным источникам данных из аналитическоrо приложения возникает даже при наличии ХД. Особенности непосредственной заrрузки данных из наиболее распространенных типов источников Наиболее часто встречающимися видами источников данных, доступ к которым производится напрямую, являются: О текстовые файлы с разделителями (ТХТ, CSV); О файлы электронных таблиц Excel; О файлы плоских таблиц БД, например dBase, FoxPro и т. д, (DВF файлы); О реляционные СУБД настольноrо уровня, например Access и т. д,; О корпоративные базы данных и учетные системы (Oracle, Informix, Sybase, DB2 и т, д,), Текстовые файлы с разделителями (ТХТ, CSV). Файлы в ТХТ формате хорошо известны большинству пользователей (даже непрофессиональных) еще со времен MS DOS. Для создания таких файлов достаточно использовать простейший TeKCTO вый редактор, например Блокнот из набора стatщартных проrpамм Windows, Однако эти файлы имеют произвольную структуру данных, поэтому они наиболее уязвимы с точки зрения нарушения структуры, использования некорректных форматов и представлений данных, Так что зarpузка и очистка ТХТ файлов MoryT вызвать ca мые серьезные проблемы, несмотря на то что эти файлы очень просты в создании. Чтобы создать структурированный текстовый файл, который может быть за rружен в аналитическую систему, достаточно упорядочить в нем данные в виде
128 Часть 1. Теория бизнес анализа вертикальных столбцов и rоризонтальных строк, из которых будут сФОРМИРоваIiЬ поля и записи соответственно, Для разделения столбцов должны использоваться од- нотипные символы разделители, например табуляция, точка с запятой и др, МОЖliо использовать как один символ, так и несколько идущих подряд символов. При создании файла следует придерживаться нескольких правил. 1. В первой строке файла нужно указать заrоловки столбцов в ПРОИЗВОЛЬно/1 форме, при этом используются кириллица и пробелы. При заrpузке в аналити:_ чес кую систему заrоловки столбцов будут преобразованы в метки полей, что позволит аналитику быстрее разобраться с содержимым источника, ПосКоль- ку в ТХТ файлах имена полей (в том виде, как они представлены в таблицах файлов БД) отсутствуют, при заrрузке в аналитическую систему они будут установлены автоматически в соответствии справилами, принятыми в данно/1 системе. Например, им по умолчанию MoryT быть присвоены метки COL1, СОи или FIELD1, FIELD2 и т. д. Если в первой строке TeKcToBoro файла над Каждым столбцом указано ero название, то система при заrpузке сможет преобразовать эти названия в имена полей, если каким либо образом указать, что первая строка содержит заrоловки. Однако это возможно только при условии, что названия столбцов не противоречат правилам назначения имен полей в данной анали: тической системе, то есть не содержат недопустимых символов, не превышают заданную длину и т, д, Это следует учитывать при создании текстовых файлов с разделителями, которые планируется использовать в качестве источников данных для аналитических систем, 2, Необходимо соблюдать реryлярность структуры данных, то есть каждые строка и столбец должны содержать одинаковое число элементов. Если некоторые зна чения были утеряны, то их можно заменить средними значениями по столбцу для числовых атрибутов. Для строковых атрибутов можно указать наиболее вероятное значение или значение по умолчанию, которое впоследствии может быть соответствующим образом обработано (например, NONAME), Оставлять пустые или фиктивные значения нежелательно: пропущенное значение можеТ заблокировать работу аналитических алrоритмов, а фиктивное (например, $999,999) может быть обработано как истинное, 3, Столбцы должны быть типизированы, то есть содержать данные только одноrо типа (например, только строковые или только числовые). Кроме Toro, внутри каждоrо столбца формат представления чисел или дат должен быть одинако вым. Например, использование в одном столбце KpaTKoro (12,07.06) и полноrо (12 июля 2006 r.) форматов даты способно вызвать серьезные проблемы при заrpузке данных. Также нежелательно использовать в одном поле числа в экс поненциальном формате (1,2Е + 3) и в обычном (12 000), поскольку это может вызвать проблемы при заrрузке значений из данноrо поля. 4. Строковые значения желательно приводить в соответствие унифицированным шаблонам. Например, нежелательно смешивать представление ФИ О, указывая инициалы то справа, то слева от фамилии или вообще не указывая, использовать в инициалах то одну, то две буквы и т. д. При указании названий орrанизаций
rлава 2. Консолидация данных 129 также нужно использовать единое представление. Например, форма собствен ности должна во всех строках указываться только после названия (это упростит сортировку названий по алфавиту). Несоблюдение этоrо требования, скорее Bcero, не вызовет проблем при заrрузке, но может привести к неправильной обработке таких данных аналитическим приложением. 5. Символы разделители и их количество во всех строках и между столбцами должны быть одинаковыми, 6. Необходимо использовать одинаковые разделители целой и дробной частей чисел и rрупп разрядов. Например, если по умолчанию в качестве разделите ля целой и дробной частей используется точка, а в KaKOM TO значении будет обнаружена запятая, это значение будет рассматриваться системой как CTpO ковое, При заrpузке в ХД все эти проблемы автоматически корректируются на этапе ETL. А при непосредственной заrpузке пользователю приходится отслеживать эти J1роблемы самому, Если данных в источнике HeMHoro, то они MoryT быть OTKoppeK тированы вручную. В противном случае приходится использовать средства очистки данных, предусмотренные в аналитической системе (например, восстановление пропущенных значений, трансформация типов и т, д,), Чтобы настроить процесс импорта TeKcToBoro файла с разделителями, обычно требуется указать: о имя файла и путь к нему; О СИМВОkразделитель, используемый для разделения столбцов; о используемый формат даты (времени); О используемые разделители целой и дробной частей чисел и rpупп разрядов; О номер строки файла, с которой требуется начать извлечение данных (если все данные извлекать не нужно или нужно извлечь только те данные, которыми файл был пополнен с прошлой заrpузки); О является ли первая строка строкой заrоловков. Если да, то содержимое первой строки будет преобразовано в метки полей, а данные начнут заrpужаться со второй строки. Таким образом, чтобы правильно настроить параметры импорта TeKcToBoro файла, нужно иметь информацию о файле, которая в большинстве случаев может быть получена только опытным путем. Для этоrо достаточно открыть файл с по Мощью TeKcToBoro редактора, про смотреть структуру файла и при необходимости откорректировать ее (например, присвоить столбцам заrоловки). Текстовые файлы в формате CSV менее известны пользователям, поскольку Используются реже, чем обычные ТХТ файлы. CSV (от анrл, соmmа separated values значения, разделенные запятыми ) это специальный текстовый фор Мат, предназначенный для представления табличных данных. Каждая строка в таком файле соответствует одной строке таблицы. Значения отдельных столбцов разде JIяются специальным символом запятой или точкой с запятой. Используемый
130 Часть 1. Теория бизнес анализа СИМВОkразделитель зависит от настроек реrиональных стандартов. В США Э1 Р v О запятая, а в оссии точка с запятои, поскольку у нас запятая используется ДJ1J! разделения целой и дробной частей чисел (в отличие от США, [де для этоrо СЛУЖItr точка), Файлы TaKoro типа MoryT быть получены путем конвертации из любо tо табличноrо процессора. Все свойства обычных текстовых файлов с разделителями, описанНые ВЫl1Iе и рекомендации по их подrотовке и заrpузке в полной мере отноСятся к СSV Фаi1 лам, Но у CSV файлов есть и ряд преимуществ, О Использование унифицированноrо символа разделителя (запятой) ПОЗВОЛяе1 избежать разночтений и связанных с этим проблем. о Поскольку СSV файлы в большинстве случаев являются результатом преобра- зования файлов Excel, в них более жестко задана структура строк и столбцов. Файлы плоских таблиц СУБД семейства dBase, FoxBase, FoxPro и т. Д. Файлы данноrо типа имеют расширение DBF (database Ые). Как и файлы любых СУБД, DВF файлы имеют жестко заданную структуру. В них cTporo определены имена и типы полей, структура полей и записей, используемые форматы представ- ления данных, Следовательно, проблем с заrрузкой данных из таких источников HaMHoro меньше по сравнению с текстовыми файлами, поскольку все возможные проблемы контролируются в процесс е создания файла. СУБД не позволит при- своить полю некорректное имя, ввести в поле данные, не соответствующие ero типу или использующие неправильный разделитель rpупп разрядов в числе, и т, д" поэтому ожидаемое качество данных, заrpужаемых из DВF файлов, является более высоким, чем для текстовых. При заrрузке данных из DВF файлов в аналитическую систему, как правило, достаточно указать их имя. В некоторых случаях требуется дополнительно указать версию СУБД (dBase 111 или dBase IV), а также кодовую страницу для Корректноrо отображения символов. Файлы электронных таблиц Excel. Excel одно из наиболее популярных офисных приложений, применяемых пользователями всех уровней, поэтому возможность заrрузки данных из файлов в формате XLS предусмотрена практи- чески в любой аналитической системе. Однако следует учитывать, что в одном столбце таблицы Excel MorYT содержаться данные различных типов и форматов, допускаться неправильное использование разделителей целой и дробной частеЙ чисел и rрупп разрядов в них. В этом плане к ним следует относиться так же вни- мательно, как и к данным из текстовых файлов. Файлы реляционных СУБД. Источники этоrо типа самые «желанные для пользователей аналитических систем, поскольку с ними меньше Bcero проблем, Структура данных в файлах реляционных СУБД жестко задана, поля CTporo ти- пизированы, форматы данных соответствуют стандартам, В большинстве СУБД поддерживается автоматический контроль целостности, непротиворечивости и уникальности данных, Для заrрузки данных, например, из файла Access доста- точно указать имя файла и таблицу, из которой нужно взять данные,
rлава 2. Консолидация данных 131 2.15. Обоrащение данных в большинстве случаев хранилища данных создаются и поддерживаются для обес nеqения эффективноrо анализа данных на предприятии. ОqевидНо, что данные, собираемые для задач анализа, должны быть полными Jf достоверными, поскольку на основе неполных или недостоверных данных нельзя сделать прав ильные выводы о состоянии бизнеса и путях ero совершенствования. Неполные данные MorYT появиться, например, если часть сведений о прода жах филиала фирмы была утеряна в процессе их переноса в ХД. Аналитик может прийти к выводу, что продажи в этом филиале катастрофически низкие, филиал работает неэффективно и ero следует закрыть, хотя на самом деле деятельность филиала вполне успешна, а ero сотрудники хорошо справляются со своими зада qа,fИ, Недостоверные данные, которые при этом MOryT быть полными, содержат искаженную информацию, не позволяющую провести качественный анализ. По этому в процессе заrpузки в хд, а также при подrотовке к анализу в аналитическом приложении данные проверяются на полноту, целостность, непротиворечивость, налиqие ошибок, пропусков, аномальных значений и друrих факторов, которые MoryT привести к некорректным результатам анализа, Данные и информация Помимо достоверности и полноты данных, существует еще один фактор, непосред ственно влияющий на эффективность их анализа, информационная насыщен ность, Вообще rоворя, данные и информация не совсем одно и то же. Каждый стал кивался с ситуацией, коrда, несмотря на наличие данных, извлечь из них какую либо информацию оказывалось невозможно, Например, если вывести на экран компью тера текст с неправильной кодировкой шрифта, мы увидим вместо букв непонятные закорючки, фиryрки, спецсимволы и т. д. Данные есть информации нет. То же самое произойдет, если вы попытаетесь читать текст на иностранном языке, KOToporo не знаете и символы KOToporo вам неизвестны, например на китайском. При этом мы понимаем, что информация есть, но мы не можем ее распознать и осмыслить, Для извлечения информации из данных может потребоваться их обработка корректировка представления значений (символов), упорядочение и т. д. Примера ми такой обработки служат перевод с неизвестноrо языка на известный, изменение кодировки символов и т. д. На практике подобная обработка с целью получить из произвольных данных информацию является очень трудоемкой, отнимающей MHoro времени и не rарантирующей результатов, Действительно, если изначально При создании данных в них не закладывалась никакая информация, то и извлечь ее будет невозможно. Попробуйте закрыть rлаза и случайно набрать на клавиатуре Несколько строк, а затем отнесите набранный фраrмент криптоrpафу, скажите, что это код, и попросите расшифровать ero. Скорее Bcero, усилия специалиста будут напрасны, Если же ему случайно и удастся выявить некоторую закономерность и извлечь какую то информацию, то о ее достоверности и rоворить не приходится.
132 Часть 1. Теория бизнес анализа Таким образом, информация это не любые данные, а только те, которые со- ответственным образом представлены и упорядочены, то есть имеют структурныle закономерности, которые, кроме Bcero прочеrо, должны распознаваться и ОСМЫс- ливаться пользователем. Так, если мы видим текст на языке, символы KOTOPOto нам незнакомы, мы сталкиваемся с ситуацией, коrда упорядоченность данных есть а соответствующеrо представления нет. Напротив, если в тексте на известном язы! случайным образом переставить буквы, то получится правильное представлеНие но отсутствие упорядоченности. И в том и в друrом случае воспользоваться этим данными мы не сможем, до тех пор пока они не будут соответствующим образом преобразованы. Данные понятие объективное, Они либо реально существуют как изменения HeKoToporo физическоrо процесса, либо нет, А информация в большинстве Случаев субъективна. Если один эксперт с определенным уровнем компетентности, знаний и опыта увидит в некотором наборе данных полезную информацию, то друrой эксперт с друrим уровнем опыта и знаний отыщет совсем друryю информацию или не найдет ее вовсе. Приступая к анализу данных с целью поиска скрытых закономерностей и из- влечения знаний, мы должны задаться рядом вопросов. О Имеют ли эти данные вообще какой нибудь смысл? Присутствует ли в них какая либо информация? О Если да, то насколько эта информация надежна и достоверна? о Достаточно ли этой информации для rенерирования надежных и достоверных знаний, на основе которых можно принимать ответственные управленческие решения? Ответ на первый вопрос во MHoroM определяется происхождением набора данных, Если данные были получены из надежноrо источника: от подразделения предпри ятия, из учетной системы, opraHoB rосстатистики и т. д., скорее Bcero, в том или ином виде информация в них имеется. Правда, иноrда для ее извлечения требуется неко- торая обработка данных перекодировка, преобразование форматов и т, д, Таким образом, если поставщик данных хорошо известен, то и смысл данныХ определен. Например, если источником данных является бyxrалтерия, то они, скорее Bcero, содержат информацию финансовоrо или учетноrо характера. Если источни ком является какая-либо техническая служба предприятия, то и предоставляемая ею информация в большинстве случаев носит технический характер. Надежность и достоверность проверяются практически на всех этапах аналити ческоrо процесса: сначала на этапе заrpузки данных в ХД (в процессе ETL), затем в самом ХД (автоматический контроль) и, наконец, в аналитическом приложении при подrотовке данных к анализу, Третий вопрос является самым неоднозначным. Достаточно или недоста- точно информации для решения той или иной аналитической задачи, каждыЙ аналитик определяет сам на основании весьма субъективных критериев. Один аналитик даже из минимума информации выжмет максимум полезных знаниЙ с помощью личноrо опыта, навыков аналитической работы, умелоrо применения
rлава 2. Консолидация данных lЭЭ аналитических методов и алrоритмов. Специалисту с меньшей квалификапией, возможно, не удастся решить задачу с любым количеством данных. Кроме TOro, сами аналитические задачи различаются по уровню сложности и требованиям J( информативности исходных данных. Необходимость обоrащения данных ЧаСТО возникают ситуации, особенно при решении нестандартных аналитических задач, коrда для анализа требуется информация, которой почему то не оказалось в наличии. Это может произойти из за непродуманноrо процесса сбора данных. Порой базы данных оказываются забиты чем уroдно, только не данными, имеющи ми прямое отношение к основным бизнес процессам на предприятии. Например, в реrистрирующую систему заносят номер автомобиля, на котором вывозят TO вар, номер путевоro листа, ФИО водителя и т. д. А непосредственное отношение к бизнес процессу имеют только наименование товара, ero количество и цена за единицу. Очевидно, что большая часть информации, содержащейся в БД, может заинтересовать разве что начальника охраны, но никак не аналитика по продажам. Складывается ситуация, про иллюстрированная левой частью рис. 2.31, коrда в OrpOMHOM массиве данных имеется только небольшое их подмножество, реально описывающее исследуемый процесс. Данные Данные ... Информация Информация Рис. 2.31. Обоrащение данных Коrда же наконец приходит время анализировать данные, выясняется, что анализировать, в общем то, и нечеrо. В этот момент осознается необходимость обоrащения данных. Оно может выполняться за счет реорraнизации самих данных: введения каких то кодировок, признаков состояний объектов, подразделения их на катеroрии (например, товары распределяются по rpуппам товаров) и т. д. Может привлекаться дополнительная внешняя информация, например история курсов валют на день продажи, информация о продажах конкурентов за тот же период и др. И постепенно ситуация примет вид, представленный в правой части схемы (см. рис. 2.31), коrда полезная информация составляет большую часть имеющихся в распоряжении аналитика данных.
134 Часть 1. Теория бизнес анализа ОПРЕДЕЛЕНИЕ Обоrащение данных процесс насыщения данных новой информацией. которая ПОЗВОЛяеr сделать их более ценными и значимыми с точки зрения решения той или иной аналити_ ческой задачи. Можно выделить два основных метода обоrащения данных внешнее обоrа_ щение и внутреннее. Внешнее оБОlaщенuе предполаrает привлечение дополнительной информации из внешних источников, что позволит повысить ценность и значимость данных с точки зрения их анализа, Под повышением значимости данных подразумева_ ется, что на основе их анализа можно будет принимать управленческие решения принципиально HOBoro уровня. Например, обычные данные о текущей раБОте предприятия позволяют оптимизировать товарные потоки, работу с клиентами, политику скидок, rарантий и т, д. Уже немало, но, поскольку у конкурентов тоже созданы аналитические службы, больших конкурентных преимущсств анализ только оперативной информации не принесет. Друrое дело стратеrический анализ, на основании результатов KOToporo можно поднять работу предприятия на качественно новый уровень и существенно увеличить продажи, а соответственно, и прибыль, Как правило, подобные проры вы связаны с освоением новых рынков, технолоrий, номенклатуры выпускаемых изделий и т. д. Такие бизнес проекты в случае успеха сулят большие дивиденды, но требуют очень больших временных и финансовых затрат. Поэтому, если при разработке и реализации масштабных бизнес проектов допускаются просчеты, не учитываются какие-то факторы, делаются неверные проrнозы и проект закан- чивается неудачей, для любоrо предприятия это очень серьезный удар, rpозящий полным крахом. Для поддержки успешноrо решения стратеrических бизнес задач необходимо испОльзовать соответствующий уровень анализа данных, Данных из обычных OLTP или учетных систем предприятия для TaKoro анализа, как правило, He достаточно, В этом случае следует привлекать дополнительную информацию из внешних источников. Она позволит обоrатить внутренние данные, имеющиесЯ в распоряжении аналитиков фирмы, до уровня информативности и значимости, который позволит решать задачи стратеrическоrо анализа с соответствующиМ уровнем достоверности. Внешними источниками MOryT быть: о друrие предприятия и орrанизации, работающие в этой же сфере деятельности или в смежных сферах, причем как партнеры, так и конкуренты; О финансово-кредитные учреждения, банки, страховые компании; О rосударственные налоrовые и статистические службы; о opraHbI rосударственноrо и муниципальноrо управления; О различные службы социальной сферы: миrрационная служба, opraHbI труда и занятости, система здравоохранения, пенсионные фонды и т. д, rлава 2. Консолидация данных 135 источником информации для обоrащения данных MorYT быть любые орrани " и которые в процессе своей деятельности собирают, структурируют и хранят заЦ" , v информацию, необходимую им для осуществления своих целеи. v внутреннее оБОlaщенuе не предполаrает привлечения внешнеи информации. В этом случае повышение информативности и значимости данных может быть С тиrнуТО за счет изменения их орrанизации. Не следует путать внутреннее обоrа до 1дени е с обычным преобраэованием данных, выполняемым в процессе их заrpузки в хд или при подrотовке к анализу в аналитическом приложении, Преобраэование даННЫХ изначально связано с оптимизацией занимаемоrо ими объема, скорости доступа к ним, удобства представления для пользователя, обеспечения целостности и непротиворечивости данных, удаления факторов, которые мешают их корректно обрабатывать, и т. д. Такая обработка не преследует цель обоrатить данные инфор мацией, а только решает определенные технические проблемы, Внутреннее обоrащение обычно связано с получением и включением в набор данНЫХ полезной информации, которая отсутствует в явном виде, но может быть теМ или иным способом получена с помощью манипуляций с имеющимися дaH ныМИ. Затем эта информация встраивается в виде новых полей или даже таблиц в хд и может быть использована для дальнейшеrо анализа. Для обоrащения данных также может использоваться информация, полученная в процессе их анализа. ПРИ МЕР Рассмотрим пример BHyтpeHHero обоrащения. Руководство предприятия поставило за- дачу выработать новую политику взаимодействия с поставщиками в зависимости от их надежности. Были разработаны критерии, в соответствии с которыми определял ась степень надежности поставщиков, в результате чеrо все поставщики разбивались на три KaTero- рии надежные, средние и ненадежные. Степень надежности KOHKpeTHoro поставщика определялась как отношение общеrо числа дней задержки поставок за квартал к стоимости поставок. То есть поставщик, часто задерживающий мелкие поставки, но в целом соблю- дающий rрафик серьезных поставок, будет рассматриваться как надежный партнер. В то же время поставщик, который задерживает крупные поставки, пусть даже и редко, но соблюда- ет rрафик мелких поставок, будет рассматриваться как потенциально ненадежный партнер. Информацию о задержках и суммах поставок можно получить из документов о поступлении товара в учетной системе. После соответствующих вычислений и сравнений в таблицу хд, rде находится информация о поставщиках, будет добавлено новое поле, в котором для каж- доrо из них будет указана катеroрия надежности. Дальнейший анализ в области поставок может производиться с использованием новых данных. Таким же образом можно создавать рейтинrи сотрудников для их поощрения и продвижения по службе, рейтинrи популярности товаров и т. д. Применение обоrащения данных из внешних источников обычно связано со сбором информации об объектах предметной области, участвующих в исследуемом бизнес процессе, Для предприятий и орrанизаций это MOryT быть экономические показатели (прибыль, численность работников, объем продаж и др,), При исследо вании клиентов физических лиц наибольший интерес представляют признаки,
136 Часть 1. Теория бизнес анализа позволяющие распределить их по rpуппам, например с точки зрения их аКТИВНОС1il как покупателей или потребителей каких либо услуr. В этом случае выясняютс v v v пол, возраст, род занятии и увлечении, наличие семьи и детеи, медиапредпочтеНliJj и т, д, ПРИМЕР Сеть маrазинов, торryющих недороrой повседневной одеждой, решила провести реКлам_ ную кампанию с целью привлечения большеro числа покупателей. При этом орrанизаторы кампании посчитали, что реклама должна быть направлена на те катеroрии населения которые являются самыми активными клиентами. Чтобы узнать, представители каких слое общества наиболее активно приобретают товары этой сети маrазинов, были проведены следующие мероприятия. Клиентам предлаrаласьдисконтная карта, при получении которой нужно было заполнить анкету и указать пол, возраст, профессию, семейное положение, род занятий, увлечения, наличие детей, предпочтения в стилях одежды. Затем по номеру ДИс- контной карты отслеживались продажи. По итоrам квартала были сопоставлены анкеТные данные и собранная информация о продажах. В результате выяснилось, что более 70 % кли- ентов сети маrазинов составляют студенты и молодые специалисты в возрасте до 25 27 лет, предпочитающие современный стиль в одежде и ведущие активный образ жизни. Поэтому рекламную кампанию было решено направить именно на эту катеrорию клиентов. Обоrащение один из важнейших этапов подrотовки данных к анализу. Ис- пользование этой процедуры во мноrих случаях позволяет поднять качество анали- за на принципиально новый уровень, особенно при решении нестандартных задач, даже в условиях недостаточной информативности данных, поступающих из OLTP и учетных систем. Кроме Toro, обоrащение данных в какой то мере позволяет KOM пенсировать просчеты в стратеrии сбора и консолидации аналитических данных. ПЕРСОНАЛИИ Билл Инмон (ВiIIlпmоп) автор концепции хранилищ данных, обнародованной в 1989 r., крупнейший в мире специалист в этой области. Ero идея вызвала настоящий переворот в методах использования при управлении бизнесом rиrантских массивов данных, накоп- ленных компаниями. Тем самым был дан мощный толчок дальнейшему развитию технолоrИЙ Вusiпеss Iпtеlligепсе, прежде Bcero построению информационных витрин. Билл Инмон со- автор концепций корпоративной информационной фабрики (Corporate Iпfоrmаtiоп Factory) и ее аналоrа для rосударственных структур (Gоvеrпmепt Iпfоrmаtiоп Factory). В ero модели атомарные данные орrанизованы в реляционные базы и находятся в нормализованном хранилище данных. Из-под пера Инмона вышло более 600 статей, а также 46 книr, переведенных на девять язы- ков мира. Среди них бестселлер Вuildiпg the Data Warehouse, суммарный тираж KOTOpOro уже превысил полмиллиона экземпляров. Билл Инмон является основателем Prism Sоlutiопs первой в мире компании, которая занялась разработкой инструментария ETL средств извлечения, преобразования и за- rрузки данных. Ральф Кимболл (Ralph Кimball) широко известный специалист в области хранилищ дан- ных и бизнес-аналитики. Он предложил использовать пространственную орrанизацию баз данных (dimепsiопаl data bases) с так называемой архитектурой «звезда».
rлава 2. Консолидация данных 137 кимболл известен как автор бестселлера «Инструменты для хранилища данных: полное руководство пространственноrо моделирования» (Тhе Data Warehouse Toolkit: The Complete Guide to Dimепsiопаl Моdеliпg) и др. Карьера Кимболла складывалась следующим образом. В 1972 r., после окончания постдока Стэндфордскоrо университета в области электротехники (специализация человеко ма- шинное взаимодействие), он попал в исследовательский центр Xerox Palo Alto, rде принял участие в раэработке коммерческоrо проrраммноrо продукта Xerox StаrWоrkStаtiоп. Затем Кимболл становится вице-президентом компании Metaphor Computer Systems, занима- ющейся разработкой систем принятия решений и консалтинrом. В 1986 r. он основывает компанию Red Brick Systems и занимает пост ее rенеральноrо директора до 1992 r. Red Brick System, сейчас принадлежащая IBM, известна своими разработками в области производи- тельной реляционной СУБД, оптимизированной под хранилища данных. В 1992 r. зареrистрирована ассоциация Ральфа Кимболла, оказывающая услуrи консалтин- ra и обучения в области хранилищ данных. Сайт ассоциации: http://ralphkimball.com/ .
Трансформация данных 3.1. Введение в трансформацию данных Помимо предобработки, целью которой является приведение данных в COOTBeT ствие с определенными критериями качества, процесс подrотовки данных к aHa лизу обычно включает в себя еще один этап трансформацию. Каждая выборка исходных данных, заrpужаемая в аналитическое приложение, характеризуется набором свойств, которые MorYT повлиять на эффективность работы модели и снизить достоверность результатов анализа. Даже если данные очищены от таких факторов, ухудшающих их качество, как дубликаты, противо речия, шумы, аномальные значения, про пуски и др., они все еще MOI}'T не COOTBeT ствовать методике и целям анализа. Это связано не с содержанием данных, а с их представлением и внутренней орraнизацией. Может возникнуть парадокс: данные совершенно корректны с точки зрения качества, а их информационноrо содержания вполне достаточно для решения аналитической ,задачи, но представление и opra низация данных затрудняют анализ или вообще делают еro невозможным. Данные MOI}'T быть разобщены, не упорядочены, представлены в форматах, с которыми не работает тот или иной алrоритм. Трансформация данных, то есть их преобразование к определенному представлению, формату или виду, оптимальному с точки зрения решаемой задачи, и призвана решить эту проблему. В то время как очистка данных занимается только их содержанием, TpaHC формация это процесс оптимизации их представления и орrанизации с точки зрения определенноrо метода анализа. Трансформация данных зависит от задач, алrоритмов и целей анализа. То есть для одной задачи MOI}'T потребоваться одни виды трансформации, а для друrой друrие. Несоответствие представления и орrанизации данных методике и целям aHa лиза может проявляться как на уровне моделей, так и на уровне отдельных задач анализа. Несоответствие на уровне моделей означает, что даже если данные в их
rлава З. Трансформация данных 139 bIlIeIllHeM представлении приrодны для использования в нейронной сети, то ВПОk f/ е возможно, что их использование с друrими моделями Data Mining, например f/ д еревьями реIllений, окажется затруднено либо вообще невозможно. Что касается с v ровня задач, то, скажем, для проrнозирования достаточно иметь одномерныи ряд у v б f/аблюдении за проrнозируемым параметром исследуемоrо процесса или о ъекта, тотда как для реIllения задачи классификации требуется выборка, содержащая f/ескОЛЬКО признаков классифицируемых объектов, Если для реIllения задачи реrpессии выходные данные должны быть числовыми, то при классификации Ka rеroриальными, В то же время все три задачи Data Mining: классификация, peтpec сия и проrнозирование мотут быть peIlleHbI в рамках одной модели (например, нейросетевой), Трансформация данных очень Illирокое понятие, не имеющее четко очерчен ных rpаниц. В различных направлениях обработки данных термин «трансформа ция» иноrда распространяют на любые манипуляции с данными независимо от их целей и методов. Однако в контексте бизнес аналитики трансформация данных имеет вполне конкретные цели и задачи, а также использует достаточно стабиль ный набор методов. ОПРЕДЕЛЕНИЕ Трансформация данных комплекс методов и алrоритмов, направленных на оптимиза- цию предпавления и форматов данных с точки зрения решаемых задач и целей анализа. Трансформация данных не павит целью изменить информационное содержание данных. Ее задача предпавить эту информацию в таком виде, чтобы она моrла быть использована наиболее эффективно. Трансформация данных не обязательно связана только с аналитическим при ложением в том или ином виде она выполняется на всех этапах аналитическоrо процесса: в реrистрирующих системах (ОLТР системах), в процессе переноса и заrpузки данных в хд (ЕТL процесс) и непосредственно при подrотовке данных к анализу в аналитическом приложении. Такая распределенность процесса TpaHC формации обусловлена тем, что на каждом этапе он преследует различные цели, В системах первичной реrистрации данных (ОLТР системах) трансформация может про изводиться для обеспечения технической и лоrической совместимости Данных, их подrотовки к извлечению, переносу в хранилище данных и т. д, Напри мер, адреса часто вводят одной строкой. В то же время для анализа мотут представ лять интерес отдельные компоненты адреса, которые имеют как текстовый формат (улица, тород), так и числовой (номер дома, офиса). С помощью трансформации можно распределить соответствующие элементы по отдельным полям и преобра Зовать их в нужный формат. Приведем еще один пример. Различные системы реrи Страции (сканер IllТРИХКОДОВ, контрольно кассовый аппарат и т. п,) мотут вьщавать однотипные данные в разных форматах. Так, в одном случае в качестве разделителя целой и дробной частей чисел может использоваться точка, а в друтом запятая. Попытка вставить такие данные в одно поле базы данных может привести к серьез ным техническим проблемам, а трансформация, то есть преобразование к единому формату, поможет реIllИТЬ этот вопрос.
140 Часть 1. Теория бизнес анализа Основными целями трансформации данных на этапе процесса ETL ЯВЛЯЮТСЯ приведение их в соответствие с моделью данных, используемой в хранилище, осу_ ществление корректной консолидации и собственно заrрузка в хранилище, Возникает вопрос: если трансформации данных так MHoro внимания уделяется на этапе сбора и орrанизации хранения данных, то зачем включать средства транс- формации в аналитическое приложение (что, несомненно, усложняет и делает БОлее дороrим ero разработку)? Ответ прост. Не все данные поступают в аналитичеСКое приложение из систем, [де они прошли предварительную подrотовку, таких Как ОLТР системы и хранилища данных. Но rлавная причина заключается в том, ЧТо трансформация данных в этих системах в большей степени носит технический ха- рактер и слабо связана с возможными методами, алrоритмами и целями анализа. Основные отличия применения трансформации данных на разных этапах ана- литическоrо процесс а представлены в табл. 3.1. Таблица 3.1. Трансформация данных на разных этапах аналитическоrо процесса OL ТР системы ЕТL процесс Аналитическое приложение Обеспечение поддержки Обеспечение поддержки Непосредственная подrо корректности форматов корректности форматов товка данных к анализу, н типов данных. Оптими и типов данных. Преобра объединение и выделение зация процессов доступа зование данных с целью наиболее ценной инфор и выrрузки данных приведения в соответствие мации, обеспечение KOp с моделью данных, которая ректной работы аналити используется в хранилище. ческих алrоритмов, методов Обеспечение процесса KOH и моделей солидации данных и их за rpузки в хранилище Хотя и ОLТР системы, и хранилища данных во мноrих случаях разрабатыва ются с учетом перспективных направлений анализа, предусмотреть все возмож ные ситуации очень трудно. В условиях динамики cOBpeMeHHoro бизнеса нельзя предсказать, какой набор аналитических решений понадобится в ближайшем будущем, Именно процесс подrотовки данных в аналитическом приложении непо- средственно перед выполнением анализа, коrда ero цели и методы ясны, позволяет аналитику наилучшим образом подrотовить данные, вьщелить и подчеркнуть в них необходимую информацию для наиболее эффективноrо ее использования. Эту задачу и решает трансформация данных. Необходимость использования методов трансформации данных в аналити ческом приложении обусловлена еще и их доступностью аналитику. Действитель- но, в процессе подrотовки данных пользователь аналитическоrо приложения имеет возможность по своему усмотрению применять те или иные методы трансформации данных, настраивать их параметры, проводить эксперименты, позволяющие опре делить влияние трансформации на результаты анализа. Что касается хранилищ данных и ЕТL процессов, то, как правило, выполняемые в них преобразования дaн ных заданы жестко, их адаптация в зависимости от характера данных и решаемых задач анализа не предусмотрена и аналитик не может вмешиваться в эти процессы, rлава З. Трансформация данных 141 системы оперативной реrистрации данных (OLTP) обычно вообще недоступны аIlаЛИТИКу. основные методы трансформации данных I1реЖде чем приступить к подробному рассмотрению методов, алrоритмов и целей отдельНЫХ направлений трансформации данных, проведем краткий обзор типич I1ыx средств трансформации, которыми оснащается большинство аналитических платформ. Преобразование упорядоченных данных. Позволяет оптимизировать Пред ставление таких данных с целью обеспечения дальнейшеrо анализа, например решения задачи проrнозирования BpeMeHHoro ряда или rруппировки по BpeMeH I10МУ периоду. Квантование. Позволяет разбить диапазон возможных значений числовоrо признака на заданное количество интервалов и присвоить номера интервалов или иные метки попавшим в них значениям. Сорrnровка. Позволяет изменить порядок следования записей исходной выбор ки данных в соответствии с алrоритмом, определенным пользователем. В некоторых случаях сортировка дает возможность упростить визуальный анализ выборки, опе ративно определить наибольшие и наименьшие значения признаков и т. д. Слияние. Позволяет объединить две таблицы по одноименным полям или дo полнить одну таблицу записями из друrой, которые отсутствуют в дополняемой. Слияние применяется в тех случаях, коrда информацию в анализируемой выборке данных необходимо дополнить информацией из друrой выборки. При объединении к записям исходной выборки добавляются все записи друrой. В случае дополне ния к исходной выборке добавляются только те данные, которые отсутствовали в исходной. Операция слияния является одним из способов обоrащения данных: если выборка содержит недостаточно данных для анализа, то ее можно дополнить недостающей информацией из друrой выборки. fруппировка и разrpуппировка. Очень часто информация, интересующая aHa ЛИТИКа, в таблице оказывается «разбавлена» посторонними данными, разобщена, разбросана по отдельным полям и записям. Используя rруппировку, можно обоб Щить нужную информацию, объединить ее в минимально необходимое количество полей и значений. Обычно предусматривают возможность выполнения и обратной операции разrруппировки. Настройка набора даIПlЫХ. Позволяет изменять имена, типы, метки и наэначе ния полей исходной выборки данных. Например, если поле, содержащее числовую информацию, в источнике данных по какой либо причине имеет строковый тип, значения этоrо поля не MOryT обрабатываться как числа. Чтобы работа с числовы Ми данными этоrо поля стала возможной, их следует преобраэовать к числовому типу. Табличная подстановка значений. Позволяет про изводить замену значений в исходной выборке данных на основе так называемой таблицы подстановки. Таблица подстановки содержит пары ""исходное значение новое значение».
142 Часть 1. Теория бизнес анализа Каждое значение выборки данных проверяется на соответствие исходному знаЧе_ нию таблицы подстановки, и если такое соответствие найдено, то значение выБОР1<11 изменяется на соответствующее новое значение из таблицы подстановки. Это ОЧеl!1 удобный способ для автоматической корректировки значений. Вычисляемые значения. Иноrда для анализа требуется информация, KOTOpCUi отсутствует в явном виде в исходных данных, но может быть получена на ОСНОВе вычислений над имеющимися значениями. Например, если известны цена и Ко- личество товара, то сумма может быть рассчитана как их про изведение. Для этих целей в аналитическое приложение включается cBoero рода калькулятор, который позволяет выполнять над данными исходной выборки различные вычисления. по- скольку анализируемые данные MOryт быть различных типов (строковый, числовой , дата/время, лоrический), то механизм расчетов должен поддерживать работу Не только с числовыми данными, но и с данными друrих типов, например выделять подстроку, выполнятЬ лоrические операции и т. д. Нормализация. Норм:шизация позволяет преобразовать диапазон изменения значений числовоrо признака в друrой диапазон, более удобный для применения к данным тех или иных аналитических алrоритмов, а также соrласовать диапазо- ны изменений различных признаков. Часто используется приведение к еДИНице, коrда весь имеющийся диапазон данных сжимается>-> в интервал [о; 1] или [ 1; 1]. Особенно важно произвести правильную нормализацию данных в алrоритмах Data Mining, которые основаны на измерении расстояния между векторами объектов в MHoroMepHoM пространстве признаков (например, в кластеризации). 3.2. Трансформация упорядоченных данных Мноrие аналитические задачи, например проrнозирование, анализ продаж, динами- ки спроса, состояния бизнес-объектов и друrих протяженных во времени процес сов, связаны с обработкой данных, зависящих от времени. Такие данные называют упорядоченными, или временными рядами. В процессе обработки временных рядов требуется специальная подrотовка данных, чтобы оптимизировать их представле- ние для решения определенных аналитических задач: проrнозирования, классифи- кации состояний объектов, выявления закономерностей, объясняющих динамику бизнес процессов, и т. д. для всех возможных интервалов даты и времени. Временной ряд состоит из последовательности наблюдений за состоянием параметров (признаков) исследуемых объектов или процессов. Если наблюдения содержат один признак, то ряд является одномерным, а если два или более мно- rOMepHbIM. Поскольку значения BpeMeHHoro ряда определены только в фикси- рованные моменты времени, так называемые отсчеты, последовательность ero значений может быть представлена в следующем виде: х == {х(1), х(2)". х(п)}, rде х(п) последнее значение рассматриваемой временной последовательности. При этом отсчеты времени полаrаются равноотстоящими друr от друrа.
rлава з. Трансформация данных 143 ЭА ЕЧАНИЕ временной ряд BcerAa предаавляет собой упорядоченные во времени данные. Однако обратное не BcerAa верно: не все упорядоченные данные MOryт образовывать временной ряд. (кажем, при снятии показаний из скважины измерения характериаик производятся с некоторым шаrом rлубины. Это тоже упорядоченные данные, но их нельзя назвать вре- менным рядом, так как фиксируется не время, а rлубина. Тем не менее мноrие рассуждения о временных рядах распроараняются на любые упорядоченные данные. Uелью трансформации временных рядов является не изменение их содержания, а представление информации таким образом, чтобы обеспечивалась максимальная эффективность решения определенной задачи анализа. Можно выделить два OCHOB !lыx типа преобразования, которые наиболее часто используются при подrотовке временных рядов к ан:шизу. О Окользящее окно применяется при решении задач проrнозирования и К}IaССИфИ кации состояний бизнес объектов, чтобы преобразовывать последовательность значений ряда в таблицу, которую можно использовать для построения моделей или какой либо друrой обработки. о Преобразование даты и времени заключается в приведении даты и времени к виду, наиболее удобному для визу:шьноrо анализа и обработки BpeMeHHoro ряда. При этом результаты преобразования даты уже не являются значениями типаДатаjВремя и MOryT обрабатываться как обычные числа и строки. Рассмотрим эти преобразования более подробно. Скользящее окно Широко при меняется при обработке временных рядов, например, чтобы построить модель проrноза BpeMeHHoro ряда. Целью проrнозирования значений BpeMeHHoro ряда является предсказание значения х(n + 1) на основе предыдущих значений признака. Решение задачи проrнозирования возможно только в том случае, если значения BpeMeHHoro ряда связаны между собой. ПРИМЕР При реrиарации заявок, поступивших от клиентов, среди прочеrо фиксируются дата пода- чи заявки и адрес клиента. Из базы данных сиаемы реrиарации заявок можно извлечь временной ряд с последовательноаью номеров квартир, указанных в адресах. Очевидно, что пытаться предсказать номер квартиры следующеrо клиента на основе знания номеров квартир клиентов, чьи заявки были зареrиарированы ранее, бессмысленно. Для построения проrностической модели необходимо знать три параметра. Интервал nрО21l0за временной интервал, на котором будет осуществляться проrнозирование: день, неделя, месяц, квартал или rод. Ibрuзонт nрО21l0за на какое количество интерв:шов (дней, недель и т. д.) мы хотим получить проrноз. Тлуби1Ш nОZРУЖe1iUЯ количество значений интервалов проrноза в прошлом, KO торое мы будем использовать для предсказания значений интерв:шов в будущем.
144 Часть 1. Теория бизнес анализа При выборе интервала проrноза, возможно, понадобится аrpеrирование ДaI:llfь!)( внутри интервала. Например, если в базе данных информация о продажах Пред_ ставлена по дням, то для построения проrноза по неделям придется объеДИlfRТь информацию за отдельные дни, вычислив сумму, среднее значение или используя друrую функцию аrреrации. Если в качестве интервала проrноза выбрана неделя, то rлубина поrpужения количество недель в прошлом, значения продаж за которые мы будем использовать в качестве исходных данных для предсказания. rоризонт проrноза в этом случае количество недель, значения продаж За которые мы хотим предсказать. При выборе rлубины поrpужения и rоризонта проrноза следует РУКОВОДСТво. ваться следующими соображениями. О Модель проrноза функционирует по принципу обобщения, то есть вывод о воз- можном значении в будущем делается на основе анализа большоrо числа значе- ний из прошлоrо. Следовательно, rлубина поrружения должна в несколько раз превышать rоризонт проrноза. О Чем большее число значений из прошлоrо используется для проrнозирования, тем выше степень обобщения и тем достовернее результаты предсказания. Ok нако при этом есть два оrраничения. Во первых, rлубина поrружения должна быть такой, чтобы значения из прошлоrо, используемые для проrнозирования, оставались актуальными, то есть правильно отражали текущее поведение ис. следуемоrо процесса. Использование для построения модели проrноза слишком старых данных, утративших актуальность, приведет к снижению достоверности или к получению некорректных результатов. BO BTOpЫX, слишком большая rлубина поrpужения увеличит размерность выборки данных, полученной в pe зультате обработки ряда скользящим окном, что повлечет за собой усложнение модели. Кроме Toro, возрастут временные и вычислительные затраты на анализ данных. О Чем дальше простирается rоризонт проrноза, тем ниже достоверность резуль татов. Обобщенная модель проrноза имеет следующий вид (рис. 3.1). х(п) х( х( п 1) х(п + п 2) , Модель п З) проrноза х(п + , п 4) , п 5) 1 ) х( х( 2) х( Рис. 3.1. Обобщенная модель проrноэа rлава З. Трансформация данных 145 в данной модели rлубина поrружения составляет d == 5, а rоризонт проrно за h == 2. Сама модель может представлять собой скользящее среднее, нейронную СеТЬ, реrpессию и т. д. Значение х (п) текущее состояние исследуемоrо параметра, оторое также включается в набор исходных данных для проrноза. к v 6 v выборка данных для такои модели должна содержать входных полеи, COOT ветсТВУЮЩИХ входным переменным модели, и 2 выходных поля, соответствующих выходным переменным. Преобразование ряда последовательно идущих значе I1ИЙ в набор записей для модели проrноза выполняется с помощью скользящеrо окна. Пусть имеется ряд данных, содержащий 1 О наблюдений: Х == {х(о), х(1), х(2), х(з), х(1), x(s), х(6), х(7), х(в), х(9), х(10)}. Если rлубину поrружения задать равной 5, то с помощью скользящеrо окна мОЖНО преобразовать исходный ряд данных в табличную форму, состоящую из 6 записей, которая может быть использована для работы с моделью, представ ленной на рис. 3.1. Преобразованный ряд будет выrлядеть следующим образом (табл. 3.2). Таблица 3.2. Преобразованный ряд данных N!! х(п 5) x(n 4) х(п 3) х(п 2) х(п 1) х(п) х(п + 1) х(п + 2) 1 х(О) х(1) х(2) х(3) х(4) х(5) х(6) х(7) 2 х(1) х(2) х(3) х(4) х(5) х(6) х(7) х(В) 3 х(2) х(3) х(4) х(5) х(6) х(7) х(В) х(9) 4 х(3) х(4) х(5) х(6) х(7) х(В) х(9) х(10) 5 х(4) х(5) х(6) х(7) х(В) х(9) х(10) х(11) 6 х(5) х(6) х(7) х(В) х(9) х(10) х(11) х(12) Рассмотрим еще пример. Пусть имеется ряд наблюдений, отражающий коли чество клиентов, обслуженных за месяц (табл. 3.3). Задача состоит в том, чтобы ПОстроить модель проrноза числа клиентов на будущий месяц. При этом rлубина поrружения задается равной 2, rоризонт проrнозирования 1, то есть на основе двух предыдущих месяцев проrнозируется следующий. Таблица 3.3. Ряд наблюдений Дата начала месяца Число клиентов 01.01.2006 1540 01.02.2006 960 01.03.2006 1150 01.04.2006 1230 01.05.2006 1056 01.06.2006 995 Выборка, полученная в результате обработки данных скользящим окном, будет содержать в нач:ше и в конце неполные записи, количество которых равно
146 Часть 1. Теория бизнес анализа rлубине поrpужения (табл. З.4). Неполные записи можно исключить из рассмот_ рения. Если это сделать, то результирующая выборка будет иметь следующий вид (табл. З.5). Таблица 3.4. Скользящее окно с неполными записями для ряда из табл. 3.3 Дата начала месяца х(п 2) х(п 1) х(п) х(п + 1) ........ 1540 01.01.2006 1540 960 01.02.2006 1540 960 1150 01.03.2006 1540 960 1150 1230 01.04.2006 960 1150 1230 1056 01.05.2006 1150 1230 1056 995 01.06.2006 1230 1056 995 1056 995 995 Таблица 3.5. Скользящее окно с полными записями для ряда из табл. 3.3 Дата начала месяца х(п 2) х(п 1) х(п) х(п + 1) 01.03.2006 1540 960 1150 1230 01.04.2006 960 1150 1230 1056 01.05.2006 1150 1230 1056 995 На рис. 3.2 поясняется принцип формирования последней таблицы. Первое положение окна соответствует строке таблицы с датой 01.03.2006, коrда в Hero попадают три значения 1540,960 и 1150. Значение, соответствующее rоризон ту проrноза для данноrо положения окна, выделено TeMHo cepЫM цветом и paB но 1230. Затем окно смещается, формируя таким же образом вторую строку для даты 01.04.2006, а затем и третью. Положения окна на рис. З.2 соответствуют набору полных записей. Нетрудно заметить, что если начальное положение окна будет левее, то одно или два места в окне окажутся пустыми, что и порождает неполные записи в начале табл. З.4. Смещение окна до крайнеrо правоrо положения, коrда в Hero попадет только последнее значение ряда, приведет к появлению неполных строк в конце таб лицы. Если временной ряд образован не одним, а двумя параметрами и более, то он является MHoroMepHbIM. Например, для двумерноrо ряда можно записать: X=={a(i),b(i)}, [де i номер BpeMeHHoro отсчета, в который было зафиксировано наблюдение, то есть i == 1,2... n. Процедура преобразования MHoroMepHoro ряда в табличную форму выполняет ся по тому же алrоритму, что и преобразование одномерноrо (табл. 3.6, 3.7).
rлава з. Трансформация данных 147 2000 1540 1500 1230 1150 1056 995 960 1000 500 О я нв.06 фев. 06 мар. 06 / апр.06 май 06 июн. 06 01.03.2006 2000 1540 1500 1150 1230 960 1056 995 1000 500 О ЯНВ.06 фев. 06 мар. 06 апр.06 май 06 июн. 06 / 01.04.2006 2000 1540 1500 1150 1230 960 1056 995 1000 500 О ЯНВ.06 фев. 06 мар. 06 апр.06 май 06 июн. 06 / 01.05.2006 Рис. 3.2. ПРИИЦИП работы скольэящеrо окна
148 Часть 1. Теория бизнес анализа Таблица 3.6. Ряд наблюдений ; а Ь ........ 1 8 111 2 5 112 3 4 106 ........ 4 10 114 5 12 96 6 9 116 Таблица 3.7. Скользящее окно с полными записями для ряда из табл. 3.6 N!! записи а(п 2) a(п 1) а(п) Ь(п 2) Ь(п 1) Ь(п) 1 8 5 4 111 112 106 2 5 4 10 112 106 114 3 4 10 12 106 114 96 4 10 12 9 114 96 116 Таблицы, полученные в результате преобразования MHoroMepHbIx рядов данных, как правило, содержат большое число признаков, что может потребовать сокраще ния размерности данных (см. rлаву 5 Очистка и предобработка данных>.». Преобразование даты и времени Обычно каждый элемент BpeMeHHoro ряда представляет собой соответствие дaTa значение», а в случае MHoroMepHoro ряда дaTa значение 1, значение 2...». Все методы обработки, рассмотренные ранее, были направлены на преобразование значений, сами же даты обычно оставались без изменений. Однако, как показывает практика, при решении различных задач анализа может быть полезным и преобра зование даты. Чаще Bcero даты в исходных данных пред ставлены в определенном формате, обычно ЧЧ.ММ.rr>.>, то есть число, месяц и rод, при этом на отображение каждоrо элемента даты отводятся две цифры. Возможны некоторые вариации: указывается полностью rод (02.10.2006) или (и) месяц (12 сентября 2006) и т. д. С точки зрения анализа наибольший интерес представляют собой не детализированные данные за каждый день, а аrреrированные по неделям, месяцам, кварталам или rодам. В этой связи может оказаться полезным извлекать из даты дополнительную информацию о временных интервалах, на которых производится анализ. Так, если базовый интервал, по которому осуществляется анализ деятельности предприятия, неделя, то в некоторых случаях может представлять интерес OTO бражение даты не на каждый день, а на первый или последний день недели. ИНЫМИ словами, все данные за неделю определяются по первому или последнему ее дню. При мер TaKoro преобразования представлен на рис. 3.3. Аналоrично строится преобразование юд + Квартал, Коrда все даты в пределах квартала отображаются ero первым числом, или юд + Месяц, коrда все даты в пре делах месяца отображаются ero первым числом.
rлава з. Трансформация данных 149 Дата кOnи..тю дата (ro,A<:f неделя)' количество, ". y ...,....... 02.01.2006 250 02.01.2006 02.01.2006 250 оз.01.2006 230 03.01.2006 02.01.2006 230 345 04.01.2006 02.01.2006 345 04.01.2006 05.01 .2006 215 05.01.2006 02.01.2006 215 06.01.2006 312 06.01.2006 02.01.2006 312 07.01.2006 124 07.01.2006 02.01.2006 124 08.01.2006 321 roA+ 08.01.2006 02.01.2006 321 + неделя 09.01.2006 234 09.01.2006 09.01.2006 234 10.01.2006 24З 10.01.2006 09.01.2006 243 11.01.2006 З12 11.01.2006 09.01.2006 312 12.01.2006 321 12.01.2006 09.01.2006 321 13.01.2006 267 13.01.2006 09.01.2006 267 14.01.2006 З51 14.01.2006 09.01.2006 351 15.01.2006 216 15.01.2006 09.01.2006 216 16.01.2006 187 16.01.2006 16.01.2006 187 17.01.2006 179 17.01.2006 16.01.2006 179 18.01.2006 261 18.01.2006 16.01.2006 261 19.01.2006 305 19.01.2006 16.01.2006 305 20.01.2006 ,'....... 156 20.01.2006 16.01.2006 156 дата Рис. 3.3. При мер трансформации ПОЛЯ с датой Представляет интерес извлечение из даты номеров временных интервалов недель, месяцев и кварталов как в числовом, так и в текстовом виде. Тоrда зна чения этих временных интервалов сами MOryT использоваться в качестве исходных Данных для дальнейшеrо анализа. Приведение даты к различным видам представления позволяет упростить визуальный анализ исходных данных, зависящих от времени, а также использо вать значения времени в качестве исходных данных для решения разнообразных аналитических задач. Следует отметить, что после преобразования даты являются уже не значениями Типа Дата, а обычными строковыми и числовыми значениями. Поэтому их боль Ше нельзя обрабатывать как даты, но можно использовать в моделях как обычные СТроковые или числовые переменные. MOryT быть интересны данные, полученные для различных интервалов времени в пределах одной даты, то есть представленные в масштабе часов, минут и секунд. Обычный формат для представления времени ЧЧ:ММ:СС : дЛЯ отображения I<аждоrо элемента времени отводится по два знако места, а символом разделителем служит двоеточие. Для трансформации времени часы, минуты и секунды извлекают СЯ в отдельные поля. Результаты TaKoro преобразования представлены в табл. 3.8.
150 Часть 1. Теория бизнес анализа Таблица 3.8. Преобраэование поля с временем Время Время,ч Время, мин Время, с 12:10:39 12 10 39 ............ 13:15:20 13 15 20 .......... 16:20:44 16 20 44 ....... 18:09:56 18 9 56 19:15:30 19 15 30 ........ 21:22:50 21 22 50 23:12:40 23 12 40 ПРИМЕР Информация, важная для оптимизации бизнес-процесса, может заключаться в почасовых данных. Например, в сети розничных маrазинов было решено провести исследованиетоrо, правильно ли выбран режим работы. Для зтоrо в течение каждоrо часа фиксировалось количество чеков. Затем были построены rрафики, отражающие наrрузку на каССовые пункты в течение рабочеro дня для каждоrо маrазина. При зтом рабочее время всех Mara- зинов с 9:00 до 20:00 с перерывом на обед с 13:00 до 14:00. Результаты исследований представлены на рисунке. 250 200 150 100 50 О о о ф Маrазин 1 ." Маrазин 2 ----- Маrазин 3 о о ё о <;:! о о N о о с.; о о о о u-; о о ф о о r:-: о о а; о о ф о о ё N Исследования показали, что в первом маrазине пиковые наrрузки ПРИХОДЯТСЯ на обеденное и вечернее время. Это может быть обусловлено наличием вблизи маrазина крупных предпри- ятий или орrанизаций, сотрудники которых покупают продукты в обеденный перерыв, времЯ Koтoporo колеблется от 12:00 до 15:00. Вечерние наrрузки MOryт быть связаны с тем, что маrазин расположен в спальном районе, жители KOToporo приобретают продукты после работы. Для оп- тимизации режима работы первоrо маrазина можно сделать следующие рекомендации. · Сместить время работы на один час позже, поскольку основная наrрузка приходится на вечернее время, а утром маrазин практически «простаивает». · Орrанизовать обеденный перерыв сотрудников маrазина таким образом, чтобы в течение AHeBHOro пика продаж большинство сотрудников находились на своих рабочих местах. · В интервалы пиковых наrрузок задействовать дополнительные кассовые пункты, а в ин- тервалы спада сокращать число работающих кассовых пунктов. Аналоrичные рекомендации можно выработать и для друrих маrазинов. Например, во вто- ром маrазине пиковые наrрузки приходятся на утреннее и вечернее время, поэтому, воз- можно, имеет смысл увеличить рабочее время на два часа, то есть открываться на час раньше, а закрываться на час позже. rлава З. Трансформация данных 151 з.3. rруппировка данных I1ноrда высокая степень детализации данных может ухудшить результаты анализа. следствием ее является слишком большое количество записей в исходной выборке данНЫХ' а также низкая значимость каждоrо отдельноrо значения. Кроме Toro, ин формация оказывается «размазанной", по всей выборке и ее трудно использовать для анализа. Ежедневные показатели HeKoToporo бизнес процесса, например продаж, I10двержены колебаниям под действием различных случайных факторов, поэтому значения продаж, взятые по отдельности за каждый день, вряд ли дадут надежную оценку, характеризующую развитие процесса, Но если сrpуппировать ежедневные I10казатели за неделю или месяц, то такая оценка будет более обоснованной. То же самое можно сказать и о признаках объектов (например, товаров). Если объекты I10ХОЖИ между собой, то будут близки и их одноименные признаки. Однако значе нИЯ признаков также MOryT быть подвержены случайным вариациям. Поэтому если объединить признаки по rpуппе похожих объектов, то можно получить показатель, более надежно характеризующий свойства совокупности в целом. Таким образом, rруппировка данных полезный инструмент, применение KOToporo в процессе подrотовки данных к анализу позволяет более эффективно использовать содержащуюся в данных информацию, Перед тем как при ступать к rpуппировке, необходимо определить в исходной BЫ борке данных поля измерений и фактов, Измерения это данные, характеризующие исследуемый процесс качественно, а факты количественно, Например, процесс продаж описывается количественными и качественными данными. Качественные данные наименования товаров и клиентов. Очевидно, что просто указать эти па раметры недостаточно. С каждым проданным товаром или клиентом связан набор числовых показателей фактов: цены, количества, суммы, скидки, наценки и т. д, Каждое наименование товара или клиента, содержащееся в поле измерения, называется значением измерения. Суть rpуппировки заключается в том, что все записи, содержащие одноименные значения измерения, по которому производится rpуппировка, объединяются в одну, а соответствующие факты аrpеrируются. Рассмотрим выборку данных, отражающих продажу стройматериалов (табл, 3.9). Она содержит измерения Дата, Клиент и Товар, а также факты Цена, Количество и Сумма. Табтща 3.9. Продажа стройматериалов Дата Кпиент Товар Цена Количество Сумма 01.03.2007 000 «Полиrон!> Цемент 150 20 3000 01.03.2007 ЗАО «Монтажник» Керамзит 100 60 6000 01.03.2007 000 «Тандем» Кирпич 1500 5 7500 02.03,2007 000 «Шплинт!> Плиты 1100 10 11 000 02.03.2007 ЗАО «Монтажник!> Блоки 900 20 18 000 02.03.2007 000 «Полиrон» Кирпич 1500 10 15 000 03.03.2007 000 «Аrpострой!> Плиты 1100 8 8800 Продолжение #
152 Часть 1. Теория бизнес анализа Таблица 3.9 (продолжение) Дата Кпиент Товар Цена Количество Сумма ......... 03.03.2007 ЗАО «Монтажник,> Керамзит 100 30 3000 ....... 03.03.2007 000 «Тандем» Блоки 900 10 9000 ........... 03.03.2007 000 «Полиrон» Плиты 1100 30 33 000 ........ 04.03.2007 000 «Шплинт,> Керамзит 100 100 10000 04.03.2007 000 «Тандем,> Кирпич 1500 10 15000 ........ 04.03.2007 ЗАО «Монтажник,> Цемент 150 20 3000 04.03.2007 000 «Полиrон,> Блоки 900 15 13 500 05.03,2007 000 «Аrрострой» Плиты 1100 20 22 000 05.03.2007 000 Шплинт» Керамзит 100 50 5000 05.03.2007 ЗАО «Монтажник,> Цемент 150 40 6000 05.03.2007 000 «Тандем» Блоки 900 15 13500 06.03.2007 000 «Полиrон,> Кирпич 1500 6 9000 06.03.2007 000 «Аrpострой» Керамзит 100 70 7000 06.03.2007 ЗАО Монтажник» Цемент 150 30 4500 rруппировка может производиться по одному из трех фактов. Если в качестве факта для rруппировки выбирается Дата, то все записи, содержащие одинаКовые даты, будут объединены в одну (табл, 3,10). Таблица 3.10. Вариант rруппировки 1 Дата Цена Количество Сумма 01.03.2007 583,33 85 16500 02.03.2007 1166,67 40 44 000 03.03.2007 800,00 78 53 800 04.03.2007 662,50 145 41 500 05.03.2007 562,50 125 46 500 06.03.2007 583,33 106 20 500 При этом для измерения Цена была выбрана функция аrpеrации с вычислением среднеrо значения, для измерений Количество и Сумма с вычислением суммы. Таким образом, этот вариант rpуппировки позволяет получить информацию о том, какое количество единиц товара, по какой средней цене и на какую сумму было продано в пределах каждой даты, rруппировка по измерению Клиент позволяет получить те же аrpеrированны е факты, что и в предыдущем примере, но уже не для каждой даты, а для каждоrо клиента (табл. 3.11), Таблица 3.11. Вариант rруппировки 2 Кпиент Цена Количество Сумма ЗАО «Монтажник,> 258,33 200 40 500 000 «Аrpострой» 766,67 98 37 800 000 «Полиrон'> 1030,00 81 73 500 rлава З. Трансформация данных 153 l<11и ент Цена Количество Сумма 000 "Тандем!> 1200,00 40 45 000 000 "Шплинт!> 433,33 160 26 000 L..-------"" Наконец, rруппировка по измерению Товар позволяет получить информацию о тоМ, по какой цене, в каком количестве и на какую сумму был продан каждый из товаров (табл. 3,12). Таблица 3.12. Вариант rpУППИРОВКИ 3 товар Цена Количество Сумма БлоКИ 900 60 54 000 Керамзит 100 310 31000 КИРПИЧ 1500 31 46 500 Плиты 1100 68 74 800 Цемент 150 110 16500 Полученная в результате rpуппировки информация может использоваться для различных задач, Так, распределение сумм продаж по датам позволит проанали зировать динамику продаж, выявить тенденции и т, д,; rpуппировка по полю Кли ент оптимизировать работу с клиентами, например предоставить наиболее актив ным из них скидки; rpуппировка по полю Товар определить наиболее и наименее продаваемые товары, оценить вклад KOHKpeTHoro товара в общий объем продаж, При rpуппировке данных MOryT использоваться различные функции аrpеrации, К наиболее типичным относятся: сумма, среднее, количество, максимум, минимум, медиана (их смысл уже раскрывался в rлаве 2 при рассмотрении преобразования данных в ETL), ДЛЯ строковых значений в качестве функций аrреrации MorYT использоваться только максимум, минимум, количество, первый, последний. При этом макси мум (минимум) нескольких строковых значений рассчитывается посимвольным сравнением. Сначала сравниваются два первых символа строк. Если их коды одинаковы, сравниваются вторые символы и т. д. Как только в строках появляется первый несовпадающий символ, функция аrреrации принимает значение строки, Код символа в которой оказался больше (меньше). Разrруппировка данных в Процессе rpуппировки данных происходит объединение фактов по значениям He KOToporo измерения с применением той или иной функции аrpеrации, но при этом теряется информация, связанная с друrими измерениями, то есть связь фактов со Значениями друrих измерений, И если у нас есть проrноз, построенный на основе сrруппированных данных, то по нему мы ничеrо не можем сказать о значениях, «а основе которых он был получен. При необходимости эту информацию можно Восстановить с помощью разzруnnировки данных. CTporo rоворя, она не является операцией, обратной rpуппировке, то есть при разrpуппировке не происходит BOC Становления исходноrо состояния выборки. Факты восстанавливаются не точно,
154 Часть 1. Теория бизнес анализа "'" а пропорционально их известному вкладу в значения, полученные в резу л ы'1'еe аrреrирования. В общем, разrруппировка может быть никак не связана с rpУ П ПI1_ ровкой. Разrруппировка может выполняться для всех видов обработки данных, 1<01'. да имеет место преобразование HeKoToporo набора значений в одно значение с помощью какоrо либо 10 алrоритма, например, коrда на основе нескольких членов ряда формируется проrнозируемое значение. При этом значения, полученные при разrpуппиров ке, будут отображать долю каждоrо исходноrо зна чения в результате. Рассмотрим модель, преобразующую набор зна чений в одно с помощью операции суммирования Рис. 3.4. Модель (рис. 3.4). Каждое значение, полученное в результате разrруппировки, может быть опре- делено как доля в результате, выраженная, например, в процентах, то есть {19; 28; 22; 31}. На круrовой диаrрамме пред ставлены rpуппируемые значения и соответ- ствующие им доли, которые будут получены при разrруппировке (рис. 3.5). 1 О; 19 % 15 L 54 12 ...... .. 17 .. , 17; 31 % 12; 22 % 15; 2В % Рис. 3.5. Информация для разrруппировки 3.4. Слияние данных в практике анализа достаточно часто встречается ситуация, коrда требуемые дaH ные приходится собирать из нескольких таблиц. Необходимость в этом обычнО возникает в следующих случаях. D Данные, которые нужны для анализа, «разбросаны по нескольким таблицам. D Данные в исходной таблице несут недостаточно информации для качественноrо анализа, и поэтому требуется процедура их обоrащения, которая обычно связана с добавлением в таблицу данных из сторонних источников. Ситуация, Коrда анализируемые данные оказываются в нескольких таблицаХ или берутся из отдельных источников, а не из централизованноrо хранилшда данных, может быть следствием непродуманноrо процесса консолидации и инте- rpирования данных на этапе ETL. Недостаточно информативная выборка также
rлава з. Трансформация данных 155 встречается довольно часто. И дело здесь даже не столько в самой выборке, сколько в методике анализа, для которой она используется. Например, изначально множе сТВО даННЫХ предполаrалось применять как обучающую выборку для построения м:одели проrноза, но впоследствии возникла необходимость в ее использовании длЯ классификации объектов множества. Возможно, для решения задачи проrно зирования в множестве использовались одиН или два выходных признака, тоrда КаК для надежной классификации требуется не менее трех или четырех. В этом случае недостающие признаки можно будет взять из друrой таблицы. Таким обра зом, если для решения одной аналитической задачи информативность множества данНЫХ может быть достаточна или даже избыточна, то для друrой она окажется недостаточной и потребует обоrащения. При необходимости объединить данные выполняется процедура слияния (merge). Таблица, к которой в процессе слияния добавляются данные из друrой, называется исходной, или входящей; вторую таблицу, данные из которой добавля ются к исходной, часто называют связываемой. Исходная и связываемая таблицы должны иметь ОДНо или несколько одинаковых полей, на основе которых будет производиться связывание двух таблиц, это поля связи. Остальные поля, уни кальные для каждой из таблиц, MorYT быть присоединены к результирующему набору после слияния. Существует несколько способов слияния, которые применяются в зависимости от Toro, какие данные и в каком виде должны быть объединены в результирующей таблице. Рассмотрим их. Объединение Объединение применяется в тех случаях, коrда к строкам исходной таблицы требуется добавить все строки связы ваемой, при этом строки добавляются снизу. Принцип объединения двух таблиц поясняется на рис. 3.6. Рассмотрим пример. Пусть имеется исходная выборка данных, в которой содержатся сведения о поставляемых товарах наименования и поставщики (табл. 3.13), а TaK Же выборка данных, содержащая историю продаж этих товаров (табл. 3.14). Таблица 3.13. Входящая таблица Исходная таблица Связываемая таблица Рис. 3.6. Объединение таблиц L Поставщик Товар l 000 HeBOД Рыба свежая зло Молкомбинат Сыр 000 Птичник Куры зло Овощевод Капуста оло Хладокомбинат Мороженое ЗЛО Маслосырбаза Молоко оло rорпищекомбинат Кетчуп
156 Часть 1. Теория бизнес анализа Таблица 3.14. Связываемая таблица Дата Поставщик Товар Количество 02.04.2007 ЗЛО <1Молкомбинап> Сыр 150 ......... 08.04.2007 000 <!Птичник,> Куры 200 ---...... 11.04.2007 ЗЛО <!Маслосырбаза» Молоко 170 ............. 15.04.2007 000 <1ПТИЧНИКi> Куры 100 ......... 22.04.2007 ЗЛО <!МолкомбинаТi> Сыр 80 .......... 27.04.2007 ОЛО <!ХладокомбинаТi> Мороженое 250 27.04.2007 000 <!Невод!> Рыба свежая 160 Необходимо объединить информацию так, чтобы таблицы содержали два оди- наковых поля Поставщик и Товар, которые MoryT использоваться для слияния, а также два поля Дата и Количество, которые находятся только во ВТорой таблице. Результатом объединения по полям Товар и Поставщик будет следующая таб. лица (табл, 3.15). Таблица 3.15. Результат объединения Поставщик Товар Дата + Кол ичество + 000 <!Невод'> Рыба свежая ЗЛО <!Молкомбинап> Сыр 000 <1ПТИЧНИЮ> Куры ЗЛО <!Овощевод'> Капуста ОЛО <!ХладокомбинаТi> Мороженое ЗЛО <1Маслосырбаза» Молоко ОЛО «[орпищекомбинат» Кетчуп ЗЛО <1МолкомбинаТi> Сыр 02.04.2007 150 000 <!Птичнию> Куры 08.04.2007 200 ЗЛО <!Маслосырбаза,> Молоко 11.04.2007 170 000 <1ПТИЧНИКi> Куры 15.04.2007 100 ЗЛО <1Молкомбинап> Сыр 22.04,2007 80 ОЛО <1ХладокомбинаТi> Мороженое 27.04.2007 250 000 <!Невод!> Рыба свежая 27.04.2007 160 Знак «+» рядом с названиями полей Дата и Количество означает, что они не являются общими для двух таблиц, а просто добавлены к результату слияния полей Поставщик и 1Ьвар. Внутреннее соединение Внутреннее соединение позволяет получить в результирующем наборе только те записи, для которых значения в одном из полей связи совпадают. То есть в таблИ' це, полученной в результате BHYTpeHHero соединения, останутся только те записИ,
rлава з. Трансформация данных 157 которые содержат одинаковые значения в заданном rтоле (или заданных полях). Принцип BHYTpeHHero соединения схематично представлен на рис. 3.7. Продолжим предыдущий пример. Теперь результирующая таблица содержит только те за rтиси, для которых значения в полях связи Товар и Поставщик одинаковые. При этом ЗАО «Овоще ВОДj> и ОАО «[орпищекомбинаТj>, присутствующие в общем списке поставщиков, в результирующую таблицу внесены не были, поскольку в таблице истории продаж записи с их участием отсутствуют (табл. 3.16). .... [1: '" :I: g: Х () :s: [1: '" ::!:'" ф::r "':s: "'''' [1: .... m () Рис. 3.7. Внутреннее соединение Таблица 3.16. Результат BHYTpeHHero соединения поставщик Товар Дата + Поставщик+ Товар+ КОl1ИЧество+ 000 НеВОДj> Рыба свежая 27.04.2007 000 HeBOДp Рыба свежая 160 ЗЛО MOk Сыр 02.04.2007 ЗЛО MOk Сыр 150 комбинаТj> комбинаТj> ЗАО MOk Сыр 22.04.2007 ЗЛО MOk Сыр 80 комбинаТj> комбинаТj> 000 Птич Куры 08.04.2007 000 ПТИЧ Куры 200 НИКj> никj> 000 Птич Куры 15.04.2007 000 ПТИЧ Куры 100 никj> НИI(j> ОЛО Хладо Мороженое 27.04.2007 ОЛО Хладо Мороженое 250 комбинаТj> комбинаТj> ЗАО Масло Молоко 11.04.2007 ЗЛО Масло Молоко 170 сырбазаj> сырбаэаj> Таким образом, внутреннее объединение позволило из всех поставщиков OTO брать только тех, закупка у которых производилась за наблюдаемый период Bpe мени. Внешнее соединение При внешнем соединении все записи одной таблицы дополняются значениями из друrой, если значения этих записей по К7Iючевым полям совпадают. То есть табли цы связываются по полю ювар, и если существуют записи, rде значения данноrо поля в обеих таблицах идентичны, то записи будут дополнены значениями, которые отсутствуют в одной таблице и присутствуют в друrой. Фактически этот механизм Позволяет добавлять поля из одной таблицы в друryю, но не по всем записям, а только по тем, значения которых в поле связи совпадают для обеих таблиц. Кроме Toro, различают левое и nравое внешнее соединение. При левом записи Исходной таблицы дополняются значениями из связанной таблицы, а при правом наоборот. Схематично принцип внешнеrо соединения поясняется на рис. 3.8.
158 Часть 1. Теория бизнес анализа T liТl , ; .a :е :1;. '" m :I: :З: gj .... () s s ii .a .....t:! I!J () !ц; . Внешнее левое соединение Внешнее правое соединение Рис. 3.8. Внешнее соединение Рассмотрим пример. Пусть к табл. 3.13, [де содержится только информация о товарах и поставщиках, требуется добавить поля, которые отражают историю закупок (Дата и Количество). Для этоrо в качестве поля связи будет при меняться поле Товар. При использовании левоrо внешнеrо соединения получим следующее (табл.3.17). Таблица 3.17. Результат внешнеrо левоrо соединения Поставщик Товар Дата + Пocrавщик+ Количество+ 000 НеВОДj> Рыба свежая 27.04.2007 000 НеВОДj> 160 ЗЛО МолкомбинаТj> Сыр 02.04.2007 ЗЛО МолкомбинаТj> 150 ЗЛО МолкомбинаТj> Сыр 22.04.2007 ЗЛО МолкомбинаТj> 80 000 ПТИЧНИКj> Куры 08.04.2007 000 ПТИЧНИКj> 200 000 ПТИЧНИКj> Куры 15.04.2007 000 ПТИЧНИКj> 100 ЗЛО ОвощеВОДj> Капуста ОЛО Хладокомби Мороженое 27.04.2007 ОЛО Хладокомби 250 HaTj> HaTj> ЗЛО Маслосырбазаj> Молоко 11.04.2007 ЗЛО Маслосырбазаj> 170 ОЛО rорпищеком Кетчуп бинаТj> Теперь рассмотрим ситуацию, Коrда имеется информация о наименованиИ товаров и истории закупок, а информация о поставщике отсутствует. Получить ее можно Через поле связи Товар, поскольку в одной таблице каждый товар связан со своим поставщиком, а в таблице, [де содержится история закупок, с датоЙ и количеством. Пусть исходной будет таблица с историей закупок (табл. 3.18), а связываемой с информацией о поставщике (табл. 3.19). Табтща 3.18. Исходная таблица Дата Товар Копичество 02.04.2007 Сыр 150 08.04.2007 Куры 200
rлава з. Трансформация данных 159 ......-- Товар Количество дата ;.с.. Молоко 170 11.04.2007 ......-- Куры 100 15.04.2007 Сыр 80 22.04.2007 27.04.2007 Мороженое 250 Рыба свежая 160 27.04.2007 Таблица 3.19. Связываемая таблица поставщик Товар 000 НеВОДj> Рыба свежая ЗЛО МолкомбинаТj> Сыр 000 ПТИЧНИКj> Куры ЗЛО ОвощеВОДj> Капуста ало ХладокомбинаТj> Мороженое зло Маслосырбазаj> Молоко оло rорпищекомбинаТj> Кетчуп При правом внешнем соединении получим следующий результат (табл. 3.20). Таблица 3.20. Результат правоrо внешнеrо соединения Товар Дата + Поставщик+ Количество+ Сыр 02.04.2007 зло МолкомбинаТj> 150 Куры 08.04.2007 000 ПТИЧНИКj> 200 Молоко 11.04.2007 зло Маслосырбаэаj> 170 Куры 15.04.2007 000 ПТИЧНИКj> 100 Сыр 22.04.2007 зло МолкомбинаТj> 80 Мороженое 27.04.2007 оло ХладокомбинаТj> 250 Рыба свежая 27.04.2007 000 НеВОДj> 160 ПОJПюе внеUПIее соеДlПlеlШе. В результирующий набор ВК7Iючаются все строки II поля как исходной, так и связываемой таблиц. При этом, если в некоторой за писи значения поля связи для обеих таблиц совпадают, то все поля этой записи заполняются соответствующими значениями. Если совпадение по полю связи отсутствует, то ОСтальные поля такой записи будут заполнены пустыми значениями. Фактически это означает, Что для значений исходной таблицы OTCYТCТBY ют соответствующие значения в связываемой. Принцип работы полноrо внешнею соединения Поясняется на рис. 3.9. Таким образом, для исходной и связываемой таблиц из предыдущеrо примера (см. табл. 3.18, 3.19) применение полноrо внешнеrо соединения даст следующий результат (табл. 3.21). l' « СО" х х () s: ( ) : (IS"S ='<:: ЗНС «)<0 0::10- = О l". . " ;'.'" .'...,.'.' ", t"" Рис. 3.9. Полное внешнее соединение
160 Часть 1. Теория бизнес анализа ТаБJШца 3.21. Результат полноrо внешнеrо соединения Поставщик Товар Дата+ Поставщик+ Количество;- 000 HeBOД!> Рыба свежая 02.04.2007 000 HeBOД!> 160 ---.... ЗЛО Молкомби Сыр 08.04.2007 ЗЛО Молкомбинат» 150 ......... нат!> ЗЛО Молкомби Сыр 11.04.2007 ЗЛО Молкомбинат» 80 ......... нат!> 000 ПТИЧНИКi> Куры 15.04.2007 000 ПТИЧНИКi> 200 000 ПТИЧНИКi> Куры 22.04.2007 000 <!ПТИЧНИКi> 100 ЗЛО "ОвощеВОДi> Капуста ОЛО <!Хладоком Мороженое 27.04.2007 ОЛО "Хладокомби 250 бинаТi> нат!> ЗЛО Маслосыр МОЛОКО 11.04.2007 ЗЛО <!Маслосырбаэаi> 170 база» ОЛО <!rорпищеком Кетчуп бинаТi> Если информация по определенному товару и поставщику присутствует в обеих таблицах, то она полностью объединяется, Однако для товаров «капуста» и «KeT ЧУПi> отсутствует информация о закупках, а значит, о дате и количестве, Поэтому соответствующие ячейки должны остаться пустыми, Полное внешнее соединение позволяет полностью связать информацию таблиц. 3.5. Квантование Одним из преобразований, которые часто используются при подrотовке данных к анализу, является квантование. В основе операции квантования лежит проце дура, состоящая из двух шаrов. О Диапазон значений, в пределах KOToporo изменяется некоторая числовая вели чина (признак, показатель и Т, д.), разбивается на заданное количество интерва лов, каждому из которых присваивается определенный номер, Эти интервалы называются интервалами квантования, а присвоенные им номера уров'Ji.ЯМU квантования. О Каждое значение заменяется номером интервала квантования, в который по пало данное значение, ЗАМЕЧАНИЕ При необходимости вместо номера интервала квантования используются друrие значения, связанные с зтим интервалом. Это MOryт быть верхняя или нижняя rраницы интервала, erO срединное значение или произвольная метка, выбранная пользователем. rрафически процесс квантования может быть представлен в следующем виде (рис. 3.10). rлава З. Трансформация данных 161 70 60 50 lCi ::>- 40 Q. () 1i ЗО со ::; ::; ::>- 20 () 10 I I , 7 6 5 со Q. 4 CIJ () со з!2 Q. CIJ ::; 2 о З2З724З65З4З6 з 6 2 Рис. 3.10. Процесс квантования Пусть наблюдаемый на рис, 3,10 ряд значений представляет собой суммы выдаННЫХ кредитов. При этом минимальная сумма составляет 7000 руб., а макси мальная 65 000 руб. Если диапазон значений ряда от О до 70 000 руб., ero можно разбить на 7 равных интервалов, взятых через 10000, по которым и будет произ водиться квантование. Для этоrо каждому интервалу будет присвоен порядковый номер, после чеrо все наблюдаемые значения будут заменены номерами интер валов квантования, в которые они попали. То есть вместо значения 23, которое принадлежит третьему интервалу квантования, в результирующем наборе данных будет 3, вместо значения 35 будет 4 и т, д. На рис. 3.10 штрихпунктирными линиями представлены rpаницы интервалов квантования, справа расположены номера интервалов, а внизу результирующие ЗНачения, которые будут присвоены наблюдениям в результате квантования. Таб лица преобразования будет выrлядеть следующим образом (табл, 3,22), Таблица 3.22. Пример квантования Исходное 23 12 28 65 18 32 25 53 45 28 37 25 58 7 24 55 18 Значение Квантованное 3 2 3 7 2 4 3 6 5 3 4 3 6 1 3 6 2 Значение При квантовании необходимо определить, какую из rpаниц интервала следует ВКЛючить в этот интервал, Поскольку нижняя rpаница диапазона всеrда принад лежит нижнему интервалу, то и для друrих интервалов есть смысл условиться о Включении нижней rpаницы. Единственным исключением является самый Bepx liий Интервал, который включает в себя как верхнюю, так и нижнюю rpаницу.
162 Часть 1. Теория бизнес анализа Цели использования квантования Квантование широко используется во всех областях, rде возникает необходимость в обработке, передаче и хранении данных. Квантование неотъемлемая часть процесса преобразования аналоrовых (то есть непрерывных по времени и a _ плитуде) сиrналов в цифровые (то есть дискретные по времени и KBaHToBaHHble по амплитуде). Квантование позволяет представлять и хранить данные в БОлее компактном и защищенном от искажений виде. Процесс дискретизации заКЛЮЧа_ ется в представлении непрерывной функции в виде набора отдельных значений взятых в определенные моменты времени отсчеты. В результате квантовани значения отсчетов преобразуются в номера интервалов квантования, в KOTOPble эти значения попали. Принцип преобразования аналоrовых данных в цифровыIe представлен на рис. 3.11. 1 2 З 4 5 б 7 В 9 10 11 Е !нdIiшI ... 15 10 5 О 1 2 З 4 5 б 7 В 9 10 11 Рис. 3.11. Иллюстрация принципа преобразования в бизнес аналитике кваlПование способствует достижению следующих целей. О Изменяется вид данных: из непрерывных они MOryT быть преобразованы в дис кретные. О Квантование может использоваться для сокращения размерности данных, а именно для уменьшения числа разнообразных значений признака. Например, если для анализа клиентов банка, получающих кредит, интерес представляют не отдельные клиенты и суммы кредитов, а rpуппы, объединяющие клиентов по ИlПервалам сумм, то в результате квантования можно получить более удобный для анализа ряд данных. Уменьшение разнообразия значений признаков в He которых случаях позволяет сделать работу моделей более эффективной. Дей ствительно, если с точки зрения анализа нет разницы между суммами кредита 15 и 17 тыс., то нет смысла рассматривать эти величины отдельно. В некоторых случаях представляет ИlПерес использование в качестве результатов квантования не самих номеров интервалов, а дрyrих значений, связанных с ними. О Ниж1lЯЯ zраница интервала вместо значения, попавшеrо в интервал, устанав- ливается значение ero нижней rpаницы. О Верхняя zраница интервала вместо значения, попавшеrо в интервал, ycтaHaB ливается значение ero верхней rраницы. О Середина интервала вместо значения, попавшеrо в интервал, устанавливаетсЯ ero срединное значение.
rлава З. Трансформация данных 163 CI Метка интервала пользователь может задать произвольное значение, обозна чающее интервал, например наименование катеrории, к которой будет относить ся объект классификации. [раницы и середину интервала удобно применять в тех случаях, коrда KBaH тованный ряд значений должен сохранять количественное выражение исходных данных. Однако при этом результирующее поле по прежнему останется непрерыв нЫМ и не сможет быть использовано в качестве выходноrо в классификационной модели. Преимуществом от использования данноrо метода будет сокращение разнообразия значений признака. Использование меток интервалов дает возможность сделать результаты квантования более наrлядными и сразу определить метки классов, если целью квантования является разбиение признака по катеrориям. Так, если цель KBaH тования поля Сумма кредита разделить всех клиентов на катеrории в зависи мости от взятой ими суммы, то можно использовать соответствующие метки (табл. 3.23). Таблица 3.23. Пример квантования с меткой интервала Срок кредита Возраст Поп Образование Сумма кредита Катеrория клиента 6 37 Жен. Специальное 7000 Катеrория 1 6 38 Муж Среднее 7500 Катеrория 1 12 60 Муж Высшее 14 500 Катеrория 2 6 28 Муж Специальное 15 000 Катеrория 2 12 59 Жен. Специальное 32 000 Катеrория 4 6 25 Жен. Специальное 11 500 Катеrория 1 6 57 Муж Специальное 5000 Катеrория 1 30 29 Муж Высшее 61 500 Катеrория 7 12 37 Муж Специальное 13 500 Катеrория 2 18 36 Муж Специальное 25 000 Катеrория 3 24 68 Муж Высшее 25 500 Катеrория 3 6 20 Жен. Высшее 9500 Катеrория 1 На практике этот набор данных можно использовать как обучающую выборку для построения классификационной модели, rде в качестве целевоrо поля будет Использоваться Катеzорuя 'КЛиента. Выбор числа интервалов квантования в квантовании важно правильно выбрать число интервалов, В результате KBaH тования осуществляется переход от точных данных к некоторой интервальной Оценке, и при этом неизбежна потеря информации. Фактически ряд значений, полученных в результате квантования, просто выражает отношения между исход ными значениями признака. То, что два значения расположены в двух соседних
164 Часть 1. Теория бизнес анализа интервалах квантования, не позволяет точно определить, насколько одно Из IiI1J{ больше или меньше друrоrо. Можно сказать только, что они не различаю1'СS больше чем на две ширины интервала, Следовательно, чем больше интеР В <l1Iо!! используется при квантовании, тем точнее представление исходных значеlil1" данных, При уменьшении ширины интервала в пределе мы получим исходны" набор значений, Увеличение интервала, напротив, оrрубляет описание данIiы{ и в пределе дает один интервал для Bcero диапазона значений, которые меняютсS на метку интервала (например, О). Иными словами, меняя число интервалов квантования, можно перейти от точ- Horo воспроизведения исходных значений данных к полной потере информаЦИI1 об изменчивости значений признака. На практике выбрать количество интервалов квантования можно, исходя из следующих соображений. о Если квантование выполняется для преобразования непрерывных данных в дискретные, то число интервалов будет определяться числом уникалЬНых значений (меток, катеrорий), которое используется при решении задачи aHa лиза. О Необходимо учитывать требуемую точность описания данных, Например, мо- жет быть поставлено условие, что количество интервалов квантования должно быть таким, чтобы ширина интервала не превышала 1 О % от полноrо диапазона изменения исходных значений. Иноrда может потребоваться проведение экспериментов, чтобы определить лучшие параметры квантования с точки зрения решения конкретной задачи aHa лиза. Методы квантования Помимо выбора числа интервалов, при выполнении операции квантования требу ется выбрать ее метод. Выбор метода квантования зависит от характера данных, Различают два основных метода квантования: О равномерное (однородное) квантование: О неравномерное (неоднородное) квантование. При равномерном квантовании диапазон изменения значений признака разде- ляется на интервалы одинаковой ширины, а при неравномерном ширина интерва- лов может быть различной. Первый метод используется, если данные равномерно распределены по всему диапазону их изменения, то есть в результате квантования не будет интервалов, в которых значения почти отсутствуют или заполнены очень плото. В противном случае лучшие результаты даст второй метод. Например, рассмотрим набор значений {2, 4, 3,1,4,22,24,23,21, 24}. Диапазон изменения ero значений составит 23, Разделим диапазон значений на 5 равных ин- тервалов квантования, каждый из которых будет содержать 5 значений. Интервал с номером О будет содержать значения от О до 4, с номером 1 от 5 до 9, с номе- ром 2 от 10 до 14 и т, д. На рис, 3.12 видно, что значения в указанном диапазоне
rлава з. Трансформация данных 165 распределены неравномерно: в нулевом интервале квантования расположено 5 значений, а остальные значения в диапазоне 20 24, который соответствует liнтервалу квантования с номером 4. При этом в диапазон 5 20, которому COOT ветСТВУЮТ интервалы квантования с номерами 1, 2 и 3, не попало ни одноrо значе JIIIЯ. Следовательно, квантованные значения также распределятся неравномерно: 1iH1-ервалы О и 4 будут заполнены очень плотно, в то время как интервалы 1, 2 и 3 окажутся пустыми. Если квантование производится для преобразования непре ры вных данных в набор катеrорий, это приведет к тому, что все объекты выборки окажутся отнесенными Bcero к двум катеrориям О и 4 (табл. 3.24). 25 о) 4 s 20 10 :1: :30: о) З 7 ms 10 15 Q.:1: :1: 0)10 '" f-- m о) 2 :1:0 Sf-- О 10 Q.:1: :1: q: 0)10 О ::!: х 5 о u :r: :s: О О 4 4 4 4 4 Квантованное эначение Рис. 3.12. Неравномерное заполнение интервалов квантования Таблица 3.24. Результат квантования для случая HepaBHoMepHoro заполнения интервалов Исходное значение 2 4 3 1 4 22 24 23 21 24 l<вaHToвaHHoe О О О О О 4 4 4 4 4 значение Преодолеть данную проблему позволяет неравномерное квантование, коrда используются интервалы разной ширины. Ширину интервалов выбирают таким образом, чтобы в каждый из них попало примерно одинаковое количество значе ний. Такое квантование назовем квантuлъны.. Если применить квантование по квантилям к приведенному выше примеру, то получатся следующие интервалы (табл.3.25). Таблица 3.25. Выбор интервалов в квантильном квантовании IN!! Диапазон значений Метка О От О до 2 О 1 От 3 до 4 1 2 От 5 до 21 2 3 От 22 до 22 3 4 От 23 до 23 4 5 От 24 5
166 Часть 1. Теория бизнес анализа Результат квантования будет следующим (табл. 3.26). Таблица 3.26. Результат квантования Исходное значение 2 4 3 1 4 22 24 23 21 24----- Квантованное О 1 1 О 1 3 5 4 2 5 ......... значение ........... Как видно из табл, 3.26, заполнение интервалов квантования ПОЛУЧИлось БОлее равномерным, чем при обычном равноинтервальном квантовании, 3.6. Нормализация и кодирование данных Алrоритмы Data Mining (они будут подробно изучаться в последующих rлавах) работают только с числами, поскольку их работа базируется на математических операциях, Между тем не всякая входная или выходная переменная изначально представлена в виде числа. Прежде чем подавать такие переменные на вход алrоритма, их нужно преобразовать к числовому представлению. Этот процесс называется кодированием. Как входами, так и выходами алrоритмов MOryT быть совершенно разнородные величины, Очевидно, что резул таты моделирования не должны зависеть от еди ниц измерения этих величин. Чтобы аналитический метод трактовал их значения единообразно, все входные и выходные величины должны быть приведены к еди ному масштабу. Такой процесс называется нормализацией (или нормированием). Она заключается в преобразовании исходноrо диапазона, в пределах KOToporo распределены значения HeKoToporo признака, к друrому, обычно меньшему диапа зону, например [ 1; 1] или [о; 1], Кроме Toro, для повышения скорости и качества настройки параметров модели полезно провести дополнительную предобработку данных, выравнивающую распределение значений еще до начала этапа настройки параметров. ЗАМЕЧАНИЕ Далеко не все алrоритмы требуют нормализации. Например, деревья решений или линей- ная реrрессия не нуждаются в приведении входов и выходов к единому масштабу, а вот в нейронной сети без зтой процедуры не обойтись. В большинстве случаев нормализация и кодирование «зашиты» внутри алrоритмов, однако аналитик должен разбираться в их разновидностях, так как выбор схемы кодирования и нормализации существенно влияет на результат. Основные методы нормализации Существует несколько методов нормализации данных, Рассмотрим ниже четыре из них, которые, с одной стороны, достаточно просты, а с друrой эффективны, Десятичное масштабирование. Производится путем перемещения десятичной точки на количество цифр в числе, которое определяется исходя из максималь rлава з. Трансформация данных 167 oro значения признака. При этом преобразование каждоrо исходноrо значения :рJl3нака V(i) в норма-лизованное значение V' (i) производится с помощью Bыpa )lCеНJiЯ: V'( i) == V(i) / 10 k . в то же время k выбирается так, что тах (V' (i)) < 1. Например, если наибольшее значение в наборе данных составляет 455, а наименьшее ( 834), то максима-льное абсолютное значение признака будет 0,834 и, следовательно, k == 3 для всех V(i) (то есть деление производится на 1000). Мииимаксиая иорма-лизация. Предположим, что значения HeKoToporo при знака V лежат в диапазоне от 150 до 250. Предыдущий метод даст все значения норма-лизованноrо признака в интерва-ле от 0,15 до 0,25, что не вполне удачно, поскольку они оказываются сконцентрированными в очень небольшом диапа зоне. Чтобы получить лучшее распределение значений в пределах интерва-ла [О; 1], можно воспользоваться так называемой минимаксной формулой: , . V(i) min(V(i)) V (z)== max(V(i)) min(V(i)) ' rде минима-льное и максима-льное значения вычисляются автоматически или BЫ бираются ана-литиком. Похожее преобразование используется и для норма-лизации в интерва-ле [ 1; 1]. Хотя поиск минима-льноrо и максима-льноrо значений в большом множестве дaH ных может занять некоторое время, в целом вычислительная процедура очень проста. Кроме Toro, выбор минима-льноrо и максимальноrо значения ана-литиком позволит оптимизировать диапазон, в котором будут распределены норма-лизован ные значения с точки зрения решаемой задачи. На рис. 3.13 слева пред ставлен rрафик исходноrо ряда данных, а справа pe зультирующий ряд, полученный в результате применения минимаксной HopMa лизации. 100 ВО БО 40 20 О б ', О,В О,б 0,4 0,2 О 12 З 4 5 б 7 В 2 з 4 5 7 В Рис. 3.13. Пример нормалиэации Норма-лизация с помощью стандартноrо отклонения. Минимаксная HopMa лизация оптима-льна, коrда значения признака V плотно заполняют определенный
168 Часть 1. Теория бизнес анализа интервал. Но подобный подход применим не всеrда. Так, если в данных имеютсSj относительно редкие выбросы, HaMHoro превышающие типичный разброс, именно они определят соrласно предыдущей формуле масштаб нормализации. Это При- ведет к тому, что основная масса значений нормированной переменной V' (i) сосредоточится вблизи нуля: I V'(i) 1« 1. В этом случае rораздо надежнее ори- ентироваться не на экстремальные значения, а на типичные и использовать для нормализации статистические характеристики данных среднее и дисперсию. Например, на всем множестве х для HeKoToporo признака V вычисляются среДнее значение V s и стандартное отклонение (Jv, Затем для каждоrо значения Признака v' (i) рассчитывается преобразование: V'(i)== (V(i) Vs) . (Jv Нормализация с помощью поэлементных преобразований. Еще одним спосо- бом нормализации является поэлементное преобразование членов ряда с помощью различных нелинейных функций, которые способны отображать исходный диапа- зон значений в диапазон, соответствующий параметрам функции преобразования. Этот механизм поясняется на рис, 3.14, Как показано на рисунке, исходный диапазон [VI; V2] преобразуется к более узкому [v/; v/]. В данной методике к каждому значению ряда применяется преобразование вида v' == /(v), rде v исходное значение ряда; v' значение после преобразования, V' 100 V' , V' 1 о V, V, 100 V Рис. 3.14. Поэлементное преобразование
rлава З. Трансформация данных 169 Набор применяемых для этих целей преобразований весьма широк: CJ экспоненциальное преобразование v' exp(v); CJ лоrарифмическое и обратное лоrарифмическое преобразование v' log(v) и v' 1/log(v); б 'ч' / CJ степенное и обратное степенное прео разование v v. и v 1 v ч . У всех данных функций rрафики нелинейные, что позволяет применять их для преобразования исходных диапазонов изменения значений ряда в более широкий или более узкий диапазон, Действительно, если бы преобразование на рис. 3.14 использовало крутой участок rрафика (правее rраницы V2), то имело бы место не сжатие, а расширение диапазона значений, Наибольшие возможности в плане такой обработки дает степенное преобра зование, которое порождает целое семейство характеристик в зависимости от используемоrо показателя у. В принципе, для преобразования диапазонов значений приrодно самое про стейшее линейное преобразование v' k. v. Преобразование исходноrо диапазона с помощью линейной функции представлено на рис. 3,15, V' 100 V' 2 V' , о V, V 2 100 V Рис. 3.15. Линейное преобразование После преобразования (независимо от ero вида) значения, изначально pac пределенные в исходном диапазоне, оказываются распределены в друrом, более широком или более узком диапазоне в зависимости от формы и крутизны функции преобразования. Кодирование катеrориальных данных При использовании таких моделей Data Mining, как нейронные сети, деревья реше «ий, реrpессия, данные должны подаваться на вход в числовом виде. Однако часто
170 Часть 1. Теория бизнес анализа в качестве исходных данных ,1J;ЛЯ анализа испоЛьзуются катеrориальные даННЫе. В этом случае может по надобиться применение к ним преобразования, аналоrич- Horo нормализации для числовых признаков, то есть приведение катеrориальных значений к числовым. При этом набор уникальных катеrориальных значений дол- жен быть преобразован в определенный диапазон числовых кодов. Для этих целей применяется несколько способов. Преобразование в уникальные числовые коды. В простейшем случае осущест- вляется преобразование к порядковым номерам. Данный метод используется, если значения признака допускают порядковую интерпретацию (малый/средний/круп- ный; медленный/быстрый/скоростной и т, д,), то есть позволяют указать, какое из них больше, а какое меньше (так называемый упорядоченный, или ординальный, тип данных). При этом числовые значения также будут отражать соответствующие порядковые отношения исходных значений (табл. 3,27), Таблица 3.27. Кодирование уникальными кодами Возраст кпиента КОД возраста Подросток О Молодой 1 Средних лет 2 Пожилой 3 в принципе, все дискретные значения переменных можно закодировать таким способом, пронумеровав их произвольным образом. Однако навязывание Hecy ществующей упорядоченности только затруднит решение задачи, Оптимальное кодирование не должно искажать структуру соотношений между классами, Если классы не упорядочены, такова же должна быть и схема кодирования: здесь при меняется двоичное кодирование, Двоичное кодирование. Способ применяется для кодирования катеrориальных неупорядоченных признаков с помощью маски из двоичных цифр (битов), В этом случае каждому уникальному значению ставится в соответствие двоичное число, называемое маской, Пусть признак А исходной выборки содержит т уникальных значений {А 1, А 2.., А т}. Torдa при кодировке признака каждому значению А; нужно поставить в со- ответствие битовую маску, Самый простой способ кодирование т m, причем первое значение кодируется как (1, О, О, О... О), второе соответственно (О, 1, О, О". О) и т. д, вплоть до m й позиции (табл, 3,28), Таблица 3.28. Двоичное кодирование по маске N!! состояния Значение приэнака Маска [о; 1] Маска [ 1; 1] 1 А 1 1,0,0,0,0,0,0,0 1, 1, 1, 1, 1, 1, 1, 1 2 А 2 0,1,0,0,0,0,0,0 1, 1, 1, 1, 1, 1, 1, 1 3 Аз 0,0,1,0,0,0,0,0 1, 1, 1, 1, 1, 1, 1, 1 4 А. 0,0,0,1,0,0,0,0 1, 1, 1, 1, 1, 1, 1, 1 rлава З. Трансформация данных 171 Н!! соСТОЯНИЯ Значение приэнака Маска [о; 1] Маска [ 1; 1] А,; 0,0,0,0,1,0,0,0 1, 1, 1, 1, 1, 1, 1, 1 5 Аб 0,0,0,0,0,1,0,0 1, 1, 1, 1, 1, 1, 1, 1 6 r-:; А7 0,0,0,0,0,0,1,0 1, 1, 1, 1, 1, 1, 1, 1 i-"""' А8 0,0,0,0,0,0,0,1 1, 1, 1, 1, 1, 1, 1, 1 8 с..----- в таблице представлены два варианта кодировки. Если требуется использовать диапазон [о; 1], то можно взять значения, полученные в результате кодирования непосредственно. Если в результате требуется получить диапазон [ 1; 1], то можно применить дополнительное преобразование, заменив ну ли на 1, Однако такое кодирование неоптимально, коrда классы представлены сущест венно различающимся числом примеров. Тоrда имеет смысл использовать более компактный, но симметричный код, коrда имена т классов кодируются п битным двоичным кодом. При этом количество битов (то есть нулей и единиц) должно быть достаточным для обеспечения TaKoro количества состояний маски, чтобы их хватилО для кодирования всех уникальных значений признака, Маска, состоящая из п двоичных цифр, способна дать 2 п уникальных состояний, то есть должно соблюдаться равенство 2 п == т, Поэтому, например, если требуется закодировать 8 уникальных значений признака, нужно использовать маску из трех цифр, по скольку 2 з == 8, Данная ситуация поясняется в табл. 3.29. Таблица 3.29. Кодирование компактным кодом N!! СОСТОЯНИЯ Значение приэнака Маска [о; 1] Маска [ 1; 1] 1 А 1 0,0,0 1, 1, 1 2 А 2 0,0,1 1, 1, 1 3 Аз 0,1,0 1, 1, 1 4 А4 1,0,0 1, 1, 1 5 А,; О, 1, 1 1, 1, 1 6 Аб 1, 1, О 1, 1, 1 7 А7 1, 0,1 1, 1, 1 8 А8 1, 1, 1 1, 1, 1 Обратим внимание: если в данном случае использовать маску из двух цифр, то она обеспечит Bcero 22== 4 уникальных состояния, которых не хватит для коди РОвания всех уникальных значений признака. Если в маске использовать четыре цифры, то получим 24 == 16 уникальных состояний, что породит избыточность, то есть один бит окажется лишним (неиспользуемым), Это неэффективно с точки Зрения вычислительных затрат и используемой памяти, В математической статистике существует еще один способ двоичноrо кодирова ния введение фиктивныx пepeMeHHы." Он подробно рассматривается в rлаве 8, Кодирование с ИСПОЛЪЗ0ваlПlем допотmтелъной информащm. Перечисленные методы кодирования, к сожалению, малоинформативны для рядовоrо ПОJIьзова теля, поскольку никак не связаны со свойствами исследуемых объектов. Поэтому
172 Часть 1. Теория бизнес анализа представляет интерес кодирование на основе некоторой информации об объекте, важной с точки зрения решаемой задачи. Например, при анализе пере возок с Цe лью их оптимизации важным является не название населенноrо пункта, в КОТОРЫЙ производится доставка, а расстояние до Hero по определенному маршруту, Тоrда названия населенных пунктов можно закодировать с помощью соответствующих расстояний, Аналоrично фи О сотрудников можно закодировать с помощью их окладов или стажа работы, наименования товаров с помощью их цены и т. д, Очевидно, что такой метод кодирования будет более информативным, чем просто присвоение номеров. Кроме Toro, мы получаем новый признак, который можно использовать в процессе анализа.
Визуализация данных 4.1. Введение в визуализацию Одной из важнейших составляющих бизнес аналитики является визуализация представление данных в виде, который обеспечивает наиболее эффективную pa боту пользователя. Способ визуализации должен максимально полно отражать поведение данных, содержащуюся в них информацию, тенденции, закономерности и т. д. При этом выбор способа визуализации зависит от характера исследуемых данных и от задачи анализа, а также от предпочтений пользователя. Мноrие связывают визуализацию только с интерпретацией, оценкой качества и достоверности результатов анализа. Однако это в корне неверно. Визуализацию необходимо применять на всех этапах аналитическоrо процесса без исключения. На практике в процессе анализа данных пользователь непрерывно работает с раз личными визуализаторами. Цели и задачи визуализации на разных этапах аналитическоrо процесса иллю стрируются на рис. 4.1. I Пред I ИСТОЧНИК .... 3аrруэка .... дан.ных данных обработка Модель 1 .... Модель 2 ... Модель З ..... данных , , L. . . . . . . . . . . . . . . . . . . , Виэуалиэация Виэуалиэация Виэуалиэация Виэуалиэация Виэуалиэация источника: эаrруженной реэультатов промежуточных реэультатов выборки: предобработки: реэультатов: аналиэа: идентификация: проверка проверка проверка интерпретация оценка качества: результатов результатов корректности результатов; выдвижение заrрузки; предобработки; моделей; оценка rипотез оценка качества; оценка контроль достоверности разработка roтовности правильности результатов стратеrии очистки данных к анализу результатов и предобработки ИТ.д. r' . . . . . . . . . . . . . . . . . . . . . . . . . . . .I I Анализ данных Рис. 4.1. Цели и эадачи виэуалиэации данных
174 Часть 1. Теория бизнес анализа Цели и задачи визуализации на разных этапах аналитическоrо процесса Визуализация используется на разных этапах аналитическоrо процесса для ДОст.и: жения следующих целей и решения следующих задач, Визуализация источников данных. В источнике данных перед их заrpузкой в аналитическую систему аналитику требуется визуально оценить: О характер, тип и поведение данных; О динамический диапазон значений; О степень rладкости; О наличие факторов, снижающих качество данных, таких как шумы, аномальные и пропущенные значения. Визуальный анализ источника данных позволяет: О увидеть, соответствуют ли данные ожидаемым; О оценить степень приrодности данных к анализу; О выдвинуть rипотезы о закономерностях процессов, описываемых данными; О определить, какие виды очистки и предобработки необходимо применить к данным. Кроме Toro, визуализация источников данных позволяет определить метод за rpузки данных в аналитическое приложение и параметры, которые при этом долж ны быть использованы. Например, для корректной заrpузки данных из TeKcTOBoro файла с разделителями необходимо правильно определить СИМВОkразделитель, ис пользуемый формат даты и времени, расположение заrоловков столбцов и т. д. He правильный выбор любоrо из этих параметров приведет к некорректной заrpузке, что не позволит выполнять обработку данных в аналитическом приложении. ЗАМЕЧАНИЕ Особенно важно правильно настроить параметры заrрузки при импорте больших массивов данных, тем более при заrрузке по сети. Если источник имеет большой объем, то процесс за rрузки данных из Hero в аналитическое приложение может оказаться очень длительным. А по- сле долrоrо ожидания может выясниться, что данные были заrружены некорректно, поскольку в параметрах заrрузки TeKcтoBoro файла был неправильно указан символ разделитель. Для визуализации источников данных можно использовать приложения, в которых они были созданы (текстовые редакторы, СУБД, электронные таблицы и т. д.). Кроме Toro, большинство аналитических приложений содержат собствен ные средства предварительноrо про смотра источников данных, Визуализация данных, заrруженных в аналитическое приложение. после заrрузки данных из источника в аналитическое приложение работа с выборкой также начинается с визуальноrо анализа. Однако теперь цели, задачи и методы визуальноrо анализа будут несколько друrими. Нужно убедиться, что данные заrpузились правильно: не появились пропуски, сохранилась структура строк и столбцов и т. д. Искажение данных при заrрузке
rлава 4. Визуализация данных 175 может произойти из за несоответствия их типов, неправильной настройки пара метров заrpузки и т, д. Если данные заrpужены корректно, то, как правило, стараются оценить степень их rладкости, наличие шумов и аномальных выбросов. Интерес представляет по IICK фраrментов данных с некоторыми особенностями. Кроме Toro, большинство анaJIитических систем предлаrают пользователю возможность получить стати стические характеристики минимальное и максимальное значения, дисперсию и среднеквадратическое отклонение и др. По результатам визуальноrо анализа исходной выборки делаются выводы о целесообразности применения тех или иных видов очистки и трансформации даннЫХ, вырабатывается методика и стратеrия их анализа. Визу3JШ3аЦИЯ данных в процессе их аналитической обработки. Сложные анали ТlIЧеские процедуры являются мноrошarовыми. Это означает, что в процессе анализа к данным последовательно применяется несколько алrоритмов или моделей, Напри мер, сначала данные подверrаются предобработке с целью сrлаживания и нормали зации, затем к результирующей выборке применяется та или иная модель. При этом выборка, формируемая на выходе каждоro алrоритма или модели, может подаваться на вход следующеrо этапа обработки. Очевидно, что если данные, поступившие с пре дыдущеrо этапа, окажутся некорректными, то дальнейшая обработка теряет смысл, Поэтому очень важно предусмотреть визуализацию промежуточных результатов анализа с целью проверки корректности используемых моделей и алrоритмов, Визуализация результатов анализа. После получения конечных результатов аналитической обработки на первый план выходит задача их интерпретации и оценки достоверности, И здесь не обойтись без визуализации, Следует заметить, что, даже если в процессе анализа были получены достоверные и ценные резуль таты, неудачныЙ выбор визуализации не позволит их интерпретировать, увидеть в них зависимости и закономерности, rpYnnbI методов визуализации в настоящее время в бизнес аналитике используется несколько десятков методов Визуализации. Выбор метода определяется особенностями и характером данных, спецификой решаемой задачи и, наконец, предпочтениями пользователя. PaCCMOT рим основные методы визуализации, Табличные и rpафические. Как правило, таблицы применяются в том случае, Korдa пользователю необходимо работать с отдельными значениями данных, вносить изменения, контролировать форматы данных, пропуски, противоречия и т, д, rрафи ческие методы позволяют лучше увидеть общий характер данных закономерности, тенденции, периодические изменения. Кроме тoro, rpафические методы более эффек тивно сопоставляют данные: достаточно построить rpафики двух исследуемых про цессов в одной системе координат, чтобы оценить степень их сходства и различия. Одномерные и мноrомерные. Одномерные визуализаторы представляют инфор мацию только об одном измерении данных, в то время как MHol'oMepHbIe о двух или более. Если rpафик показывает зависимость суммы продаж от даты, то он будет одномерным, поскольку на нем будет отображаться только одно измерение Дата,
176 Часть 1. Теория бизнес анализа значениям которorо будет соответствовать факт Цена. Если же информация о Про- дажах приводится по датам и наименованиям товаров, то появляется еще одно измерение Товар, и Torдa для KoppeKTHoro представления данных используется мноrомерный визуализатор. Популярные MHoroMepHbIe визуализаторы: ОLАР I<Уб, мноrомерная диаrpамма, карта Кохонена и др, Общеrо назначения и специализированные. Методы визуализации общеrо назначения не связаны с каким либо определенным видом задач анализа или типом данных и MorYT использоваться на любом этапе аналитическоrо процесса, Это cBoero рода типовые визуализаторы: rрафики и диаrраммы, rрафы, rисто- rpaMMbI и их разновидности, статистические характеристики и др. В то же время существует ряд задач, специфика которых требует применения специализиро ванных визуализаторов, Например, карты Кохонена специально разработаны Для визуализации результатов кластеризации, матрицы классификации ИСПОЛЬЗУЮтся в основном для проверки состоятельности классификационных модедей, а с по мощью диаrрамм рассеяния оценивается корректность работы реrрессионных моделей. При изучении различных видов визуализации удобнее рассматривать их не по отдельности, а в контексте задач, для которых они наиболее часто применяются, В связи с этим выделяются следующие rруппы методов визуализации: О общеrо назначения применяются для решения типовых задач анализа дaH ных: визуальной оценки качества и характера данных, распределения значений признаков, статистических характеристик и т. д.; О ОLАР анализ комплекс методов для визуализации MHoroMepHbIx данных; О оценка качества моделей позволяет оценивать различные характеристики моделей, такие как точность, эффективность, достоверность результатов, ин' терпретируемость, устойчивость и т. д.; О интерпретация результатов анализа служит для представления конечных результатов анализа в виде, наиболее удобном с точки зрения их интерпретации пользователем. Подсистемы визуализации данных содержатся не только в специализирован' ных аналитических платформах, но и практически во всех проrpаммных средствах, которые связаны с обработкой данных, от офисных приложений до систем компьютерной математики. Однако в аналитических платформах визуализации данных уделяется особое внимание, поскольку она является одной из состав- ляющих аналитическоrо процесса, без которой невозможно эффективно решить поставленные задачи, Наилучших результатов можно добиться, если считать визуализацию не отдель ной подсистемой, а такой же частью аналитическоrо процесс а, как, например, Moдe лирование, очистка и трансформация, Это позволит получить максимум полезной информации в случаях, коrда применение друrих методов неэффективно. Даже если для построения качественной модели данных недостаточно, визуали зация позволяет выдвиrать rипотезы, делать выводы на основе экспертных оценок, разрабатывать способы повышения информативности данных,
rлава 4. Визуализация данных 177 4.2. Визуализаторы общеrо назначения МОЖНО выделить набор средств визуализации, которые включаются в состав любоrо аliаЛитическоrо приложения и применяются на всех этапах коо. Такие средства визуализации называются визуализаторами общеrо назначения, К ним относятся: iJ rpафики; iJ диаrраммы; iJ rистоrраммы; iJ статистика, Кратко рассмотрим каждый из перечисленных типов визуализаторов. rрафики [рафики представляют собой линии, отображающие зависимость между несколь КИМИ переменными в некоторой системе координат. Линия на rpафике состоит из множества точек, положение каждой из которых определяется значениями зависи мой инезависимой переменной (переменных). Чаще Bcero используется декартова система координат (Х, У, Z), Также может применяться полярная система коорди нат (z, 8), rде положение точки на координатной плоскости зависит от расстояния до начала координат z и уrла 8. Несмотря на свою относительную простоту, rрафики являются эффективным средством визуальноrо анализа данных, ведь часто именно с построения rрафи Ка и начинается работа с данными, С помощью rрафиков оценивается степень rладкости данных, наличие в них шумовой составляющей, аномальных выбросов и пропусков. Особенно полезны они при анализе временных рядов. Иноrда одноrо взrляда на rpафик достаточно, чтобы выявить наличие тренда, сезонной компонен ты, оценить степень влияния случайной составляющей на исследуемый процесс. Чтобы построить rрафик, достаточно задать таблично значения зависимой инезависимой переменной, отметить соответствующие точки на координатной Плоскости и соединить их линиями. Линии, соединяющие узлы rрафика, MoryT быть прямыми или сrлаженными. На рис. 4,2 пред ставлены примеры обычноrо (слева) и сrлаженноrо rpафика (справа). 25 20 15 10 5 О 25 20 15 5 О 2 З 4 5 6 7 2 З 4 5 6 7 Рис. 4.2. Ломаный и rладкий rрафики
178 Часть 1. Теория бизнес анализа Во мноrих случаях rладкие rpафики удобнее, чем ломаные, для визуалЬноrо восприятия и корректнее отображают реальные бизнес процессы, кОторые таЮКе чаще Bcero изменяются плавно, Иноrда точки, по которым строится rpафик, вообще не соединяют, в этом случае rpафик называется точечным, Если на rpафике требуется представить несколько рядов данных, то в одной системе координат строится несколько линий, Но для этоrо необходимо, чтобы все отображаемые на rpафике ряды имели одинаковые единицы измерения и моrли быть представлены в одном и том же маСIIПабе. Например, если нужно сравнить ежемесяч- ные продажи за три roда, то можно воспользоваться таким rpафиком, как на рис. 4.3. ЗО 25 20 - - 15 ......... - - - 10 5 О .о .о .... .о ,:5; .о .о Q. Q. <:; со :z: <:; со со ф Q Q Q. Q. :s: :s: :z: t: о:; Ф <с е- 2005 2006 .... (J <с .о Q. о D: .... :z: Ф () .о Q. о О .о Q. о D: О :I: .о Q. о со '" ф q: Рис. 4.3. [рафик ежемесячных продаж за три rода Если значения в рядах данных лежат в различных диапазонах и отличаются на несколько порядков, то отображение этих рядов на одном rpафике может вы. звать определенные затруднения, Допустим, нужно сравнить динамику продаж нескольких товаров, Но цены на различные товары даже в одной rруппе мотут различаться в десятки и сотни раз. Так, дороrие arperaTbI для автомобиля (коробка передач, двиrатель и др,) продаются единично, а мелкие детали ценой несколько рублей (rайки, болты и др.) сотнями. В этом случае прибеrают к такому приему, как сжатие диапазона значений, отображаемых на rpафике. Например, это можно сделать с помощью лоrарифмирования или нормализации. Диаrраммы с помощью rpафика удобнее Bcero отображать непрерывные (числовые) величинЫ, поскольку можно получить достаточное число точек, чтобы ero построить, ЕслИ же речь идет о катеrориальных (дискретных) значениях, то более подходящим средством визуализации является дuаzрам.ма. Принципиальноrо различия между понятиями «rpафик» и «диаrpамма нет. Просто под rpафиком традиционно пони. мают представление зависимостей в виде линий, Torдa как на диаrpамме значенИЯ отображаются с помощью самых разнообразных объектов И фиryр, Как правило, rлава 4. Визуализация данных 179 Jfa ДlIarpаммах по rоризонтальной оси Х откладываются катеrории, а по вертикальной OclI у значения. Самые простые и часто используемые диarpаммы столби'/{овые. На них значение f@Ждой катеrории представляется в виде столбика, высота KOT0JX>ro пропорциональна ООТБетствующему значению (рис. 4.4, а). Разновидностью столбиковой диаrpаммы вляется линейчатая диazрам.ма, которая отличается от столбиковой тем, что ось катеrорий откладывается вертикально, а ось значений rоризонтально (рис. 4.4, 6). 500 1---------- 1---------- f-------- 1---------- I зооо 2500 2000 1500 1000 о Январь Февраль Март Апрель Май Июнь а Май I I I I I I I I I I I I I ........ , 1 I I , ,.-.'., ...... Июнь Апрель Март Февраль Январь о 500 1000 1500 2000 2500 зооо б Рис. 4.4. Столбиковая (а) и линейчатая (6) диаrpаммы Еще одним распространенным видом диаrpамм является '/{РУlOвая диаlрам.ма. Ее очень удобно использовать, если нужно показать долю, которую вносит то или IIное значение в общую сумму. Эта доля может быть выражена как в абсолютных
180 Часть 1. Теория бизнес анализа единицах, так и в процентах (например, процент от выручки, который обеспечил товар А). Пример круrовой диаrраммы распределения месячных продаж бытовой техники и электроники по катеrориям товаров представлен на рис. 4.5. 12 % 22 % 1З % , ' J 16 % 26% 11 % . Аудио и видеотехника m Бытовая техника . Встраиваемая техника О Компьютеры . Телефоны О Друrое Рис. 4.5. Круrовая диаrpамма Хорошую наrлядность обеспечивают лепестковые дuаlраммы. На них каж дая катеrория данных представлена в виде отдельной оси (лепестка), на которой отображается соответствующее значение. Затем значения на всех осях соединя ются линиями. Если в ряду данных все точки имеют одинаковые значения, то лепестковая диаrpамма приобретает вид Kpyra. Наличие на диаrpамме нескольких рядов позволяет сравнивать, например, динамику изменения структуры продаж в rруппах товаров по месяцам (рис. 4.6). AYfJ)IIO и видеотехника , ............... Месяц 1 -..... Месяц 2 I Друrое Бытовая техника Телефоны Встраиваемая техника Компьютеры Рис. 4.6. Лепестковая диаrрамма
rлава 4. Визуализация данных 181 существует множество друrих видов диаrрамм диаrраммы с накоплением, О бластяМИ, пузырьковые, кольцевые и т. д. При этом разновидность диаrpаммы с u подбирается исходя из тои информации, которую желает извлечь из нее пользо ватель. rистоrраммы [ucтOlpaмMa показывает распределение набора данных внутри выборки (Ha пример, количество заемщиков банка в нескольких возрастных rруппах) в виде столбиков. [истоrраммы широко используются в статистике для определения наиболее вероятНЫХ значений, которые может приобретать некоторая величина, а также для определения закона распределения, которому подчиняется случайная величина. [истоrрамма строится следующим образом. Пусть исследуемой величиной являются ежедневные продажи торrовой точки в течение месяца. При этом мини мальное наблюдаемое значение составило 10 тыс., а максимальное 100 тыс. Разобьем диапазон изменения величины на 9 поддиапазонов по 10 тыс. И под считаем, сколько раз значение продаж попадает в тот или иной поддиапазон. Pe зультаты сведем в табл. 4.1. Таблица 4.1. Исходные данные для rистоrраммы Диапазон 1 20 2 30 30--40 4 50 50.--60 6 70 7Q--.80 8 0 9 100 BTы.. Частота 1 1 2 6 10 6 3 1 1 Как видим, продажи на сумму от 1 О до 20 тыс. наблюдались только один раз, от 30 до 40 тыс. два раза и т. д. На основе полученной таблицы строим rисто rpaмMY (рис. 4.7). 12 10 8 са ... о 6 ... () са 4 2 О 10 20 30 40 50 60 70 80 90 Сумма, T.,IC. руб. Рис. 4.7. rистоrрамма распределения продаж
182 Часть 1. Теория бизнес анализа По rоризонтальной оси rистоrpаммы откладываются значения продаж, а по вертикальной количество или частота наблюдений, значения которых попали в заданный диапазон (поэтому иноrда rистоrpамму называют частотным поли loНОМ ). fистоrpамма на рис. 4.7 показывает, что наибольшее число наблюдений попало в диапазон SO 60 тыс. Таким образом, значения из данноrо диапазона можно pac сматривать как наиболее вероятные. Эту информацию используют для BOCCTaHOB ления пропущенных значений при очистке данных, для планирования денежных поступлений, закупок и т. д. Что касается крайних элементов rистоrpаммы, то они представляют редкие co бытия экстремально высокие или экстремально низкие значения продаж. Видно, что в диапазон 1 o 20 тыс. попало Bcero одно значение, следовательно, вероятность TaKoro события мала и ero не стоит включать в рассмотрение. Экстремально низкие продажи MorYT быть вызваны исключительной ситуацией, например поrодными условиями, отключением электроэнерrии и т. п. Иноrда используют нормированную lистОlРам..му, что позволяет оперировать не значениями наблюдений, а их вероятностями. Для этоrо каждый элемент rис TorpaмMbI делится на количество наблюдений, то есть в нашем случае на 31 (число дней Б месяце). Рассмотрим рис. 4.8. 0,35 0,3 0,25 .а 0,2 1- u О :z: 0,15 1- 111: О а. 0,1 CI) aI 0,05 О 10 20 30 40 50 60 70 80 90 Сумма, T.,IC. руб. Рис. 4.8. Нормированная rистоrрамма Теперь высота столбца определяется не количеством наблюдений, попавших в соответствующий диапазон, а вероятностью попадания в неro. На рисунке видно, что вероятность попадания значения в диапазон SO 60 тыс. составляет примерно 0,32, или 32 %. Соответственно вероятность появления значений в диапазоне 10 20 тыс. не превышает 0,03, или 3 %.
rлава 4. Визуализация данных 183 в нормированной rистоrpамме сумма значений всех ее элементов должна paB JIЯТЬСЯ 1, поскольку сумма вероятностей всех возможных событий (попадания зJIачения в какой либо диапазон) есть 1. обычно при построении rистоrраммы аналитик имеет возможность задать чНСЛО поддиапазонов, на которое будет разбиваться исходный диапазон измене иНЯ величины (фактически это число столбцов rистоrpаммы). Здесь существуют различные рекомендации, например: число поддиапазонов не должно быть MeHЬ II1е, чем log2 N, rде N число наблюдений. На практике можно руководствоваться следующим эмпирическим правил ом. Количество столбцов в rистоrpамме должно быть таким, чтобы в ней не образовывались провалы, резкие выбросы или множе ственные пики. Она должна быть достаточно rладкой, чтобы по ней можно было определить характер распределения наблюдаемой величины. Часто хороших pe зультатов удается добиться при использовании 10 15 столбцов, Статистика Еще одним распространенным средством визуализации, которое входит в состав большинства аналитических приложений, является информация о статистических характеристиках исследуемой выборки. Они обычно представляются в табличном виде и указываются для каждorо поля выборки. Статистические характеристики по зволяют выдвиrать rипотезы о поведении данных и присущих им закономерностях, контролировать результаты обработки данных на различных этапах аналитическоrо процесса. Типичный вид визуализатора статистики представлен в табл. 4.2. Таблица 4.2. Статистические характеристики N!! Метка Статистика: количество значений == 150 п/п поля Минимум Максимум Среднее Стандартное Количество Количество отклонение уникальных пропусков значений 1 Длина 43,00 79,00 58,43 9,25 О чашели стика 2 Ши 20,00 44,00 30,57 40,34 О рина чашели стика 3 Длина 10,00 69,00 37,58 17,59 О леIIе стка 4 Шири. 1,00 25,00 11,99 7,60 О на лепе стка 5 Класс 6 9 8 1,14 3 О цветка Статистика, как правило, включает следующие характеристики. 84 Часть 1. Теория бизнес анализа Минимум и максимум позволяют определить диапазон изменения значений величины. Знание минимальноrо и максимальноrо значений дает ВОЗМОЖность увидетЬ, лежит ли величина в диапазоне, допустимом для применения в той ИЛИ: иной аналитической модели, выбрать корректную методику сравнения веЛИЧИIl ИТ. Д. Среднее значение и математическое ожидание позволяют ВЫдвиrать rипотезыI о наиболее вероятных значениях, которые может принимать исследуемая вели чина. Стандартное (среднеквадратическое) отклонение и дисперсия показывают степень разброса значений величины относительно среднеrо. Знание этих xapaK теристик позволяет оценивать rладкость рядов данных, наличие в них Шумов, контролировать степень сrлаживания данных в процессе их предобработки и Т. Д. Распределение указывается соответствие исследуемой выборки некоторому статистическому распределению (нормальному, равномерному, экспоненциаль ному и Т. д.). Знание распределения исследуемой величины позволяет объяснить особенности ее поведения, например определить, какие значения являются наи более вероятными. Кроме Toro, в набор определяемых статистических характеристик мшут вклю чаться медиана, коэффициенты асимметрии и эксцесса и др. Также визуализатор статистики часто содержит количество уникальных значений для дискретных Be личин и количество пропущенных значений, обнаруженное в выборке. Визуализатор статистики ОДНо из самых востребованных средств при pe шении большинства задач анализа; применяется на всех этапах аналитическоrо процесса для предварительноrо исследования свойств данных, для выдвижения rипотез о присущих им закономерностях, а также для контроля резу льтатов об работки. 4.3. ОLAР..анализ Большинство реальных бизнес процессов являются сложными, поскольку в них участвует мншо объектов, которые находятся в самых разнообразных отношениях и с каждым из которых может быть связано несколько числовых характери стик. Поэтому при визуализации данных часто встает вопрос: как представить сложные данные в таком виде, чтобы человек Mor их осмыслить и интерпрети ровать? Например, если исследуемым процессом являются продажи, то приходится иметь дело с наименованиями товаров и rрупп товаров, с rородами, в которых они продавались, с датами продаж, с информацией о поставщиках, покупателях, местах хранения и Т. д. На первый взrляд, данная проблема стоит не так уж остро. Если необходимо отслеживать несколько объектов (продажу нескольких TOBa ров), то достаточно построить соответствующее количество линий на rрафике для каждоrо товара или таблицу. Но товары MorYT различаться по цене и объ емам продаж в сотни и даже тысячи раз, что вызовет проблему при построении rлава 4. Визуализация данных 185 tlеСJ{ОЛЬКИХ rрафиков в одной системе координат. Кроме Toro, данные MorYT е ть Р азличНУЮ степень детализации, что также затрудняет их табличное или 11М Ф ическое представление. И наконец, ситуацию заводит в тупик orpoMHoe [ра j{оличество записей, которые накапливаются в корпоративных базах и храни юдах даННЫХ. . ПредпоЛОЖИМ, требуется визуализировать с помощью таблицы продажу He Сj{ОЛЬКИХ наименований товаров по нескольким датам и rородам (табл. 4.3). Таблица 4.3. Продажи товаров Товар rород Цена Количество Сумма дата 01.02.07 Пылесос Михайлов 3500 10 35 000 01.02.07 Стиральная машина Михайлов 6700 5 33 500 01.02.07 Утюr Михайлов 1200 3 3600 01.02.07 Пылесос Касимов 3500 2 7000 01.02.07 Стиральная машина Касимов 6700 4 26 800 01.02.07 Пылесос Касимов 1200 5 6000 02.02.07 Пылесос Михайлов 3500 4 35 000 02.02.07 Утюr Михайлов 1200 10 12000 02.02.07 Телевизор Михайлов 7800 2 15 600 Даже такой сравнительно простой фраrмент демонстрирует сложности, с KO торыми МОЖНО столкнуться при визуализации бизнес процессов. Если продажи велись одновременно по множеству наименований товаров в нескольких rородах, то таблица, содержащая соответствующие наблюдения, неизбежно окажется из быточной: в ней MHoro раз будут повторяться одни и те же данные. А оперативно получить нужную информацию из такой таблицы будет весьма проблематично из за orpoMHoro количества наблюдений. Возможным выходом из ситуации является декомпозиция сложной таблицы на множество более простых, rде содержится информация о продажах отдельных товаров и rpупп товаров по rородам, интервалам дат, поставщикам и т. д. Но такой подход позволяет лишь отчасти решить проблему. Дело в том, что процесс анализа данных требует сравнения и сопоставления данных (например, по различным ro Родам или rpуппам товаров), вычисления различных показателей и характеристик и т. д. Если данные о продажах распределены по нескольким таблицам, каждая из которых составлена для одноrо rорода, то как найти, например, товар, продажи KOTOporo были максимальными в каждом rороде? Для этоrо придется сформиро вать сводный отчет и выявить соответствующие максимумы. С учетом OrpOMHbIX объемов данных каждая такая операция может занять очень MHoro времени и по требовать больших вычислительных затрат, Все эти трудности, возникающие при обработке больших и сложных массивов данных, создали предпосылки для появления метода визуализации MHoroMepHbIx табличных данных ОLАР анализа. В основе OLAP лежит MHoroMepHoe представление данных (принцип MHoroMep Horo хранения данных подробно рассматривался в rлаве 2), которые MorYT быть
186 Часть 1. Теория бизнес анализа разделены на количественные и ка'!ественные. Качественные данные представляют собой значения, выраженные в катеrориальной форме. Обычно это наименования товаров, rрупп товаров, орrанизаций, названия rородов, ФИ О сотрудников и т. Д. С каждым объектом связаны признаки, количественно описывающие ero. Для To вара это может быть цена, количество или сумма; для rорода, в котором располо жено ToproBoe представительство, расстояние до Hero и количество жителей; для сотрудника заработная плата и стаж работы. С каждым качественным значением анализируемоrо бизнес процесса связаны один или несколько количественных показателей. В рамках мноrомерной Модели данные, качественно описывающие исследуемый бизнес процесс, называются измерениями. Измерениями MorYT быть Товар, Тород, Клиент, Орюнизация и др, К ним относят и дату. Данные, количественно описывающие процесс или объект, называются фактами. Примеры фактов: Количество, Сумма, Возрасm, Доход, Торzовая наценка и др. Друrими словами, с каждым измерением связаны один или несколько фактов. Измерения несут смысловую наrрузку, а факты количественную. Чтобы достоверно отделить измерения от фактов, достаточно сопоставить значение с вопросом. Измерения позволяют ответить на вопросы «Что?» (товар), «КТО?1> (клиент), «Коrда?1> (дата) и «[де?» (rород). Факты отвечают на единственный вопрос «СКОЛЬКО?1>. Каждое измерение содержит оrpаниченный набор значений (катеrорий). Для из мерения Товар значениями будут наименования товаров: Холодильник, Утюz, Пы лесос и т. д. Каждому значению измерения в мноrомерной модели соответствуют одно или несколько значений фактов. Так, для значений измерения Товар MOryT указываться цена и количество на складе. ЗАМЕЧАНИЕ Аббревиатура OLAP таже встречается в теории хранилищ данных. Но если там она упо- требляется в контексте моделей хранения данных Смноrомерной, реляционной), то здесь под OLАР подразумевается метод визуализации, при зтом модель хранения данных может быть любой. Чтобы построить ОLАР куб, пользователь должен указать системе следующие параметры: О какие измерения и факты включать в куб; о методы аrpеrации значений фактов. Визуализация ОLАР куба про изводится с помощью специальноrо вида таблиц, Которые строятся на основе срезов ОLАР куба, содержащих необходимую пользо вателю информацию, Срезы, в свою очередь, являются результатом выполнения соответствующеrо запроса к базе данных. Как правило, в процессе построения срезов пользователь с помощью мыши и клавиатуры манипулирует заrоловками измерений, добиваясь наиболее инфор мативноrо представления данных в кубе. В зависимости от положения заrоловков измерений в таблице автоматически формируется запрос к базе или хранилищу
rлава 4. Визуализация данных 187 даННЫХ' Запрос извлекает данные из базы или хранилища, после чеrо ОLАР ядро системы визуализирует их. Процесс построения ОLАР куба может быть пояснен с помощью схемы, преk ставленной на рис. 4.9. о . ,. 'ч ;,:,...,............... ":4'. » . !>< . - = ;: -: 10:' J:O: ...'" tua . ';,.;..:;.;;;;: . ... 1ef 'i1U ...... ,I,<й#J$!Q n3> * >:р:....,.".. Щi. """""""..L vii I<ii.< OLAP- ЯДРО польэователь Куб Рис. 4.9. Построение ОLАР куба На рис. 4.10 показан пример визуализации данных с помощью ОLАР куба, rде представлена информация о количестве и суммах продаж по аrпекам в разрезе rода и месяца. Эти сведения MOryT оказаться полезными при определении наиболее заrpуженных аптек Иэмерения Факты '1 1 " , ОtАвл.НаИМВНованив" .. " о i ......:An ека 2.. дм э . . 'Итоrо: 1 " : E : :E: к.... I "",, E : ( :Е 03 Март 534 32241.2 ' 534 32241.2; 04 Аrpen;. 527 33 488. : 353 19 370.6 880' 52 858 б: 05М"Й 449, 22377.6' 224 10759-3' 673 3Зl36.9: 06 Июнь 425 21 364.1. 186 8 160.5 611 29524.51 .::iJ200"I 07 Июль 373 13 536.4 164 8158.1 537 21 694.5: 08 AвrycT 312 14324.6 227 1 О 764.9 539 25089.5 09 СентяБPl' 453 23436,4 278 15008.1 731 38444.6, 10 октябрь 536 31 328.3 361 21 777.8 566 35965А: 1 463 890тi 11 НОЩ;РЬ 588 33413.9 281 16416.8' 603 46399.3 1472 96229.9:; , 12 Дек"брь 591 32596.5 350' 21 365.7 655 43121.3, 1 596' 97083.51 I IIIToro: 325200.1 2424131 7818 .1'824125486.0, 11) 232'582461J.(j, Y!Toro: 5984-325200.1 .,:1317131.8 182 1254860 10232582468.0- Рис. 4.10. Пример ОLАР куба в кубе на рис. 4.1 О для каждоrо месяца и rода перечислены все продажи, KOTO РЫе были сделаны в пределах этоrо периода, с указанием количества проданных единиц товара и их общей суммы. Визуальный анализ позволяет увидеть, что больше Bcero продаж пришлось на «Аптеку 1».
188 Часть 1. Теория бизнес анализа Для более детальноrо анализа представляют интерес продажи по дням. чтоБыI преобразовать куб в соответствующий вид, достаточно добавить еще одно измере ние День месяца, как показано на рис. 4.11. . , n.Н. 'А птека '1 . 1 Алтека 2 . Итоrо: ..., 5'QI!,.,, 1:IПI:, ... ..., ', меся , ." 1: кол,воl :r: C 4 al 1: КОНЮ, 1': C 4Ma[I: KOn'80I 1 нв"p Э 942.2 ' "202 994221 ai 02 (j)e Bpa11b 221 13 544.3 221 1 З 544 3 (t'ОЗМарт " j 183 109515 183 109515 @04Anp '.: 206 13363.5 122 93082 328 22671.7. 1iI05Май 141 5670.5 73 3762.4 214 94ЗЗО ию-; J ' 183 9965) 84 3822.1 267 lЗ787.8 itj07Июль 136 5528.0 55 3314.7 191 8842) r , ! I а; 08 Авrуп I 1 ЗО 4 928.6 57 2 576.4 187 7 505 О сентя6рЬ ." 1З7 7072) 70 4300.3 20711373.0 1m 15 885.3 25 647.0 40 1532.3 I :=1 02 10 9712 21 937) 31 1 Э08,Э ' : .... j .. 25. 827.5 12 453.0 37 1 280.5 1! 16 9502 14 1161) 30 2111.9, " 17 1 309.6 18 1305.0 35 ,? 614), 31 1 289.6 16 1 330.4 47 2620.0 j 20 1580) 12 932.1 32 2512.8. I 14 719.3 9 6562 23 1 375.5 1 : : : ' I 187 11 714.1 141 е 734.1 328 20 44fJ,З1 I 186 103082 81 4984.4 267 15292.5 192 9856.4 116 7360.3 308 17216.7. 2104112845,7 799 43162.9 2IOЗ 161 008.6 , . 2104112845) 799 48162.9 2903161000.6' 82004 11310 Октябрь 1 ; 07 106 Итorо: I.t' 11 Ноябрь ! Де ш Ито.-о: ... Итоrо: Рис. 4.11. ОLАР куб с добавленным иэмерением «День месяца!> Таким образом, ОLАР куб можно использовать не только как метод визуали зации, но и как средство оперативноrо формирования отчетов и представления информации в нужном разрезе (так называемая аналитическая отчетность). Наибольщий интерес ОLАР куб представляет с точки зрения визуальноrо анализа данных, поиска особенностей и закономерностей в данных. При этом cy ществует два подхода. О Аналитик может задаться несколькими вопросами: «Какой товар самый попу лярный?!>, «[де продажи были наилучшими и с чем это связано?!> и т. д. Затем с помощью манипуляций заrоловками измерений выбирается такое представ ление куба, которое позволяет ответить на поставленные вопросы. О Можно подойти к проблеме и с друrой стороны последовательно перебирать возможные варианты представления данных, которые обеспечивает куб, и с их помощью сопоставлять данные, выявлять закономерности и связи между эле ментами данных, выдвиrать rипотезы и т. д. rлава 4. Визуализация данных 189 умелое использование ОLАР анализа и работа с кубом порой позволяют пОЛУЧИТЬ результаты даже в тех случаях, коrда методы Data Мiпiпg оказыва ю 1СЯ малоэффективными (например, из за недостатка или низкоrо качества даfl!fЫХ) . манИПУЛЯЦИИ с измерениями Для 10ro чтобы сделать процесс извлечения информации из куба более rибким 11 эффективным, в ОLАР системах обычно предусматривается набор операций с IIзмеренИЯМИ, позволяющих получить максимум возможных представлений даННЫХ' К такиМ операциям относятся следующие. Замена и добавление измерений. Любые измерения куба можно заменить друrими, присутствующими в исходном множестве данных. Например, если ранее нас интересовала информация о продажах в разрезе каждоrо отдельноrо клиен та, а позже в разрезе каждоrо rорода, rде производились продажи, то можно заменить измерение Клиент измерением Тород. При необходимости в куб MOryT встраиваться новые измерения. Удаление измерений. Если в процессе работы с кубом KaKoe либо измерение утратило информативность, то ero можно исключить из куба. Оставлять в кубе лишние измерения нежелательно: чем выше размерность куба, тем сложнее для пони мания и осмысления представленная в нем информация. Кроме Toro, чем больше измерений в кубе, тем выше временные и вычислительные затраты на ero обработку. Скрытие измерений. Пользователь может выбрать в кубе несколько наиболее информативных представлений и работать с ними. Но часто возникает ситуация, Коrда какое либо измерение для одноrо из представлений является лишним, то есть не несет полезной информации, а только усложняет визуальное воспри Ятие, в то время как для друrих представлений оно нужно. Временно удалять, а затем встраивать это измерение в куб непрактично, поскольку перестройка куба при большом объеме данных может занять MHorO времени. Поэтому преду сматривается возможность BpeMeHHoro скрытия измерений без удаления их из куба. Тоrда при необходимости можно вновь отобразить скрытое измерение без перестройки Bcero куба. Изменение порядка следования измерений. При работе с несколькими ИЗмерениями в кубе закладывается возможность выбрать порядок их отобра ЖеНИЯ. Отбор значений измерений. Часто необходимость в отображении всех возмож ных значений измерения (например, дат, товаров и т. д.) отсутствует. Поэтому, Чтобы не заrромождать куб ненужными данными, лишние значения измерений MorYT быть временно скрыты, а если понадобится отображены снова. При этом выбирать отображаемые значения измерений можно или непосредственно из спис Ка, или с помощью фильтрации по какому либо условию.
190 Часть 1. Теория бизнес анализа Транспонирование. Если при работе с кубом выяснится, что значения изме рений, которые отображаются в столбцах, удобнее отображать в строках или Ha оборот, то соответствующее преобразование можно леrко произвести с помощыо операции транспонирования. Пример транспонирования представлен на рис. 4.12: вверху расположено исходное представление куба, а внизу результат ПримеНе ния к нему операции транспонирования. I ,-, . Аптека 1 ArrreKa 2 141 ............... Аптека 3 137, 1o'1TorO: 465 Отдея_ Наименование 10 Октябрь 11 Ноябрь 12 Декабрь - " " I'1TDrO; Рис. 4.12. Транспонирование ОLАР куба Детализация При работе с ОLАР кубами широко применяется еще одна операция, называемая детализацией (ср. анrл. drill down «проникновение», «более детальное исследо вание» ). Ее необходимость вызвана тем, что в большинстве случаев значения в кубе являются аrpеl'ированными, например, в пределах некоторой даты или интервала дат. В то же время пользователя MOryT интересовать и атомарные (то есть детали зированные) значения, на основе которых были получены arpеrированные. Операция детализации заключается в отображении набора записей выборки данных, в результате аrреrирования которых было получено соответствующее значение ОLАР куба. В табл. 4.4 пред ставлен фраrмент выборки данных по кредитованию. Таблица 4.4. Данные по кредитованию КОД клиента Дата Сумма кредита Цель кредитования 120 08.01.2007 50 000 Иное 121 08.01.2007 9000 Покупка авто 122 09.01.2007 43 000 Оплата образования 123 09.01.2007 2500 Оплата услуr 124 09.01.2007 48 500 Покупка товара 125 09.01.2007 45 500 Оплата образования rлава 4. Визуализация данных 191 l<o,Q lU1иента Дата Сумма кредита Цenькредитования 09.01.2007 32 000 Оплата услyr 09.01.2007 2500 Оплата услуr 127 09.01.2007 6500 Оплата услуr 128 09.01.2007 13 500 Оплата услуr 09.01.2007 31500 Оплата образования 130 09.01.2007 6000 Иное 131 09.01.2007 28 000 Покупка авто 132 09.01.2007 13 500 Покупка товара 133 134 09.01.2007 19500 ОIШата образования 135 10.01.2007 18 000 Покупка товара 136 10.01.2007 45 000 Турпоеэдки На рис. 4.13 представлен фраrмент куба, построенноrо на основе этой выборки. Данные о кредитах аrpеrированы по датам: в кубе мы видим не суммы отдельных кредитов, а значения, полученные их суммированием по отдельным целям кредито ванИЯ в пределах одной даты. Дрyrими словами, из куба можно почерпнуть ТОЛЬко информацию о том, на какую общую сумму было выдано кредитов на ту или иную цель в пределах определенной даты, а суммы, выданные отдельным клиентам, остаются неизвесПIЫМИ. ц . J;! ова"ия"'" 1.. , , Ii1HO : >. ,:: J O TII эoeaJl Or1J1 !l.!у л r 1 !" (J: . ...С.. J 04.CI.2ОО7 135000.0 23 500.0 45 500.0 204 000.0 05.01,2007 34500.0 38000.0 40500.0: 113000.0 -.- . ...... 06.01.2007 48 000.0 48 000.0 07.01.2007 51 000.0 31 000.0 в2 000.0 :08.01.2007 100 000.0 100000.0 09.01.2007 42000.0 114000.0 295500.0 Ито.-о: З"!1}500.0 2з1 000,0 : ... 11 I .......... J Д81'1I 1/ Сумма кpeдl-tТ" ," Цель крeдиr : } 09.0.;2007 . ,- "4ЗOOri ОЛ!1дТ /I'Ьбра,,;;е;j.:;я ..., " 3 0.9,.0)20.07 4!)500.0rlЛ"':II.0БРIIЗОВ и.я ..............: 09,01.2007 31500 ОПЛ81'1I ООРlIЗования ' ... 09.01.2007 =- 19500 ' ОПЛ81'а образования Рис. 4.13. Деталиэаuия эначений фактов в кубе Предположим, аналитика заинтересовала аномально высокая сумма кредитов, БЬщанных 09.01.2007 на оплату образования, которая составила 139500 и в He СI<ОЛЬКО раз превысила аналоrичные значения на дрyrие даты. Для более детальноrо ИССледования может понадобиться информация о сумме каждоrо кредита в отдель lIОСТИ. Получить такую информацию поможет операция детализации. Результатом применения детализации к соответствующей ячейке куба будет ТаБЛица, в которой представлены записи, содержащие данные, связанные с этой лq u еИI<ОЙ (путем аrреrирования которых она бьmа получена) (см. рис. 4.13).
192 Часть 1. Теория бизнес анализа Существует и друrой вариант детализации в ВИДе последовательно разво- рачивающихся и сворачивающихся измерений, как мы это видели на рис. 4.11. 4.4. Визуализаторы для оценки u качества моделеи в процессе решения задач в бизнес аналитике приходится создавать одну или не- сколько моделей. Они MoryT быть основаны на машинном обучении, как неЙрОННЫе сети, деревья решений, самоорraнизующиеся карты признаков и т. д., или жестко заданы путем непосредственноrо проrpаммирования преобразований, которые дан- ная модель должна выполнять. Независимо от вида построенной модели, прежде чем применять ее на практике, необходимо оценить ее качество, то есть определить, насколько правильно и точно она решает поставленную задачу. Можно выделить две составляющие качества модели: О адекватность насколько точно модель описывает исследуемый объект или процесс; О корректность насколько правильно модель может работать со всеми возмож ными входными данными. Достичь абсолютно точноrо описания моделью реальноrо бизнес-процесса или объекта практически невозможно, поскольку в таком случае модель окажется очень сложной и труднореализуемой. Чаще Bcero ищут разумный компромисс между точностью и сложностью. Например, задается допустимая точность 1 О %, которую должна соблюдать построенная модель. То есть требуется, чтобы классификацион ная модель из 100 примеров неправильно классифицировала не более 10. Но даже если сама по себе модель обладает достаточной степенью точности и адекватности, при поступлении на ее вход некорректных данных она может по вести себя непредсказуемо. Чтобы свести к минимуму вероятность выявления несуществующих законо- мерностей при анализе, необходимо исследовать качество работы моделей. Такие исследования должны проводиться как в процессе построения модели, так и после ero завершения. Так, при обучении нейронной сети с целью создания классифика- тора обычно требуется несколько этапов обучения. После каждоrо этапа контро- лируется точность модели (например, число неправильно распознанных примеров или выходная ошибка), после чеrо корректируются конфиrypация сети, обучающая выборка или параметры обучения. И это происходит до тех пор, пока модель не станет удовлетворять заданным требованиям (рис. 4.14). После Toro как модель доведена до требуемоrо уровня точности, проверяется ее устойчивость к некорректным данным. Например, если нейронная сеть обучалась на данных, значения которых лежали в диапазоне от О до 100, то как она поведет себя при подаче на вход значения 105? Если при появлении некорректных данных модель выдает неправильные результаты, то, возможно, изменять ее не потребует ся, так как окажется достаточным применить те или иные методы трансформации и очистки данных, что позволит обеспечить корректность исходных данных.
rлава 4. Визуализация данных 193 Корректировка параметров модели Модель адекватна? Нет Рис. 4.14. Итерационный характер моделирования Для исследования адекватности и коррекпюсти моделей в состав аналитических приложений включаются специальные визуализаторы, которые позволяют оценить точность модели и ее реакцию на те или иные входные данные. Типичный набор визуализаторов для оценки качества моделей следующий: О матрица классификации; О диаrpамма рассеяния; О ретропроrноз; О rpафики контроля хода обучения. Рассмотрим их более подробно. Матрица классификации Матрица Юlaссификации, или таблица сопряже1l1юсти (confusion matrix), приме Няется для оценКИ качества классификационных моделей. Как известно, задача классификации заключается в ОТнесении предъявленноrо объекта к одному из заранее определенных классов на основе набора признаков данноrо объекта. Таким образом, входные данные для классификационной модели представляют собой rrРИзнаки (атрибуты) классифицируемых объектов, а на выходе классификаци аННой модели ДОЛЖна формироваться метка класса, к которому относится объект с данным набором признаков. При этом она ДОЛжна быть катеrориальноrо ВИДа.
194 Часть 1. Теория бизнес анализа Для каждоrо примера классификационная модель формирует на выходе метку класса, к которой относится объект с набором признаков, указанных в примере. Если метка класса, сформированная моделью, совпадает с целевой меткой клаСса из примера, то такой пример (объект) является правильно распознанным, в Про тивном случае неправильно распознанным. Фраrмент классификационной выборки пред ставлен в табл. 4.5, rде имеется четыре признака: Длина чашелистика, Ширина чашелистика, Длина лепестка и Ширина лепестка. На основе значений данных признаков модель должна OT нести каждый предъявленный экземпляр цветка к одному из трех видов (Клас сов) Versic%, Virgiпica или Setosa (данная задача классификации известна как «ирисы Фишера»). Таблица 4.5. Ирисы Фишера Длина Ширина Длина Ширина !<пасс !<пасс чашелистика чашелистика лепестка лепестка цветка цветка (модель) 50 33 14 2 Setosa Setosa 64 28 56 22 Virginica Virginica 65 28 46 15 Versicolo Versicolo 67 31 56 24 Virginica Virginica 63 28 51 15 Virginica Versicolo 46 34 14 3 Setosa Setosa 69 31 51 23 Virginica Virginica 62 22 45 15 Versicolo Versicolo 59 32 48 18 Versicolo Virginica 46 36 10 2 Setosa Setosa 61 30 46 14 Versicolo Versicolo 60 27 51 16 Versicolo Versicolo Поле Класс цветка является целевым и содержит эталонную метку класса, по которой про изводится настройка параметров модели. Поле Класс цветка (MO дель) содержит метку класса, выданную моделью на данном примере. В табл. 4.5 выделены при меры, в которых модель допустила ошибку, выдав метку класса, не соответствующую эталонной. Соотношение числа правильно и неправильно распознанных объектов служит критерием качества модели. Чем больше объектов выборки было распознано пра вильно, тем лучше работает модель. Однако с точки зрения оценки качества модели интерес представляет не только общее количество правильно и неправильно распознанных объектов, но и их ЧИСЛО в каждом классе. Если в одном из классов число неправильно распознанных при меров существенно больше, чем в друrих, есть повод задуматься о том, правильно ли подобраны примеры в обучающей выборке, и разработать соответствующие меры для оптимизации модели. Для оперативной визуализации числа правильно и неправильно распознанных ПрИМероВ в каждом классе исходной выборки служит матрица классификации. Поясним принцип ее построения. rлава 4. Визуализация данных 195 Пусть выборка данных содержит 150 объектов, относящихся к трем классам А, В 11 С. К каждому из классов относятся 50 объектов. В процессе распознавания каж доrо объекта с помощью модели возможны два случая: объект распознан правильно IfJII1 объект распознан неправильно. ТаКИМ образом, после обработки всей выборки будет получено некоторое KO }!l1честВО правильно и неправильно распознанных объектов, при этом известно, К КаКОМУ классу будет ошибочно отнесен тот или иной пример. Тоrда можно будет построить таблицу, каждый столбец и строка которой будут соответствовать oд }{оМУ из классов А, В или С. При этом заrоловок строки указывает на фактическую принадлежность объекта к определенному классу, а заrоловок столбца на то, как объект был распознан. На пересечении каждых строки и столбца можно указать количество объектов, которые относятся к классам, указанным в строках, но при этом были распознаны как класс, указанный в столбце. Следовательно, в ячейках, расположенных на rлавной диаrонали таблицы YKa эывается количество объектов, которые были распознаны правильно. Если HeKO торое количество объектов указывается в ячейке, расположенной на пересечении разноименных строк и столбцов, эти объекты распознаны неправильно: объект масса, указанноrо в строке, распознан как объект класса, указанноrо в столбце. ПРИМЕР Пусть исходная выборка содержит 100 объектов двух классов Больной и Здоровый по 50 объектов в каждом. Результаты классификации находятся в матрице классификации. Классифицировано Фактически &ОIlЬНОЙ Здоровый Итоrо БоIlЬНОЙ 36 14 50 3доровый 9 41 50 Итоrо 45 55 100 Чтобы оценить результаты классификации и, следовательно, работоспособность классифи- кационной модели, достаточно беrлоrо взrляда на матрицу. Из 50 пациентов, при надлежа- щих к классу Больной, таковыми были признаны моделью только 36 человек. 14 больных человек модель ошибочно отнесла к здоровым. Аналоrично из 50 пациентов, принадлежа- щих к классу Здоровый, 41 человек был отнесен моделью к зтому классу. 9 здоровых людей модель ошибочно отнесла к больным. Этот классификатор реже ставит неверный диаrноз здоровым людям, или, друrими словами, модель склонна к про пуску больных. Общая ошибка классификации составит: (14 + 9) / 100 х 100 % == 23 %. Аналитик может сделать следующие выводы о качестве модели. Q Матрица классификации показывает, какая доля от общеrо числа примеров распознана неправильно. В зависимости от особенностей решаемой задачи и требуемой точности допускается определенный процент неправильно распо Знанных примеров. Например, если обнаружилось, что число неправильно pac Познанных примеров не превышает 10 %, то модель считается работоспособной. В противном случае необходимо откорректировать параметры модели.
196 Часть 1. Теория бизнес анализа о Матрица классификации позволяет определить классы, для которых Допущено самое большое число ошибок классификации. rлавным преимуществом этоrо визуализатора является наrлядное и оператив ное представление результатов работы модели. Если бы аналитик пытался извлечь эту информацию из обычной таблицы, rде представлена результирующая выборка, то при большом числе объектов это заняло бы MHoro времени. Диаrрамма рассеяния Друrая важнейшая задача Data Mining (наряду с классификацией) реzрессuя. Формальное отличие реrpессии от классификации заключается в том, что выходная переменная является непрерывной (подробнее классы задач Data Mining paCCMaT ривались в rлаве 1), поэтому использование матриц классификации для оценки качества реrpессионных моделей неприемлемо. Реrpессия просто устанавливает взаимную связь между значениями входных и выходных переменных модели. Визуализатором, который при меняется для оценки качества моделей в случае непрерывной выходной переменной, является диаrpамма рассеяния. Диаzра.мма рассеяния представляет собой rpафик, по одной оси KOToporo откладываются целе вые значения выходной переменной (то есть те, которые заданы в качестве эталона для обучения), а по друrой реальные значения, полученные на выходе модели. На таком rpафике можно построить линию идеальных значений: у == у'. На этой линии будет лежать любая точка, для которой реальное выходное значение у, сформированное моделью, будет равно целевому значению у' (при этом ошибка Е == у у' == О). Такая линия, очевидно, будет выходить из начала координат и пе ресекать координатную плоскость по диаrонали. В то же время любая точка, для которой реальное выходное значение будет отлично от эталонноrо целевоrо значения, отклонится от линии идеальных значе ний. При этом величина отклонения будет равна ошибке, допущенной моделью на данном примере (рис. 4.15). у Линия идеальных эначений у = у' у' Рис. 4.15. ПРИНЦИП построения диаrpаммЫ рассеяния
rлава 4. Визуализация данных 197 Точка, лежащая на линии идеальных значений, соответствует случаю, коrда еальнЫЙ выход модели равен эталонному. На практике модель допускает ошиб Р u кУ Е, которая приводит к отклонению точки, соответствующеи реальному выходу r.юдели, от эталонноrо и, следовательно, от линии идеа ьных значений. Точка, соответствующая реальному выходу, имеет координаты у == у + Е. Множество точек на плоскосrn (у у') , образованных па рам и целевых и реальных значений, будет представлено на диаrpамме в виде «облака!>, рассеянноrо вдоль линии идеальных значений. Степень ОТКJIонения точки от этой линии будет опре деляться ошибкой модели на соответствующем примере. Пример диаrраммы рассеяния пред ставлен на рис. 4.16. Диаrональная линия на рисунке это линия идеальных значений. Точками, рассеянными вдоль линии идеальных значений, обозначены реальные выходные значения модели. ::.., о о :I: О CtI О '" О CtI '" О () <:[ ф о- С О Фактически, у' Рис. 4.16. Диаrpамма рассеяния Смысл диаrраммы рассеяния достаточно прозрачен. Если все точки (или хотя бы Основная масса), представляющие реальные выходные значения модели, cocpe доточены вблизи линии идеальных значений, то модель работает хорошо. Если у облака, образуемоrо точками выходов модели, значительный разброс, то большинство выходных значений имеет большую ошибку и в этом случае Ka чество модели оставляет желать лучшеrо. Пример такой диаrраммы рассеяния rrредставлен на рис. 4.17. Особый интерес MorYT представлять отдельные точки, наиболее далеко OT СТоящие от линии идеальных значений. Их появление обусловлено тем, что На соответствующих примерах модель дает очень высокую ошибку, поскольку в этих примерах содержатся аномальные значения, нехарактерные для поведе Ния выборки в целом. Анализ таких отклонений позволяет выявлять редкие, НО важные события, влияющие на исследуемый процесс. Если же аномальное ЗНачение просто следствие ошибки, то ero следует ИСКJIючить из рассмотрения I1ли откорректировать.
198 Часть 1. Теория бизнес анализа ::.., о :J: '" '" '" '" u q: .., Q. С crP со св 00 саш О О 00 О Фактически, у' Рис. 4.17. Диаrpамма рассеяния для неудачной модели Чтобы оценить точность модели, достаточно беrлоrо взrляда на диаrрамму рассеяния. По сути, она является аналоrом матрицы классификации для моделей с непрерывными выходными значениями. Ретропроrноз Частный случай задачи реrpессии проl1tозuрованuе временных рядов. Чтобы co ставить проrноз, строится реrpессионная модель, которая на основе прошлых зна чений ряда рассчитывает проrнозируемые значения. Она имеет некоторый набор параметров, позволяющих получить проrноз с учетом поведения ряда в прошлом (рис. 4.18). 16 14 12 10 В 6 4 2 О ,/,,0 О" Прошлые значения ряда Проrноэ 2 з 4 5 6 7 в 9 10 11 Рис. 4.18. Диаrpамма проmоза rлава 4. Визуализация данных 199 Неизбежно возникает вопрос: насколько корректна построенная модель проrно насколько она точна и адекватна поведению исследуемоrо ряда? Для проверки за, u u качества проrностическои модели используется специальныи тип визуализатора етропРО11l0З. Слово «ретропроrноз» буквально означает <шроrНОЗ в прошлом», р ро rноз прошлых значений». Ero сущность заключается в том, чтобы применить "n построенную модель к подмножеству данных из прошлоrо и оценить, насколько полученНЫЙ проrноз соответствует реальным значениям ряда, имевшим место в прошлом. Для построения ретропроrноза нужно выбрать некоторое подмножество данных 113 nрошлоrо, чтобы использовать их в качестве исходных. Затем к этому подмно ЖеСТВУ при меняется проrностическая модель с заданными параметрами. Модель формирует набор проrнозных значений, которые затем сравниваются с данными, реальнО имевшими место в прошлом. Если в результате TaKoro сравнения обнару жится, что между значениями ретропроrноза и реальными данными существует большое расхождение, это даст повод усомниться в корректности проrностической модели. Сам характер расхождения (ero величина, знак и т. д.) позволяет выработать методику корреКЦИИ модели. Принцип работы ретропроrноза поясняется с помощью диаrpаммы на рис. 4.19. 16 14 12 10 8 6 Прошлые эначения ряда 4 2 о 2 з 4 5 6 7 8 9 Рис. 4.19. Ретропроrноз Ретропроrноз направлен не в будущее ряда, а формируется параллельно ero ПРОIIlЛым значениям и сравнивается с ними. На рис. 4.19 можно наблюдать хорошее соrласование значений ретропроrноза и реальных значений ряда, что позволяет Предположить высокое качество проrностической модели, с помощью которой был построен ретропроrноз. На рис. 4.20 представлен проrnвоположный случай: ретропроrноз оказывается существенно завышенным или заниженным, что rоворит о недостаточной точности модели.
200 Часть 1. Теория бизнес анализа 18 8 Завышенный ретропроrноэ 16 14 12 10 Прошлые эначения ряда 6 4 2 Заниженный ретропроrноэ о 2 з 4 5 6 7 8 9 10 Рис. 4.20. Ретропроrноз с большим отклт:ением проrнозируемых эначений от реальных При выборе множества значений BpeMeHHoro ряда, которые будут использо ваться в качестве исходных данных для ретропроrноза, следует учитывать ero актуальность. Во временном ряду можно выделить два вида данных актуальные и устаревшие. Первые сформированы под действием текущих условий, влияющих на процесс, который описывается временным рядом. Со временем условия MoryT меняться, и Torдa данные, сформированные под действием утративших силу усло вий, оказываются устаревшими, а данные, сформированные под действием новых условий, актуальными. Обычно актуальными являются самые свежие данные. Если модель проrноза была построена на основе актуальных данных, то и peтpo Проrноз должен строиться на основе свежих данных. Если же ретропроrноз будет Построен на основе устаревших данных, то, скорее Bcero, ero значения будут сильно расходиться с реальностью. Но это будет связано не с низким качеством Модели, а с тем, что она используется для данных, подчиняющихся друrим закономерно стям, которые в этой модели не учитываются. С учетом изложенных обстоятельств к интерпретации результатов ретропроrноза следует подходить с известной долей осторожности. rлава 4. Визуализация данных 201 визуализация контроля процесса обучения моделей в 6изнес аналитике широко используются модели, основанные на машинном обу че!f ИИ ' например нейронные сети, деревья решений и т. д. В процессе настройки своих параметров (или обучении) модель приобретает свойства, которые обеспе чивают выполнение ею требуемоrо преобразования данных. Управляющим параметром, на основе KOToporo рассчитывается изменение состояния модели на каждой итерации, является ошибка рассоrласования между реальным выходным значением модели, которое было получено на данном обу чающем примере, и целевым значением из этоrо примера (то есть между тем, что есть, и тем, что должно быть). Ошибка между реальным и целевым выходом, полученная в результате обуче !fИЯ, rлавный критерий оценки качества обучения и точности модели. Очевидно, что по мере Toro, как модель обучается, ошибка уменьшается, и как только она дo стиrает HeKoToporo заданноrо значения, процесс обучения останавливается. При обучении модели большой интерес представляет наблюдение за изменени еМ выходной ошибки на каждой итерации. По изменению ошибки можно сделать вывод о том, как идет процесс обучения, есть ли смысл ero продолжать и каковы ero предполаrаемые результаты. Например, если ошибка быстро уменьшается, это означает, что обучение продвиrается быстро и эффективно. Если ошибка перестала уменьшаться и остается одинаковой на большом числе итераций, можно предполо жить, что процесс обучения ",пробуксовывает!>, то есть либо состояние модели не корректируется, либо корректировка не приводит к уменьшению ошибки, В этом случае вряд ли имеет смысл продолжать обучение, поскольку модель исчерпала свои возможности и настроить ее точнее невозможно. Поэтому в состав анали тических приложений часто включают специальный визуализатор, который дает воЗможность наблюдать за динамикой изменения ошибок. Возможная реализация TaKoro визуализатора пред ставлена на рис. 4.21. Е Максимальная ошибка 0,01 0,001 Средняя ошибка о о 50 100 150 200 250 п Рис. 4.21. Визуализатор для наблюдения за ошибками в ходе обучения (п номер итерации)
202 Часть 1. Теория бизнес анализа 4.5. Визуализаторы, при меняемые для интерпретации результатов анализа Как на входе, так и на выходе аналитическоrо процесса присутствуют неКОТОРые данные, Данные на входе обычно называются исходными. Предполаrается, что они обладают свойствами, содержат закономерности, структуры и особенности, выявление и понимание которых позволяет получить новые знания об исследуемых объектах. На выходе также имеются данные, которые называются результатами. На их основе делаются выводы и принимаются решения. К сожалению, аналитическая обработка данных не дает rOToBbIx ответов на вопросы, которые интересуют аналитика, исследователя или лицо, при ни мающее решения. В процессе анализа происходит лишь преобразование данных к представ лению, позволяющему увидеть в них нечто важное с точки зрения исследования и управления некоторым объектом или процессом. Поэтому между результатами анализа и полученными на их основе знаниями и решениями лежит процедура интерпретации результатов, которая может оказаться не менее сложной и про блемной, чем сам анализ, Неправильная интерпретация может не только обесценить самые удачные pe зультаты анализа, но и привести к ложным выводам и заключениям, что повлечет за собой неверные управленческие решения. Именно поэтому в бизнес аналитике так MHoro внимания уделяется визуализации результатов анализа, позволяющей сделать их интерпретацию как можно более эффективной и свести к минимуму возможность ошибочных выводов. Помимо визуализаторов общеrо назначения, в состав аналитических прило жений включается набор специализированных средств визуализации, которые связаны с используемыми в процессе анализа моделями, формой представления результатов и целями анализа. Основная сложность в интерпретации результатов анализа заключается в том, что наборы данных, как правило, имеют большую размерность. Здесь наиболее приемлем подход, применяющий моделирование данных большой размерности с помощью вложенноrо в MHoroMepHoe пространство мноrообразия данных малой размерности. Например, для изображения данных на экране монитора наиболее ec тественно использовать два измерения. Вообще rоворя, человек способен наrлядно представить себе не более ДByx тpex измерений, Существует два основных способа описания данных. Первый заключается в по строении иерархической структуры данных, то есть в разбиении данных на классы, подклассы и т. д., второй в сокращении размерности исходноrо пространства данных, Рассмотрим несколько наиболее распространенных типов визуализаторов, применяемых для интерпретации результатов анализа: О древовидные визуализаторы; О визуализаторы связей; О карты.
rлава 4. Визуализация данных 203 Древовидные визуализаторы мноrие методы и алrоритмы Data Mining имеют дело с различными объектами и структурами, орrанизованными в упорядоченную иерархию. К таким методам и алrоритмам относятся деревья решений, ассоциативные правила, некоторые методы кластеризации и т. д. В принципе, древовидные визуализаторы MoryT использоваться везде, rде результаты аналитической обработки данных образуют иерархические уровни и MOryT быть разделены на предков и потомков. Кратко расСМОТРИМ основные виды применения деревьев. Деревья. Одной из наиболее популярных классификационных моделей являют ся деревья решений. Они представляют собой иерархическую последовательность правил вида если... TO... . Например, классифицирующее правило может быть сформулировано следующим образом: Если значение признака Х > 1 О, то объект относится к классу A . В процессе построения модели rенерируется иерархическая последовательность правил, которые применяются к исследуемой выборке и pac пределяют все входящие в нее объекты по заранее определенным классам. Для интерпретации результатов классификации с помощью дерева решений используются визуализаторы, показывающие структуру дерева, а также сформули рованные в нем правила. Пример дерева решений для классификационной задачи об ирисах Фишера представлен на рис. 4.22. Для компактносrn классификационные признаки цветков обозначены следующим образом: SL длина лепестка, SW ши рина лепестка, CL длина чашелистика, CW ширина чашелистика. При таком способе визуализации дерева решений узлы и листья представлены в виде пря моуrольников и расположены в порядке их иерархической подчиненности. В узле указывается действующее в нем правило. Setosa Уеrsic010 Virginica Нет Versic% Virginica Рис. 4.22. Дерево решений
204 Часть 1. Теория бизнес анализа Ценность метода не только в том, 'По он позволяет классифицировать объекты, но и в том, 'По он описывает их свойства. Так, по дереву решений можно оценить степень сходства классов. Если для распознавания классов достаточно одноrо или двух правил, то объекты этих классов хорошо различимы: их признаки (или хотя бы один из них) сильно отличаются, Если же для распознавания классов требуется несколько правил, классы различаются хуже: признаки их объектов более близки (объекты похожи). Kpo ме Toro, правила не только классифицируют объекты, но и описывают их обобщенные свойства, объясняют, по какому признаку объект отнесен к тому или иному классу. ПрименеlПfе деревьев для визуали:заЦIШ ассоциативных правил. Деревья pe шений часто называют индуктивными, поскольку правила, из которых они состоят, разбивают исходное множество данных на подмножества, соответствующие классам, Наряду с индуктивными правилами в Data Mining широко используются так назы ваемые ассоциативные правила. При этом в отличие от индуктивных правил, которые служат для распознавания объектов по принадлежности к определенному классу, ассоциативные правила устанавливают взаимную связь между двумя событиями. Например, если событием А является продажа товара Х, а событием В прода жа товара У, то ассоциация между данными событиями записывается в виде А В и читается следующим образом: Из А следует B . При этом событие А называется условием, а событие В следствием. Если ассоциация между А и В является прави лом, это означает, 'По раз ПРОИЗОIlVIO событие А, то с большой вероятностью наступит событие В (то есть продажа товара Х в большинстве случаев влечет за собой продажу товара У). Является ли та или иная ассоциация правилом, определяется путем анaJIИ за их достаточно большоrо количества, Так, если было установлено, что из 1 00 TpaH закций, в которых появлялось событие А, 90 транзакций содержат событие В (то есть вероятность cOBMecTHoro появления А и В будет 0,9, или 90 %), то такую ассоциацию с высокой степенью достоверности можно считать правилом. Основное применение ассоциативные правила находят в розничной торrовле, Если известно, что продажа товара Х с большой вероятностью влечет за собой про дажу товара У, то лоrично клиенту, купившему товар Х, предложить и товар У Поиск ассоциативных правил позволяет выявлять rpуппы товаров, которые час то продаются вместе, а это, в свою очередь, помоrает оптимизировать ассортимент товаров, закупки, размещение товаров в ToproBoM зале, на витрине и т. д. Для интерпретации результатов поиска ассоциативных правил (как и индуктив ных) часто используют представление в виде деревьев. Но в отличие от индуктив ных правил в деревьях решений ассоциативные правила не используют иерархию, поскольку правила ищутся независимо для всех возможных ассоциаций. Один из возможных вариантов визуализации ассоциативных правил с помощью дерева представлен на рис, 4.23, Каждый узел образован условием, которому COOT ветствует одно или несколько следствий, ассоциации с которыми были обнаружены в исходном наборе транзакций. Как условие, так и следствие MOryт быть образованы одним предметом «<Макаронные изделия») или набором предметов ( Кетчупы, соусы, аджика ). В каждом узле может быть предусмотрен вывод значений поддержки или ДOCTO верности связанной с ним ассоциации. rлава 4. Визуализация данных 205 Продукты Рис. 4.23. Дерево ассоциативных правил Кластеризация. Одной из важнейших задач Data Mining является кластери заЦИЯ объединение объектов в rpуппы на основе сходства их признаков. Такие rруппЫ называются кластерами. Попадание двух объектов в один кластер позво ляет предположить высокую степень схожести их свойств, и наоборот, если объ ектЫ в результате кластеризации попали в разные кластеры, то они существенно отличаются друr от друrа по своим признакам, В результате кластеризации HeKoToporo множества данных формируется опреде ленное количество кластеров. Одним из популярных видов кластеризации является иерархическая J(Jlасmерuзация, которая, в свою очередь, содержит два метода: О аlЛомераmИ81lУЮ J(Jlасmерuзацию кластеры формируются путем слияния кла стеров меньшеrо размера в кластеры большеrо размера; о разделиmелыlюю J(Jlасmерuзацию кластеры большеrо размера разделяются на несколько кластеров меньшеrо размера. Для визуализации результатов иерархической кластеризации используют спе циальную разновидность диаrрамм, называемую деllдрОlрам.мой. Дендроrрамма показывает степень близости отдельных объектов и кластеров, а также наrлядно представляет в rрафическом виде последовательность их объединения или разде ления. Количество уровней дендроrpаммы соответствует числу шаrов слияния или разделения кластеров. Пример дендроrpаммы представлен на рис. 4.24. В нижней части рисунка расположена шкала, на которой откладывается расстояние между объектами в пространстве признаков. Х 2 I Х З I Х, Х, Х. 1,5 2,0 2,5 Рис. 4.24. Дендроrpамма
206 Часть 1. Теория бизнес аналиэа Дендроrpамма на рис. 4.24 строится следующим образом. На первом шаrе rpуп пируются объекты Х2 и ХЗ, образуя кластер {Х2, Хз} с минимальным евклидовым расстоянием, примерно равным 1. Затем объекты Х4 и Х5 rруппируются в друrой кластер {X4'XS} с расстоянием 1,5. Расстояние между кластером {Х2'ХЗ} и {Xt} также оказывается равным 1,5, что позволяет сrpуппировать данные кластеры на том же уровне, что и {Х4, xs}. И наконец, два кластера {х , Х2, ХЗ} и {Х4' Xs} rpуппиру ются на самом высоком уровне иерархии кластеров с расстоянием 2. Визуализация связей Нередко требуется исследовать характер и степень взаимной зависимости между различными объектами. Для анализа можно использовать визуализацию связей, коrда объекты представляются в виде некоторых значков, а связи между ними в виде линий, соединяющих соответствующие значки. При этом сила связи, то есть степень взаимной зависимости объектов, может показываться различными спосо бами. Чаще Bcero для этоrо используют: О толщину линии: чем сильнее связь между объектами, тем толще соединяющая их линия (рис. 4.25, а); О цвет линии, при этом выбираются оттенки определенноrо спектра (рис. 4.25, 6). В принципе, допускается одновременно использовать и толщину, и цвет, хотя такие диаrpаммы более сложны для восприятия. Кроме Toro, можно по разному располаrать объекты на плоскости. В первом CJ учае показываются связи между одним выбранным объектом, который помещен в центре, и всеми остальными ( звезда , см. рис. 4.25, а). Во втором случае визуа лизируются все попарные связи между объектами ( ceTЬ , см. рис. 4.25, 6). Если число объектов велико, связей становится еще больше, поэтому анализируют только наиболее сильные или наиболее слабые, накладывая фильтр на значения силы связи. а miп mах Рис. 4.25. Варианты диаrpамм свяэей между объектами: а эвеэда ; б ceTЬ б
rлава 4. Визуализация данных 207 Объекты сравниваются между собой на основе KaKoro либо признака. Если J1ризнаков несколько, выбирается способ расчета критерия связи. Чаще Bcero ЭТО метрика правило вычисления расстояния в MHoroMepHoM пространстве J1ризнаков евклидово расстояние, расстояние Манхэттена и др. (подробнее меры расстояний рассматриваются в rлаве 7). Пример диаrpаммы связей между несколькими реrионами рф пред ставлен на рис. 4.26. В качестве признаков используются: D численность постоянноro населения; D удельныЙ вес rородскоrо населения; D зафиксированное за последний период число умерших на 1000 человек. Владимирская область Численность (тыс. чел.): 1609. Вес ropoAcKoro населения (%): 80,6 Число умерших на 1000 чел.: 17,9 Ярославская область Тульская область Численность (тыс. чел.): 1414. Вес ropoAcKoro населения (%): 80,5 Число умерших на 1000 чел.: 17,9 Численность (тыс, чел.): 1746. Вес ropoAcKoro населения (%): 81,5 Число умерших на 1000 чел.: 20,2 Калужская область Рязанская область Численность (тыс, чел.): 1081. Вес ropoAcKoro населения (%): 74,S Число умерших на 1000 чел,: 17,З Численность (тыс. чел.): 1284. Вес rородскоrо населения (%): 69 Число умерших на 1000 чел.: 18,6 Критерий свяэи: рассIOA! Манхэттена f{ 0,0 0,50 , 0,85 Рис. 4.26. Пример диarpаммы свяэей между реrnонами рф Критерий связи рассчитывался с использованием манхэтенновскоrо расстояния. Видно, что Владимирская и Ярославская области очень близки по сравниваемым
208 Часть 1. Теория бизнес анализа признакам (расстояние равно 0,85), а между Калужской и Тульской областями, наоборот, различие самое большое (расстояние 0,14). Карты Карты позволяют наrлядно представить данные, связанные с rеоrрафическим pac положением исследуемых объектов и процессов. Это MOryт быть демоrpафические данные (например, распределение показателей смертности или рождаемости по различным реrионам), а также данные, отражающие миrрацию населения и рабо чей силы, обеспечение реrионов энерrоносителями, динамику распространения эпидемий и т. д. В бизнес аналитике это информация, связанная с уровнем потреб ления в реrионах, характером спроса и предложения по различным видам товаров, сведения о продажах, осуществляемых реrиональными дилерами, о лоrистических и транспортных потоках и т. д. Рассмотрим пример. В табл. 4.6 содержатся данные об отrрузках продукции, произведенных компаней мелким оптовикам из различных субъектов Центральноrо федеральноrо oKpyra (ЦФО). Таблица 4.6. Объем продаж по субъектам ЦФО РФ N!! п/п Область Продажи, млн руб. 1 Белrородская 162 2 Брянская 61 3 Владимирская 54 4 Воронежская 154 5 Ивановская 209 6 Калужская 117 7 Костромская 90 8 Курская 57 9 Липецкая 50 10 r. Москва 664 11 Московская 328 12 Орловская 54 13 Ряэанская 151 14 Смоленская 137 15 Тамбовская 29 16 Тверская 178 17 Тульская 186 18 Ярославская 120 Имея карту ЦФО, можно в соответствии с палитрой раскрасить области и по лучить сравнительный отчет о продажах по реrионам (рис. 4.27). Видно, что максимальные значения продаж приходятся на Москву и MOCKOB скую область, а минимальные на Тамбовскую, При этом может использоваться
rлава 4. Визуализация данных 209 Продажи, млн руб. о зоо 664 Рис. 4.27. Отчет о продажах по реrионам MHoroMepHoe представление данных. Например, если требуется показать на карте не только суммы продаж, 110 и прибыль, то последнюю можно отобразить рельефным выделением соответствующей области на карте. Также на карты можно наносить значки, форма, цвет, размер и взаимное положение которых соответствуют свой CfВaM исследуемых объектов. Впрочем, карты не обязательно должны быть связаны с rеоrрафией. В бизнес аналитике почти всеrда приходится иметь дело с объектами, которые описываются двумя признаками и более. То есть выборки, образованные такими объектами, являются мноrомерными. В этом случае может возникнуть проблема с визуали зацией результатов, поскольку представление MHoroMepHbIX объектов на ПЛОСКИХ визуализаторах (rрафиках, диаrраммах) не всеrда удобно и корректно отображает результаты. Поэтому актуальны визуализаторы, позволяющие адекватно представ лять MHoroMepHbIe данные. В частности, распространение получили двумерные тепловые карты (heat maps), rде каждому значению признака соответствует один из оттенков в заранее выбранной цветовой raMMe. На рис. 4.28 можно наблюдать пример тепловой карты, построенной по двум измерениям Топливо и Тород. Цвет каждой прямоуrольной ячейки карты фор М:ируется на основе цены топлива: чем темнее оттенок, тем она выше.
210 Часть 1. Теория бизнес аналиэа .' ДТ . . z.... IIIIII! о '" :s: с:; t: О ...... АИ 95 .#' . АИ 92 . . . . ,.." А ш . :I: '" :I: JJ О <о :I: <о '" '" <о с:; о <о '" L.. >- :I: о <о <о ...... g: « JJ с:; >- ropOA Цена, руб, с.. 16 31 Рис. 4.28. Пример тепловой карты К разновидности тепловых карт относят карты КОХОllеllа. Принцип этоrо Meтo да визуализаuии основан на том, что MHoroMepHbIe данные представляются в виде IШоских карт, при построении которых комбинируются информация о расстоянии между векторами объектов в MHoroMepHoM пространстве признаков и раскраска, порожденная значениями признаков. Данные тематически раскрашиваются и OTO бражаются в ячейках. При этом достиrается соrлашение о том, каким образом pac крашивается ячейка (например, в зависимости от Toro, сколько или каких данных в нее попало, круrовой раскраской, наложением и т. д.). Карты всех интересующих признаков собираются воедино, и получается топоrрафический атлас, дающий интеrpальное представление о структуре MHoroMepHbIx данных. Подробнее карты Кохонена изучаются в rлаве 7.
Очистка и предобработка данных 5.1. Оценка качества данных Качество данных, которые собираются и консолидируются для анализа из различ ных источников, является одной из самых больших проблем бизнес аналитики. Недостаточное внимание к ней способно свести на нет все преимущества самых современных и мощных методов анализа, все усилия аналитиков и экспертов по созданию аналитических решений. А сами аналитические решения, полученные на основе некачественных данных, MorYT оказаться сколь уroдно далекими от действительности, исказить истинную картину исследуемых бизнес процессов, показать ложные закономерности, тенденции и связи между объектами бизнеса. Следствием этоrо может стать выработка неверных управленческих решений, KOTO рые нанесут бизнесу ущерб. Именно поэтому мониторинr качества данных, а также их преобразование с целью исключения факторов, служащих причиной снижения качества данных, производятся на всех этапах аналитическоro процесса от из влечения данных из источников до их обработки в аналитической системе. Более Toro, если важность этоrо направления осознается и аналиrnческим технолоrnям на предприятии уделяется должное внимание, то контроль и поддержка качества производятся на этапе сбора данных в самих источниках: ОLТР системах, учетных Системах и корпоративных БД предприятия. Понятие «качество данных» очень широкое, не имеет четко очерченных rpаниц и cTpororo определения, даже может трактоваться несколько по разному в зависи мости от тoro, в какой области информационных технолоrnй оно употребляется. Термин «качество данных» появился задолro дО IT технолоrий. Изначально под качеством данных понималось количество ошибок при вводе и форматировании
212 Часть 1. Теория бизнес анализа данных, В контексте современных аналитических технолоrий качество дaHHых совокупность их свойств и характеристик, определяющих степень приrОДНОСТI1 для анализа. С целью повышения качества данных используется комплекс методов и ал rоритмов, получивших название «очистка данных» (cleaning, refinement), Чтобы правильно подrотовить данные к анализу, .необходимо иметь стратеrию их очист ки, разрабатываемую на основе знания структуры и особенностей источников, из которых поступают данные, характера самих данных, методики и цели I1X анализа. Однако использовать очистку данных вслепую неэффективно, Перед приме нением тех или иных методов очистки необходимо выполнить оценку качесmва дaHHых (Assessment Data Quality, ADQ) с целью выявления наиболее характерных проблем и уровня их сложности, а также для выработки стратеrии очистки. В pe зультате такой оценки, возможно, будет принято решение отказаться от ОЧИСТКI1 некоторых данных, поскольку это слишком сложно, дороrо или не приведет к Же лаемым результатам. Кроме Toro, следует помнить, что некорректное применение методов очистки может ухудшить ситуацию, а предварительная оценка качесТва данных позволит по возможности избежать этоrо, Очень часто проекты по очистке данных в компаниях создаются только тоrда, коrда кризис уже наступил, то есть коrда данные стали настолько «rрязными», что их анализ сделался невозможным по техническим причинам или из за низкой достоверности получаемых результатов. Чтобы избежать подобной ситуации, необходимо подходить к проблеме качества данных комплексно, а именно разра батывать стратеrию сбора, Консолидации и анализа данных параллельно с оценкой и мониторинrом их качества, выявлением факторов, влияющих на их качество, и выработкой стратеrии исключения таких факторов. Лозунr «Предотвратить проще, чем исправить!» здесь полностью оправдан. Дешевле и леrче изначально застраховаться от проблем с качеством данных, чем потом судорожно и в спешке исправлять ситуацию, теряя время, конкурентные преимущества, доходы, клиен тов и т. д, В результате развития комплексноrо подхода к поддержанию качества данных на предприятии на должном уровне в IT технолorиях появилась новая дисцип лина управление качеством данных на предприятии (Enterprise Data Quality Management, EDQM). Развитие EDQM стимулировалось осознанием TorO факта, что мноrие инновационные проекты потерпели неудачу именно из за низкоrо каче ства данных и невозможности принимать на их основе правильные управленческие решения, Более Toro, EDQM де факто стало частью общеrо процесса управления качеством на предприятии (Total Quality Management, TQM), , Ключевым звеном EDQM является оценка качества данных, которая может быть реализована тремя способами. о Единовременная оценка качесmва проводится для HeKoToporo массива данных (файла или таблицы) один раз, после чеrо, в зависимости от ее результатов, к данным применяются те или иные методы очистки, иноrда же данные при знаются качественными и остаются без изменений, rлава 5. Очистка и предобработка данных 213 CI Мониторинz: поток данных, поступающих из различных источников в хд и далее в аналитическую систему, непрерывно сканируется специальными проrpаммами поиска ошибок в данных. CI визуалъная оценка используется в исключительных случаях, кorда специали зированным проrраммным средствам не удалось повысить качество данных до приемлемоrо уровня. Чаще Bcero при меняется при предобработке данных, заrруженных в аналитическую систему: аналитик или эксперт с помощью имеющиХся средств визуализации (таблиц, rрафиков и диаrрамм) определяет наличие в данных аномальных значений, про пусков, шумов и т. д. Этот метод оценкИ качества применим только к небольшим объемам данных при решении отдельных нетиповых задач, Кроме Toro, визуально выявлять противоречия и дубликаты весьма проблематично. При разработке методики оценки качества данных также необходимо решить, [де именно ее следует производить, Существуют следующие варианты: D непосредственно в источниках дaHHых можно эффективно выполнять поиск орфоrрафических ошибок (путем сравнения со словарем), пропущенных, aHO мальных, лоrически неверных и фиктивных значений, противоречий и дубли катов на уровне записей и таблиц. Преимущество этоrо варианта в том, что по результатам оценки соответствующие методы очистки MorYT быть задейство ваны уже на этапе ETL и в ХД поступят очищенные данные. При этом следует учитывать, что в процессе ETL качество данных может вновь ухудшиться: появятся новые дубликаты и противоречия, несоответствия форматов, пред ставлений данных и т, д, Это случается, потому что в процессе ETL происходит интеrрирование данных из нескольких отдельных источников. Следовательно, записи, которые являются уникальными и непротиворечивыми для одной таблицы или одноrо источника, MorYT потерять уникальность и непротиворе чивость после слияния или объединения источников, Несоответствие форматов при интеrрации данных может появиться, если в разных файлах или таблицах использовались различные форматы представления данных (например, даты или денежных сумм). Тorда в результирующих таблицах окажутся одни и те же данные, представленные в различных форматах; О в nроцессе ETL можно выявлять проблемы в данных и по результатам oцeH ки качества оперативно задействовать те или иные методы очистки, чтобы обеспечить заrрузку в хранилище уже очищенных данных, Недостаток этorо варианта заключается в том, что использование средств оценки качества данных в процессе их переноса в ХД увеличивает так называемое «заrрузочное окно», В течение KOTOporO резко увеличивается наrрузка на информационную систему предприятия; О в аналитической системе используется в процессе предобработки данных перед применением к ним различных методов Data Mining. Оценка может про изводиться аналитиком визуально с помощью таблиц, rрафиков и диаrрамм или на основе статистических оценок и характеристик Например, дисперсия позволяет определить степень неравномерности ряда значений, Большая
214 Часть 1. Теория бизнес анализа дисперсия обычно свидетельствует о шумоподобном характере данных, что может потребовать применения их сrлаживания, С помощью rистоrраммы распределения можно выявить аномальные значения. Скорее Bcero, применять те или иные средства оценки качества данных и выяв лять характерные проблемы придется на всех перечисленных этапах. В источниках данных удобно оценивать наличие ошибок, связанных с вводом данных. В процессе ETL выявляются факторы, связанные с нарушениями структуры, целостности и полноты данных, поскольку они просто не позволят заrрузить данные в ХД, и наконец, в аналитической системе данные оцениваются с точки зрения их COOT ветствия конкретной задаче Data Mining и возможности применения тех или иных алrоритмов анализа. Следует помнить, что цель оценки качества данных только обнаружение проблем в данных, определение степени их «заrpязненности» и приrодности для анализа. Выявлением источников проблем и борьбой с ними занимается друrая дисциплина очистка данных, Уровни качества данных Чтобы систематизировать проблемы, связанные с качеством данных, и определить основные аспекты оценки качества, выделим несколько уровней. На каждом из них существуют свои специфические проблемы, цели, методы и критерии оценки качества данных, О ТеX1lический уровенъ, На качество данных влияют в основном факторы, связан ные с нарушением их структуры, целостности и полноты, некорректные форма ты и представления данных, Проблемы техническorо плана мешают корректно выполнить консолидацию и интеrpирование данных, заrpузку их в хранилище, применение к ним тех или иных алrоритмов обработки. о Аналитический уровенъ. Предполаrает наличие факторов, мешающих ВЫПОk нить корректный анализ данных и получить достоверные результаты. К таким факторам относятся шумы в данных, аномальные значения, противоречивые и дублирующие записи, фиктивные значения, пропуски и Т, д, Для этоrо уровня характерна субъективность оценки качества данных. Так, шум обычно проявля ется в виде быстрых изменений значений ряда данных (например, ежедневных продаж), которые мешают обнаружить общие закономерности и тенденции. То, что для однorо аналитика будет шумом, для друrоrо ценные с точки зрения анализа данные. Что касается аномальных значений, то нельзя заранее сказать, является определенная аномалия ошибкой оператора или реальным событием, исключив которое мы, возможно, потеряем важную информацию. Рассматривая две одинаковые записи, нельзя сказать, дубликаты это или информация о двух идентичных событиях. С противоречивыми записями тоже не все так просто, Например, для двух одинаковых наименований клиентов MOryT быть указаны различные адреса и банковские реквизиты. Но при этом вполне вероятно, что речь идет о двух разных фирмах с одинаковыми названиями, то есть никакоro противоречия на самом деле нет. rлава 5. Очистка и предобработка данных 215 с) концеnтуалъный уровенъ. Отражает проблемы, связанные с тем, что стратеrия сбора данных на предприятии была из начально неверной, Собранные данные и е содержат достаточно информации для BcecTopoHHero описания предметной области и основных бизнес процессов. Например, в результате анализа может Быьь обнаружено, что данных мало или данные не те. В этом случае для реше иия проблемы используют обorащение данных. Иноrда оказывается, что дaH иыx очень MHoro, но реально полезной является только определенная их часть, Тоrда приходится принимать меры к определению наиболее информативных атрибутов и признаков. Сравнительная характеристика различных уровней качества данных приво дится в табл. 5.1. Табmща 5.1. Уровни качества данных уровень Факторы Проявпение Меао борьбы ТехнИ Нарушения в структуре данных; Мешают интеrpи ETL чесКИЙ некорректное наименование рованию данных, таблиц и полей; их заrpузке в ХД некорректные форматы и коди и В аналитические ровки данных; системы нарушение полноты и целостно сти данных; противоречия и дубликаты на уровне таблиц и файлов БД Аналити Пропуски; Снижают ДOCTO Источники дaH ческий аномальные и фиктивные значе верность данных ных, ETL, анали ния, опечатки; и искажают резу ль тические системы шумы; таты их анализа, противоречия и дубликаты не позволяют ис на уровне записей пользовать HeKOTO рые аналитические методы Концеп Собранные и консолидирован Отсутствие или He Стадия разработки Туальный ные данные в недостаточной мере достаток данных аналитических отражают исследуемые бизнес про для анализа проектов и про цессы цессов При оценке качества данных и разработке стратеrии ero повышения необхо Димо уделять внимание всем трем уровням. Попытка сосредоточиться на чем то Одном, коrда предполаraется, что с остальными уровнями все в порядке, может ПрИвести к эффекту тришкина кафтана: здесь исправили там потеряли. Дей СТвительно, какую бы ценную информацию ни содержали данные, наличие в них технических проблем просто не позволит донести их до пользователя (эксперта, аналитика) интеrpировать, заrpузить в ХД или аналитическую систему, Данные, некорректные с точки зрения анализа, хотя и не содержащие технических проблем, дойдут до пользователя, но вряд ли обеспечат значимые и достоверные результаты анализа. И наконец, если данные собраны неправильно на концептуальном уровне,
216 Часть 1. Теория бизнес анализа их анализ оказывается полностью бессмысленным независимо от Toro, насколько данные корректны. Таким образом, оценка качества данных это сложная и трудоемкая задаЧа часто не поддающаяся формализации, Она требует привлечения всех, кто участву в процессе сбора и анализа данных, начиная от операторов, осуществляющих ВВод данных в OLTP, и заканчивая конечными пользователями, Оценка приrодности данных к анализу Оценка качества данных преследует две цели: контроль их приrодности к aHa лизу и выявление проблем в функционировании систем сбора и консолидации данных. Впрочем, обе цели взаимосвязаны: качество данных, консолидируемых для анализа, в большинстве случаев является индикатором качества функциони рования соответствующих информационных систем как на аппаратном, так и на проrраммном уровнях. Если аналитику стабильно поставляются качествеННые данные независимо от их происхождения и характера, значит, система их сбора и консолидации функционирует на высоком орrанизационно техническом уровне. Если качество данных стабильно низкое, то, возможно, дело не только в том, что их очистке уделяется мало внимания, но и в проблемах, связанных с функциониро ванием ОLТР систем, с про счетами в процессе разработки ETL и т. д. Например, известен случай, коrда в сети супермаркетов обнаружилось резкое увеличение ошибок при реrистрации ToproBbIx операций, При этом никакие усилия по очистке данных не давали желаемоrо результата. Причина оказалась банальной: сканеры штрихкодов из новой партии были низкоrо качества и давали большой про цент ошибок Тем не менее приоритетной целью контроля качества данных является оценка степени их приrодности к анализу. По результатам аудита качества данных MOryт быть сделаны следующие выводы. О Данные полностью приrодны к анализу и не нуждаются в очистке, Такие данные не содержат ошибок, либо количество ошибок незначительно и не способно по влиять на результаты анализа. Это крайне редКая ситуация, которая указывает на очень качественную и продуманную стратеrию сбора и консолидации данных как на лоrическом, так и на техническом уровне. О Данные Приrодны к анализу без очистки, но с определенными оrраничениями, Такие данные содержат ошибки, которые MOryT повлиять на достоверность pe зультатов анализа, поэтому анализ возможен, но с учетом вероятноrо влияния ошибок о Данные приrодны к анализу после применения методов очистки и предобработ ки. Проблемы в данных не являются критическими, поэтому после применения соответствующих процедур очистки качество данных может быть поднято до приемлемorо уровня. О Данные совершенно неприrодны к анализу, и никакие методы очистки ситуа цию не исправят.
rлава 5. Очистка и предобработка данных 217 оценка качества данных по их происхождению I1рИСТУПая к оценке качества анализируемых данных (которая вместе с их очист кОЙ может занимать до 80 % времени Bcero процесса анализа), можно выдвинуть некоторые предположения относительно их качества. Во первых, необходимо учитывать информацию о происхождении данных. выделяют два типа источников: D источники, которые автоматически поддерживают определенную структуру, целостность и непротиворечивость данных, ОLТР системы, корпоративные Бд, некоторые учетные системы и т. д.; D локальные файлы отдельных пользователей (текстовые файлы, файлы офис ных приложений), [де не предусмотрена поддержка структуры, целостности и непротиворечивости данных. При использовании данных, поступивших из источников 1 ro типа, следует быть rотовЫМИ к проблемам, связанным с ошибками ввода, пропусками, фиктивными и аномальными значениями, то есть с проблемами, характерными для аналитиче CKoro уровня (см, табл, 5.1). Что касается источников 2 ro типа, то в них можно встретить факторы техническоrо уровня, связанные с нарушением структуры ДаННЫХ, использованием некорректных форматов, противоречия и т, д. Поэтому качеству данных из таких источников нужно уделять повышенное внимание. BO BTOpЫX, необходимо учитывать, орrанизован ли процесс сбора данных на предприятии с прицелом на их будущий анализ. Если этому уделялось должное внимание, то можно ожидать приемлемоrо качества данных, в противном случае предположения об их качестве и приrодности к анализу будут весьма пессими стическими, Выводы Оценка качества данных необходимый этап процесса подroтовки к анализу. Она дает возможность своевременно выявлять проблемы, которые не позволяют KOp ректно анализировать данные, снижают значимость и достоверность результатов анализа. Контроль качества данных должен про водиться на всех этапах аналити ческоrо процесса, поскольку для каждоrо этапа характерны свои проблемы, 5.2. Технолоrии и методы оценки качества данных в настоящее время технолоrии оценки качества данных широко используются не только в процессе анализа данных, но и в информационных системах caMoro раз Лнчноrо назначения, а реализующие их проrpаммные средства стали привычным Явлением на рынке проrраммноrо обеспечения, Рассмотрим несколько практи ческих аспектов оценки качества данных.
218 Часть 1. Теория бизнес анализа Профайлинrданных Одним из наиболее распространенных методов оценки качества данных и вы- явления проблем является профайлинr. В процессе nрофаЙЛUllzа определяется информация о некотором атрибуте (поле) источника данных и проверяется ее соответствие заданным оrраничениям, Если параметры атрибута удовлетворяют этим оrраничениям, то данные соответствуют определенному уровню качест- ва, в противном случае необходимо принимать меры к приведению параметров к соответствующим оrраничениям, Профайлинr выполняется на основе аналИза метаданных, описывающих структуру данных. В процессе профайлинrа анализируется следующая информация, D Тип атрибута (поля). Если тип атрибута (поля) определен как числовой, а при проверке обнаружено, что он имеет друrой тип (строковый или дата/время), то выясняются причины и производится соответствующее преобразование данных. Причиной искажения типа может быть неправильное использование символа разделителя целой и дробной частей числа, Коrда вместо точки используется запятая, или наоборот. Кроме Toro, достаточно распространено несоответствие разделителей rрупп разрядов в числах пробела, точки и запятой или их отсутствие. Например, как прочитать строку 99,999,99? Если предположить, что запятая разделяет rруппы разрядов, а точка целую и дробную часть, то это 99 тыс, 999 руб, и 99 коп. Но также можно предположить, что это 99 руб, и 999 коп" а точка и следующие цифры ошибка ввода. D Длина значения. Определяется максимально допустимое количество символов в значении атрибута (поля), и, если длина значения превышает максимальную, необходимо принимать меры к ее оrраничению. D Дискретные значения. Обычно проверяется частота их появления и уникаль ность (в процентном или абсолютном виде). D Диапазон допустимых значений. Задаются минимальное и максимальное зна чения, которые может принимать атрибут, Если значение атрибута выходит за оrpаничения, то оно может меняться на некоторое значение по умолчанию, Например, можно оrраничить возраст клиента 18 и 70 rодами, тоrда любое значение, не попавшее в данный диапазон, будет определено как недопустимое и изменено на значение по умолчанию, D Анализ строковых шаблонов (например, почтовых индексов или номеров карт социальноrо страхования), Если строка в ячейке соответствует шаблону (например, XXX XXX-XXX), то ошибки нет, В противном случае включается обработка строки в соответствии с некоторым заранее определенным правилом (строка символов приводится в соответствие с шаблоном), Профайлинr достаточно развитый метод выявления проблем в данных, Oд нако он рассчитан на анализ штатных», технических проблем, которые относятся к наиболее типичным и хорошо формализуемым. Поэтому профайлинr это CKO рее метод предварительной оценки качества данных с целью выявления типичных проблем,
rлава 5. Очистка и предобработка данных 219 визуальная оценка качества данных ЕслИ объем данных не слишком велик, то для оценки их качества можно с успехом I1рименять визуальные методы. Для этоrо используются как встроенные средства визуализации аналитической платформы, так и сторонние проrpаммные средства, в которых можно просматривать данные в табличной и rрафической форме, pac считывать статистические характеристики, Оценка качества данных с помощью таблиц. Табличное представление позво ляет делать общие выводы о наличии в данных структурных нарушений, пропус коВ, анОМальных и фиктивных значений, Беrлоrо взrляда на таблицу в большин стве случаев достаточно, чтобы оценить количество неполных строк и столбцов, пустых ячеек. Аномальные числовые значения MOryT резко выделяться на фоне окружающих данных количеством цифр, Даже простая сортировка по возраста иию позволит собрать предполаrаемые аномальные значения в начале или конце столбца и леrко обнаружить их. На общем фоне хорошо выделяются несоответствия типов данных в одном столбце, Числовые данные обычно выравниваются по правому краю ячейки таб лицы, чтобы обеспечить расположение соответствующих разрядов чисел друr под друrом (например, рубли под рублями, а копейки под копейками). Строковые данные, как правило, выравниваются по левому краю. Поэтому, если в столбце с числовыми данными окажется строковое значение, ero можно леrко обнаружить по выравниванию (рис. 5.1). Некорректный номер чека Номер чека 160888 160698 160698 160747 1607 160747 161217 1 1217 161217 16124З 16124З 1216124З Товар КЕТЧУП,СОУС,AДDКИКА МАКАРОНЫ ЧАЙ,ХЛЕБ МАКАРОНЫ, СОУС, ХЛЕБ МЕД МОЛОКО ЧАЙ,СОК КЕТЧУП, МАКАРОНЫ, СОК ЯБЛОКИ, БАНАНЫ, КОЛБАСА СЫР, ХЛЕБ, КОЛБАСА СОСИСКИ,ХЛЕБ,САХАР ЯБЛОКИ, СОК, ИОrYРТ СЫР, КОЛБАСА, МАСЛО Сумма 0,25 р. 24,80 р. 18,90 р, 74,20 р. 89,65 р. Аномальные эначения 79,98 р. 156,40 р. 124,65 р. 145.90 96,70 р. 25 450,45 р. Пропущенное эначение СТрОКО80е эначение Рис. 5.1. Пример визуальноrо поиска аномальных значений Ясно, что визуально в таблице можно обнаружить несоответствия в данных, если они резко выделяются на общем фоне. Труднее выявить такие проблемы, как дубликаты и противоречия, поскольку на фоне окружающих данных они выrлядят ВПОЛне правдоподобно, В некоторых случаях дублирующие записи удается обнаружить путем сортиров КИ по возрастанию или убыванию, коrда идентичные записи оказываются рядом. Оценка качества данных с помощью rpафиков. [рафики и диаrpаммы эф фективные средства для выявления проблем в данных. Например, с помощью :.fU Часть 1. Теория бизнес анализа rрафиков можно леrко оценить наличие шумов в данных, а также пропущенных и аномальных значений. Если данные содержат шум, то он будет проявляться в сильной HepaBHOMep ности значений ряда, прекрасно различаемой на rрафике, Аномальные значения будут отображаться в виде резких отклонений в ту или друryю сторону (рис. 5.2). 70 000 60 000 <о ,.. 50 000 :s: af 40 000 Q. '" <о 30 000 :; :; 20 000 >- () 10000 О 01.01.2003 Аномальные значения Пропуски данных 08.01.2003 15.01.2003 22.01.2003 29.01.2003 05.02.2003 Дата Рис. 5.2. Пример визуальноrо поиска аномальных значений Наличие проблем в данных можно обнаружить с помощью rистоrpамм распреде ления числовых значений, например сумм продаж. Как и мноrие реальные процес сы, суммы покупок В супермаркетах распределены по нормальному закону, то есть существует диапазон значений, который встречается наиболее часто, в то время как вероятность появления очень малых сумм (менее 1 О руб.) и больших (скажем, больше 5000 руб.) достаточно мала, Torдa кривая распределения сумм будет в той или иной степени соответствовать нормальному распределению. Появление в rистоrрамме дополнительных пиков (мод) может свидетельствовать о присутствии HexapaктepHых для данноrо ряда значений, которые MOryT являться аномалиями, ошибками и т. д, На рис. 5.3 (вверху) показана rистоrpамма распределения сумм покупок, cooтвeT ствующая нормальному закону. Из нее Видно, что наиболее часто делаются покупки на сумму 450 500 руб" а покупки на суммы менее 100 и более 700 руб, очень малове роятны. На рис, 5,3 (внизу) появление боковых мод rоворит о резком увеличении чис ла покупок на суммы от 100 до 150 руб, и от 650 до 700 руб, Конечно, это может быть вызвано объективными причинами, но может быть связано и с ошибками в данных. Выявление трудно формализуемых ошибок Существует множество факторов, СНИЖающих качество данных и не поддающихся формальной оценке. Один из rлавных человеческий фактор. Сотни и тысячи pa ботников непрерывно формируют потоки «rpЯЗНЫХ1> данных, При этом элементар ные ошибки ввода и реrистрации данных способны привесrn к большим искажениям информации о ходе бизнеса. Как rоворится, «Bpar заходит в [ород, пленных не щадя, потому что в кузне не было rвоздя». В какой то степени с этим можно бороться, Ha пример орrанизовать процесс реrистрации так, чтобы минимизировать ручной ввод,
rлава 5. Очистка и предобработка данных 221 6000 5000 11 10: О С 4000 О С О 3000 ID I.. 1- U Ф 2000 :т :s: 1:; о 1000 О - 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 р'б. Сумма покупок 6000 10: 5000 О С 4000 О С О 3000 ID 1- U Ф 2000 :т :s: 1:; о 1000 О 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 руб. Сумма покупок Рис. 5.3. rистоrpаммы сумм покупок коrда наименования КlIиентов и товаров выбираются из списка. Можно дать работ Никам четкие инструкции по вводу данных, поощрять сотрудников, допустивших наименьшее число ошибок, дублировать ввод данных и т. д. Это поможет добиться HeKoToporo улучшения качества данных, но вряд ли решит проблему кардинально. ПРИМЕР Проблема накопления «rрязных» данных актуальна для Интернета. Начиная с 2005 r. аали развиваться так называемые социальные сети. Авторы одноrо TaKoro русскоязычноrо ин тернет проекта дали пользователям право «создаватЬ)) rорода, улицы. инаитуты и друrие объекты. в результате в течение нескольких месяцев база данных оказалась засорена дуб ликатами, опечатками и различными вариантами наименований одних и тех же объектов. Например. в rороде присутавуют «школа 29)) И одновременно «шк. 29)), «rимназия 29)). что на самом деле означает один и тот же объект.
;1.22 Часть 1. Теория бизнес анализа rлавная задача оценки качества данных заключается в том, чтобы отличить «rрязные» данные от «чистых:?, то есть выявить, какие данные содержат ошибки и оценить, какую долю «rрязные:? данные составляют в обшем объеме данных: В ряде случаев эту задачу удается решить типовыми методами, например с помо- щью профайлинrа. Однако для rлубокоrо анализа причин «зarрязнения данных как правило, требуются более изощренные методы, основанные на знаниях о том' какиМИ должны быть качественные данные. Такие знания содержат правил и шаблоны, которым должны отвечать качественные данные. Чем больше данных не соответствует шаблонам и правилам, тем сильнее они «заrрязнены» и тем боль- ше внимания требуется уделять очистке данных. Инструментальные средства анализа качества данных содержат десятки тысяч шаблонов и правил для выявления «rpязных» данных. Например, чтобы проана- лизировать правильность ввода наименований клиентов, можно задать шаблон, в котором сначала указывается орrанизационно-правовая форма предприятия в сокращенном виде (000, ЗЛО, ПБОЮЛ и т, д.). Затем следует собственно на- именование предприятия в кавычках, То есть правильным наименованием будет считаться 000 «Pora и копыта , а не «Pora и копыта,) 000 или просто «Pora и копыта:?, Если содержание ячейки поля «Клиент» не соответствует заданному шаблону, значит, оно не соответствует заданным критериям качества. Широко распространено использование шаблонов для выявления ошибок в почтовых адресах, картах социальноrо страхования, банковских реквизитах орrанизаций и т, д. Одна из областей, [де особенно остро стоит проблема «rpязных данных, сети розничной торrовли. Это обусловлено такими причинами, как: О территориальная распределенность множество филиалов, разбросанных на большой территории; о большие объемы консолидируемых данных отражаются сотни тысяч Topro вых операций в день; О высокая степень детализации данных сумма каждой отдельной торrовой операции ничтожна по сравнению с общими объемами продаж. Все это порождает множество ошибок в данных, которые способны существен- но снизить достоверность результатов анализа. Выделяются следующие основные классы ошибок: о ошибки ввода возникают в процессе ввода данных на ToproBbIx терминалах и в кассовых пунктах. Конечно, в большинстве современных супермаркетов кас- совые пункты максимально автоматизированы, чтобы избежать ручноrо ввода данных и связанных с этим ошибок. Специальный сканер считывает штрихкод, наклеенный на упаковку товара, и вводит информацию в кассовую машину, ко- торая подсчитывает сумму по каждому товару и выбивает чек Информация по каждому чеку вводится в БД, Однако полностью исключить ошибки не удается, поскольку невозможно избежать ручноrо ввода, коrда не читается или отсут- ствует штрихкод, товар поступил в продажу, но не занесен в БД и т, д, Кроме Toro, сканер может неправильно считать штрихкод;
,, rлава 5. Очистка и предобработка данных 223 CI 01ll ибки В проrраммном обеспечении ToproBoro терминала; CI 01llибки в базе данных системы учета ToproBbIx операций; CI 01llибки консолидации данных, которые возникают в процессе переноса данных из филиалов в централизованное хд торrовой орrанизации. Задача оценки качества данных заКlIючается в выявлении ошибок и определе }lи и их критичности по отношению к результатам анализа. Обнаружение ошибок I1РОИЗВОДИТСЯ с помощью специальных процедур, каждая из которых разрабаты вает ся для выявления определенноrо рода ошибок. При этом необходимо выбрать I1риоритет ошибок и обеспечить соответствующий порядок работы процедур. ОчевиднО, что, пока не установлено, присутствует ли некоторое значение вообще, бессмысленно выяснять, допустимо ли оно. Пока допустимость значения не под тверждена, нет смысла проверять ero на аномальность; если же значение само по себе недоПУСТИМО, то, аномально оно или нет, уже роли не иrpает. Ero нужно либо удалять, либо приводить в соответствие с заданными оrраничениями. Результатом работы такой системы будет отчет об обнаруженных ошибках и оценке уровня заrpязненности данных. Отчет может использоваться аналитиками для разработки комплекса мер, направленных на повышение качества данных. Контроль качества данных должен производиться непрерывно в процессе их сбора и консолидации. Для этоrо целесообразно орrанизовать мониторинr данных, одна из возможных схем KOToporo представлена на рис. 5.4. OLTP Филиал С Очистка данных Отчет об обнаруженных проблемах Нет Ошибки обнаружены? Да . Нет Ошибки критичны? ХД Да Анализ проблем и выработка мер по их решению Рис. 5.4. Орrанизация мониторинrа качества данных
224 Часть 1. Теория бизнес анализа Соrласно схеме контроль качества данных и выявление возможных проблем осуществляются как на этапе сбора данных в ОLТР системе, так и при их KOH солидации и преобразовании в процессе ETL. Коrда установлено, что данные не содержат ошибок, они беспрепятственно заrpужаются в ХД. Если в ходе проверки были выявлены ошибки, то производится оценка их критичности Относительно анализа данных. Если ошибки некритичны, то данные также заrpужаются в Xpa нилище. Если обнаружено, что ошибки критичны, то вырабатывается комплекс мер по очистке данных, которая также может производиться как непосредственно в ОLТР системе, так и в процессе консолидации и ETL, Оценка качества данных, контроль ошибок и анализ обнаруженных проблем необходимые звенья любоrо проекта по бизнес аналитике. Оценка качества данных не только позволяет определить степень их приrодности к анализу, но и служит индикатором оптимальности и продуманности работы таких систем сбора и KOHCO лидации данных, как ОLТР системы, ETL и ХД. 5.3. Очистка и предобработка Несмотря на мноrоступенчатую процедуру очистки данных (в ОLТР системах, в процессе ETL, в ХД), даже на этапе их непосредственноrо анализа возникают серьезные проблемы, препятствующие эффективному и корректному анализу данных, Эти проблемы далеко не всеrда связаны только с заrpязненностью дaH ных имеются и друrие причины, которые не позволяют эффективно использо вать данные для KOHKpeTHoro вида аналитической обработки. Что такое предобработка и чем она отличается от очистки данных? с точки зрения анализа «качество данных» и «чистота;;. это не одно и то же, Если чистота данных подразумевает отсутствие в них ошибок ввода, структурных нарушений, некорректных форматов и друrих причин, которые мешают анализу данных вообще, то качество данных тесно связано с конкретными целями и зада чами анализа, используемыми моделями, методами и алrоритмами. Это значит, что данные, которые можно считать качественными с точки зрения одной задачи анализа (например, проrнозирования), окажутся малоприrодными для решения друrой (например, классификации). Действительно, для построения проrноза может быть вполне достаточно наблюдений за развитием исследуемоrо процесса в некотором временном интервале, А для классификации объекта, скорее Bcero, потребуется ero всестороннее описание. Очевидно, что даже критерии качества данных для этих задач MOryT оказаться различными. Проще rоворя, нельзя достоверно утверждать, являются ли данные качествен ными, пока они не будут связаны с конкретной аналитической задачей. Поэтому, как только выборка данных заrружается в аналитическое приложение с целью решения конкретной задачи, аналитик должен оценить степень их соответствия rлава 5. Очистка и предобработка данных 225 ебованИЯМ, которые позволят получить качественное аналитическое решение, rP .. Д анные этим требованиям не соответствуют, нужно либо применить к ним БеЛ" б проаедурУ для повышения уровня качества, ли о отказаться от анализа, Успех обработки зависит от таких факторов, как: CI количество проблем, «унаследованных» от предыдущих этапов жизненноrо I.(J1J{Ла данных (ОLТР систем, ЕТL процесса, хд и др.); CI набор инструментальных средств обработки, предоставляемых аналитической платформой; CI умение аналитика использовать эти средства для приведения данных в COOTBeT етвие с требованиями конкретной задачи анализа, С целью подrотовки данных к решению конкретной задачи анализа использу етея комплекс средств, получивший название «предобработка данных>.. оПРЕДЕЛЕНИЕ Предо6ра60тка данных комплекс методов и алrоритмов, применяемых в аналитическом приложении с целью подrотовки данных к решению конкретной задачи и приведения их в со- ответствие с требованиями. определяемыми спецификой задачи и способами ее решения. Очистка данных в аналитическом приложении лишь один из аспектов предобработки, хотя эти два процесса часто отождествляются. Однако очистка не является синонимом предобработки. Более Toro, если в данных, заrруженных в аналитическое приложение, отсутствуют проблемы, требующие очистки, или их влияние на качество решения оценивается как минимальное, то очистка дaH ных в процессе их предобработки может вообще не проводиться. В то же время предобработка осуществляется в любом случае, Почему борьба за качество данных ведется на всех этапах аналитическоrо процесса? Возникает закономерный вопрос: с чем связана такая распределенность, почему нельзя решить все проблемы с качеством данных в одном месте? Причин для этоrо несколько. О Некоторые проблемы появляются и MOryт быть обнаружены только на опреде ленном этапе сбора и консолидации данных. Например, нельзя выявить проти воречия между данными, на:ходящимися в двух разных источниках, до тех пор, пока оба источника не будут интеrрированы в процессе ETL. О Характер влияния отдельных аспектов качества данных на процесс анализа раз Личен. Одни проблемы в данных MOryт вызывать только технические сложности, например не возможность интеrpирования данных или заrpузки их в хранилище. Друrие не позволяют выполнять корректный анализ данных и препятствуют по лучению достоверных результатов, например шумы, дубликатыI и противоречия. Технические проблемы в основном выявляются и по возможности устраня ются при консолидации данных, Аналитические проблемы доминируют на этапе
226 Часть 1. Теория бизнес анализа непосредственной обработки данных, коrда данные уже привязаны к определен ной методике и задаче анализа. ПРИМЕР Данные о продажах, получаемые из ОLТР-системы сети придорожных кафе и маrазинов, содер- жат аномальные значения, KorAa показатели ежедневных продаж в три-четыре раза превышают средние. Аномальные значения MOryт быть искусственными или естественными. Искусственное аномальное значение является следствием ошибки оператора, сбоя в работе системы, то есть оно отражает событие, которое в действительности не имело места и только искажает описание предметной области. Естественная аномалия, напротив, отражает реальное событие, вызванное исключительными обстоятельствами. Например, аномальный подъем спроса в ПрИДорожном кафе или маrазине может быть вызван проходящим неподалеку массовым мероприяти- ем музыкальным фестивалем, ярмаркой и т. д. или ремонтом параллельной автострады. При разработке ЕТL-процедур аналитик может указать в техническом задании, что все значе- ния продаж, превышающие среднее в два раза и более, должны рассматриваться как ано- мальные и подавляться. Однако, решая одну проблему, можно породить несколько друrих. Во-первых, подавляя аномальные значения, аналитик лишает себя возможности в будущем анализировать работу предприятия в условиях резкоrо возрастания и падения спроса, их предсказания. Во-вторых, при добавлении в ЕТL процесс дополнительных преобразований данных увеличивается время заrрузки ХД и связанное с зтим падение производительности корпоративной информационной системы (<<заrрузочное окно»). Аномальные значения не являются технической проблемой, поскольку это про сто числа, которые в несколько раз больше, чем соседние значения, В то же время в зависимости от специфики анализа данных их наличие или отсутствие может повлиять на качество анализа и достоверность полученных результатов, поэтому проблема аномальных значений является чисто аналитической. Оптимальным является перенос обработки аномальных значений в аналитическое приложение, [де пользователь может самостоятельно принимать решение о том, какие значения в контексте выполняемоrо анализа следует считать аномальными, нужно ли их подавлять, если да, то в какой степени и т. д. Технические проблемы влияют как на процесс консолидации данных, так и на результаты анализа, Аналитические проблемы влияют только на анализ данных, Если данные в том или ином ВИде удалось заrрузить в аналитическое приложе ние, то, скорее Bcero, в них остались только проблемы аналитическоrо плана, [лавное отличие очистки данных при предобработке от очистки в ОLТР систе мах и в процессе ETL заключается в том, что она проводится с учетом планируемой методики анализа, ero целей, требуемой достоверности результатов и может KOp ректироваться в зависимости от полученных предварительных результатов. В то время как разработка очистки данных в ОLТР системах и в процессе ETL является результатом совместной деятельности проrpаммиста и аналитика, очистка данных при их непосредственной подrотовке к анализу полностью ло- жится на плечи пользователя аналитическоrо приложения и не должна требовать вмешательства технических работников, Цели и методы предварительной обра- ботки данных должны полностью определяться пользователем и оrраничиваться лишь комплексом средств, которые предоставлены ему системОЙ. rлава 5. Очистка и предобработка данных 227 nоцему «rрязные» данные доходят до аналитической системы? закономерен вопрос: почему, несмотря на все усилия разработчиков ОLТР систем, БТL процессов и хранилищ данных, «rрязные» данные попадают в выборки для f[остроения моделей? Существует несколько причин. CI Некоторые ошибки не удается выявить. Чтобы система моrла обнаружить оIlIибку, необходимо указать правило или шаблон, которому должны COOTBeT ствовать «правильные» данные. Ошибкой будет считаться все, что не COOTBeTCT вует определенному шаблону или правилу, Предусмотреть шаблоны и правила для всеХ возможных проблем в данных невозможно. CI Не все обнаруженные проблемы удается УСТРaJШТЬ. Существуют проблемы, устранить которые можно, только удалив сами данные. Поэтому принимается реше ние, что использовать данные в «rpязном,,> виде лучше, чем вообще лишиться их, CI Отказ от устранения ОIШIбки. Процесс устранения некоторых обнаруженных ошибок очень трудоемок, поэтому если затраты на устранение ошибки превы шают выrоду от Hero, то может быть принято решение отказаться от очистки. CI Проrpаммы очистки данных сами MOryт являться источниками ОIШIбок. Напри мер, корректируя одну запись, проrpамма очистки данных может превратить ее в дубликат или противоречие друrой. Это может произойти, если вместо пропу щенноrо значения проrpамма подставляет значение, выбираемое в соответствии с некоторым правилом (например, среднее по столбцу). Иноrдапроцедуры очист ки данных только усуryбляют ситуацию, Если оператор О L ТР системы создает не так уж и MHoro ошибок, то алrоритм очистки может преобразовать одновременно мноrие тысячи записей в попытке исправить несуществующую ошибку, Все ошибки, связанные с качеством данных, делятся на два типа, Ошибки 1 ro типа имеют место в том случае, коrда проrрамма очистки данных обнаружи вает ошибку там, [де ее нет. ПРИМЕР 1 в ларек, в котором продается мороженое, было завезено товара на 5000 руб. До обеда мороженое было продано, и продавец запросил еще одну партию на такую же сумму. До закрытия ларька она также была распродана. На складе торrовой фv.рмы в систему реrистрации заказов были введены две записи об отпуске одинаковых товаров на одну и ту же сумму и одну и ту же дату, Процедура очистки данных, если при ее разработке данная ситуация не была предусмотрена, посчитает записи дубликатами и удалит одну из них. ПРИМЕР 2 к распространенным ошибкам относится ввод всех элементов адреса клиента в одну ячейку. Чтобы получить из адреса ropoA, в котором находится клиент, применяют разделение адреса на отдельные злементы в соответствии с шаблоном «ИндексrОрОД..,_Улица ом NQофиса». При этом оказалось не предусмотрено, что названия ropoAoB MOryт состоять из двух слов Нижний HOBropoA, Великие Луки и т. д. Проrрамма просто удаляла вторую часть названия
;,t;,t6 Часть 1. Теория бизнес анализа после пробела или пыталась преобразовать ero в название улицы. В итоrе ПОЯВЛЯЛИсь названия ropoAoB Нижний, Великие и улиц HOBropoA, Луки и т. д. Ошибки 2 ro типа называют «утраченными». Они появляются, если процеДУРа очистки данных не смоrла выявить проблему, то есть данные, содержащие ошибку, были распознаны как правильные. Это происходит Torдa, коrда данные выrJядятT прав ДО подобно, даже если содержат ошибку. Также пропуск ошибки возможен, если COOT ветствующее правило или шаблон не были предусмотрены в проrpамме очистки, ПРИМЕР Вместо отсутствующей информации о возрасте клиента оператор указывает последователь- ность цифр 00, полаrая, что система распознает ее как фиктивное значение и применит соответствующую обработку. Однако, если набор символов соответствуетзаданному шаблону, у системы нет формальноro повода подозревать ошибку и эти данные MOryт беспрепятственно проникнуть в ХД или аналитическую систему. Таким образом, очистка данных как часть их предобработки в аналитическом приложении является «последней инстанцией , rде аналитик может провести оценку качества данных и принять необходимые меры к их очистке на основе соб. cTBeHHoro мнения с учетом конкретных целей и задач анализа. Предобработка данных как важнейшая часть процесса их анализа Предобработку данных можно рассматривать как комбинацию методов очистки и специальных методов оптимизации данных для решения конкретной задачи. Чтобы лучше понять, как соотносятся между собой очистка и предобработка, обра тимся к следующей схеме (рис. 5.5), Аномальные эначения Нарушения структуры данных Нарушения целостности и полноты Пропуски Противоречия Дубликаты Шумы Устранение неэначащих приэнаков Некорректные форматы Фиктивные эначения Про пуски Противоречия Рис. 5.5. Связь между очисткой и предобработкой
rлава 5. Очистка и предобработка данных 229 в ОLТР системах, в процессе ETL и в хд производится очистка данных от офибо к , которые в большей степени носят технический характер. Нарушения структуры, целостности, полноты и некорректные форматы данных необходимо постараться исправить до заrpузки в ХД, поскольку данные с такими проблемами отут вообще не заrpузиться в хранилище. Фиктивные значения тоже Проще pac ознать и исправить в О L ТР системе: как только данные выйдут за ее пределы, обнаружить, что значение ошибочное, будет rораздо труднее, особенно если оно выrлядит правдоподобно и имеет корректный формат. Что касается пропусков, то выяснить их причину и восстановить пропущенные значения также леrче в той системе, rде они были созданы, Проблемы, связанные с качеством данных, удобнее распознавать и устранять в первоисточнике. Здесь проще узнать причины и закономерности появления про блем, доступен для консультаций персонал, работавший с данными, а также пер вичные бухrалтерские и друrие документы, из которых можно взять правильные и недостающие значения, Если орrанизация имеет значительную территориальную и структурную распределенность, большое количество филиалов и дочерних KOM паниЙ, а отдел, rде данные консолидируются для анализа, расположен в централь ном офисе, то, коrда данные доберутся до Hero, найти первопричины появления мноrих проблем будет очень сложно. Типичный набор инструментов предобработки в аналитическом приложении в блок предобработки аналитическоrо приложения, как отмечалось выше, входит набор методов очистки и оптимизации данных для конкретной задачи анализа. Если орrанизация использует информационно аналитическую подсистему собственной разработки, то комплекс средств предобработки данных в ней может быть создан с уче том специфики решаемых задач, Однако разработать собственную аналитическую матформу имеют возможность только крупные предприятия, большинство же при меняет продуктыI сторонних производителей, поэтому выполнять подroтовку данных к анализу приходится теми средствами, которые заложены разработчиками системы. Типичный набор инструментов предобработки и подrотовки данных к анализу, Поставляемый с большинством аналитических платформ, содержит следующие Средства. Очистка от шумов и сrлаживание РЯДОВ данных. Часто ряды данных содержат быстрые случайные изменения значений, которые можно рассматривать как шум. Шум мешает выполнять анализ данных, делает неустойчивой работу алrоритмов, не позволяет обнаруживать в данных скрытые закономерности, структуры, TeH денции и т, д, Сrлаживание необходимо в том случае, коrда ряд данных оказыва ется неравномерным, содержит большое количество мелких структур (которые не ЯВляются шумом в обычном понимании), препятствующих исследованию более Значительных объектов и закономерностей, Хотя сrлаживание и очистка от шумов ПО своим целям похожи, это различные методы обработки данных, использующие различные математические подходы.
230 Часть 1. Теория бизнес анализа Восстановление пропущенных значений. Пустые значения вызывают He определенность при работе мноrих алrоритмов Data Mining. Даже одно пропу_ щенное значение может привести к невозможности моделирования, Если же пропущенных данных MHoro, объема информации в выборке может оказаться недостаточно. Редактирование аномальных значений. Аномальные значения также требуют внимания при подrотовке данных к анализу. В большинстве случаев они ЯВЛЯюТся просто ошибками ввода. Если же аномальные значения действительные события, вызванные исключительными обстоятельствами, то они все равно являются вред- ными, поскольку мешают обнаружению закономерностей в исследуемом процессе. Однако исследование аномальноrо поведения данных позволит проrнозировать условия, вызывающие аномальные события, и их последствия, изучать реакцию бизнес систем на аномальные изменения условий. Следовательно, ответы на во- просы, какие значения считать аномальными, принимать ли меры к их подавлению, каковы должны быть степень и методика подавления, далеко не однозначны и тpe буют дополнительных исследований в контексте целей и методов анализа, Обработка дубликатов и противоречий. Дубликаты и противоречия в данных весьма распространенные явления, особенно коrда данные поступают не из ХД, rде выполняется автоматическая поддержка их уникальности и непротиворечивости, а напрямую из разнообразных источников. При этом подходы к обработке дубли катов и противоречий существенно различаются. Дубликаты одинаковые данные (записи). Они MOryT дублировать информацию об одном и том же событии, а MOryт содержать идентичную информацию о двух различных, но похожих событиях, В первом случае дубликаты должны быть удалены, а во втором требуется более тонкая обработка. С противоречиями тоже не все так просто. Они возникают там, rде нарушается лоrика причинно следственной связи. Например, два одинаковых события являются следствием различных исходных условий IШИ одинаковые усло вия породили различные события, Противоречия существенно мешают анализу данных, особенно при их использовании для построения моделей, основанных на обучении: нейронных сетей, деревьев решений и т. д. Использование противоречи вых данных резко ухудшает процесс настройки параметров моделей, Снижение размерности входных данных. В основе работы большинства MO делей Data Mining лежит принцип обобщения. То есть, чтобы получить на выходе модели даже единственное значение, нужно подать на ее вход некоторый набор значений, на основе соотношений между которыми и будет определено выходное. При построении модели изначально стараются привлечь максимум собранной информации об исследуемом объекте: клиенте, поставщике, товаре и т. д, В резуль тате набор входных переменных разрастается, что приводит к усложнению модели, делает ее уязвимой для некачественных данных, увеличивает время, требуемое на ее построение. Поэтому одной из важных задач подrотовки данных к анализу яв ляется снижение их размерности (data reduction), Для этоrо производится поиск входных признаков (атрибутов, показателей), которые обладают высокой степенью статистической взаимозависимости. Такие данные MOryT быть исключены из рас- смотрения без существенноrо ущерба для результатов анализа.
rлава 5. Очистка и предобработка данных 231 устранение незначащих факторов. Не все имеющиеся в распоряжении aHa Jlтика данные одинаково важны с точки зрения целей анализа. Фактор (бизнес JI ) v v оказатель , включаемы и в рассмотрение, должен вносить достаточныи вклад !l б v в решение задачи, участвовать в о ъяснении причинно следственнои связи между JlСJ{ОДНЫМИ данными и результатом, то есть между входными и выходными факто ра ми должна быть высокая степень взаимозависимости, Если между каким либо входным фактором и выходным результатом такая связь мала или отсутствует, то использование этоrо входноrо фактора бессмысленно или даже вредно, поскольку мткет увести решение в ложном направлении, Поэтому при подrотовке данных к анализу необходимо выявить входные факторы, слабо или совсем не связанные с искомым аналитическим решением, и исключить их из пространства входных факторОВ. Чаще Bcero критерием для определения значимости входных факторов является некоторый уровень (показатель) значимости, который соrласовывается СО степенью зависимости (корреляции) искомоrо решения от данноrо фактора. Если показатель значимости входноrо фактора меньше HeKoToporo пороrа, то ЭТОТ фактор может быть определен как слабо влияющий на решение и исключен из рассмотрения без существенноrо ухудшения качества анализа, Однако такой подход скрывает в себе определенный риск, поскольку пороr значимости задается аналитиком на основе субъективных оценок и может быть ошибочным, В целом последние две задачи похожи: из анализа исключаются данные, которые в контексте решаемой задачи являются лишними (избыточными) и только влекут дополнительные вычислительные затраты, усложняют используемую модель. Принципиальная разница заключается в следующем. О В первом случае в качестве критерия для исключения факторов используется степен.ь взаимной зависимости (корреляции) между входнь/М.и факторами. То есть чем выше эта степень, тем больше оснований для исключения факторов, О Во втором случае используется степень связи между входнь/М.и факторами и результатом. То есть чем ниже эта степень, тем больше оснований для ис ключения фактора. Следует отметить, что уменьшение размерности анализируемых данных не СВязано с их очисткой, поскольку данные MorYT рассматриваться как избыточные Только в контексте решаемой задачи. В свою очередь, эта избыточность никак не связана с наличием в данных про пусков, аномалий, шумов и друrих проблем, традиционно связываемых с очисткой. Именно поэтому понижение размерности ВХодных данных является неотъемлемой частью предобработки данных и должно ВЫполняться в аналитическом приложении. Делать это на этапе сбора и консоли Дации данных в отрыве от условий конкретной аналитической задачи (например, В процессе ETL) бессмысленно. ВЫВОДЫ Предобработка и очистка данных в аналитическом приложении важнейшие эта ПЫ, «последняя инстаНЦИЯ1> при подrотовке данных к анализу. В процессе предоб работки аналитик преобразует данные так, как он видит их в контексте решаемой
232 Часть 1. Теория бизнес анализа задачи, используемых моделей и методов. При этом обеспечивается неформальный подход, который не может заменить ни одна автоматическая машинНая процедура, Это достиrается за счет Toro, что стратеrию подrотовки данных аналитик разраба тывает и реализует на основе собственноrо опыта, знаний и даже интуиции. Именно субъективный компонент позволяет в ряде случаев добиться наиболее значимых аналитических решений. Возможность непосредственноrо управления подrотовкой данных важна для аналитика еще и потому, что в некоторых случаях характер ero вмешатеЛЬСТва может идти вразрез с формальными процедурами. 5.4. Фильтрация данных При подrотовке выборки данных к анализу часто возникает ситуация, коrда HeKO торые записи нужно исключить из выборки и не использовать. Это может потребо ваться в следующих случаях. О Значения, содержащиеся в записи, MorYT неrативно rювлиять на результаты анализа, О Значения записи нежелательно использовать в данной аналитической задаче. О Запись связана с каким либо объектом или событием, которое нежелательно рассматривать при анализе. О Запись содержит незначащую информацию и т. д, Для исключения записей, присутствие которых в исходной выборке по какой либо причине нежелательно, используется фильтрация. Фильтрация является мноrоцеле вым средством, которое позволяет выполнять очистку данных от факторов, снижа ющих качество анализа, понижать размерность исхоДноrо множества данных, отбирать наиболее важные данные, упрощать визуальный анализ исходной выборки и т, д. В основе фильтрации лежит использование условий, которые иrpают роль фильт ров, позволяющих оставлять в выборке одни данные и исключать друrие. В HeKO торых случаях применение фильтрации в качестве альтернативы таким методам подrотовки данных, как очистка и снижение размерности, может дать определенные преимущества, Во первых, фильтрация достаточно про ста с вычислительной точки зрения, поэтому в ситуациях, коrда обработка более сложными алrоритмами зани мает слишком MHoro времени, фильтрация позволяет справиться с проблемой зна чительно быстрее. BO BTOpЫX, решение о целесообразности фильтрации и настройка ее параметров производятся непосредственно пользователем, что дает возможность действовать более тонко, чем некоторые алrоритмы очистки и сокращения размер ности, а также избеrать проблем, иноrда создаваемых этими алrоритмами. Кроме Toro, результаты фильтрации более предсказуемы и леrче интерпретируются. Алrоритмы фильтрации существенно отличаются по своей сложности. В про стейшем случае это может быть отбор записей, значение определенноrо признака в которых не превышает заданноrо. Однако при необходимости используются сложные мноrоступенчатые алrоритмы фильтрации по нескольким полям и He скольким условиям одновременно.
rлава s. Очистка и предобработка данных 233 в основе технолоrии фильтрации лежат три базовых понятия: условие, значение II оТIIошение. CI условие. Определяется порядок отбора данных, например «больше или равно>,>, «меньше» И т, д, CI Значение, С помощью заданнorо условия проверяется конкретное значение. CI Отношение. Используется при фильтрации с помощью нескольких условий и устанавливает лоrические отношения между этими полями. Набор условий, используемых при фильтрации, может быть разным для данных различноrо ТИПа, Для числовых данных используются следующие условия. CI P{Jf3HO», <те равно», «больше», «меньше», «меньше или равно», «больше или равно». Отбираются только те записи, в которых значение HeKoToporo признака удовле творяет заданному условию, Таким простым способом можно исключать аномаль ные значения либо значения, величина которых не соответствует целям анализа. CI «Пустое»/«не пустое». Отбираются только те записи, которые в данном поле содержат пустое (или, наоборот, непустое) значение. Этот метод фильтрации позволяет исключить из рассмотрения записи с про пусками данных или, Ha оборот, отобрать из Bcero множества только полные записи. Значение при этом не задается. Q «Gодержuт»/«не содержит», Включаются (исключаются) все записи, которые содержат или, наоборот, не содержат некоторое заданное значение. Q «В интервшr.e»/ «вне интервала». Отбираются только те записи, значения которых для определенноrо поля лежат в некотором заданном диапазоне или вне ero. Q «В списке»/«вне списка». Отбираются только те записи, значение фильтруемоrо поля которых содержится или, наоборот, не содержится в заданном пользова телем списке. Данное условие фильтрации, как правило, доступно только для полей дискрет Horo вида. Q «Начинается на»/«не начинается на», Отбираются заПИСИ, в которых значение определенноrо признака начинается (или, наоборот, не начинается) с заданноrо набора символов. Условие применяется только к строковым данным. Q -«Заканчивается на»/<<Н.е заканчивается на». Отбираются записи, в которых значе ние определенноrо признака заканчивается (или, наоборот, не заканчивается) на заданный набор символов. Условие применяется только к строковым данным, При необходимости можно использовать сложные алrоритмы фильтрации, co держащие несколько условий, проверяющИХ данные по нескольким полям. [лавное в этом случае правильно установить отношения между условиями. Отношения устанавливаются с помощью лоrических операций «И>,> И «ИЛИ>,>. Если между двумя условиями установлено отношение «И», то в результиру ющий набор данных войдут записи, удовлетворяющие всем условиям, связанным Этим отношением. Если между условиями устанавливается отношение «ИЛИ>,>, то будут отобраны записи, удовлетворяющие хотя бы одному из условий,
234 Часть 1. Теория бизнес анализа 5.5. Обработка дубликатов и противоречий Наличие в данных дубликатов и противоречий часто снижает эффективность рабо- ты моделей и достоверность результатов анализа. Поэтому при подrотовке данных к анализу большое внимание уделяется устранению дубликатов и противоречий, а инструментарий для этоrо включен в комплекс средств предобработки мноrих аналитических платформ, В большинстве случаев выборка данных, на основе которой строится модель, со- держит некоторый набор признаков (атрибутов, показателей), описывающих иссле дуемый бизнес процесс или объект. Эти признаки можно разделить на две rpуппы: О входные подаются на вход модели, и на основе их значений модель рассчи тывает выходной результат. Входные признаки иrpают роль независимых пе ременных; О выходные (целевые) их значения формируются на выходе модели как отклик на подачу на ее вход набора входных признаков, Выходные признаки иrpают роль зависимых переменных модели, Введем определения дубликатов и противоречий. ОПРЕДЕЛЕНИЕ Две записи или более называются дубликатами. если они содержат идентичные наборы значений всех признаков. ОПРЕДЕЛЕНИЕ Две записи или более являются противоречивыми, если они содержат одинаковые наборы значений входных признаков и различные наборы значений выходных. Проще rоворя, дубликаты это одинаковые записи, А в противоречивых записях нарушается однозначность причинно-следственной связи: одинаковым исходным данным соответствуют различные результаты, ПРИМЕР Пупь имеется задача классификации. rAe на основе набора признаков Х. У, Z требуется определить принадлежность объектов к одному из классов А. В, С. TorAa выборка для построения классификационной модели будет иметь следующий вид. N!! записи Х У Z Метка класса 1 Хl У2 24 А 2 Х2 У! 22 В 3 Х2 У! 22 В 4 Х! У2 24 С При ЛОМ l-Я И 4-Я записи будут противоречивыми, ПОСКОЛЬКУ двум одинаковым наборам признаков соответпвуют различные метки классов, а 2 Я и з я дубликатами, поскольку все их значения одинаковы. rлава s. Очистка и предобработка данных 235 в том, что в процессе предобработки данных необходимо выполнять поиск J1 обработку дубликатов и противоречий, сомнений нет. Сомнения возникают TO а коrда записи, формально являющиеся дублирующими и противоречивыми, rд , с точки зрения лоrики данных таковыми не являются, Например, объекты, которые JJ 1 й и 4 й записях, несмотря на одинаковые значения признаков, классифици руIOтся как относящиеся к различным классам (что и порождает противоречие), MOrYT и на самом деле характеризоваться этими значениями и тем не менее OTHO ситься к различным классам. Это возможно в том случае, если существуют еще какие ТО признаки, позволяющие различить эти объекты, которые не были учтены при формировании выборки или были исключены в процессе снижения размер ноСТИ даннЫХ. Иными словами, существует rипотетический признак Т, который позволил бы объяснить, почему, несмотря на одинаковый набор значений призна КОВ Х, У, Z, объекты в 1 й и 4 й записях относятся к различным KJ.IaccaM. С дубликатами тоже не все просто. Каждая запись выборки данных фактически представляет собой наблюдение за состоянием HeKoToporo объекта или процесса. Поэтому, коrда аналитик обнаруживает, что в анализируемых данных присутству ют одинаковые записи, у Hero возникает закономерный вопрос: являются ли дуб ликаты ошибочно введенными копиями одной записи либо отражают различные наблюдения за идентичными событиями и наблюдениями? Таким образом, при обработке дубликатов и противоречий нужен неформаль ный подход, который учитывает их происхождение и лоrику анализируемых данных. Во мноrих случаях это позволяет избежать потери информации из за неправильной интерпретации дублирующих и противоречивых записей, ПРИМЕР На склад в течение одноrо дня были завезены две одинаковые партии одноименных ТOBa ров, что привело к появлению двух идентичных записей в реrиарирующей системе. Если при обработке дубликатов предполаrается, что из двух одинаковых записей только одна прав ильная, а друrая следствие ошибки, то одна из записей будет удалена, а вместе с ней будет потеряна информация о поступлениитовара. Применив неформальный подход, аналитик поаарается выяснить причину появления двух одинаковых записей: позвонит на склад или запросит в бухrалтерии первичные документы. Если выяснится, что обе записи отражают реальные события, то аналитик примет решение либо оаавить обе записи, либо объединить их с аrреrированием числовых значений. Очевидно, 'ПО неформальный подход удастся применить только в том случае, коrда объем данных и количество дубликатов и противоречий в них невелики. В случае, описанном в последнем примере, дублирующие записи MorYT обра зовываться из за Toro, что при реrистрации поступления товаров на склад в базу данных заносится только информация о дате поставки, фирме поставщике, KO личестве, цене и сумме товара, Поэтому, если поступают две одинаковые партии товара в пределах одноrо дня, в базе данных оказываются две идентичные записи. Знание модели формирования дубликатов позволяет выработать единый подход к их обработке или принять меры к устранению причины их появления, Для этorо достаточно добавить в базу данных системы реrистрации признак, уникальный .:Sb Часть 1. Теория биэнес аналиэа для каждой операции приемки товара, например время реrистрации или НОМер соответствующеrо первичноrо документа. Непродуманная методика обработки дубликатов и противоречий может привес ти к потере информации, что окажет неrативное влияние на результаты аналИза. Обобщенная модель дубликатов и противоречий данных При обработке дубликатов и противоречий MOryT возникнуть разночтения в ТОМ, что считать дублирующими и противоречивыми данными. Например, если все признаки числовые, можно ли считать дубликатами записи в табл. 5.2? Таблица 5.2. Пример набора данных N!! записи Цена Количество Сумма Наценка 1 1000 250 250 000 120,02 2 1000 250 250 000 120,01 3 999,9 249,8 249 775,02 120,05 4 1100 255 280 500 122,2 Формально три первые записи не являются дубликатами, но с точки зрения лоrики бизнеса отражают идентичные данные. При этом неважно, откуда взялась «лишняя копейка (возможно, это просто ошибка окруrления). Чтобы определить, следует ли считать формально различные записи дубликата ми с точки зрения лоrики бизнеса, можно воспользоваться их представлением в MHO roMepHoM пространстве признаков, а в качестве меры различия выбрать расстояние (например, евклидово) между точками, соответствующими каждой записи. На рис. 5.6 показано, что первые три записи достаточно близки и порождают в мноrомерной системе координат точки, расположенные внутри области. При этом размер области выбирается из допустимой меры близости, в пределах которой записи можно считать дубликатами. Четвертая запись находится на значительном расстоянии от друrих и не попадает внутрь области, поэтому она дубликатом остальных записей не считается. Наценка r; ' ) !. . .. "....... Сумма Количество Рис. 5.6. Дубликаты в MHoroMepHOM пространстве приэнаков Таким образом, если две записи или более попали внутрь области, в пределах которой расстояние между ними не превышает заданноrо значения (меры бли rлава s. Очистка и предобработка данных 237 зо сти ), то С точки зрения лоrики бизнеса они MOryT считаться дубликатами, хотя формально таковыми и не являются. v Теперь рассмотрим аналоrичную меру для противоречии. Например, проти JjоречивЫ ли следующие записи, если предположить, что цена, количество и CYM м:а входные признаки, а наценка выходной (табл. 5.3)7 Таблица 5.3. При мер набора данных Н!? записи Цена Количество Сумма Наценка 1 1001 250 250 250 120,02 1000 250 250 000 120,01 2 3 1000 250 250 000 130,05 Если две записи являются дубликатами, то значения всех их признаков должны быть идентичны (или почти идентичны), а соответствующие точки в пространстве признаков должны совпадать или располаrаться на достаточно малом расстоянии друr от друrа (расстояние R 2 на рис, 5.7). Если же значения выходных признаков будут различаться и записи будут противоречивыми, то, несмотря на близость входных значений, их точки в пространстве признаков окажутся на большом pac стоянии (расстояние R j ). Наценка R, R, ;-:-"2 Пр'''и'Оре' ' (_ Дубликаты ". . ..I Сумма Количество Рис. 5.7. Дубликаты и противоречия в MHorOMepHOM пространстве признаков Таким образом, если записи имеют одинаковые значения входных и выходных Полей и, следовательно, являются дубликатами, то их точки в пространстве призна ков совпадают или близки друr к друry, Если записи противоречивы, то, несмотря на одинаковые значения входных полей, их точки в MHoroMepHoM пространстве Признаков окажутся удаленными из за различия значений выходных полей. Если расстояние между записями, имеющими одинаковые значения входных полей и различные значения выходных, достаточно мало, то это дубликаты. Если pac Стояние между ними значительно, то это противоречия. Влияние дубликатов и противоречий на эффективность анализа Наличие в данных дубликатов и противоречий может вызвать следующие про блемы.
"""6 Часть 1. Теория бизнес анализа о Дубликаты вызывают избыточность данных, увеличивают объем выборки, при этом совершенно не повышая информативность данных. Так, одинаКОвьrе примеры в обучающей выборке не способствуют процессу обучения, поскольку в них содержится одна и та же информация. Вместе с тем они увеличивают объем выборки и время, требуемое для обучения, Кроме Toro, если объем выборки orpa ничен, дубликаты отнимают» в ней место у полезных примеров, что ухудшает pe зультаты обучения. Для пояснения проведем следующую аналоrию. Представим себе таблицу умножения, в которой некоторые примеры дублируются несколько раз. Очевидно, что с точки зрения изучения правил умножения это бессмысленно, к тому же набор примеров разрастается, что ухудшает их восприятие учеником, О Противоречия приводят к искажению результатов анализа и снижают качество моделей, поскольку нарушают общие закономерности в данных, обнаружение которых и является целью анализа, 3АМЕЧАНИЕ При решении некоторых задач Data Mining дубликаты и противоречия добавляются в дан- ные искусственно. Добавление противоречий позволяет внеаи в данные неопределен- насть, что в ряде случаев стимулирует процесс настройки параметров модели к более тщательной «проработке» данных. Добавление в выборку дубликатов повышает значимоаь дублируемой информации. Противоречия, выбивающиеся из общей модели данных, MOryт также способавовать об- наружению отклонений. Например, если два разных шаблона расходования средав со счета или с кредитной карты в данных оказываются связанными с одним клиентом, то такое противоречие позволяет заподозрить мошенничеаво. Обработка дубликатов и противоречий Обработка дубликатов и противоречий должна про изводиться с учетом особенно стей исходных данных и лоrики решаемой задачи. Существует несколько подходов к решению проблемы наличия в данных дубликатов и противоречий. Обработка дубликатов и противоречий не про изводится вообще. Это воз можно В следующих случаях. Во первых, коrда формально дубликаты и проти воречия присутствуют, но при этом корректность описания динамики иссле дуемых процессов не нарушается. BO BTOpЫX, если дубликаты и противоречия были введены в данные искусственно. Наконец, в некоторых задачах дубликаты и Противоречия MOryT быть индикаторами отклонений, поиск которых и является целью анализа. Удаление дублирующихся и противоречивых записей. Подход применяется в том случае, если установлено, что из набора дублирующихся и противоречивых записей только одна отражает действительное наблюдение или событие, а осталь ные являются следствием ошибок. Тоrда из всех дублирующих друr друrа запи сей оставляют только одну, а остальные удаляют. С противоречиями сложнее, поскольку требуется определить, какая из противоречивых записей прав ильная, а какие следствия ошибок,
rлава s. Очистка и предобработка данных 239 Объединение (слияние) дублирующихся и противоречивых записей. Этот метод применяется Torдa, коrда дубликаты и противоречия отражают действитель ны е события. Например, если реrистрация поступления двух одинаковых партий товара привела к появлению двух одинаковых записей, то можно либо удалить одну запись, либо оставить все без изменений. В первом случае будет потеряна информация о реальном событии, во втором появится избыточность в данных, поэтому оптимальным будет объединить две записи в одну, выполнив аrреrацию количества поступивших единИЦ товара и соответствующих сумм. При этом цены, очевидно, аrреrировать не следует (рис. 5.8). Товар Бананы Бананы Цена Кол во, Kr 35,00 500 35,00 500 Сумма 17 500 17 500 Рис. 5.8. Объединение дубликатов Ситуация, коrда может потребоваться объединение противоречивых записей, выrлядит следующим образом. Допустим, обнаружилось, что одному и тому же наименованию товара в разных записях были присвоены различные идентифи кационные коды. В результате это привело к возникновению противоречия. Если вследствие удаления одной из записей данные будут потеряны, то записи можно объединить под одним кодом, а числовые значения аrpеrировать (рис. 5.9). Товар Швеллер NQ 15 Швеллер NQ 15 Код товара 2365 2З95 Кол-во, м Цена за 1 м 180 180 Сумма 18000 27 000 Рис. 5.9. Объединение противоречий в зависимости от ситуации при объединении записей MorYT использоваться различные функции аrреrирования: суммирование, выбор среднеrо, максималь Horo или минимальноrо значений и т. д. Из всех видов предобработки данных обработка дубликатов и противоречий в наименьшей степени подu.ается формальному подходу. Это связано с тем, что при наличии противоречивых или дублирующих друr друra записей невозможно выбрать метод их обработки, пока не будут выяснены их характер и происхождение. Анали тику приходится разбираться с каждым случаем дублирования и противоречивости
240 Часть 1. Теория бизнес анализа данных, чтобы выяснить, являются ли они следствием ошибки либо обусловлены особенностями данных, При большом объеме выборки данных и наличии значи- тельноrо числа дубликатов и противоречий их обработка может стать длительной и трудоемкой процедурой. u 5.6. Выявление аномальных значении Часто в больших наборах данных встречаются значения, которые не укладываются в общую модель поведения анализируемоrо процесса, Такие значения, которые сильно отличаются от окружающих данных или несовместимы с ними, называются аномалънъLМИ значениями (outlier value), Аномалии MOryт быть вызваны ошибками измерений или ввода данных, однако MOryт являться и результатом сильной измен- чивости данных, Если, например, в базе данных указан возраст клиента, равный 1, это значение некорректно, Ошибка может быть связана с тем, что компьютерная проrрамма по умолчанию установила это значение, если возраст клиента не был указан вообще (то есть имеет место фиктивное значение, которое также является аномальным). Но если в базе данных указано, что у клиента 15 детей, это значение будет скорее подозрительным и ero следует проверить. При подrотовке данных к анализу необходимо выполнять поиск и корректиров ку аномальных значений, поскольку они являются одним из факторов, существенно снижающих качество данных и достоверность результатов их анализа. Аномальные данные способны значительно ухудшить работу моделей Data Mining. Все аномальные значения можно разделить на два класса: О искусственные связаны с ошибками ввода данных, некорректной работой проrpамм или систем реrистрации (например, сканера штрихкода); О естественные отражают факты и события, имевшие место в действительно- сти, но вызванные исключительными обстоятельствами, которые встречаются очень редко или в едИНИЧНЫХ случаях. Так, аномально большая сумма выручки придорожноrо кафе может быть BЫ звана ошибкой оператора, который при вводе указал лишний ноль (искусственная аномалия). Но возможно, что параллельная дороrа была закрыта из-за ремонта и поток машин (а следовательно, и число клиентов) возрос в несколько раз, В этом случае имеет место естественная аномалия. Отличить искусственное аномальное значение от eCTecTBeHHoro, кроме очевид ных случаев (типа Возраст == 250), практически невозможно. Но если возникают сомнения, то лучше про извести дополнительную проверку, например связаться с менеджером подразделения, которое показало аномально высокую выручку, позвонить клиенту, чтобы уточнить ero возраст, и т, д. Впрочем, такие действия возможны только тоrда, коrда объем выборки данных и число аномальных значений невелики и с каждым из них можно разобраться отдельно. Если же объем выборки составляет десятки и сотни тысяч записей и она содержит сотни аномальных значений, то для их обработки приходится использо вать автоматические процедуры обнаружения и корректировки.
rлава 5. Очистка и предобработка данных 241 ТакИМ образом, задача обработки аномальных значений состоит из двух этапов. 1. обнаружение. Производится поиск аномальных значений, и, если возможно, проверяется, является аномалия искусственной или естественной. Если aHO малия искусственная, то необходимо удалить соответствующую запись либо про извести корректировку значений одним из доступных методов. Если aHO малия естественная (то есть отражает естественную изменчивость данных), то ее, возможно, следует оставить, но дальнейший анализ про изводить с COOTBeT ствующими поправками. 2. Корректировка. Обнаруженные аномальные значения ИСI<Лючаются или KOp ректируются в зависимости от лоrики и особенностей задачи анализа. Аналитик должен осторожно подходить к автоматическому ИСI<Лючению aHO мальных значений, поскольку, если результаты, кажущиеся аномальными, на самом деле корректны, это может привести к потере важной информации. Кроме Toro, следует учитывать, что некоторые алrоритмы анализа направлены именно на обна ружение аномалий, Например, в процессе выявления мошенничеств с кредитными картами аномальные значения являются индикаторами мошеннических действий, и тоrда аномальные значения будут не препятствующим фактором, а целью анали за. Но чаще Bcero, особенно при больших объемах данных, аномальные значения снижают качество анализа, поскольку, как правило, являются результатом ошибок, а не действительными характеристиками исследуемоrо процесса. Обнаружение аномальных значений Если исходное множество не очень велико и не содержит большоrо числа изме рений данных, то эффективным способом обнаружения аномалий является визу альный анализ таблицы или rpафика. В таблице аномальное значение может быть обнаружено по количеству цифр в числе или по первой цифре. Более наrлядным, конечно, служит rpафическое представление. Наиболее простым является визуальный анализ одномерных рядов данных. В них аномалии выrлядят как выбросы значений в ту ИЛИ иную сторону (рис. 5.10), Сумма кредита 80 000 70 000 60 000 50 000 40 000 зо 000 20 000 10000 О .; .; .; .; .; ci ci ci ci '" '" '" '" ci ci ci ci ci а: а: а: а: .... .... .... .... '" '" '" '" :I: :I: :I: :I: :I: '" '" '" '" Q. Q. Q. Q. t: t: t: t: t: ::; ::; ::; ::; а: а: а: а: а: CI> CI> CI> CI> '" '" '" '" '" '" '" '" '" '" N а> -е- -е- -е- -е- ::; ::; ::; ::; '" 1{) N а> ф со) о t-- N N 1{) N Ф '<t '" 1{) N N N N N N Рис. 5.10. Ряд данных
242 Часть 1. Теория бизнес анализа На рисунке представлен ряд данных о суммах выданных кредитов. Два зна. чения, помеченные цифрами 1 и 2, MorYT рассматриваться как потенциалЬные аномалии, Действительно, в то время как сумма кредита в основном не превышает 50 тыс., а средняя около 20 тыс., суммы 70 тыс. выrлядят подозрительно, Это как раз тот поrpаничный случай, коrда значения несколько ОТЮIоняются от общей модели поведения данных, но в целом не противоречат ей, Вот если бы вместо 70 тыс. стояло 700 тыс., был бы повод задуматься. Информация, полученная с помощью данноrо rpафика, может использоваться двояко. С точки зрения анализа имеет смысл либо ИСЮIючить аномальные значе ния, либо привести их в соответствие с общей моделью данных, чтобы они не влия ли на результаты анализа. С точки зрения руководства кредитноrо учреждения, эти два значения повод к проверке. Лица, взявшие большой кредит, MOryT быть либо перспективными клиентами, к которым нужен особый подход (например, специальные условия кредитования), чтобы повысить их лояльность к банку, либо мошенниками. Следует отметить, что если бы система автоматически подавляла аномальные значения, то потенциально ценная информация была бы утрачена. Визуальный анализ аномалий в двумерных рядах данных несколько сложнее, Рассмотрим выборку, в которой указываются суммы кредитов и возраст ЮIиентов. Очевидно, что наибольшее количество ЮIиентов это люди в самом трудоспособном возрасте, от 25 до 50 лет, которые берут кредиты на покупку теле и видеоаппаратуры, холодильника, мебели и т, д, Сумма кредитов при этом составляет от 20 до 40 тыс, Люди по моложе, которые еще не имеют стабильноrо заработка, подходят к кредитам осторожнее (если они не мошенники и мыслят здраво), и их доля в общем числе ЮIиентов меньше. Что касается пожилых людей, то они также пользуются креди тами меньше, поскольку их финансовая стабильность под вопросом, да и запросы скромнее, чем у молодежи. Поэтому rpафическое представление соответствующей двумерной выборки будет выrлядеть приблизительно так (рис. 5.11). На рисунке обозначены два типа аномалий, Буквой «01> помечены очевидные ошибки, коrда сумма 80 тыс. была выдана 12 летнему ребенку и людям в возрасте около 100 лет. Эти значения нужно сразу исключать или корректировать. Бук вой «П1> помечены подозрительные значения, которые в целом не противоречат лоrике данных, но ОТЮIоняются от общей модели их поведения, Такие значения должны быть подверrнуты дополнительной про верке. Поиск аномалий и их потенциальное удаление из наборов данных MOryT быть описаны как процесс отбора значений, которые сильно отличаются от окружающих данных, выбиваются из общеrо ряда значений или несовместимы с остальными данными, Задача обнаружения аномалий, особенно в MHoroMepHbIx наблюдениях, является сложной. Методы визуализации, полезные при поиске аномальных зна чений в случае использования 1 3 измерений, оказываются несостоятельными в случае MHoroMepHbIx данных, поскольку отсутствует адекватная методолоrия визуализации таких пространств. Наиболее простым подходом к обнаружению аномалий в одномерных рядах данных является статистический. Если предположить, что распределение значений ряда известно, нужно определить такие основные статистические параметры, как
90 80 <i: Q) 70 с) ]j 1--- 60 со 1--- :s; 50 q: Q) а. "" 40 со ::; ::; зо >- () 20 10 rлава 5. Очистка и предобработка данных 243 (О) . (П) . (П) . (О) . (Е) (Е) (Е) iIJ)iIJ) @j) @j)€) @) EI GD @) @) (98 (ii)EI EI (ii)@j) (ii) (9 (9 @) GDGD tI (!) tI (ii) EI (ii)(ii) (ii) GD (ii) (О) . о о 1 О 20 ЗО 40 50 60 70 80 90 1 00 Возраст клиента, лет Рис. 5.11. Очевидные и подозрительные аНОМЭJIьные значения среднее значение и дисперсия. На основе этих характеристик можно установить некоторый пороr, величина KOToporo зависит от дисперсии ряда. Все элементы ряда, значения которых превысили данный пороr, MOryT рассматриваться как по теНЦИЭJIьные аномЭJIИИ, Основной проблемой при реЭJIизации этоrо метода является априорное предпо ложение относительно закона распределения значений ряда, которое в большин стве случаев неизвестно. ПРИМЕР Пусть атрибут Возраст представлен следующими двадцатью значениями: {3, 56, 23, 39, 156,52,41,22,9,28, 139,31,55,20, 67,37, 11, 55, 45,37}. Для данной выборки значений среднее будет 1 п Х LХi З9,6 п i 1 и среднеквадратическое отклонение (еко) 1 п 2 a L(Xi X) 45,89, п i 1 rAe п количество элементов выборки; Х; i й элемент выборки. Если предположить, что распределение данных нормальное, то пороr можно задать как т х::!: 2а. Это значит, что любые значения ряда, отличающиеся от cpeAHero больше чем
244 Часть 1. Теория бизнес анализа на два (КО (то есть вышедшие за диапазон [ 52,2; 131,3]), являются потенциальными аномалиями. Знание о характере данных (возраст не может быть отрицательным) позволяет ввести дополнительное оrраничение: данные будут считаться корректными в диапаЗОне [о; 131,2]. В приведенном ряде присутствуют три значения, которые MOryт рассматриваться как по- тенциальные аномалии: 156, 139 и 67. Это ошибки ввода. При Этом в значениях 156 и 139, скорее Bcero, введена лишняя цифра (возможно, единица), а в значении 67 веСьма вероятен ошибочный ввод знака « ». Обнаружение аномальных значений на основе меры расстояния Данный метод позволяет преодолеть некоторые оrpаничения, присущие статисти ческому подходу. Основное ero преимущество заключается в том, что он применим к MHoroMepHbIM данным, в то время как статистический метод применим только в случае одномерноrо ряда или к каждому измерению по отдельности. В основе метода лежит оценка мер расстояния между всеми наблюдениями в п MepHOM пространстве данных. Следовательно, значение Si множества данных 5 является аномальным, если хотя бы часть из р значений множества 5 расположена на боль шем расстоянии, чем d, от остальных значений. Иными словами, аномалии это значения, которые не имеют достаточноrо числа соседей, rде соседи это значе ния, расстояния d до которых не превышают заданноrо в мноrомерной системе координат. Данный критерий обнаружения аномальных значений основывается на двух параметрах d и р, то есть на расстоянии и количестве соседей. Эти пара метры MOryт быть заданы более обоснованно, если использовать априорные знания о данных, или путем итеративной подстройки методом проб и ошибок для поиска наиболее ярко выраженных аномалий. Для иллюстрации метода проанализируем множество двумерных наблюдений 5, rде требованием для аномальности является значение пороrов р ;::: 4 и d ;::: 3. S=={SI,S2,SЗ,S4,S5,Sб,S7 }=={(2; 4), ( 3; 2), (1; 1), (4; 3), (1; 6 ), (5; 3), (4; 2)}. I 2 2 Таблица евклидовых расстояний d == 'j( Х1 Х2) + (УI У2) представлена следу ющим образом (табл, 5,4), Таблица 5.4. Таблица евклидовых расстояний 51 52 5з 54 55 5, 57 51 2,236 3,162 2,236 2,236 3,162 2,828 52 2,236 1,414 4,472 2,236 1,000 5з 3,605 5,000 4,472 3,162 54 4,242 1,000 1,000 55 5,000 5,000 5, 1,414
rлава 5. Очистка и предобработка данных 245 Например, для наблюдений 51 == (2; 4 ) и 52 == (3; 2) ев ЮIИДОВО расстояние pac считывается следующим образом: d 12 == (2 3/ + (4 2)2 == ../1 + 4 == 2,236. На основе табл, 5.4 мы можем вычислить значение параметра р при заданном I10poroBoM расстоянии d == з. Результаты представлены в табл, 5,5, то есть указано число точек р с расстоянием, большим чем d, для каждой заданной точки из MHO жества 5. Таблица 5.5. Результаты вычисления параметрар Значение р == 2 для элемента 51 означает, что существует только два элемента, S3 и 56 (см. табл. 5.4), расстояние до которых больше заданноrо пороrа d? 3; для элемента 52 только один элемент, 55, и т. д. Используя полученные результаты и заданные пороrовые значения, можно выбрать элементы 5з и 55 как кандидаты в аномальные, поскольку для них значение р == 5 превышает заданный пороr р ? 4, Данные результаты MorYT быть подтверждены путем визуальноrо анализа (рис. 5,12). у 6 S, . 5 S, 4 . З .s. .s. 2 .s, .s, .sз о о 2 З 4 5 6 Х Рис. 5.12. Аномальные значения, вычисленные на основе меры расстояния Конечно, визуальный анализ возможен, если множество не очень велико и co держит Bcero одно или два измерения. В противном случае поиск аномалий при ходится про водить только аналитическими методами.
246 Часть 1. Теория бизнес анализа Методы корректировки аномальных значений Если обнаруженное аномальное значение действительно искажает информацию об исследуемом бизнес процессе и может повлиять на качество модели и ДОстовер. ность результатов анализа, то необходимо выполнить ero корректировку, Для этоrо в зависимости от лоrики и особенностей решаемой задачи можно ИСПОльзовать несколько способов. О Удаление записи с аномальны.м значением. Если число записей в выборке данных существенно превышает минимум, требуемый для анализа, то записи, содержа щие аномальные значения, можно просто удалить, О Ручная замена аномальных значений. Применяется, если количество аномальных значений невелико и они MOryT быть обработаны вручную, При этом аналитик заменяет аномальные значения на друrие, более соответствующие модели пове дения данных. О Сlлаживание и фильтрация данных. Для обработки аномальных значений можно использовать методы частотной или пространственной фильтрации, применяемые при сrлаживании данных и очистке от шумов (впрочем, это отдельный класс алrоритмов), При этом следует учитывать, что в результате обработки будут изменены не только аномальные значения, но и все значения ряда. О Интерполяция данных. Аномальные значения заменяются друrими, вычислен ными на основе нескольких ближайших соседей, О Замена на наиболее вероятное значение, Строится rистоrpамма распределения значений ряда, и по ней определяется значение, соответствующее моде rисто rpaMMbI, которое и будет являться статистически наиболее вероятным. ПРИМЕР Пусть имеется выборка данных {8, 10, 9, 24, 11, 8, 13, 12}. Визуальный анализ леrко позволяет выявить аномалию. ; 1 2 З 4 5 678 (rладим аномалию путем усреднения по некоторой окрестности. Если для этоro использо- вать окно, в которое попадут два значения слева и два значения справа от аномальноrо, то получим: (1 О + 9 + 24 + 11 + 8) /5 == 12,4. То есть аномальное значение ряда, рав- ное 24, будет заменено 12,4. Кроме TOro, для корректировки выброса можно использовать медиану нескольких соседних значений. Для этоrо значения выбранной окрестности (в данном случае {10, 9, 24, 11, 8})
rлава 5. Очистка и предобработка данных 247 ранжируются по возрастанию, то есть {8, 9, 10, 11,24}. Torдa медианой будет центральное значение упорядоченноro набора, то есть 10. Результаты применения данной обработки представлены на рисунке. 15 10 5 о 2 з 4 5 6 7 8 ШШШШ Ш ] 5.7. Восстановление пропущенных значений Одним из тех факторов, которые снижают качество анализируемых данных и достоверность результатов анализа, является наличие в них пропущенных значений, Пропущенное значение выrлядит как пустая ячейка в таблице, rде в соответствии с лоrикой и структурой данных должно находиться некоторое значение. Сами по себе пропущенные значения (если их не очень MHoro) не уrрожают информативности данных и не искажают их. Наоборот, к искажению может при вести некорректное применение процедур заполнения пропущенных значений, Тем не менее восстанавливать пропущенные значения необходимо. rлавная причина этоrо заключается в том, что мноrие алrоритмы Data Mining не MorYT обрабатывать пропуски. В большинстве случаев разработчики аналитических платформ предусмат ривают автоматическую обработку пустых значений путем ИСЮIючения записей, содержащих пропуски, или подстановки вместо пропуска HeKoToporo значения по умолчанию. Но это не всеrда приводит к желаемым результатам и может породить друrие проблемы. Например, если ИСЮIючить неполные записи, оставшихся может оказаться недостаточно для качественноrо анализа. Подстановка значений по умолчанию тоже не всеrда решает проблему, посколь ку при этом не учитываются особенности данных. Допустим, в качестве значения, подставляемоrо вместо пропущенных данных, по умолчанию использовались средние продажи за месяц, Но если в силу внешних факторов объемы продаж стали подверrаться частым изменениям, то подставляемые по умолчанию значения MOryT не соответствовать реальному поведению данных. Из сказанноrо можно сделать следующий вывод: необходимо уделять большое внимание восстановлению пропущенных значений, а используемые для этоrо подходы должны выбираться исходя из особенностей самих данных и решаемой задачи анализа.
248 Часть 1. Теория бизнес анализа Происхождение пропусков в данных Чтобы выработать методику борьбы с пропусками в данных, сначала нужно понять откуда они берутся. В этой связи можно выделить два основных момента появлен пропущенных значений. О В процессе ввода данных, если нужные значения отсутствовали изначально, Так, если оператор вводит данные из анкет клиентов, а анкета заполнена неверно и некоторые данные (возраст, адрес и т. д.) в ней отсутствуют или указаны He разборчивым почерком, то оператору ничеrо не остается, кроме как прОПустить отсутствующие значения в надежде, что позднее об этом кто нибудь позаботит ся, Кроме Toro, про пуски в данных MOryT появляться из за сбоев в работе aBTO матических систем реrистрации, например при работе сканера штрихкода. О В процессе ETL или заzpужи данных в аналитическое приложение, В этом случае про пуски MOryт возникать на месте значений, имеющих некорректный тип или формат, При заrpузке такие значения MOryт быть просто отброшены, Например, если исходные данные находятся в текстовом файле с разделителями, то при им порте данных из Hero требуется указать, что считать разделителем целой и дроб ной частей числа точку или запятую. Если выбрать запятую, то все числовые значения, в которых целая и дробная части числа разделены точками, будут иметь некорректный формат. Torдa после зarpузки данных в аналитическое приложение на месте значений с некорректными форматами окажутся про пуски (рис. 5,13). 24,5 З2.6 2З,4 24.6 12,6 15,8 19,2 24,5 2З,4 12,6 15,8 19,2 ИСТОЧНИК Аналитическое приложение Рис. 5.13. Пример появления пропусков в данных на этапе заrрузки Методы восстановления пропущенных значений Выбор методов восстановления пропусков зависит от Toro, являются ли данные упорядоченными, Под упорядоченностью в этом случае следует понимать степень взаимной зависимости значений данных. Если можно предположить, что несколько соседних значений данных связаны между собой, то такие данные будут считаться упорядоченными, Наиболее характерна упорядоченность для временных рядов, которые состоят из наблюдений за изменением параметров HeKoToporo объекта или процесса. Как правило, реальные бизнес процессы не подвержены резким изменениям. Зная одно из значений ряда, можно предположить, что предыдущее и последу
rлава 5. Очистка и предобработка данных 249 J{Jш ее значения будут примерно такими же. То есть в упорядоченных данных co сеДJJИе значения в определенной степени «оБЪЯСНЯЮТ1> друr друrа. Так, на вопрос: <'il<акоЙ курс доллара к рублю вы предполаrаете завтра?1> можно с достаточнои степенью уверенности ответить: «Примерно такой же, как и сеrодня, плюс минус 5 копееК1>. Если данные не упорядочены, то их значения никак не связаны. В этом случае I1ьrтатьСЯ оценить некоторое значение ряда на основе ero соседей бессмысленно. Например, зная, что ЮJиент получил в банке кредит на сумму 15 тыс., мы не можем сделать вывод о сумме, которую запросит следующий клиент. Это может быть и 10 тыс., И 50 тыс" поскольку значения никак не связаны. Причины, по которым методики восстановления пропущенных значений в упо рядоченных и неупорядоченных данных будут различаться, достаточно очевидны. Если данные упорядочены, то получить хорошую оценку значения для BOCCTaHOB ления про пуска можно на основе соседних значений. При неупорядоченных дaH ных это сделать невозможно и приходится применять более сложные алrоритмы, Впрочем, существует ряд методов, которые MOryT использоваться как для упоря доченных данных, так и для неупорядоченных. Если у аналитика есть возможность выбора, то преимущество следует отдавать методам, которые удовлетворяют сле дующим требованиям, о Метод должен быть понятным и прозрачным для пользователей, что снижает вероятность ero HeKoppeKTHoro применения. О Восстановленные с помощью метода значения должны максимально COOTBeT ствовать общей модели поведения данных. О Вычислительная сложность метода не должна увеличивать время предобра ботки данных до неприемлемой величины, что особенно важно при анализе больших массивов данных. Обычно эти требования оказываются противоречивыми. Действительно, про стые, понятные и незатратные в вычислительном отношении методы часто не обеспечивают корректных результатов и наоборот, В силу этоrо выбор метода, используемоrо для восстановления пропущенных значений, поиск компромисса между перечисленными требованиями. В любом случае при восстановлении пропущенных значений следует учитывать, что автоматические процедуры, реализующие этот процесс, rенерируют новые значения данных. Это может привести к возникновению друrих проблем: дублика тов, противоречий и аномальных значений. Например, если две записи в выборке отличались только значением одноrо признака, который в одной из записей был пропущен, то нет rарантии, что после ero восстановления записи не станут иден тичными (дубликатами). Поэтому восстановление про пусков должно быть первым этапом предобработки данных. Рассмотрим наиболее популярные методы восстановления пропущенных зна чений при подrотовке данных к анализу. Ручная обработка пропусков. Это самый простой и эффективный способ восстановления пропущенных значений, который может использоваться как для
250 Часть 1. Теория бизнес анализа упорядоченных, так и для неупорядоченных данных. Аналитик совместно с экспер том в предметной области проверяет наличие пропусков в данных и подстаВляет наиболее вероятные или правдоподобные значения, основываясь на Личных зна ниях и опыте, Недостаток подхода очевиден: он применим только для небольших выборок данных (не более нескольких сотен записей) с малым количеством Про пущенных значений. Поэтому в реальных случаях чаще Bcero приемлемы только автоматические процедуры восстановления пропущенных данных. Подстановка констант. Вместо пропущенных значений подставляются HeKO торые фиксированные значения (константы). Этот метод тоже позволяет работать как с упорядоченными, так и с неупорядоченными данными. Хотя в случае упо рядоченных данных результат может быть несколько лучше, Если можно пред положить, что значения признака KaK TO связаны между собой, то, зная значения, соседние с пропущенным, считаем, что подставляемая константа не должна сильно от них отличаться. Значения констант определяются следующими методами. О Замена пропущенноlO З1lаче1lИЯ 1lекоторой lлобаЛЪ1l0Й КО1lстантой, которая выбирается исходя из специфики данных и решаемой задачи анализа. rло бальность подразумевает, что соответствующее значение подставляется вместо всех пропусков вне зависимости от конкретной ситуации. Например, если отсутствуют данные о суммах продаж, аналитик может использовать наиболее типичное значение из ранее сделанных наблюдений, которое поддерживает достоверность результатов анализа. Недостаток метода заЮIючается в том, что если под воздействием некоторых факторов типичные объемы продаж изменят ся, а значения, используемые для подстановки вместо пропущенных, не будут вовремя скорректированы, то они MOryT оказаться противоречащими общему поведению данных и отрицательно повлиять на результаты анализа. О Замена отсутствующеlО З1lачения 1lаиболее xapaKтepHы.м для aa1l1l0l0 класса. Метод применим только при решении задач ЮIассификации, rде ЮIассы для каждоrо набора значений признаков в записи заранее известны. В этом случае производится замена не rлобальным значением для Bcero признака (или всех признаков ), а несколькими значениями, каждое из которых связано с опреде ленным классом. В случае, коrда данные не упорядочены, для повышения достоверности oцeH ки пропущенных значений можно выполнить предварительную rруппировку данных по ЮIассам, Поскольку внутри каждоrо ЮIасса значения при знаков будут сходными, визначально неупорядоченном множестве данных появится несколько подмножеств, в каждом из которых значения можно будет считать упорядочен ными. Аналоrично товары можно разложить по полкам: на одной дороrие, а на друrой дешевые, Если известно, что рядом с товаром, на котором не указана цена, лежат дороrие товары, лоrично и на Hero установить высокую цену. В табл, 5.6 представлены данные, позволяющие классифицировать все товары на дороrие, средние и дешевые. Если товар стоит менее 100 ед" то он считается дешевым, если от 100 до 1000 ед. средним, свыше 1000 ед. дороrим.
rлава 5. Очистка и предобработка данных 251 Таблица 5.6. Данные о товарах Наименование Цена (ед.) Класс товара f-'"""" 500 Средний утюr пылесос 3500 Дороrой f-'"""" 25 Дешевый зубная щетка стиральная машина Дороrой Электрочайник 670 Средний Будильник 90 Дешевый Холодильник 7400 Дороrой Миксер Средний Пассатижи Дешевый Если выполнить rруппировку записей по ЮIассу товара, то среднее значение по каждой rруппе даст вполне состоятельную оценку пропущенноrо значения цены, Результаты такой обработки представлены в табл. 5.7. Средние значения цены по каждому ЮIассу, подставленные вместо пропусков, выделены. Таблица 5.7. Результаты rpуппировки записей по классу товара Наименование Цена (ед.) Класс товара Зубная щетка 25 Дешевый Пассатижи 57 Дешевый Будильник 90 Дешевый Утюr 500 Средний Миксер 585 Средний Электрочайник 670 Средний Пылесос 3500 Дороrой Холодильник 7400 Дороrой Стиральная машина 5450 Дороrой Предсказание пропущеlпlыx значений. Еще одним методом восстановления пропущенных значений является построение модели их предсказания. Для этоrо может использоваться какая либо модель Data Mining, основанная на машинном обучении, нейронная сеть, дерево решений и т. д, Обучающая выборка будет сформирована из полных записей, [де присутствуют все значения признаков, а цe левым будет признак, значения KOToporo требуется предсказать, Например, если значения признаков А, В и С в некоторой записи заданы, то значе ние признака D может быть сrенерировано моделью, И чем выше корреляция МСЖДУ извесПIЫМИ и искомыми признаками, тем более достоверно предсказание. Однако на практике к этому методу нужно относиться с осторожностью. Если отсутствующее значение признака может быть предсказано с высоким уровнем достоверности на основе имеющихся значений друrих признаков, то признак является избыточным и ero ценность с точки зрения анализа минимальна, Такие признаки должны ИСЮIю чаться из рассмотрения при сокращении размерности исходных данных.
252 Часть 1. Теория бизнес анализа Подстановка среднеro значения. Еще одним часто используемым ПОДходом к восстановлению пропущенных значений в упорядоченных данных является подстановка вместо пропущенноrо значения среднеrо по ряду данных или по He скольким ero ближайшим соседями. ПРИМЕР Пусть требуется восстановить отсутствующее значение Х; ряда данных. Для зтоrо нужно вы- брать интервал, центральным значением KOToporo и будет Xj, состоящий из k ero ближайших соседей. Например, для k == 4: Х; 2 == 10, Х; I == 12, Х i == ? ,., Х; 2 == 11, Torдa среднее значение по выбранной окрестности будет: Х; ==(X' 1 +Xi 1 +Xj+1 +Xj 2)/k==(10+12+9+11)/4==10,5, Естественно задаться вопросом, сколько соседей пропущенноrо значения следу ет использовать при ero восстановлении. С одной стороны, чем больше значений, тем более обоснованной будет полученная оценка. С друrой нужно учитывать, что значения различных интервалов ряда моrли формироваться под действием разных факторов и условий внешней среды. Следовательно, попытка использо вать для восстановления про пусков в данных значения Bcero ряда может привести к появлению аномалий. ПРИМЕР Пусть имеется ряд наблюдений за процессом продаж мороженоrо и прохладительных напитков во втором полуrодии. Тоrда. учитывая вероятный спад продаж по окончании жаркоrо сезона, можно предположить, что значения продаж в конце наблюдаемоrо ин тервала (ноябрь, декабрь) окажутся в несколько раз меньше, чем в начале интервала (июль, aBrycT). зо 000 25 000 20 000 15000 1 О 000 5000 О Июль ABryCT Сентябрь Октябрь Ноябрь Декабрь Попытка использовать среднее по всему ряду для восстановления пропуска в июле породит аномально низкое значение, а в декабре аномально высокое. Позтому для восстановле- ния пропущенноrо значения на основе среднеrо ero соседей следует использовать только интервал ряда, значения в пределах KOToporo примерно одинаковы и предположительно сформированы под действием одинаковых факторов и условий внешней среды. То есть при восстановлении пропущенноrо значения из интервала июль сентябрь следует использо- вать усреднение по зтому же интервалу.
rлава 5. Очистка и предобработка данных 253 Подстановка наиболее вероятных значений. Одним из популярных методов восстановления пропусков является подстановка вместо них наиболее вероятных со статистической точки зрения значений. Данный метод применим как к упорядочен f/ы м , так и к неупорядоченным данным. В ero основе лежит построение rистоrpаммы распределения значений признака, и для подстановки выбирается значение из интер вала, соответствующеrо моде распределения. То есть фактически для подстановки BЫ бирается значение из подмножества наиболее часто встречающихся значений ряда. На рис. 5.14 приведена rистоrpамма распределения сумм кредитов, вьщанных банКом за неделю. 35 30, О m 25 .... о (!) 20 7' :s; 15 с:; О 10 5 О '<1" D ..... о N . , . . . . w w r ,. w "' .w w w r т . . I . . . . . I . . . ,. T ... . r .. I . I . I . . . . . J. .... .d 1. J. I I I . I . I I I I . I I I I . . i" .. , , , , , , w ,W W r wT , , , . , , . .. . о'> I"J " N D ..... О 05 r-.:" ui' '<1"' N ..... D ..... с:'! <:! ч? 'F! ':': '<1" о'> I"J " N D ..... D 05 r-.:" ui' '<1"' N ..... ..... ..... N I"J '<1" u; D Сумма, тыс. руб. Рис. 5.14. rистоrpамма распределения сумм кредитов Визуальный анализ rистоrpаммы показывает, что наибольшее число кредитов было выдано на суммы в интервале от 10 до 18 тыс. Подстановка значения из данноrо интервала вместо пропущенноrо даст ero самую правдоподобную оценку. Хотя полной корректности восстановленноrо значения метод не rарантирует, ero использование часто дает хорошие результаты. Кроме Toro, данный метод имеет два неоспоримых преимущества: О понятность пользователю и хорошую визуальную интерпреrnруемость резуль татов (по rистоrpамме сразу видно, какие значения наиболее правдоподобны, а какие нет); О адапrnвность к данным для каждой выборки можно построить свою rисто rpaMMY и определить наиболее вероятное значение. 5.8. Введение в сокращение размерности При решении задач анализа часто приходится сталкиваться с двумя полярными проблемами избыточностью и недостаточностью данных. Следует отметить, что избыточность и недостаточность далеко не всеrда связаны с количеством имеющихся данных. Вполне возможно, что объем исходных данных велик, но для решения конкретной задачи анализа их все равно недостаточно из за отсутствия
254 Часть 1. Теория бизнес аналиэа в них необходимой информации. Возможен и прямо противоположный случай, коrда объем исходных данных небольшой, но они подобраны настолько удачно, что обеспечивают высокую эффективность анализа. Таким образом, информативность данных не всеrда пропорциональна их объему. Тем не менее мноrие аналитики считают, и практика это показывает, что ЛУЧше иметь данные с запасом, то есть собирать для анализа как можно больше данных описывающих предмеrnую область. Действительно, в больших массивах дaHHЫ есть верояrnость <.<наскрести достаточное количество информации для решения той или иной задачи. Кроме Toro, технический уровень современных носителей информации, которые MOryT хранить соrnи rиrабайт данных, снимает проблему размещения данных. Коrда дело доходит до анализа, встает проблема: из Bcero имеющеrося множест ва данных, которое может содержать десятки признаков, атрибутов и показателей, описывающих анализируемый процесс или объект, необходимо выбрать подмно жество, которое обеспечит оптимальные результатыI анализа. Целью анализа является поиск закономерностей и структур в данных, поэтому перед ero про ведением следует выделить только те данные, которые MOryT описы вать эти закономерности и структуры. Это довольно трудная инеочевидная задача. Ее выполнение можно разделить на два этапа (рис. 5.15). Аналитическое припожение Предварительный отбор (опыт и знания аНЩ1итика) хд Признак 1 Признак 2 Признак З Признак 4 Приэнак 5 Признак б Признак 7 Признак 8 Признак 9 Признак 1 О Исходное множество I L. ............. __.... . . . . .__. . . . .... . ''''''''''''''''''''''''''''.............. .........: Сокращенное множество Запрос Признак 2 Признак 3 Признак 4 Признак б Локальные источники данных Рис. 5.15. Сокращение размерности Сокращение размерности ( статистический, корреляционный анализ ит.д.) Приэнак 2 Приэнак 4 Признак б Анализ данных 1. Предварительный отбор данных. Осуществляется вручную, Korдa аналитик выбирает данные для решения конкретной задачи на основе личноrо опыта, знаний и интуиции. Основная цель этоrо этапа отсеять данные, которые не способствуют получению решения. Например, при анализе продаж бесполез ны данные о номерах машин, вывозивших товар, номерах накладных и счетов,
rлава 5. Очистка и предобработка данных 255 ФИО СЮIадских работников, отпустивших товар, и друrая вспомоrательная информация, которая заносится в базу данных, но описывает анализируемый процесс лишь косвенно. Номера машин нужны только охране, чтобы орrанизо вать допуск транспорта ЮIиентов на территорию; Ф И О СЮIадских работников нужны бухrалтерии для формирования документов и отчетов и т. д. 2. Сокращение объема исходной выборки. Как правило, при первичном отборе дaH ных аналитики перестраховываются. Если отсутствие или наличие связи между какими либо данными и целями анализа неочевидно, то в большинстве случаев аналитики ВЮIючают эти данные в исходное множество, считая, что потеря важ ной информации обойдется дороже, чем привлечение излишней. И в этом есть своя лоrика, Но в результате даже после предварительноrо отбора исходное MHO жество оказывается избыточным, содержит очень MHoro данных, в том числе сла бо или вообще не связанных с целями анализа. Это способно вызвать серьезные проблемы не меньшие, чем при потере релевантной информации. Сущность этих проблем будет рассмотрена ниже, Пока же отметим, что объем исходной выборки сокращается уже не вручную, а с помощью определенных методов, процедур и алrоритмов, специально разработанных для снижения размерности исходных данных. Эти методы основаны на статистических оценках и критериях, корреляционном анализе и друrиx математических подходах, которые позволя ют более точно оценить степень взаимосвязи данных с целями анализа с точки зрения конкретной задачи, Тот или иной набор инструментов для сокращения размерности данных ВЮIючается в состав практически любоrо аналитическоrо приложения. Использование этих инструментов позволяет найти оптимальный баланс между качеством полученных решений, сложностью модели, а также BЫ числительными и временными затратами на обработку данных. Постановка задачи в разделе 1.7 мы уже познакомились с тем, что в машинном обучении и Data Mining большинство моделей работает по принципу обобщения. На вход модели подается некоторый набор входных (независимых) переменных, связанных с какими либо признаками, атрибутами или показателями, описывающими исследуемый объект или процесс, Модель производит над входными данными преобразование, опре деляемое некоторой целевой функцией, и формирует на выходе набор выходных (зависимых) переменных. При этом для успешноrо решения задачи чаще Bcero необходимо, чтобы число входных переменных было больше либо равно числу выходных, в чем и состоит принцип обобщения, Обычно для классификации реальноrо объекта недостаточно знать один ero признак требуется исчерпывающее описание. То есть, чтобы получить на выходе модели только одно значение ЮIасс, к которому относится объект, на ее вход нужно подать несколько признаков и атрибутов объекта, Конечно, в отдельных случаях удается классифицировать объекты по одному признаку, но это очень простые объекты, задача их распознавания тривиальна и не представляет практи ческоrо интереса,
256 Часть 1. Теория бизнес анализа Большинство реальных объектов и бизнес процессов, которые нужно проана лизировать, достаточно сложны, и для их исчерпывающеrо описания требуется множество признаков и наблюдений (записей). Поэтому размерность входноrо вектора может оказаться высокой несколько десятков и сотен признаков. Это вызывает ряд серьезных проблем при анализе данных: О рост вычислительных затрат и времени, требуемоrо на обработку данных, до совершенно неприемлемых значений; О сложность построения модели, трудность понимания ее пользователем; О сложность интерпретации результатов анализа и оценки их достоверности; О снижение качества результатов анализа, В исходном наборе MOryT содержаться данные, не связанные с исследуемым процессом или объектом. Если такие дaH ные не будут исключены перед анализом, то они MOryT увести решение задачи в неверном направлении, Чтобы исключить эти проблемы, в процессе предобработки данных в аналити ческом приложении выполняется снижение их размерности (data reduction). ОПРЕДЕЛЕНИЕ Снижение размерности входных данных процесс сокращения объема исходноro мно- жества, заrруженноrо для анализа в аналитическое приложение, таким образом, чтобы результирующее множество имело оптимальную размерность с точки зрения решаемой задачи и используемой модели. Исходные множества данных представляются в аналитическом приложении в виде «плоских» таблиц, поэтому, коrда rоворят о снижении размерности данных, подразумевают сокращение данных по таким трем направлениям, как: О сокращение количества признаков (столбцов таблицы); о сокращение числа наблюдений (записей таблицы); о сокращение числа значений измерения (при этом само количество значений не меняется, уменьшается только число различных вариаций значения). Сокращение данных может производиться в двух режимах. 1. РежUJИ отбора, Определяется значимость каждоrо признака ИСХОДноrо MHO жества для решения конкретной задачи. Затем признаки отбираются в поряд ке уменьшения их значимости. Как только попадается признак, значимость KOToporo меньше HeKoToporo пороrа, отбор прекращается. Пороr значимости устанавливается или на основе статистическоrо анализа исходноrо множества, или опытным путем (рис. 5.16). 2, Режим uсключен.uя. Размер исходной выборки сокращается путем отбрасывания незначащих и избыточных данных. Например, для каждоrо признака исходной BЫ борки определяется коэффициент значимости, а затем исключаются все признаки, значимость которых ниже HeKoToporo пороra. Возможен и дрyrой вариант. По мере исключения признаков результирующая выборка становится все менее похожа на исходную. Задается условие, что выборка, полученная в результате сокращения исходной, не должна отличаться от нее более чем на 70 %. Затем все признаки
rлава 5. Очистка и предобработка данных 257 ИСХОДНОЙ выборки ранжируются по уровню их значимости и начинается процесс исключения наименее значимых. Он будет продолжаться до тех пор, пока отличие исходной выборки от сокращенной не превысит допустимое значение (рис. 5.17). Исходное множество Признак 1 (R,J Признак 2 (R ) , Признак N'(RNJ Исходное множество Поместить в результирующее множество Отказаться от выбора Признак 1 Признак 2 Признак З Признак 4 Пр 1Зllак 5 Признак б (R, > 1) (Н 2 < l") (R з > 1) (R. > 1) (Н,<Т) (R. > 1) RN значимость признака, т nopor значимости R, значимость признака, т nopor значимости Рис. 5.16. Сокращение приэнаков в режиме отбора Рис. 5.17. Сокращениеприэнаков в режиме исключения Требования к алrоритмам снижения размерности данных В настоящее время используется большое количество различных подходов к COKpa щению размерности данных. Одни из этих подходов относятся к эвристическим, друrие основаны на cTporoM статистическом анализе данных, третьи сочетают в себе и то и друrое. Тем не менее можно вьщелить ряд общих требований ко всем алrоритмам снижения размерности данных. О Подмножество данных, образованное в результате сокращения размерности ис ходноrо множества, должно унаследовать от Hero столько информации, сколько необходимо для получения решения с заданной точностью. О Вычислительные и временные затраты на обработку данных с целью COKpa щения их размерности не должны обесценивать преимущества, полученные в результате сокращения размерности. О Модель, полученная на основе множества данных со сниженной размерностью, должна быть проще для разработки, реализации и понимания, чем модель, по строенная на исходном множестве. О Признаки, оставшиеся после процедуры сокращения размерности, должны иметь высокий уровень значимости для решения задачи и не должны быть
258 Часть Т. Теория бизнес анализа коррелированы между ссбой, а также содержать закономерности, которые MOryт увести аналитический процесс в сторону от правильных результатов. В идеальном случае в результате сокращения размерности данных удается уменьшить время анализа, повысить ero точность и упростить модель одновремен но. Однако чаще Bcero приходится искать баланс между этими преимуществами, Не существует метода снижения размерности, который одинаково хорошо работал бы для всех задач анализа и видов исходных данных. Решение о выборе метода основывается на априорном знании о поставленной задаче и ожидаемых результатах с учетом временных оrраничений. Выделим следующие рекомендуемые характеристики методов снижения раз мерности данных, которые MorYT применяться как при выборе алrоритмов, так и при разработке стратеrии сокращения размерности данных в целом, О Алrоритм должен предоставлять пользователю возможность контролировать ход процесса, а также оценивать влияние сокращения признаков, заПисей и отдельных значений на ожидаемые результаты анализа, При большом объ еме данных процедура их обработки с целью СОКрi1.щения размерности может занять довольно продолжительное время, поэтому пользователь должен полу чать информацию о результатах работы, чтобы при необходимости остановить алrоритм, не дожидаясь ero завершения, О Наибольшая эффективность должна достиrаться на первых итерациях алrо ритма и со временем уменьшаться (то есть сначала должны отбрасываться наименее значимые данные или отбираться наиболее значимые). Это позволит не ждать окончания работы алrоритма, а остановить ero, как только будут дo стиrнуты приемлемые результаты. О Алrоритм должен обеспечивать возможность при остановки в любой момент времени с сохранением промежуточных результатов, их оценки, а также возоб новления работы. Таким образом, сокращение размерности одна из важнейших задач подrОТОD ки исходных данных к анализу, 5.9. Сокращение числа признаков Основных преимуществ от сокращения размерности исходноrо множества данных можно добиться, уменьшив количество признаков, используемых для анализа. При этом качество результатов анализа не должно существенно снизиться, а в He которых случаях удается ero повысить. Коrда rоворят о снижении размерности исходных данных, в первую очередь имеют в виду сокращение числа признаков, Уменьшение числа наблюдений (записей) и отдельных значений признаков обычно рассматривается как вспомоrательный элемент. Это вполне справедливо, поскольку именно сокращение признаков позволяет: О сразу ИСЮIючить из рассмотрения большое количество данных (десятки и сотни тысяч значений);
rлава 5. Очистка и предобработка данных 259 с1 упростить будущую модель, сделать ее более понятной, а также повысить ин терпретируемость результатов анализа; с1 исключить избыточные и незначащие данные, которые способны увести реше ние в сторону, снизить достоверность результатов анализа. Фактически, сокращая количество используемых для анализа признаков, МЫ снижаем размерность векторов наблюдений, которыми являются все записи 1IСХОДНОЙ выборки данных. Это позволяет повысить эффективность решения таких задач Data Mining, как классификация и кластеризация, основанных на определении степени близости векторов наблюдений. Кроме Toro, уменьшая число признаков, можно снизить размерность ОLАР кубов, Известно, что MHoroMepHbIe модели с размерностью больше 7 9 очень плохо поддаются визуальному анализу 11 осмыслению пользователем, Поэтому, если размерность модели удается COKpa тнть без существенной потери и искажения информации, работа с моделью будет более эффективной. Все сокращаемые признаки можно разделить на две rруппы. 1, Незначащие признаки, которые слабо или никак не связаны с результатами анализа, Использовать такие признаки нецелесообразно по двум причинам, Bo первых, они не несут в себе информации, которая может быть использована при анализе, не содержат закономерностей и структур, которые MOryT представлять интерес при решении задачи. BO BTOpЫX, использование незначащих данных может нанести ущерб результатам анализа, Такие данные MorYT содержать закономерности, которые не имеют отношения к решаемой задаче, но которые MOryт быть обнаружены моделью вместо искомых. Например, если в обучающую выборку для модели включить поле, rде содержатся номера доставлявших товар транспорrnых средств, то вместо Toro, чтобы искать закономерность поступления или отrpузки товара, модель будет пытаться выявить закономерность движения транспортных средств, которой может и не быть. 2. Избыточные признаки, которые содержат полезную информацию, но без которых MOryт быть получены хорошие результаты анализа. То есть информация, которую несут такие признаки, является ЛИIШlей. Вся необходимая информация содержится в одном или нескольких друrих входных признаках, которые также используются для анализа, а избыточный признак в том ИЛИ ином виде дублирует ее. ПРИМЕР в орrанизациях, помимо наименований товаров, используются их числовые коды. Это, в частности, связано с удобством манипулирования числовыми кодами в базах данных. Но если использовать на входе модели как наименования товаров, так и их коды, ТО один из зтих признаков окажется избыточным: для идентификации товара достаточно или ero наименования, или кода. Основное отличие незначащих признаков от избыточных заключается в том, что незначащие признаки имеют низкую степень связи с результатами анализа, а избыточные высокую степень связи с друrими входными полями исходноrо множества данных,
260 Часть 1. Теория бизнес анализа Алrоритмы и методы сокращения числа признаков Большинство алrоритмов и методов сокращения числа признаков ИСПОЛЬЗУют статистические или эвристические критерии, на основе которых ПРИНимаются решения о включении Toro или иноrо признака в модель, С сокращением набора признаков связаны две стандартные задачи: О отбор nРUЗllлков основывается на знании предметной области и целей анали- за, Аналитик может выбрать подмножество признаков из исходноrо множества вручную или с помощью некоторых автоматических процедур; О композиция nрuзнаков происходит формирование одноrо признака на основе слияния нескольких друrих с использованием HeKoToporo преобразования, Хотя такие алrоритмы сокращения признаков весьма сложны, они позволяют получить новые признаки, которые существенно влияют на результаты анализа, Например, вместо двух признаков Рост клиента и Вес клиента можно исполь зовать единый показатель Рост/вес, который в некоторых случаях окажется более эффективным, чем два исходных признака. Разные методы отбора признаков обеспечивают различную степень сокра- щения исходноrо множества данных. Можно классифицировать эти методы на две rруппы: алrоритмы упорядочения признаков (ранжирования) и алrоритмы минимальноrо подмножества. АлlOрИтмы упорядочения признаков основаны на вычислении для каждоrо признака HeKoToporo оцеНОЧноrо показателя (коэффициент корреляции, показа тель значимости и т. д.). Затем признаки ранжируются в порядке возрастания или убывания этоrо показателя. В большинстве случаев эти алrоритмы не использу ются непосредственно для формирования множеств сокращенной размерности, они только показывают значимость данноrо признака по сравнению с друrими, что позволяет аналитику принять решение об их сокращении. АлlOритмы МИНШИШlъноlO подмножества, напротив, после их запуска выдают минимальное подмножество признаков, необходимых для эффективноrо анализа данных. Признаки, попавшие в подмножество, являются значимыми для анализа, остальные нет, В обоих видах алrоритмов важно установить схему оценки признака, то есть способ, с помощью KOToporo признаки оцениваются, ранжируются и добавляются в результирующее подмножество, Отбор признаков можно рассматривать как поиск в пространстве, каждая точка KOTOporO соответствует определенной комбинации признаков. ПРИМЕР Исходное множество данных содержит три признака {АI' А2' Аз}. и в процессе выбора присутствие признака кодируется как 1. а отсутствие как О. Таким образом. можно получить (2 З 1) подмножества признаков: {1, О, О}. {О, 1, О}, {О, О, 1}. {1, 1, о}. {1, О,1}. {О, 1, 1} и {1, 1, 1}. Задача выбора признаков относительно проста, если про- странство поиска невелико. ПОСКОЛЫ<У мы можем проанализировать все подмножества в любом порядке и поиск занимает короткое время. Однако в большинстве прантических
rлава 5. Очистка и предобработка данных 261 задач анализа пространство поиска достаточно велико. Оно составляет (2 N 1). rде N количество анализируемых признаков, которое для типичных аналитических задач может достиrать 20 и более. Позтому поиск всех подмножеств признаков часто заменя- ется звристической процедурой. в процессе которой ищется подмножество. наиболее близкое к оптимальному. отбор признаков на основе статистических показателей Одна из методик отбора признаков основана на сравнении их средних значений и дисперсий. Недостаток данноrо подхода в том, что распределение значений признаков не всеrда известно, Если оно предполаrается нормальным, то стати стические оценки MorYT работать очень хорошо, но если характер распределе ния неизвестен, то на основе статистических оценок нельзя построить точную модель. Если один признак содержит значения, описывающие разные классы объектов, то должны быть исследованы примеры из разных классов. Для этоrо значения при знака распределяются по классам, вычисляются их средние значения и дисперсия. Затем средние значения нормализуются дисперсией и сравниваются. Если средние значения для разных классов существенно различаются, то интерес к признаку, содержащему такие значения, с точки зрения разделения классов увеличивается. Если средние значения различаются мало, то ожидаемая эффективность признака с точки зрения разделения классов невелика. Этот эвристический подход не явля ется оптимальным при отборе признаков, но он вполне состоятелен при решении некоторых задач анализа, Рассмотрим уравнение: Е(А В) == lvar(A)jпl var(A B)jп21, rде А и В множества значений признака, измеренных для двух различных клас сов; пl и п2 соответствующие количества примеров; var(A) и var(B) дисперсии значений соответствующих подмножеств. Чтобы проверить степень значимости признака с точки зрения разделения классов А и В, можно выполнить следующий тест: IA BI TEST: E(A B» T, rде т некоторый пороr, часто называемый пороrом значимости; А и В средние значения соответствующих множеств. В данном случае предполаrается, что признаки являются статистически неза висимыми. Сравнение средних значений естественный шаr при решении задач классификации.
262 Часть 1. Теория бизнес анализа ПРИМЕР Рассмотрим простую выборку данных, содержащую два входных признака Х и У. а таКЖе метку класса С. Требуется определить, какой из признаков является кандидатом на сокра- щение. Установим значение пороrа Т == 0,5. х у с 0,3 0,7 А 0,2 0,9 В 0,6 0,6 А 0,5 0,5 А 0,7 0,7 В 0,4 0,9 В rрафически зто можно интерпретировать следующим образом. у 0,9 (В) (В) . . 0,8 (А) (В) 0,7 €D . (А) 0,6 €D 0,5 (А) €D 0,4 О,З 0,2 0,1 О О 0,1 0,2 О,З 0,4 0,5 0,6 0,7 0,8 0,9 Х Сначала необходимо вычислить среднее значение и дисперсию для обоих признаков. Анали- зируемые подмножества значений признаков: ХА == {0,3; 0,6; 0,5}. Х /1 == {0,2; 0,7; 0,4}. У1 == {0,7; 0,6; 0,5}, У /I == {0,9; 0,7; 0,9}. Е(Х А Х 8) == Jlvar(X А )/пl var( Х в )/п 21 == JIO, 025/3 о, 042/ 31 == 0,078. Е(У А У В ) == J lvar(Y A )/пl var(Y 8 )/п21 == IO, 067 /3 - о, 009/31 == 0,138, /х А Х 811 Е(Х А Х в)) == 10,467 0,4ззl/0,078 == 0,436 < 0,5. IY A YBII Е(У А У В )) == 10,6 0,8ЗЗ1/0,138 == 1,688> 0,5,
rлава 5. Очистка и предобработка данных 263 установлено, что кандидатом на сокращение является признак Х, поскольку средние ero значения для различных классов оказываются ближе и их разность не превышает заданноro пороrа. В то же время для признака У значение пороrа превышено, следовательно, зтот признак не является кандидатом на сокращение, так как потенциально содержит ценную информацию для различения классов. Описанный метод достаточно пр ост, он исследует признаки по отдельности, Но таким образом можно определить только значимость признака с точки зрения разлИЧИЯ классов, Чтобы узнать, является ли признак избыточным для решения за даЧИ в целом, необходимо провести ero анализ совместно с друrими признаками. Сокращение числа признаков на основе оценки их информационноrо содержания Несмотря на разнообразие подходов, применяемых для сокращения числа призна КОВ в множестве данных, можно сформулировать единый критерий, в соответствии с которым будет оцениваться любой метод: в результате сокращения размерности данных информационное содержание результирующеrо множества не должно существенно измениться относительно исходноrо. Но это не более чем блаrое по желание, к тому же достаточно очевидное. Тем не менее оно служит отправной точ кой для целой rруппы методов сокращения избыточных и незначащих признаков. Действительно, если выразить информационное содержание исходноrо множества в виде системы характеристик (например, статистических) и в процессе исключе ния признаков наблюдать за динамикой изменения этих характеристик, то можно выработать соответствующие критерии, позволяющие оптимизировать процесс сокращения размерности. Проще rоворя, сокращать количество признаков нужно таким образом, чтобы характеристики, отражающие информационное содержание исходной выборки, изменились не более чем на заданную величину, Для оценки информационноrо содержания данных может служить специальная мера теории информации энтропия. Это понятие впервые было введено К. Шен ноном как мера разнообразия значений данных. Чем более rладким является ряд данных, тем меньше ero энтропия. Если ряд данных состоит из одинаковых зна чений, ero энтропия равна о. Очевидно, что ни о какой информативности данных в этом случае rоворить не приходится. С увеличением разнообразия значений признака возрастают ero энтропия и ожидаемое информационное содержание. Таким образом, энтропия может служить мерой информационной насыщенно сти данных, Чем выше энтропия набора, тем выше ожидаемая информационная насыщенность, и наоборот, В основе методики лежит сравнение энтропии исходноrо множества данных и энтропии множества, полученноrо после снижения размерности. Если энтропия результирующеrо множества близка к энтропии исходноrо, то оно по своему ин формационному содержанию близко к исходному, Метод, основанный на энтропии, относительно прост, но с ростом числа при знаков ero вычислительная сложность существенно возрастает. В соответствии с данным методом все примеры исходной выборки рассматриваются как п KOM
264 Часть 1. Теория бизнес анализа понентные векторы значений признаков, rде п равно числу признаков. НУЖНО удалить столько признаков, чтобы при этом все еще поддерживался уровень различия между примерами в множестве данных, как и при исходном количеСТве признаков. В основе алrоритма лежит вычисление коэффициента подобия 5, Который обратно пропорционален расстоянию D между векторами примеров в п MepHOM пространстве признаков. Расстояние D является малым для похожих векторов и большим, если векторы сильно различаются. Ситуация проиллюстрирована на рис. 5.18 для п == 3 и набора признаков (р, q, z), rде расстояние D вычисляется между двумя векторами Х! и Х2. р Х,(р" q"Z,) Х 2 (Р2' q2' Z2) f f f f f f .. I ,,' I .... '..... q Z Рис. 5.18 Для числовых признаков мера сходства векторов примеров может быть опре делена следующим образом: 5 ij == ехр( aDij), (5.1) rде D ij расстояние между двумя примерами Х; и Xj; а параметр, заданный как а == ln (0,5) / D, при этом jj среднее расстояние между примерами в наборе данных. Следовательно, коэффициент а зависит от характера исходных данных. На практике хороших результатов удается дo биться при а == 0,5, Для вычисления расстояния Dij между примерами Х; и Х} можно использовать нормированное евклидов о расстояние: Dij== п 2 2:((хш Xjk)/(maxk mink)) , k 1 (5.2) rде п число измерений; mink и maxk минимальное и максимальное значения, используемые для HOp мировки k ro признака,
rлава 5. Очистка и пред06работка данных 265 В случае если признаки не являются числовыми, степень их близости опреде ]lяется с помощью расстояния Хемминrа: 1 11 Sij == l]Xik Xjkl, n " 1 (5,3) [де Х ik Х jk == 1, если Х ik == Х jk, И Х ik Х jk == О В остальных случаях. Общее число значений равно n. Если данные смешанные, то перед вычислением степени близости можно выполнить квантование числовых значений и преобразовать числовые признаки в катеrориальные. Для простоrо набора данных, состоящеrо из трех катеrориальных признаков, степень близости может быть представлена в табличном виде (табл. 5.В, 5.9). Таблица 5.8. Исходный набор данных при мер Приэнак Р. Е 2 Е, R I А Х 1 R 2 В У 2 R:J С У 2 R4 В Х 1 К; С Z 3 Таблица 5.9. Меры расстояний, вычисленные для примеров из табл. 5.8 Пример R. R 2 R, R. Rs Rt 0/3 0/3 2/3 0/3 R 2 2/3 1/3 0/3 R:J 0/3 1/3 R4 0/3 R5 в табл, 5.В содержится исходный набор данных, а в табл. 5.9 меры расстоя ния между примерами. Три в знаменателе дроби соответствует числу признаков, а значение в числителе количеству совпадений значений в примерах, pac стоянием между которыми оно определяется. Например, для пары примеров R 2 И R з установлено число 2, потому ЧТО в них совпадают значения двух измерений: F2 УиFз 2. Распределение всех расстояний между векторами примеров в наборе данных характеризует расположение данных в n MepHOM пространстве, При сокращении отдельных признаков распределение меняется, и это изменение будет rлавным критерием принятия решения о сокращении признака. Как уже rоворилось ранее, мерой таких изменений и является энтропия, Шаrи алrоритма основаны на последовательном убывающем ранжировании, а затем на проверке результатов с помощью различных практических задаЧ, 1. Берется исходное множество признаков F
266 Часть 1. Теория бизнес анализа 2. Из множества Fудаляется один из признаков / Е F, в результате чеrо ПОЛучается подмножество Fl == F f 3. Для F и FI определяется энтропия Е(}') и E(F I ), затем полученные значения сравниваются. 4. Данная процедура итеративно повторяется, и на каждой итерации ВЫЧисляет ся разность энтропии I1E k исходноrо множества F и множества Fk, полученноrо в результате исключения k ro признака. 5, Из полученной последовательности выбирается минимальный элемент 6.E k и устанавливается, для KaKoro подмножества Fk он был получен, то есть обнару живается, исключение KaKoro признака /k Е F обеспечивает минимум разности энтропии исходноrо множества признаков F и множества, полученноrо путем исключения данноrо признака /k. 6. Формируется новое исходное множество F(1), которое образуется с помощью исключения из начальноrо множества F подмножества Fk' выбранноrо на пятом шаrе, то есть F(l) == F Fk. 7. Шаrи 2 5 итеративно повторяются, пока не будет получено множество призна ков F(п), состоящее Bcero из одноrо признака. В результате будет получена последовательность подмножеств F(k) (k == 1,2"". п) исходноrо множества признаков F, ранжированная в порядке увеличения разности энтропии множества F и подмножеств F(k), то есть в порядке уменьшения близости к исходному множеству. Таким образом, в начале последовательности окажутся подмножества, которые наиболее близки к исходному. ПРИМЕР Пусть исходное множество данных F содержит 4 признака {/1'/2 '/1'/4}. Torдa алrоритм будет работать следующим образом: [<'1 == {/2,/I ,/j}; Fl == {/1 '/1'/4}; [<': == {/1 '/2'/4}; F4 == {/l '/Z'/l}' 6.Е 1 == E(F) Е( F 1 ); 6.Е 2 == E(F) E(F z ); 6.Е: 1 == E(F) Е(Е1); 6.Е j == Е(Р) E(F 4 ), Предположим. что 6.Е 4 == min(6.E). Torдa F(I) == F /4. F(1) == и;'/2./:1}; F 1 (1) == {Jz,f1}; P}l) == {J1,f1}; } (l) == и1'/2}. 6.Е 1 == E(F(l») E(F,(l»); 6.Е 2 == E(F(I») E(Fz(l»); 6.Е:! == E(F(I») E(F 1 (1»). Предположим, что 6.Е l == min (6.Е). TorAa р(2) == F (1) /2. F(2) {/ f } . F (2) {f . } . Р (2) {/ } 1, J , 1 .1, 2 1. 6.Е 1 == E(FO» E(F/ Z »); 6.Е 2 == E(F(2») E(FP»). Предположим, что 6.Е 1 == min(6.E), TorAa F(:!) == F(1) /) == {Jl}'
rлава 5. Очистка и предобработка данных 267 Итак, мы установили, что при сокращении oAHoro признака результирующим подмноже ством, наиболее близким к начальному. будет {.fl'/2 ,j!}. при сокращении двух призна- ков {/1'/]}, при сокращении трех {/1 }. То есть оптимальный порядок сокращения признаков следующий: /4' /2'.f!. Данный алrоритм можно использовать в двух режимах в режиме сокращения JI в режиме отбора признаков. В режиме сокращения определяется, какие признаки можно сократить с минимальной потерей информации относительно исходноrо множества. Нужно выполнить алrоритм полностью (пока в результирующем подмножестве не останется один признак), а затем сократить столько признаков, сколько возможно без существенноrо ухудшения результатов анализа, Определять степень влияния сокращения признаков на результаты анализа в большинстве случаев приходится экспериментально. Режим сокращения имеет существенный недостаток, поскольку необходима ПОk лая проверка всех подмножеств, полученных в результате сокращения признаков, Если число признаков и записей исходноrо множества велико, то MOryT потребовать ея значительные вычислительные и временные затраты, что не всеrда приемлемо. Режим отбора предполаrает, что анализируются не все подмножества, полу ченные в результате сокращения признаков, а только те, разность энтропии KOTO рых по сравнению с исходным множеством не превышает заданноrо пороrа. Как только пороr будет достиrнут, выполнение алrоритма остановится, а отобранные в результате признаки, как ожидается, будут нести в себе достаточно информации для проведения анализа с приемлемым качеством. Значение пороrа в большинстве случаев также определяется экспериментально. Корреляционный анализ Для количественной оценки связи между двумя случайными величинами исполь зуется корреляционный анализ. В математике зависимость между двумя вели чинами х и у выражается с помощью функции у == Лх), rде каждому возможному значению Х ставится в соответствие не более одноrо значения У (так называемая функционшlb'Ная зависимость). Важным частным случаем зависимости является корреляционная. Корреляци онная связь чаще Bcer'o характеризуется выборочным коэффициентом корреля ции r, который отражает степень линейной функциональной зависимости между случайными величинами Х и у. Для двух случайных величин Х и У коэффициент корреляции имеет следующие свойства: О 1 r 1; о если r == ::1:1, то между Х и У существует функциональная линейная зависи мость; О если r == О, то Х и У не коррелированы, что не означает независимости вообще (может иметь место нелинейная зависимость); О коэффициенты корреляции У на Х и Х на У совпадают.
268 Часть 1. Теория бизнес анализа Как корреляционный анализ может помочь в сокращении признаков? ПРИНцип корреляционноrо анализа состоит в поиске таких факторов, которые в наимеНЬшей степени коррелированы (взаимосвязаны) с выходным результатом. Эти факторы MOryт быть исключены из результирующеrо набора данных практически без потери полезной информации. Метод также применяется для поиска среди входных при знаков таких пар, между которыми существует функциональная линейная зависи мость. В этом случае из двух признаков целесообразно оставить только один. На практике считается, что если корреляция больше 0,6, то связь между двумя признаками очень высока, если меньше 0,3 зависимость отсутствует, промежу точные значения констатируют наличие определенной связи. Метод rлавных компонент Друrим популярным методом сокращения размерности исходных данных является метод rлавных компонент (principal component analysis). Он заключается в преоб разовании исходноrо множества данных Х, представленных векторами значений признаков, в друrое множество У, [де данные будут представлены векторами MeHЬ шей размерности. То есть метод можно рассматривать как сокращение размерно сти векторов признаков, описывающих объекты классификации, кластеризации и друrих задач анализа. Цель данноrо преобразования сконцентрировать всю информацию о различиях между наблюдениями в небольшом числе признаков. П реобразование из Х в У основано на предположении, что самыми информатив ными являются признаки, обеспечивающие наибольшую изменчивость исходных данных. Мерой изменчивости служит дисперсия векторов признаков. Необходимо найти признак, который «берет» на себя большую часть дисперсии набора данных, При этом предполаrается, что он унаследует и большую часть информации, coдep жащейся в наборе. Такой признак называется zлавной компонентой. Задача заключается в последовательном поиске rлавных компонент, макси мальное количество которых равно числу признаков исходноrо множества. Тоrда первая rлавная компонента будет занимать первое место по информационной наrрузке, вторая второе и т. д. Таким образом, последние rлавные компоненты будут наименее информативны и MorYT быть исключены из рассмотрения как незначимые, что приведет к сокращению пространства признаков с минимальной потерей информации. 3АМЕЧАНИЕ Каждая rлавная компонента представляет собой новый признак. который не связан ни с од. ним из исходных признаков. а является их линейной комбинацией. Позтому при дальнейшем анализе может потребоваться интерпретировать новые признаки, полученные на основе rлавных компонент, наполнить их новой лоrикой и смыслом. Например, интерпретация новых признаков может быть проведена на основе их корреляции с исходными признаками. Процесс определения rлавных компонент заключается в построении новой оси MHoroMepHoro пространства признаков, совпадающей с направлением, вдоль KOTOpO ro дисперсия векторов признаков максимальна. Как только эта ось будет построена,
rлава 5. Очистка и предобработка данных 269 базоВая система координат поворачивается таким образом, чтобы одна из ее осей совпала с новой осью. Она и образует первую rланную компоненту (рис, 5.19). У У' о о х z х Рис. 5.19, Метод rлавных компонент На рисунке система координат (х, у, z) соответствует исходному пространству признаков. После Toro как будет найдено направление, совпадающее с максималь ной дисперсией векторов признаков, система координат повернется так, чтобы ось у стала ориентирована вдоль этоrо направления, образуя первую rлавную KOM поненту. При этом образуется новая система координат (х', у', z'). Затем процедура повторяется до тех пор, пока все оси не окажутся ориентированы в направлении соответствующих rлавных компонент, Закономерен вопрос: сколько rлавных компонент понадобится для исчерпы вающеrо описания исходных данных? Для ответа проще Bcero проанализировать долю дисперсии, которую вносит каждая компонента в общую дисперсию набо ра признаков, Выразив долю дисперсии в процентах, можно установить пороr, называемый пороrом значимости. Все признаки, доля которых в общей дисперсии меньше пороrа значимости, считаются имеющими низкую значимость и подлежат сокращению. На практике пороr значимости выбирается экспериментально исходя из необхо димой точности результатов. Увеличивая значение пороrа, мы тем самым ужесточа ем требования к модели. При этом модель становится более точной, но возрастают вычислительные затраты и время на обработку данных. Обычно ищут компромисс между уровнем снижения размерности исходных данных, адекватностью аналити ческой модели, а также вычислительными и временными затратами на обработку,
270 Часть 1. Теория бизнес анализа 5.10. Сокращение числа значений ... признаков и записеи При сокращении размерности исходных данных основное внимание уделяется умень- шению числа признаков, используемых для анализа. И это оправданно, поскольку именно исключение избыточных и незначащих признаков позволяет наиболее эф- фективно упростить аналитическую модель, сделать ее понятной для пользователя и повысить интерпретируемость результатов анализа. Но иноrда уменьшить число признаков без существенноro ухудшения результатов анализа не удается. Или же, не- смотря на то что незначащие и избыточные признаки были исключены, размерность данных все еще остается очень большой с точки зрения вычислительных и времен- ных затрат на aha-ТIИтическую обработку и требований к доступному объему памяти. В этом случае проблему большой размерности исходных данных можно попытаться решить, сократив разнообразие значений признаков и записей (примеров). Сокращение числа значений признака Сокращение числа разнообразных значений признаков обычно связано с измене- нием интервала дискретизации значений. Задача заключается в уменьшении числа значений исходноrо набора данных за счет их объединения в пределах HeKoToporo интерваJlа и присвоения этому интерва3IУ определенноrо символа или значения. В результате TaKoro преобразования число значений признака, которые нужно обработать в процессе анализа, должно уменьшиться без существенноrо ущерба для информативности данных. Во мноrих случаях дополнительным выиrpышем от такой обработки является упрощение описания исследуемых объектов. Обратим внимание, что уменьшается не само количество значений признака, а количество elO уникальных значений. Например, если признак содержал 1000 зна- чений в диапазоне от 9,5 до 10,4, то простое окруrление позволит преобразовать все эти значения к 10. То есть само количество значений признака останется без изменений, а вот количество уникальных значений уменьшится. Обычно такая операция производится вручную на основе некоторых априор- ных знаний об исследуемом объекте или процессе. Например, возраст человека, заданный как непрерывный ряд в интервале от О до 100, может быть разделен на интервалы по катеrориям: ребенок, подросток, зрелый возраст, средний возраст, пожилой возраст и т. д. (рис. 5.20). о Д етскии Подростковый Зрелый Пожилой 100 Рис. 5.20. Квантование значений признака
rлава 5. Очистка и предобработка данных 271 Без HeKoToporo априорноrо знания о признаке, значения KOToporo требуется co J(JJаТИТЬ, выбор интервалов является проблемой. Например, если речь идет о возрасте человека, то нужно иметь представление о точках (возрасте), коrда происходит смена возрастноrо статуса. [раницы возрастных переходов условны. Сокращение количества значений признаков обычно не вредит практическим задачам анализа и в то же время позволяет добиться существенноrо уменьшения вычислительных и временных затрат на аналитическую обработку данных. Если количество различных значений признака может быть уменьшено, то Ka чество анализа, проводимоrо с помощью некоторых методов Data Mining, особенно основанных на выявлении лоrических правил (например, деревья решений), может улучшиться. Предположим, что признак оrpаничен некоторым диапазоном числовых значе ниЙ, которые MoryT быть упорядочены по возрастанию с использованием обычных операторов больше чем или меньше чем . Это естественным образом ведет к концепции объединения соседних значений в rpуппы, или интервалы объедине ния, называемые БИlInМИ (Ып). Все значения объединяются в интервалы по единому правил у, а именно: заменяются значениями верхней или нижнеЙ rраниц интервала, модой (CTa тистически наиболее вероятное значение), среднеЙ или медианой, катеrорией и т. д, Использование среднеrо значения или моды наиболее эффективно при среднем или большом количестве интервалов объединения, а значений rраниц интервала при малом. ПРИМЕР Пусть имеется множество значений HeKoToporo признака {3, 2,1,5,4,3,1,7,5, 3}. После упорядочения последовательность примет вид {1, 1, 2,3, 3, 3, 4, 5, 5, 7}. Сначала можно разбить все множество на три rруппы по степени близости значений. 11' 1, ....I BIN, в BIN 2 14,5,5,7/ BIN. На следующем этапе для каждой rруппы выбирается представление. Например. можно использовать наиболее вероятное значение в rруппе (моду). в BIN, в BIN 2 Можно использовать среднее значение и т. д. 1,33.1,33,1,33 11 BIN, З,3,3 BIN 2 15,5, 5, 51 BIN. 5,25, 5,25, 5,25, 5,25 BIN. , Часть 1. Теория биэнес аналиэа rлавная проблема данноrо метода поиск точек среза для rpупп, Теоретически разбиение на rpуппы не может быть выполнено независимо от друrих ПРИзнаков. Тем не менее эвристическое решение для каждоrо признака в отдельности во MHo rих задачах анализа дает хорошие результаты. Задача сокращения числа значений может рассматриваться как задача ОПти мизации в выборе k rруПП: дано число rрупп k, которое должно распределять зна чения в rpуппах таким образом, чтобы минимизировать расстояние от значения до среднеrо или медианы rpуппы, в которую это значение попало, Это расстояНие обычно определяется как квадрат расстояния для среднеrо по rpуппе и как модуль расстояния для медианы. Упрощенная модификация TaKoro алrоритма содержит следующие шаrи, 1. Сортируются все значения данноrо признака. 2. Задается приблизительно равное количество смежных значений Vi для каждой rpуппы; число rpупп задано заранее, 3. rраничный злемент Vi перемещается из своей rpуппы в следующую или преды дущую, если это уменьшает общую ошибку расстояния: сумму расстояний от значения Vi до средней или моды соответствующей rpуппы. ПРИМЕР Пусть задан набор значений f == {5, 1, 8, 2, 2, 9, 2, 1, 8, 6}. Разделим их на три rруппы (k == 3). На первой итерации алrоритма будут выполнены следующие вычисления. 1. Множество/сортируется в порядке возрастания: {1, 1,2,2,2,5,6,8,8, 9}. 2. Упорядоченное множество разделяется на три rруппы: {( 1, 1,2); (2, 2, 5); (6, 8, 8, 9)}. з. Определяются моды rрупп (в данном случае зто наиболее часто встречающиеся значения): {1, 2, 8}. Torдa общая ошибка расстояния рассчитывается следующим образом: Е ==ll ll +ll 11+12 11 +12 21 +12 21 +15 21 +16 81+18 81 + +18 81 +18 91 == о +0 + 1 +0 +0 +3 +2+ о +0 + 1 == 7. Как видно, большую долю в общей ошибке расстояния вносят значение 5 во второй rруппе, rAe мода равна 2, и значение 6 в третьей rруппе, rAe мода равна 8, что в итоrе дает долю ошибки 5 из 7. Для уменьшения ошибки очевидной является следующая пе рестановка: {(1, 1,2); (2, 2, 5); (6, 8, 8, 9)} {(1, 1,2,2,2); (5, 6); (8, 8, 9)}. Она даст набор мод {2, 5, 8} и обеспечит ошибку Е == 2 + 1 + 1 == 4. Любое дополни тельное перемещение значений между rруппами вызовет увеличение ошибки. Таким образом, указанное распределение значений по rруппам и будет оптимальным для дан- ной задачи. {1, 1, 2 2,2,5 11 6, 8, 8, 9} 1 {1, 1,2,2,2 5,6 8, 8, 9}
rлава 5. Очистка и предобработка данных 273 5.11. Сэмплинr СуЩНОСТЬ сэмплинrа При сборе и консолидации данных в хранилищах данных MorYT накапливаться orpoMHbIe массивы информации. Обычно она касается бизнес процессов, протека ющих в компании и иноrда во внешнем ее окружении, Коrда возникает необходи мость выполнить анализ некоторых данных с целью получения новых знаний о свя занНОМ с этими данными процессе или объекте, аналитик сталкивается с проблемой выбора: что именно использовать для анализа. Здесь возможны два варианта: О использовать для анализа все имеющиеся данные; О выбрать из Bcero множества имеющихся данных некоторое подмножество и на основе анализа этоrо подмножества попытаться сделать выводы о свойствах исследуемоrо процесс а или объекта. Оба подхода имеют свои преимущества и недостатки, Использование Bcero множества имеющихся данных позволит обеспечить максимальную достоверность результатов анализа, поскольку при этом будет учтена вся доступная информация. Но на практике этот подход реализовать проблематично, поскольку объем анали зируемых данных может оказаться настолько большим, что время и вычислитель ные ресурсы, требуемые для анализа, выйдут за все мыслимые ра..1КИ. В итоrе пре имущества, полученные в результате анализа данных, будут обесценены. Никому не понравится, если информационная система компании окажется парализована на несколько часов из за Toro, что сервер, на котором установлена аналитическая платформа, занимается анализом набора данных, состоящеrо из сотен миллионов записей. Однако следует отметить, что если ценность ожидаемых результатов aHa лиза очень высока, а временные оrpаничения на ero проведение некритичны, то, возможно, следует использовать все доступные данные, не считаясь с затратами. rлавное преимущество BToporo подхода заключается в том, что анализируется относительно небольшое подмножество данных. При этом временные и вычисли тельные затраты невысоки, что особенно важно для оперативноrо управления и пла нирования, коrда управленческие решения, rенерируемые на основе результатов анализа, требуется получать практически в режиме реальноrо времени. Недостаток подхода в том, что, поскольку при анализе используется только часть доступной информации, весьма вероятно снижение достоверности результатов анализа. ПРИМЕР Аналоrией, поясняющей данную ситуацию, является опрос общественноrо мнения с целью получения информации для принятия решений в социально-политической сфере. Можно провести опрос Bcero населения, но это очень долrо и затратно. Поэтому чаще Bcero про водится выборочный опрос определенноrо числа респондентов и на основе их мнения делаются выводы о настроении Bcero населения. Хотя если принимается очень важное социально политическое решение, которое может повлиять на все общество, прибеrают к опросу Bcero населения (референдуму), поскольку затраты в этом случае оправданны.
274 Часть 1. Теория биэнес аналиэа На практике в бизнес ана.iIитике применяется второй метод, коrда анализу подверrаются не все имеющиеся данные, а только некоторое их подмножество. Это обусловлено следующими причинами. О Стратеrические решения, для обоснования которых необходимо привлечь Maк симальное количество информации, принимаются достаточно редко. HaMHoro более востребованы решения в области оперативноrо управления и планиро вания, для которых нужна информация об отдельных аспектах и временных интервалах деятельности компании. Поэтому для анализа с целью поддержки принятия таких решений должны быть выбраны только даНные, непосредствен но касающиеся исследуемой проблемы. о С точки зрения анализа решающую роль иrpает не количество данных, а их информационная насыщенность. Например, можно проанализировать очень большой массив данных, затратив на это MHoro времени. Но если эти данные слабо отражают искомые закономерности, то результаты анализа окажутся бес полезныIи.. Напротив, анализируемое подмножество может быть компактным, но при этом хорошо отражать поведение исследуемоro процесса. В таком случае анализ не займет MHoro времени и даст хорошие результаты. О При решении некоторых задач анализа использование всех накопленных дaH ных неприемлемо. Особенно это характерно для проrнозирования, коrда долж ны использоваться только актуальные данные, а устаревшие отбрасываться. о Трудоемкость некоторых алrоритмов Data Mining экспоненциально возрастает с увеличением объема данных, поэтому обработка даже относительно небольших выборок такими алrоритмами требует неприемлемо высоких временных затрат. Существуют различные стратеrии извлечения подмножеств наблюдений из исходных множеств данных. Комплекс таких методов получил название СЭМ пли'Нu> (sampling). Приемлемый размер подмножества определяется исходя из вычислительных затрат, доступноrо объема памяти, требуемой точности и друrих характеристик алrоритма и данных. Место сэмплинrа в общем процессе анализа данных можно пояснить с помощью схемы, представленной на рис. 5.21. Системы первичной реrистрации (OL ТР) Сэмплинr I ВЫборкаl Аналитическая платформа Рис. 5.21. Место сэмплинrа в процессе анализа данных
rлава 5. Очистка и предобработка данных 275 Таким образом, в большинстве случаев при подrотовке данных к анализу из BC ero имеющеrося в распоряжении аналитика множества данных выбирается He J(OTopoe подмножество, на основе KOToporo и пытаются получить нужное решение. сэмплинr обеспечивает оперативность выполнения анализа при приемлемых вычислительных затратах. проблема репрезентативности Используемое для анализа подмножество данных должно быть репрезентатив ным, то есть в достаточной мере отражать свойства Bcero множества данных и, соответственно, связанноrо с ним процесса или объекта. Вернемся к аналоrии с опросом общественноrо мнения. Достаточно ли при опросе на тему «Как вы оцениваете уровень жизни в стране?" оrраничиться респондентами, живущими в элитном поселке или, наоборот, имеющими доход ниже прожиточноrо минимума? Очевидно, что и в том и в друrом случае, He зависимо от числа опрошенных, мы получим искаженную картину, поскольку исследуемая выборка окажется нерепрезентативной, При опросе общественноrо мнения респондентов отбирают по специальной методике, которая позволяет охватить все социальные слои населения и сферы деятельности. И только TO [да результаты опроса будут отражать мнения и настроения большинства, что позволит принимать обоснованные решения в социально политической и [ocy дарственной сфере, Точно так же обстоит дело и с выбором подмножества данных для анализа. При этом необходимо соблюдать следующий принцип: анализируемое подмно жество должно быть выбрано таким образом, чтобы результаты ero анализа не сильно отличались от результатов, которые были бы получены при анализе Bcero множества доступных данных. Добиться этоrо можно только путем применения соответствующих методов сэмплинrа. Цели и задачи сэмплинrа Понятие «сэмплинr" выходит за рамки технолоrий анализа, В более общем смысле под сэмплинrом понимают отбор HeKoToporo набора объектов (товаров, продук тов, изделий, респондентов и т, д,), выделяемых в отдельную rpуппу с какой либо целью, Например, респонденты отбираются с целью опроса, товары в rруппу наиболее популярных и т. д. Чтобы применить понятие сэмплинrа к анализу данных, введем несколько сопутствующих терминов. ОПРЕДЕЛЕНИЕ Совокупность (рорulаtiоп) множество всехданных, описывающих некоторый объект или процесс, которые MOryт быть использованы для анализа с целью получения новых знаний об этом объекте или процессе.
276 Часть 1. Теория бизнес анализа ОПРЕДЕЛЕНИЕ Выборка (sample) подмножество данных, формируемое путем отбора из СОВОКУпности с целью анализа. Для обеспечения достоверности результатов анализа полученная выборка должна быть репрезентативной, то есть в достаточной мере отражать СВОйства и xapal<Тe ристики совокупности. ОПРЕДЕЛЕНИЕ (эмплинr (sаmрliпg) процесс отбора из исходной совокупности данных выборки, пред- ставляющей интерес для анализа. При реализации сзмплинrа используются специаЛьные методы отбора, которые должны обеспечить репрезентативность выборки с точки зрения решаемой задачи. Итак, в контексте нашеrо рассмотрения сэмплинr представляет собой процесс отбора из исходноrо множества данных (совокупности) некоторото подмножест ва (выборки) для анализа. Конечной целью сэмплинrа является сведение задачи анализа всех доступных данных, что требует больших (часто неприемлемых) Bpe менных и вычислительных затрат, к анализу оrpаничеаной выборки, в достаточной мере отражающей свойства всей исследуемой совокупности. Для обеспечения pe презентативности выборки СЭМШIинr использует специальные методы и алrоритмы отбора, способствующие обеспечению ее информационной насыщенности. Методы сэмплинrа Равномерный случайный сэмплинr (uniform random sampling). Все записи ис ходной совокупности разделяются на rруппы, в каждой из которых содержится одинаковое число записей (например, 100). Затем из каждой rруппы случайным образом выбирается одна запись и помещается в результирующую выборку. Bы бор ка, полученная в результате сэмплинrа, будет состоять из записей, случайным образом отобранных из каждой rруппы. Эта методика проиллюстрирована на рис. 5.22. Слева представлена исходная совокупность данных, разбитая на rруппы по пять записей, справа выборка, составленная из записей, случайным образом выбранных из каждой rруппы. Количество rpупп, на которые следует разбить исходную совокупность, зависит от общеrо числа записей в ней и числа записей, из которых должна состоять резуль тирующая выборка. Размер результирующей выборки, в свою очередь, зависит от особенностей решаемой задачи. Иноrда применяется более простой вариант случайноrо СЭМШIинrа, котда исход ная совокупность не разбивается на подrpуппы, а выборка производится случай ным образом из всей совокупности (но в ряде случаев это делает результирующую выборку менее равномерной), Основные преимущества данното метода простота и эффективность. rлавный ето недостаток заключается в том, что, если исходная совокупность не является rомоrенной, то есть содержит разноrо размера rpуппы, в каждой из которых данные имеют различное распределение, это может привести к получению смещенной
rлава 5. Очистка и предобработка данных 277 Дата Сумма Срок КОД кредита кредита 1 01.02.200З 7000 6 2 01.02.200З 7500 6 3 01.02.200З 14500 12 4 01.02.200З 15000 6 5 01.02.200З З2 000 12 6 01.02.200З 11500 6 7 01.02.200З 5000 6 Код Дата Сумма Срок 8 01.02.200З 61 500 ЗО кредита кредита 9 01.02.200З 1 З 500 12 01.02.200З 7500 6 10 01.02.200З 25 000 18 01.02.200З 1З 500 12 11 01.02.200З 25 500 24 01.02.200З 5З 000 24 12 01.02.200З 9500 6 02.02.200З 8500 6 1З 01.02.200З 5З 000 24 14 02.02.200З 27 500 18 15 02.02.200З 4000 6 16 02.02,200З 40 500 26 17 02,02.200З 51 500 З6 18 02.02.200З 7000 6 19 02.02.200З 8500 6 20 02.02.200З 2З 500 12 Рис. 5.22. Равномерный случайный сэмплинr выборки. Смещенной называется выборка, которая представляет исходную COBO купность не вполне достоверно. Например, если в исходной совокупности объекты классов А, В и С содержатся в приблизительно одинаковых пропорциях и, COOT ветственно, имеют одинаковую вероятность быть выбранными, то в смещенной выборке мотут преобладать объекты класса А, что неминуемо приведет к HeKOp ректным результатам анализа. Если исходная совокупность существенно неоднородна, случайный сэмплинr работает плохо и лучших результатов удается добиться, если использовать друrие методы сэмплинrа, такие как стратификационный и кластерный. Стратификационный сэмплинr. Название метода происходит от анrлийскоrо слова stratified, что в Переводе означает слоистый . Котда исходная совокупность существенно неоднородна, наилучших результатов удается добиться, если Про изводить выборку из каждой rpуппы независимо от друrих rрупп. Такие rpуппы называются стратами, или слоями (от анrл. strata слой ). Стратификационный сэмплинr выполняется в два этапа. О Стратификация rpуппировка элементов исходной совокупности в относи тельно однородные подrpуппы, которые и называются слоями. О Случайный сэмплИНl случайная выборка из каждоrо слоя по отдельности. Слои должны быть взаимоисключающими, то есть каждый элемент исходной совокупности включается только в один слой. Кроме тото, слои должны быть исчер пывающими: ни один из элементов совокупности не должен быть пропущен.
Схематично процесс стратифИ'кацион Horo сэмплинrа показан на рис. 5.23. Основной проблемой стратификаци OHHOro сэмплинrа является определение состава слоев и размера выборки, извле каемой из каждоrо слоя. Как правило, для определения состава слоев необходимо использовать HeKOTO рую априорную информацию об исходной совокупности, а также учитывать характер задачи, для решения которой формиру ется выборка. Например, если речь идет о товаре, то в качестве слоев MorYT быть выбраны rруппы товаров, катеrории по степени популярности, местам хранения и т. д. При анализе сотрудников фирмы критериями мотут быть пол, возраст, стаж и характер выполняемой работы. В боль шинстве случаев при таком построении слоев достиrается rлавная цель стратифи кации: в каждом слое содержатся paBHO мерно распределенные данные. Действи тельно, товары в пределах одной rpуппы обычно характеризуются одним ценовым диапазоном и схожими потребительски ми свойствами, поэтому распределение их признаков в пределах rpуппы (слоя) будет, скорее Bcero, достаточно равномерным. Что касается размеров выборок, извлекаемых из каждоro слоя, то здесь возмож ны две стратеrии. О ПропОРЦИОНOJlЪ1юе распределение. В каждом из слоев используется так называ емая выборочная доля, пропорциональная составу всей исходной совокупности. Например, если совокупность содержит 60 % товаров rpуппы А и 40 % товаров rpуппы В, то относительный объем двух слоев должен отражать эту пропорцию (три товара rpуппы А, два товара rpуппы В). О ОптUМOJlъное распределе1lUе. Размер выборки, извлекаемой из слоя, пропорцио нален стандартному отклонению распределения некоторой переменной (напри мер, цены). Наибольшие выборки берутся в слое с большей вариабельностью. 278 Часть 1. Теория биэнес аналиэа ПРИМЕР 'Исходная совокупность Стратификация ':;; о с'3 N ':;; о с'3 ':;; о с'3 с') >:;; О с:; () v >:S; о с'3 LI} ':S; о с'3 ф IРеэу:т щая В БО К Рис. 5.23. Схема страшфикационноrо сэмплинrа Размер выборки, извлекаемой из каждоro слоя, пропорционален размеру этоro слоя. Это и называется пропорциональным распределением. Предположим, что требуется проана лизировать совокупность. состоящую из 500 наименований товаров. которые разбиты на 4 rруппы (слоя):
rлава 5. Очистка и предобработка данных 279 . мясные продукты 250 наименований; . молочные продукты 125 наименований; . соки и прохладительные напитки 50 наименований; . морепродукты 75 наименований. пусть требуется получить выборку, состоящую из 40 товаров, стратифицированных по ука- занным выше катеrориям. На первом шаrе определим общее число товаров (500) и вычис лим процентную долю, которую составляет каждая rруппа: . мясные продукты (250/500) . 100 == 50 %; . молочные продукты (125/500) .100 == 25 %; . соки и прохладительные напитки (50/500) ,100 == 10 %; . морепродукты (75/500) , 100 == 15 %. Тоrда в результирующей выборке из 40 товаров указанные rруппы должны быть представ лены следующим образом: . мясные продукты 50 %, или 20 наименований; · молочные продукты 25 %, или 10 наименований; · соки и прохладительные напитки 10 %, или 4 наименования; · морепродукты 15 %, или 6 наименований. Таким образом, при использовании пропорциональноrо распределения выборка, полученная в результате страmфикационноrо сэмплинrа, оказывается уменьшенной копией исходной совокупности. Иноrда исследователи сталкиваются с ситуацией, коrда важные с точки зрения решаемой задачи объекты или события представлены очень небольшим числом наблюдений, что не позволяет выполнить их достоверный анализ. В рассмотренном выше примере в подобной ситуации оказывается rpуппа товаров Морепродукты>;>, представленная после сэмплинrа Bcero шестью наименованиями. В таких случаях применяется искусственное усиление представительства редких событий или объектов выборки с помощью дUСnрОnОрЦUОllалЫtolО сэмплUllla. Например, если потребуется усилить представительство товаров rpуппы морепродуктов в два раза, то соответствующие данные можно добавить из исходной совокупности. Но ис кусственная диспропорция может исказить результаты анализа выборки. Чтобы этоrо не произошло, остальным rруппам товаров можно назначить веса, которые позволят сбалансировать диспропорцию и скорректировать результаты анализа, ПЕРСОНАЛИИ Шеннон Клод ЭЛВУД (Shаппоп Claude Elwood (1916 2001)) американский математик и электротехник, один из создателей математической теории информации. Результаты ero работы в значительной мере предопределили развитие общей теории дискретных aBTOMa тов, которые являются важными составляющими кибернетики. В 1936 r. окончил Мичиrанский университет. После защиты диссертации (1940) в 1941 r. поступил на работу в знаменитые лаборатории Белла. С 1956 r. преподавал в МТИ. В 1948 r. опубликовал фундаментальный труд А Mathematical Theory of Соmmuпiсаtiоп, в кото- ром сформулированы основы теории информации. Ввел понятие энтропии количественной
280 Часть 1. Теория биэнес аналиэа характеристики меры информации. На энтропии основаны мноrие алroритмы анализа данных, особенно методы Data Mining. Примером служит известный алroритм ЮЗ, применяемый для построения деревьев решений. Даниэль Т. Ларос (Daniel Т. Larose) профессор, защитил докторскую диссертацию в 1996 r. Ларос возrлавляет направление Data Мiпiпg в Центральном университете штата Коннектикут (Central Connecticut State University, CCSU), в том числе руководит первой в мире маrи- стерской онлайн-проrраммой по Data Мiпiпg. Занимается консультированием в области анализа данных, статистическоrо анализа и Data Мiпiпg. Автор нескольких КНиr: Discovering Кпоwlеdgе In Data (2005), Data Mining Methods Апd Models (2006), Data Мiпiпg The Web (2007). Домашняя страница Даниэля Лароса: http://www.math.ccsu.edu/larose. Николай rриroрьевич Заroруйко доктор технических наук, профессор, один из ведущих отечественных специалистов по машинному обучению, методам автоматической очистки данных. Ero работы в области анализа данных и распознавания образов имеют всемир- ную известность. Более ЗО лет ведет активную педаrоrическую деятельность: читает курсы лекций по искусственному интеллекту и анализу данных в Новосибирском rocYAapCТBeHHoM университете и ряде зарубежных университетов. Участвует в международных и всероссий ских научных конференциях, является членом советов по защите диссертаций. Н. r. Заro руйко автор более 190 научных работ, в том числе 11 моноrрафий. С 1960 r. работает в Инсти-туте математики СО РАН (Новосибирск). В СССР и РФ большую извест- ность получили ero книrи «Прикладные методы анализа данных и знаний» (1999), «Алrоритмы обнаружения эмпирических закономерностей» (1985, соавторы Л. Б. Елкина и r. с. Лбов).
Data Mining: задача ассоциации 6.1. Ассоциативные правила АффИ1lитИ81lЫЙ а1lШlUЗ (affinity analysis) один из распространенных методов Data Mining. Ето название происходит от анrлийскоrо слова affinity, которое впереводе означает близость , CXOДCTBO . Цель данноro метода исследование взаимной связи между событиями, которые происходят совместно. Разновидностью аффи нитивноrо анализа является а1lШlUЗ рЫ1l0Ч1l0Й 'КорЗИ1lЫ (market basket analysis), цель которото обнаружить ассоциации между различными событиями, то есть найти правила для количественноrо описания взаимной связи между двумя или более собыrnями. Такие правила называются ассоциатив1lЫМИ nравuлами (association rules). Примерами приложения ассоциаrnвных правил мотут быть следующие задачи: О выявление наборов товаров, которые в супермаркетах часто покупаются вместе или никоrда не покупаются вместе; О определение доли клиентов, положительно относящихся к нововведениям в их обслуживании; о определение профиля посеrnтелей веб ресурса; О определение доли случаев, в которых новое лекарство оказывает опасный по бочный эффект. Базовым понятием в теории ассоциативных правил является траюа'Кцuя He которое множество событий, про исходящих совместно. Типичная транзакция приобретение клиентом товара в супермаркете. В подавляющем большинстве случаев клиент покупает не один товар, а набор товаров, который называется pы ночной корзиной. При этом возникает вопрос: является ли покупка одноro товара
282 Часть 1. Теория бизнес анализа в корзине следствием или причиной покупки друrоro товара, то есть связаны ли данные события? Эту связь и устанавливают ассоциативные правила, Например, может быть обнаружено ассоциативное правило, утверждающее, что клиент, KY пивший молоко, С вероятностью 75 % купит и хлеб, Следующее важное понятие предметный набор, Это непустое множество предметов, появившихся в одной транзакции. Анализ рыночной корзины это анализ наборов данных для определения KOM бинаций товаров, связанных между собой, Иными словами, производится Поиск товаров, присутствие которых в транзакции влияет на вероятность наличия друrих товаров или комбинаций товаров, Современные кассовые аппараты в супермаркетах позволяют собирать информа цию о покупках, которая может храниться в базе данных. Затем накопленные данные MOryT использоваться для построения систем поиска ассоциативных правил. В табл, 6.1 представлен простой пример, содержащий данные о рыночной корзине. В каждой строке указывается комбинация продуктов, приобретенных за одну покупку. Хотя на практике приходится иметь дело с миллионами транзакций, в которых участвуют десятки и сотни различных продуктов, пример оrраничен 10 транзакциями, содержащими 13 видов продуктов: чтобы проиллюстрировать методику обнаружения ассоциативных правил, этоrо достаточно. Таблица 6.1. Пример набора транзакций N!! Транзакция 1 Сливы, салат, помидоры 2 Сельдерей,конфеты 3 Конфеты 4 Яблоки, морковь, помидоры, картофель, конфеты 5 Яблоки, апельсины, салат, конфеты, помидоры 6 Персики, апельсины, сельдерей, помидоры 7 Фасоль, салат, помидоры 8 Апельсины, салат, морковь, помидоры, конфеты 9 Яблоки, бананы, сливы, морковь, помидоры, лук, конфеты 10 Яблоки,картофель Визуальный анализ примера показывает, что все четыре транзакции, в которых фиrурирует салат, также включают помидоры и что четыре из семи транзакций, содержащих помидоры, также содержат салат. Салат и помидоры в большинстве случаев покупаются вместе. Ассоциативные правила позволяют обнаруживать и количественно описывать такие совпадения, Ассоциативное правило состоит из двух наборов предметов, называемыхусло вием (antecedent) и следствием ( consequent), записываемых в виде Х У, что чита ется так: «Из Х следует У», Таким образом, ассоциативное правило формулируется в виде: «Если условие, то следствие». Условие может оrраничиваться только одним предметом. Правила обычно отображаются с помощью стрелок, направленных от условия к следствию, напри
rлава б. Data Mining: задача ассоциации 283 мер, по.мидоры салат. Условие и следствие часто называются соответственно :1JевостОРОННИМ (left hand side LHS) и правосторонним (right hand side RHS) KOll-lIIонентами ассоциативноrо правила. Ассоциативные правила описывают связь между наборами предметов, COOTBeT сrвуЮЩИМИ условию и следствию. Эта связь характеризуется двумя показателя МИ поддержкой (support) и достоверностью (confidence). Обозначим базу данных транзакций как D, а число транзакций в этой базе каК N. Каждая транзакция D i представляет собой некоторый набор предметов. обозначим через S поддержку, через С достоверность. Поддержка ассоциативною правила это число транзакций, которые содержат каК условие, так и следствие. Например, для ассоциации А В можно записать: S (л "'""" В) == Р (А n В) == количество транзакций, содержащиuх А и В . общее количество транзакции Достоверность ассоциативНОlО правила А В представляет собой меру точ ности правила и определяется как отношение количества транзакций, содержащих и условие, и следствие, к количеству транзакций, содержащих только условие: С(А В) == P(BIA) == Р(А n В)! Р(А) == количество тран:шющЙ, СОll.еr>жащих Л и В !ОJIИчество транзакций, содержащих только А . Если поддержка и достоверность достаточно высоки, можно с большой Bepo ятностью утверждать, что любая будущая транзакция, которая включает условие, будет также содержать и следствие. Вычислим поддержку и достоверность для ассоциаций из табл. 6.1, Возьмем ассоциацию салат помидоры. Поскольку количество транзакций, содержащих как салат, так и помидоры, равно 4, а общее число транзакций 10, то поддержка данной ассоциации будет: S(салат помидоры) == 4/10 == 0,4. Поскольку количество транзакций, содержащих только салат (условие), paB но 4, то достоверность данной ассоциации будет: С(салат помидоры) == 4/4 == 1, Иными словами, все наблюдения, содержащие салат, также содержат и пOMи доры, из чеrо делаем вывод о том, что данная ассоциация может рассматриваться как правило. С точки зрения интуитивноrо поведения такое правило вполне объяснимо, поскольку оба продукта широко используются для приrотовления растительных блюд и часто покупаются вместе, Теперь рассмотрим ассоциацию конфеты помидоры, в которой содержатся, в общем то, слабо совместимые в rастрономическом плане продукты: тот, кто pe шил приrотовить растительное блюдо, вряд ли станет покупать конфеты, а тот, кто желает приобрести что нибудь к Чаю, скорее Bcero, не станет покупать помидоры.
284 Часть 1. Теория бизнес анализа Поддержка данной ассоциации: 5 == 4/10 == 0,4, а достоверность: С == 4/6 == 0,67. Таким образом, сравнительно невысокая достоверность данной ассоциации дает повод усомниться в том, что она является правилом, Аналитики мотут отдавать предпочтение правилам, которые имеют только Bы сокую поддержку или только высокую достоверность либо, что является наиболее частым, оба этих показателя, Правила, для которых значения поддержки или дo стоверности превышают определенный, заданный пользователем пороr, называются cuлыlIмuu правuла.мu (strong rules). Например, аналитика может интересовать, какие товары, покупаемые вместе в супермаркете, образуют ассоциации с минималЬной поддержкой 20 % и минимальной достоверностью 70 %, А при анализе с целью обнаружения мошенничеств может потребоваться уменьшить поддержку до 1 %, поскольку с мошенничеством связано сравнительно небольшое число транзакций. Значимость ассоциативных правил Методики поиска ассоциативных правил обнаруживают все ассоциации, которые удовлетворяют оrpаничениям на поддержку и достоверность, наложенным поль зователем. Это приводит к необходимости рассматривать десятки и сотни тысяч ассоциаций, что делает невозможным обработку такоro количества данных вруч ную, Число правил желательно уменьшить таким образом, чтобы проанализировать только наиболее значимые из них. Значимость часто вычисляется как разность между поддержкой правила в целом и произведением поддержки только условия и поддержки только следствия. Если условие и следствие независимы, то поддержка правила примерно COOT ветствует произведению поддержек условия и следствия, то есть 5 Ав 5 А 5 в , Это значит, Что, хотя условие и следствие часто встречаются вместе, не менее часто они встречаются и по отдельности. Например, если товар А встречался в 70 транзакци ях из 100, а товар В в 80 и в 50 транзакциях из 100 они встречаются вместе, то, несмотря на высокую поддержку (5 Ав == 0,5), это не обязательно правило. Просто эти товары покупаются независимо друт от друта, но в силу их популярности часто встречаются в одной транзакции. Поскольку произведение поддержек условия и следствия 5 л 5 в == 0,7 . 0,8 == 0,56, то есть отличается от 5 Ав == 0,5 всето на 0,06, предположение о независимости товаров А и В достаточно обоснованно. Однако если условие и следствие независимы, то правило вряд ли представляет интерес независимо от тото, насколько высоки еro поддержка и достоверность. Ha пример, если статистика дорожно транспортных происшествий показывает, что из 100 аварий в 80 участвуют автомобили марки ВАЗ, то на первый взrляд это выrля дит как правило если авария, то ВАЗ!>. Но если учесть, что парк автомобилей ВАЗ составляет, скажем, 80 % от общеro числа леrковых автомобилей, то такое правило вряд ли можно назвать значимым. ПРИМЕР Рассмотрим проект Data Mining в области продаж, который призван объяснить связь между Покупками женскоro белья и друrих товаров. Простой ассоциативный анализ (рассматри-
rлава б. Data Mining: задача ассоциации 285 ваюЩИЙ отдельные корзины закупок всех клиентов за rод) обнаруживает с очень высокой степенью поддержки и достоверности, что женское белье ассоциировано с конфетами. Сначала это вызывает некоторое недоумение, но последующий анализ показывает, что все основные катеrории товаров ассоциированы с конфетами с высоким уровнем достовер- ности. Большинство клиентов покупают конфеты в любом случае. Ассоциации с конфетами как следствием с поддержкой S == 0,87 оказываются малоинтересны, поскольку 87 % по купателей BcerAa приобретают конфеты. Чтобы быть значимой, ассоциация с конфетами в качестве следствия должна иметь поддержку, большую чем 0,87. ПО этой причине при поиске ассоциативных правил используются дополни тельные показатели, позволяющие оценить значимость правила. Можно выделить объективные и субъективные меры значимости правил, Объективными являются такие меры, как поддержка и достоверность, которые MOryT применяться незави симо от конкретното приложения. Субъективные меры связаны со специальной информацией, определяемой пользователем в контексте решаемой задачи, Такими субъективными мерами являются лифт (lift) и левередж (от анrл, leverage «пле- чо», «рычаr ). Лифт (ориrинальное название интерес) вычисляется следующим образом: L(A В) == С(А В) / S(B). Лифт это отношение частоты появления условия в транзакциях, которые также содержат и следствие, к частоте появления следствия в целом. Значения лифта, б6льшие чем 1, показывают, что условие чаще появляется в транзакциях, содержащих следствие, чем в остальных. Можно сказать, что лифт является обоб щенной мерой связи двух предметных наборов: при значениях лифта больше 1 связь положительная, при 1 она отсутствует, а при значениях меньше 1 отри- цательная, Рассмотрим ассоциацию помидоры сшtaт из табл. 6.1. S(сшtaт) == 4/ 10 == 0,4; С(помидоры СШtaт) == 4/7 == 0,57, Следовательно, L(пOMuaOpbl СШtaт) == 0,57/0,4 == 1,425. Теперь рассмотрим ассоциацию помидоры 'Конфеты. S('Конфеты) == 0,6; С(помидоры 'Конфеты) == 4/7 == 0,57, Тотда L(пOMuaOPbl 'Конфеты) == 0,57/0,6 == 0,95. Большее значение лифта для первой ассоциации показывает, что помидоры больше влияют на частоту покупок салата, чем конфет. Хотя лифт используется широко, он не всетда оказывается удачной мерой зна чимости правила. Правило с меньшей поддержкой и большим лифтом может быть менее значимым, чем альтернативное правило с большей поддержкой и меньшим лифтом, потому что последнее применяется для большеrо числа покупателей, Значит, увеличение числа покупателей приводит к возрастанию связи между усло вием и следствием. Друroй мерой значимости правила, предложенной [. Пятецким Шапиро, явля ется левередж: Т(А В) == S(A В) S(A)S(B). Левередж это разность между наблюдаемой частотой, с которой условие и следствие появляются совместно (то есть поддержкой ассоциации), и произве дением частот появления (поддержек) условия и следствия по отдельности.
286 Часть 1. Теория бизнес анализа Рассмотрим ассоциации морковъ помидоры и СШlаm помидоры, КОТОРЫе имеют одинаковую поддержку С == 1, поскольку салат и морковь всетда ПРОда. ются вместе с помидорами (см, табл. 6.1). Лифты для данных ассоциаций TaK же будут одинаковыми, поскольку в обеих ассоциациях поддержка следствия S(помидоры) == 7/10 == 0,7. Тотда L(морковъ помидоры) == L(СШlаm помидоры) == 1/0,7 == 1,43. Последняя ассоциация представляет больший интерес, так как она встречается чаще, то есть применяется для большеrо числа покупателей. S(морковъ помидоры) == 3/10 == 0,3; S(морковъ) == 0,3; S(помидоры) == 0,7, Таким образом, Т(морковъ пОJчидоры) == 0,3 0,3.0,7 == 0,09. S(СШlаm помидоры) == 0,4; S(СШlаm) == 0,4; S(помидоры) == 0,7. Следовательно, Т(СШlаm помидоры) == 0,4 0,4 '0,7 == 0,12. Итак, значимость второй ассоциации больше, чем первой. Иноrда лифт, представляющий собой меру полезности ассоциативноrо прави ла, называют улучшением (improvement) и вычисляют подобно левереджу, только берется не разность, а отношение наблюдаемой частоты и частот появления по OT дельности: S(A B) I(A B)== S(A).S(B) ' Улучшение (лифт) показывает, полезнее ли правило случайноrо уrадывания, Если I(A В) > 1, это значит, что вероятнее предсказать наличие набора В с по мощью правила, чем утадать случайно. Такие меры, как лифт илевередж, MOryт использоваться для последующеrо oтpa ничения набора рассматриваемых ассоциаций путем установки пороrа значимости, ниже которото ассоциации отбрасываются, Поиск ассоциативных правил в процессе поиска ассоциативных правил может производиться обнаружение всех ассоциаций, поддержка и достоверность для которых превышают заданнЫЙ минимум. Простейший алrоритм поиска ассоциативных правил рассматривает все возможные комбинации условий и следствий, оценивает для них поддержку и достоверность, а затем исключает все ассоциации, которые не удовлетворяют заданным оrраничениям, Число возможных ассоциаций с увеличением числа предметов растет экспоненциально. Если в базе данных транзакций присутствует k предметов и все ассоциации являются бинарными (то есть содержат по одному предмету в условии и следствии), то потребуется проанализировать k. 2k j ассоци аций. Поскольку реальные базы данных транзакций, рассматриваемые при анализе рыночной корзины, обычно содержат тысячи предметов, вычислительные затраты при поиске ассоциативных правил отромны. Например, если рассматривать BЫ борку, содержащую всето 100 предметов, то количество ассоциаций, образуемых этими предметами, составит 100 . 2 99 6,4 . 1 031. Поиск ассоциативных правил
rлава б. Data Mining: задача ассоциации 287 путем вычисления поддержки и достоверности для всех возможных ассоциаций 11 сравнения их с заданным пороrовым значением малоэффективен из за больших выислительныыx затрат. Поэтому в процессе rенерации ассоциативных правил широко используются методики, позволяющие уменьшить количество ассоциаций, которое требуется проанализировать. Одной из наиболее распространенных является методика, oc !fованная на обнаружении так называемых частых наборов, котда анализируются только те ассоциации, которые встречаются достаточно часто, На этой концепции основан известный алrоритм поиска ассоциативных правил Apriori, 6.2. Алrоритм Apriori При практической реализации систем поиска ассоциативных правил используют различные методы, которые позволяют снизить пространство поиска до размеров, обеспечивающих приемлемые вычислительные и временные затраты, например аЛlОрUmм Арпоп (Agrawal и Srikant, 1994). Частые предметные наборы и их обнаружение в основе алrоритма Apriori лежит понятие частою набора (frequent itemset), KO торый также можно назвать частым предметным набором, часто встречающимся множеством (соответственно, он связан с понятием частоты). Под частотой пони мается простое количество транзакций, в которых содержится данный предметный набор. Тотда частыми наборами будут те из них, которые встречаются чаще, чем в заданном числе транзакций. ОПРЕДЕЛЕНИЕ Частый предметный набор предметный набор с поддержкой больше заданноro nopora либо равной ему. Этот nopor называется минимальной поддержкой. Методика поиска ассоциативных правил с использованием частых наборов co стоит из двух шаrов. 1. Следует найти частые наборы. 2. На их основе необходимо crенерировать ассоциативные правила, удовлетво ряющие условиям минимальной поддержки и достоверности. Чтобы сократить пространство поиска ассоциативных правил, алrоритм Apriori использует свойство антимонотонности. Свойство утверждает, что если пред метный набор Z не является частым, то добавление HeKoToporo новото предме та А к набору Z не делает ето более частым. Друrими словами, если Z не является частым набором, то и набор Z u А также не будет являться таковым, Данное полезное свойство позволяет значительно уменьшить пространство поиска acco циативных правил.
288 Часть 1. Теория бизнес анализа Пусть имеется множество транзакций, представленное в табл, 6.2, Таблица 6.2. Множество транзакций N!! транзакции Предметные наборы 1 Капуста,перец, кукуруза 2 Спаржа, кабачки, кукуруза 3 Кукуруза, IlОМИДОрЫ, фасоль, кабачки 4 Перец, кукуруза, помидоры, фасоль 5 Фасоль, спаржа, капуста 6 Кабачки, спаржа, фасоль, помидоры 7 Помидоры, кукуруза 8 Капуста, помидоры, перец 9 Кабачки, спаржа, фасоль 10 Фасоль, кукуруза 11 Перец, капуста, фасоль, кабачки 12 Спаржа, фасоль, кабачки 13 Кабачки, кукуруза, спаржа, фасоль 14 Кукуруза, перец, помидоры, фасоль, капуста Будем считать частыми наборы, которые встречаются в D более чем! == 4 раза. Сначала найдем частые однопредметные наборы, Для этоrо представим базу дaH ных транзакций из табл, 6,2 в нормализованном виде, который демонстрируется в табл. 6.3. Таблица 6.3. Нормализованный вид множества транзакций N!! транзакции Спаржа Фасоль Капуста Кукуруза Перец Кабачки Помидоры 1 О О 1 1 1 О О 2 1 О О 1 О 1 О 3 О 1 О 1 О 1 1 4 О 1 О 1 1 О 1 5 1 1 О О О О 1 6 1 1 О О О 1 1 7 О О О 1 О О 1 8 О О 1 О 1 О 1 9 1 1 О О О 1 О 10 О 1 О 1 О О О 11 О 1 1 О 1 1 О 12 1 1 О О О 1 О 13 1 1 О 1 О 1 О 14 О 1 1 1 1 О 1 На пере сечении строки транзакции и столбца предмета ставится 1, если данный предмет присутствует в транзакции, и О в противном случае. Тоrда, просуммиро вав значения в каждом столбце, мы получим частоту появления каждоrо предмета.
rлава б. Data Mining: задача ассоциации 289 поскольку все суммы равны или превышают 4, все предметы можно рассматривать каК частые однопредметные наборы. Обозначим их в виде множества F 1 == {спаржа, фасолЬ, 'Капуста, 'Ку'Куруза, перец, 'Кабач'Ки, помидоры}. Теперь переходим к поиску частых 2 предметных наборов, Вообще, для поиска Fk' то есть k предметных наборов, алrоритм Apriori сначала создает множество Fk кандидатов в k предметные наборы путем связывания множества Fk 1 С самим собой. Затем Fk сокращается с использованием свойства антимонотонности. Преk метные наборы множества Fko которые остались после сокращения, формируют Fk. Множество F 2 содержит все комбинации предметов, представленные в табл. 6.4. Таблица 6.4. Предметные наборы Набор Копичecrво Набор Копичecrво Спаржа, фасоль 5 Капуста, кукуруза 2 Спаржа, капуста 1 Капуста, перец 4 Спаржа, кукуруза 2 Капуста, кабачки 1 Спаржа, перец О Капуста, помидоры 2 Спаржа, кабачки 5 Кукуруза, перец 3 Спаржа, помидоры 1 Кукуруза,кабачки 3 Фасоль, капуста 3 Кукуруза, помидоры 4 Фасоль, кукуруза 5 Перец, кабачки 1 Фасоль,перец 3 Перец, помидоры 3 Фасоль, кабачки 6 Кабачки,помиДОРЫ 2 Фасоль, помидоры 4 Поскольку f == 4, из табл, 6.4 в множество F 2 (то есть множество 2 предметных наборов) войдут только те наборы, которые встречаются в исходной выборке 4 раза или более, Таким образом: {спаржа, фасоль}; {спаржа, 'Кабач'Ки}; {фасоль, 'Ку'Куруза}; F 2 == {фасоль, 'Кабач'КИ}; {фасоль, помидоры}; {'Капуста, перец}; {'Ку'Куруза, помидоры}. Далее мы используем частые 2 предметные наборы из множества F 2 дЛЯ TeHe рации множества F э 3 предметных наборов. Для этоrо нужно связать множество F 2 с самим собой, тде предметные наборы являются связываемыми, если у них первые k 1 предметов общие (предметы должны следовать в алфавитном по рядке), Например, наборы {спаржа, фасоль} и {спаржа, 'Кабач'Ки}, для которых k == 2, чтобы быть связываемыми, должны иметь k 1 == 1 общий первый элемент, которым и является спаржа. В результате связывания пары 2 предметных наборов мы получим: { спаржа, фасоль} + {спаржа, 'Кабач'Ки} == {спаржа, фасоль, 'Кабач'КИ} ,
290 Часть 1. Теория бизнес анализа Аналоrично {фасоль, кукуру:,а} и {фасоль, кабачки} MorYT быть объединены в 3 предметный набор {фасоль, кукуруза, кабачки}, И наконец, так же ФОРМИРУЮтся остальные 3 предметные наборы {фасоль, кабачки, помидоры} и {фасоль, КУКУРуза, помидоры}. Таким образом: {спаржа, фасоль, кабачки}; F {фасоль, кукуруза, кабачки}; э {фасоль, кабачки, помидоры}; {фасоль, кукуруза, помидоры}. Затем F э также сокращается с помощью свойства антимонотонности. Для каждоrо предметноrо набора s из множества F э создаются и проверяются под наборы размером k 1, Если любой из этих поднаборов не является частым и, следовательно, наборы s также не MOryт быть частыми (в соответствии со свойством антимонотонности), то он должен быть исключен из рассмотрения. Например, пусть s == {спаржа, фасоль, кабачки}. Тоrда поднаборы размера k 1 == 2, crенерированные на основе набора s, {спаржа, фасоль}, {спаржа, кабачки} и {фасоль, кабачки}. Из табл, 6.4 можно увидеть, что все эти поднаборы являются частыми, значит, и набор s == {спаржа, фасоль, кабачки} будет частым и сокращению не подлежит. Таким же образом можно убедиться, что и набор s == {фасоль, кукуруза, помидоры} является частым. Рассмотрим набор s == {фасоль, кукуруза, кабачки}. Поднабор {кукуруза, кабач ки} появляется Bcero три раза (см. табл. 6.4), поэтому не является частым. Тоrда в соответствии со свойством антимонотонности и набор s == {фасоль, кукуруза, кабачки} не будет частым мы должны ero отбросить. Теперь рассмотрим набор {фасоль, кабачки, помидоры}. Поскольку под набор {кабачки, помидоры} не является частым (частота ero появления Bcero 2), набор {фасоль, кабачки, помидоры} также не является частым и вследствие этоrо будет исключен из рассмотрения, Таким образом, в множество F э 3 предметных частых наборов попадают два Ha бора {спаржа, фасоль, кабачки} и {фасоль, кукуруза, nОJчидоры}. Их уже нельзя связать, поэтому задача поиска частых предметных наборов на исходном множестве транзакций решена. rенерация ассоциативных правил После Toro как все частые предметные наборы найдены, можно переходить к reHe рации на их основе ассоциативных правил, Для этоrо к каждому частому предмет ному набору s, нужно применить процедуру, состоящую из двух шаrов. 1, rенерируются все возможные поднаборы s. 2, Если поднабор ss является непустым поднабором s, то рассматривается ассоци ация R: ss (s ss), rде s ss представляет собой набор s без поднабора ss, R считается ассоциативным правилом, если удовлетворяет условию заданноrо минимума поддержки и достоверности. Данная процедура повторяется для каждоrо подмножества ss из s,
rлава б. Data Mining: задача ассоциации 291 Рассмотрим предметные наборы кандидаты в ассоциативные правила, coдep )/(аЩие два предмета в условии, например набор 5 == {спаржа, фасоль, кабачки} из множества 3 компонентных предметных наборов F з , полученных на этапе поиска часТЫХ наборов. Соответствующими поднаборами 5 являются: {спаржа}, {фасоль}, {кабачки}, {спаржа, фасоль}, {спаржа, кабачки}, {фасоль, кабачки} (табл, 6,5). Таблица 6.5. Ассоциативные правила с двумя предметами в условии ЕСЛИ условие, то следствие Поддержка Достоверность Если {спаржа и фасоль}, то {кабачки} 4/14 == 28,6 % 4/5==80% Если {спаржа и кабачки}, то {фасоль} 4/14 == 28,6 % 4/5==80% Если {фасоль и кабачки}, то {спаржа} 4/14 == 28,6 % 4/6 == 66,7 % Для первоrо ассоциативноrо правила в табл. 6.5 предположим, что 55 == {спаржа, фасоль}, и тоrда (5 55) == {кабачки}. Рассмотрим правило R: {спаржа, фасоль} {кабачки}. Поддержка, показывающая долю транзакций, которые содержат как условие { спаржа, фасоль}, так и следствие {кабач'КU }, в общем наборе транзакций, имеющихся в базе данных, составляет 28,6 % (4 из 14 транзакций). Чтобы найти достоверность, мы должны учесть, что набор {спаржа, фасоль} появляется в 5 из 14 транзакций, 4 из которых также содержат {кабач'КU}, Torдa достоверность будет 4/5 == 80 %, Аналоrич но определяются поддержка и достоверность для остальных правил в табл. 6.5. Если предположить, что минимальная достоверность для правила составляет 60 %, то все ассоциации, представленные в табл. 6.5, будут правилами. Если пороr установить равным 80 %, то правилам и будут считаться только первые две acco циации, Наконец, рассмотрим кандидатов в правила, содержащих одно условие и одно следствие, Для этоrо применим описанную выше методику rенерации ассоциатив ных правил к множеству Р 2 2 компонентных предметных наборов, и результаты представим в табл, 6.6, Таблица 6.6. Ассоциативные правила с одним предметом в условии Если условие, то следствие Поддержка Достоверность Если { спаржа}, то {фасоль} 5/14 == 35,7 % 5/6 == 83,3 % Если {фасоль}, то {спаржа} 5/14 == 35,7 % 5/10 == 50 % Если {спаржа}, то {кабачки} 5/14 == 35,7 % 5/6 == 83,3 % Если {кабачки}, то {спаржа} 5/14==35,7% 5/7==71,4% Если {фасоль}, то {кукуруза} 5/14 == 35,7 % 5/10 == 50 % Если {кукуруза}, то {фасоль} 5/14 == 35,7 % 5/8 == 62,5 % Если {фасоль}, то {кабачки} 6/14 == 42,9 % 6/ 1 О == 60 % Если {кабачки}, то {фасоль} 6/14 == 42,9 % 6/7 == 85,7 % Если {фасоль}, то {помидоры} 4/14 == 28,6 % 4/10==40% Если {помидоры}, то {фасоль} 4/14 == 28,6 % 4/6 == 66,7 % Продолжение ,р
292 Часть 1. Теория бизнес анализа Таблица 6.6 (продолжение) Если условие, то следствие Поддержка Достоверность Если {капуста}, то {перец} 4/14 == 28,6 % 4 / 5 == 80 % Если {перец}, то {капуста} 4/14 == 28,6 % 4/5==80% Если {кукуруза}, то {помидоры} 4/14 == 28,6 % 4/8 == 50 % Если {помидоры}, то {кукуруза} 4/14 == 28,6 % 4/6 == 66,7% Чтобы проверить значимость сrенерированных правил, обычно перемножают их значения поддержки и достоверности, что позволяет аналитику ранжировать правила в соответствии с их значимостью и достоверностью, В табл, 6,7 представ лен список правил, сrенерированных на основе исходноrо множества транзак ций (см. табл, 6.2) при заданном уровне минимальной достоверности 80 %, Таблица 6.7. Ассоциативные правила Если условие, то следствие Поддержка, 5 Достоверность, С C.S Если {кабачки}, то {фасоль} 6/14==42,9% 6/7 == 85,7 % 0,3677 Если {спаржа}, то {фасоль} 5/14 == 35,7 % 5/6 == 83,3 % 0,2974 Если {спаржа}, то {кабачки} 5/14 == 35,7 % 5/6 == 83,3 % 0,2974 Если {капуста}, то {перец} 4/14 == 28,6 % 4/5 == 80 % 0,2288 Если {перец}, то {капуста} 4/14 == 28,6 % 4/5 == 80 % 0,2288 Если {спаржа и фасоль}, то {кабачки} 4/14 == 28,6 % 4/5 == 80 % 0,2288 Если {спаржа и кабачки}, то {фасоль} 4/14 == 28,6 % 4/5 == 80% 0,2288 Таким образом, в результате применения алrоритма Apriori нам удалось обна ружить 7 ассоциативных правил, с достоверностью не менее 80 % показывающих, какие продукты из исходноrо набора чаще Bcero продаются вместе. Это знание по зволит разработать более совершенную маркетинrовую стратеrию, оптимизировать закупки и размещение товара на прилавках и витринах. 6.3. Иерархические ассоциативные правила Если производить поиск ассоциативных правил среди отдельных предметов (Ha пример, товаров в маrазине), то можно обнаружить, что во мноrих случаях acco циации с высокой поддержкой для отдельных товаров практически отсутствуют. Особенно это характерно для супермаркетов, [де ассортимент товаров каждоrо вида очень велик Например, в продаже MOryT иметься десятки разновидностей таких товаров, как кетчуп и макароны, Поэтому, несмотря на то что в целом под цержка ассоциации макароны кетчуп может быть очень высока, поддержка ассоциаций между отдельными видами этих товаров, скорее Bcero, будет низкой. Следовательно, такие ассоциации, хотя и MOryT представлять интерес, окажутся ИСКЛюченными из рассмотрения, поскольку не будут удовлетворять некоторому минимальному пороry поддержки Sтin.
rлава б. Data Mining: задача ассоциации 293 Для решения данной проблемы при поиске ассоциативных правил paCCMaT pfl BaIOT не отдельные предметы, а их иерархию. Если на нижних иерархических уровнях интересные ассоциации отсутствуют, то на более высоких они MOryT иметь место. Иными словами, поддержка отдельноrо предмета всеrда будет меньше, чем поддержка rpуппы, в которую он входит: S(I) S(iJ, rде 1 rpуппа в иерархии; ij предмет, входящий в данную rpуппу. Причины этоrо очевидны: общая поддержка rруппы равна сумме поддержек всех входящих в нее предметов: N S(I) == )j, j 1 rде N число предметов в rpуппе. Например, рассмотрим иерархию продуктов, представленную на рис. 6.1. Продукты Кетчуп Макаронные изделия [1 ) Шrn m i@ ШmJ :I: ':S;:s; t: Q) са :s; Q) 3 j 8 g ! 2 Рис. 6.1. Иерархия продуктов в этой иерархической схеме кетчуп и макаронные изделия имеют множество подвидов. Транзакции в базе данных являются результатом сканирования штрих кодов в контрольно кассовых пунктах, поэтому содержат информацию только о конкреrnых товарах. Следовательно, при анализе таких максимально детализи рованных данных интересные ассоциации MOryT отсутствовать. Если структура базы данных транзакций позволяет отражать иерархию товаров, то можно исследовать все образованные ими иерархические уровни. Ассоциатив ные правила, обнаруженные для предметов, расположенных на различных иерар хических уровнях, получили название иерархические ассоциатив1lые правила. В за рубежной литературе они также известны как мноrоуровневые правила (multilevel rules) или обобщенные правила (generalized rules). Пусть имеется множество транзакционных данных о продажах компьютерной фирмы (табл. 6.8).
294 Часть 1. Теория бизнес анализа Таблиц.. 6.8. Пример транзакций N2 транзакции Предметные наборы 1 Настольный компьютер Acer, лазерный принтер HP 2 OS MS Windows Хр, ПО MS Office 3 Мышь Genius, коврик для мыши Logitech 4 Портативный компьютер Dell, ПО MS Office 5 Настольный компьютер Cornpaq ... .." Иерархия предметов, связанных с компьютерной техникой, представлена На рис. 6.2. Она содержит 4 уровня. Обычно иерархические уровни нумеруются сверху вниз, начиная с нулевоrо. Узел, соответствующий нулевому уровню, называется корневым (root node). В нашей иерархической схеме уровень 2 включает виды компьютерноrо обеспечения, уровень 3 конкретные предметы (товары), а ypo вень 4 фирму производителя. Компьютеры nporpaMMHoe обеспечение Принтеры Аксессуары Q) Q) ф Q) :о :о о о Q) Q) s:s: :J: :J: :J: :о :о :.:3 10 :х: ..а ..а s: :! :х: :J: 3 s::o G 1--- Q) а. ,s: :! о 1--- Q) >- :о ь u s: с') а. ::Е 00; а. s: «1 1--- :.<: со о U а. с::: U :J: С С Рис. 6.2. Иерархия товаров, связанных с компьютерной техникой Предметы из табл. 6.8 принадлежат самому низкому уровню иерархии, то есть содержат конкретные товары конкретных производителей. Обнаружить интерес ные модели покупок на столь низком уровне трудно. Например, если каждый из предметов настольный 'Компьютер Compaq и лазерный nринтер Саnоn появляется в очень небольшом числе транзакций, то трудно будет обнаружить ассоциацию настольный компьютер Compaq лазерный nринтер Саnоn с высоким уровнем поддержки и достоверности, так как лишь небольшое количество ЮIИентов приоб ретают их совместно. Хотя в целом поддержка ассоциации 'Компьютер nринтер, скорее Bcero, будет достаточно высока. Иными словами, ассоциации, которые содержат предметы более высоких уровней иерархии, будут с большей вероятностью удовлетворять условию ми
rлава б. Data Mining: задача ассоциации 295 trимальной поддержки и достоверности, чем предметы уровня с максимальной детализацией. Следовательно, искать интересные ассоциации в мноrоуровневой иерарХИИ удобнее, чем только среди предметов caMoro низкоrо уровня, Более Toro, можно ожидать, что чем выше уровень иерархии, тем больше вероятность обtrаружить ассоциации с высокой поддержкой, Таким образом, иерархия предметов может использоваться для сокращения числа рассматриваемых предметных наборов. 1, Сначала ищутся ассоциации с высокой поддержкой для верхних уровней иерар хии. 2, Анализируются потомки только тех предметов верхних уровней, которые YДOB летворяют заданному минимуму поддержки Smin. Анализ потомков тех предме тов, которые сами по себе являются редкими, не имеет смысла, поскольку они будут встречаться еще реже, чем их предки. Перемещаясь вверх или вниз по иерархии, мы можем реrулировать количе СТВО данных, которое нужно обработать. Так, при поиске на высоких уровнях иерархии уменьшается объем обрабатываемых данных, но увеличивается степень обобщенности полученных результатов. При спуске на нижние уровни количест во обрабатываемых данных увеличивается, но при этом увеличивается и степень детальности анализа, В качестве недостатка иерархическоrо подхода к поиску ассоциативных правил иноrда указывают на то, что полученные правила в большинстве случаев относятся не к отдельным предметам, а к их rpуппам, что не всеrда соответствует требованиям анализа. Следует заметить, что в некоторых приложениях количество отдельных предметов может быть так велико, что обнаружение ассоциативных правил даже на некотором уровне обобщения это уже удача. Кроме Toro, бизнес аналитические технолоrии в большей мере ориентированы на обобщенные данные, поэтому во мноrих случаях использование иерархий предметов при поиске ассоциативных правил открывает принципиально новые возможности, делает анализ более rибким и позволяет получать дополнительные знания. Методы поиска иерархических ассоциативных правил Существует несколько подходов к поиску иерархических ассоциативных правил, Большинство из них, как и классический алrоритм Apriori, основаны на вычислении поддержки и достоверности. Чаще Bcero используются нисходящие методы, коrда частые предметные наборы исследуются на каждом иерархическом уровне, начиная с первоrо и заканчивая уровнем с наибольшей детализацией, Проще rоворя, как только обнаруживаются все популярные предметные наборы на первом уровне, Ha чинается поиск популярных предметных наборов на втором и т, д. На каждом уровне для открытия популярных наборов может использоваться любой алrоритм, напри мер Apriori и ero модификации. Приведем несколько вариантов таких подходов, Вариант 1 использование ОДШIаковоrо пороrа мmmмальной поддержки Smin на всех иерархических уровнях. При поиске правил на каждом уровне иерархии задается некоторый пороr минимальной поддержки, Если поддержка предмета
296 Часть 1. Теория бизнес анализа превышает данный пороr, то он появляется достаточно часто, чтобы для Hero имело смысл искать ассоциации с друrими предметами. Можно указать некоторый ПОроr поддержки (например, 5 %) и использовать ero на всех иерархических УРовнях. На рис. 6.3 приведен пример, rдe однопредметные наборы 'К-омпьютер и настольный 'К-омпьютер будут обнаружены как популярные, а портативный 'К-омпьютер нет, поскольку он не преодолел заданный пороr поддержки. Уровень 1 (5 т ,. = 0,05) Коt1Пьютер (5 = 0,1) Уровень 2 (5т;. = 0,05) Портативный компьютер (5 = 0,04) Рис. 6.3. Иллюстрация первоrо варианта При использовании одинаковой минимальной поддеРЖКl! на всех уровнях проце дура поиска частых наборов упрощается. Ее можно дополнительно ОIПимизировать, если известно, что родительский узел иерархии не содержит частых наборов. В этом случае проверка дочерних узлов может не производиться, поскольку они также не будут содержать частых наборов. Например, если известно, что компьютеры прода ются редко, то отдельные их разновидности будут продаваться еще реже. Однако подход, при котором для поиска кандидатов используется одинаковый пороr поддержки на всех уровнях иерархии, имеет ряд недостатков. Так, маловеро ятно, что предметы нижних уровней продаются так же часто, как предметы более высоких уровней. Если пороr минимальной поддержки слишком большой, это может привести к потере полезных ассоциаций между предметами низких уровней. Если пороr слишком низкий, это может породить MHoro неинтересных ассоциаций между предметами высоких уровней. Чтобы избежать данных проблем, используется MeTO дика адаптивноrо пороrа, который будет отличаться для разных уровней иерархии. Вариант 2 использование пониженноrо пороrа минимальной подцержки для нижних уровней иерархии. Данный подход предполаrает, что на каждом иерархическом уровне задается свой пороr минимальной поддержки для отбора кандидатов. При этом чем ниже уровень, тем ниже пороr. Например, на рис. 6.4 пороr минимальной поддержки для уровней 1 и 2 составляет 0,5 и 0,3 COOTBeT ственно. Таким образом, и 'К-омпьютер, и настольный 'Компьютер, и портативный 'Компьютер окажутся популярными. Уровень 1 (5 т ;. = 0,05) Уровень 2 (5 т ,. = О,ОЗ) Рис. 6.4. Иллюстрация BToporo варианта
rлава б. Data Mining: задача ассоциации 297 Для поиска иерархических ассоциативных правюr с уменьшением минимальной поддержки на нижних уровнях можно использовать несколько альтернативных стратеrий поиска. Вариант 3 независимая установка nopora. Осуществляется полный поиск, I<оrда отсутствуют априорные сведения, которые MOryT использоваться для COKpa lUениЯ числа рассматриваемых предметных наборов. Проверяется каждый узел независиМО от Toro, содержит ли ero родительский узел частые предметные наборы. Здесь возможны следующие ситуации. D Межуровневая (cross level) фильтрация по одному предмету. Предмет на i M уровне проверяется тоrда и только тоrда, коrда ero родительский узел на уровне i 1 содержит частые наборы. Например, на рис. 6.5 потомки узла 'Компьютер (то есть настольный 'Компьютер и портативный 'Компьютер) не проверяются, поскольку узел 'Компьютер не является частым: ero поддержка 5 == 0,1, а пороr Sll1in == 0,12. Уровень 1 (5 m1n 0,12) Уровень 2 (5 m1n 0,03) Рис. 6.5. Межуровневая фильтрация по одному предмету о Межуровневая фильтрация по k предмепюму набору. k предметный набор на i M уровне проверяется тоrда и только тоrда, коrда ero родительский k предмет ный набор на уровне i 1 является частым. Например, на рис. 6.6 2 предметный набор {'Компьютер, принтер} является частым, а предметные наборы {пopтa тивный 'Компьютер, струйный принтер}, {портативный 'Компьютер, лазерный принтер}, {настольный 'Компьютер, струйный принтер} и {настольный 'КOMпb ютер, лазерный принтер} должны проверяться. Уровень 1 (5 m1n 0,05) Компьютер, принтер (5 = 0,07) Уровень 2 (5 min 0,02) Портативный' компьютер и лаэерный принтер 5=0,01 Портативный компьютер и струйный принтер 5; 0,02 Настольный компьютер и лаэерный принтер 5 = 0,01 Настольный компьютер и струйный ПРинтер 5 = 0,03 Рис. 6.6. Межуровневая фильтрация по k предметам Стратеrия, коrда минимальная поддержка устанавливается для каждоrо уровня независимо, может привести к проверке orpoMHoro количества редко встречающихся
298 Часть 1. Теория бизнес анализа предметов на нижних уровнях с обнаружением ассоциаций между предметами с низкой значимостью. Например, если .компьютерная мебель сама по себе по купается редко, то про верка, является ли частым набор {компьютерное кресло, портативный компьютер}, не имеет смысла. В то же время если аксессуары для компьютера по купаются часто, то про верка ассоциаций настольный компью тер мышь имеет смысл. Стратеrия межуровневой фlUIьтрации по k предметному набору позволяет orpa ничить число проверяемых наборов теми, которые являются потомками частых k предметных наборов. Данное оrpаничение весьма эффективно, поскольку обычно не существует большоrо количества частых k предметных наборов (особенно при k > 2). Следовательно, этот подход дает возможность значительно сократить число рассматриваемых наборов. Одна из проблем такой стратеrии заЮIючается в том, что предметные наборы, которые на нижних уровнях иерархии моrли бы оказаться частыми, «выпадут» из рассмотрения, поскольку их предки не смоrли преодолеть более высокий пороr, применяемый на верхних уровнях. Например, если предмет монитор 17" на ypOB не i является частым в соответствии с пороrом минимальной подцержки для данноrо уровня, то ero предок монитор на уровне i 1 может не быть частым, так как пороr на этом уровне будет выше. В результате такие часто встречающиеся ассоциации, как настольный компьютер монитор 17", MOryT быть утеряны. Модифицированной версией межуровневой фильтрации по одному предмету является управляемая межуровневая фильтрация. В этом методе вводится еще один пороr, называемый уровнем прохода (1evel passage). Он может быть установлен для относительно часто встречающихся предметов на нижних уровнях. Иными словами, данный подход позволяет потомкам предметов, которые не удовлетворяют OCHOB ному пороry минимальной поддержки, подверrаться проверке, но только если эти предметы удовлетворяют проходному пороry. Каждый уровень может иметь свой собственный проходной пороr. Он обычно выбирается между значениями пороrов минимальной подцержки для следующеro и дaHHoro уровня. Например, на рис. 6.7 установка на уровне 1 проходноrо пороrа, paвHoro 0,08, [юзволяет про верить и отнести к частым узлы портативный компьютер и Ha тольный компьютер на уровне 2 даже в том случае, если их родительский узел сомпьютер не является таковым. Эта методика дает возможность сделать процесс юиска иерархических ассоциативных правил более rибким, а также уменьшить IИсло ассоциаций с низкой значимостью. Уровень 1 (Smin = 0,12; 'р = В %) Уровень 2 (Sm,n = 0,03) Рис. 6.7. Управляемая межуровневая фильтрация
rлава б. Data Mining: задача ассоциации 299 6.4. Последовательные шаблоны А.ссоциативные правила имеют ряд оrраничений, из за которых не MorYT OXBa rbIBaTb отдельные аспекты анализа транзакционных данных, представляющие большой практический интерес. Дело в том, что ассоциативные правила учитывают только факты cOBMecTHoro появления товаров в транзакциях, но не учитывают временной аспект, а именно последовательность появления товаров и динамику продаж. Если мы рассмотрим рост или спад продаж определенных товаров ЮIИ услуr за несколько последователь Hыx периодов времени, то сможем получить полезные знания, скажем, о rотовности к.пиентов к покупке HOBoro товара или услуrи, о целесообразности стимулирования спроса и т. д, Для ввода в рассмотрение времени и последовательности появления товаров достаточно фиксировать в транзакции ее дату и время, что леrко реализу ется современными ОLТР системами. Кроме Toro, ассоциативные правила не являются клиентоориентированными, поскольку не связывают наборы предметов в транзакции с определенным клиен том, В то же время может представлять интерес исследование динамики продаж в разрезе конкретных клиентов. С этой целью в транзакцию, кроме предметноrо набора, необходимо ввести идентификатор клиента, который может быть получен при оплате по кредитным картам, клиентским картам, дающим право на скидку, и т, д, Такие транзакции называются клиентскими и образуют клиенто ориен тированные транзакционные базы данных, которые обязательно содержат поле идентификатора клиента. Чтобы расширить возможности анализа транзакционных данных с учетом времени, последовательности появления предметов и ориентированности на KOH KpeTHoro клиента, разработаны последовательные шаблоны (sequential patterns). Теория последовательных шаблонов во MHoroM базируется на ассоциативных правилах и, по сути, является их расширением, Базовые понятия здесь те же: транз акция, предметный набор, частота набора, поддержка и т. д. Кроме Toro, для поиска последовательных шаблонов используются адаптированный алrоритм Apriori и ero модификации. И так, если в ассоциативных правилах важен только факт cOBMecTHoro присут ствия товаров в одной транзакции, то в последовательных шаблонах рассматрива ется и последовательность их появления. Интуитивно понятно, что последователь ным шаблоном может быть только такая последовательность, которая встречается в базе данных достаточно часто. Поэтому здесь возникает та же проблема, что и для ассоциативных правил: большое число рассматриваемых предметов порождает orpoMHoe количество возможных последовательностей, что приводит к серьез ным вычислительным затратам при использовании полноrо перебора. Но и здесь применим принцип антимонотонности: последовательности, содержащие редкие предметы, не MOryT быть частыми, что позволяет существенно снизить простран ство поиска. Применение последовательных шаблонов выходит за рамки анализа рыноч ной корзины. Они позволяют выявлять типичные последовательности событий
300 Часть 1. Теория бизнес анализа в самых разнообразных предметных областях. Например, последовательность может включать такие события, как взятие нескольких фильмов клиентом в ВИдео прокате, Если фильм представляет собой трилоrию (скажем, «Звездные ВОйны ), то типичная последовательность, в которой клиент будет брать эти фильмы, 1 я часть, 2 я часть и 3 я часть. При этом последовательность не обязательно должна быть непрерывной. В промежутке клиент может взять и друrой фильм, но типичная последовательность при этом сохранится. Анализ всех последователь ностей фильмов, взятых напрокат определенными клиентами, может выявить наиболее типичные шаблоны, знание которых поможет стимулировать клиентов, предлаrая им фильмы в соответствующем порядке, Постановка задачи Рассмотрим поиск последовательных шаблонов, используя задачу анализа рыноч ной корзины. Пусть имеется база данных, в которой каждая запись представляет собой клиентскую транзакцию, содержащую следующие поля: идентификатор клиента, дата/время транзакции и набор купленных товаров. Введем оrpаничение: ни один клиент не может иметь двух или более транзакций, совершенных в один и тот же момент времени, ПоследоватеЛЪ1lOстъ это упорядоченный список предметных наборов. Будем записывать последовательность в треуrольных скобках, а предметный набор в круrлых. Тоrда, если обозначать предметы целыми числами, пред метные наборы будут записаны в виде (2,4,5), (1,з), а последовательность, содержащая эти наборы, в виде «2,4,5); (1,3». Если предметы являются товарами и появились в одном наборе, это значит, что они были приобретены одновременно. Обозначим предметный набор I == (i l , i 2 '", i п ), rде i j предмет, Обозначим после довательность 5 == (11'/2.'. 1т), rде 1 ; предметный набор. Последовательность 51 содержится в последовательности 52, если все предмет ные наборы 51 содержатся в предметных наборах 52. Например, последовательность «3); (4,5); (8» содержится в последовательности «7); (3,8); (9); (4,5,6); (8», поскольку (3) (3,8), (4, 5) (4,5,6) и (8) (8). Однако «3); (5» ct. «3,5» и наоборот, поскольку в первой последовательности предметы 3 и 5 были куплены один за друrим, а во второй совместно, ОПРЕДЕЛЕНИЕ Последовательность 5 называется максимальной, если она не содержится в какой-либо друrой последовательности. ОПРЕДЕЛЕНИЕ Последовательность 5 называется клиентской, если она, кроме набора предметов, даты и времени, содержит также идентификатор клиента.
rлава б. Data Mining: задача ассоциации 301 Пусть клиент совершил несколько транзакций Tt, Т 2 ... Tk. Тоrда каждый предметный набор в транзакции т; обозначим l( Т;), а каждую клиентскую последо вательность для данноrо клиента запишем как I(Т 1 ), I(Т 2 ),.. I(T k ). Иными словами, клиентская последовательность это последовательность предметных наборов, содержащихся во всех транзакциях, совершенных данным клиентом. Последовательность 5 называется поддерживаемой клиентом, если она coдep жится в ero клиентской последовательности. Тоrда поддержка последовательности определяется как число поддерживающих ее клиентов, которое обычно выражается в процентах от общеrо числа клиентов. Таким образом, понятие поддержки для последовательных шаблонов несколько отличается от аналоrичноrо понятия для ассоциативных правил. Для базы данных клиентских транзакций задача поиска последовательных шаблонов заключается в обнаружении максимальных последовательностей среди всех, имеющих поддержку выше заданноrо пороrа. Каждая такая максимальная последовательность и есть последовательный шаблон. Далее будем называть последовательности, удовлетворяющие оrраничению минимальной поддержки, частыми (по аналоrии с часто встречающимися наборами в теории ассоциатив ных правил). Рассмотрим набор транзакций, представленный в табл. 6.9. Они упорядочены по кодам клиентов, а для каждоrо клиента по дате транзакции. Таблица 6.9. Пример набора транзакций ID клиента Дата транзакции Купленные предметы 1 25.06.2008 3 1 30.06.2008 9 2 10.06.2008 1,2 2 15.06.2008 3 2 20.06.2008 4,6,7 3 25.06.2008 3,5,7 4 25.06.2008 3 4 30.06.2008 4, 7 4 25.07.2008 9 5 12.06.2008 9 После преобразования базы данных в набор клиентских последовательностей получим табл. 6.10. Таблица 6.10. Клиентские последовательности N9 Клиентская последовательность 1 «3); (9» 2 «1,2); (3); (4, 6, 7» 3 «3,5,7» 4 «3); (4, 7); (9» 5 «9»
302 Часть 1. Теория бизнес анализа Зададим уровень минимальной поддержки 25 %. В нашем примере ему будет удовлетворять любая последовательность, поддерживаемая как миНИмум двумя клиентами, то есть «3); (9» и «3); (4, 7», которые также являются максималь ными. В данном примере они и будут искомыми шаблонами. Последовательный шаблон «3); (9» поддерживается клиентами 1 и 4. Кли ент 4 купил предметы (4, 7) между предметами 3 и 9, но поддерживает шаблон «3); (9», поскольку шаблоны не обязательно являются непрерывными последователь ностями. Шаблон «3); (4, 7» поддерживается клиентами 2 и 4. Клиент 2 купил предмет 6 между 4 и 7, но поддерживает данный шаблон, поскольку набор (4, 7) является подмножеством (4, 6, 7). Не удовлетворяет уровню минимальной поддержки последовательность «1, 2); (3», поскольку она поддерживается только клиентом 2. Последовательности «3», «4», «7», «9», «3); (4», «3); (7» и «4, 7», хотя и УДовле творяют минимальной поддержке, но не являются максимальными, поскольку содержатся в более длинных последовательностях, Поиск последовательных шаблонов Дополнительно введем несколько понятий. Длина последовательности это число содержащихся в ней предметных набо ров. Последовательность длины k будем называть k последовательностью (чита ется: k элементная последовательность). Поддержка предметноrо набора 1 равна числу клиентов, которые приобрели входящие в Hero предметы в одной TpaH закции. Таким образом, предметный набор 1 и 1 последовательность <1> имеют одну и ту же поддержку. Напомним, что в ассоциативных правил ах предметный набор, удовлетворяющий уровню минимальной поддержки, называется частым. Обратим внимание, что любой предметный набор в частой последовательности также должен быть частым, на что указывает свойство антимонотонности. Сле довательно, любая частая последовательность будет состоять только из частых предметных наборов. Частые предметные наборы из табл. 6.1 О представлены в табл. 6.11. Таблица 6.11. Частые предметные наборы Частые наборы Поддерживается клиентом Представление (3) 1,2,3,4 А (4) 2,4 В (7) 2,3,4 С (4,7) 2,4 D (9) 1,4,5 Е Процесс поиска последовательных шаблонов содержит следующие шаrи. 1. Сортировка. Транзакции исходной базы данных сортируются по кодам кли ентов, а транзакции каждоrо клиента по дате, времени или номеру визита.
rлава б. Data Mining: задача ассоциации 303 Таким образом, исходная база данных преобразуется в базу данных клиентских последовательностей, 2. Поиск частых предметных наборов. Ищется множество всех частых пред метнЫХ наборов Е. Одновременно ищется множество всех частых 1 последо вательностей, поскольку это просто множество {</> 1/ Е F}. Задача поиска частых предметных наборов на множестве клиентских транзакций использует несколькО друrое определение поддержки, а именно: число транзакций, в KO торЫХ представлен данный предметный набор, в то время как в задаче поиска последовательных шаблонов это число клиентов, купивших данный набор хотя бы в одной из транзакций. Затем множество частых предметных наборов I1реобразуется в альтернативное представление в виде букв, целых чисел или двоичных последовательностей. Ранее мы установили, что частыми предметны ми наборами будут (3), (4), (7), (4,7) и (9). Возможное представление в виде отдельных значений (табл. 6.12) позволяет упростить алrоритмическую реали зацию задачи. 3. Преобразование. Нужно определить, какие из частых последовательностей содержатся в клиентской последовательности. Для этоrо каждая транзакция клиентской последовательности замещается множеством ее частых предметных наборов. Если транзакция не содержит ни одноrо частоrо предметноrо набора, то в результате преобразования она вообще исключается из рассмотрения. Если клиентская последовательность не содержит ни одноrо частоrо предметноrо Ha бора, то вся эта последовательность также исключается. После преобразования каждая клиентская последовательность будет представлена в виде множества частых наборов /1'/2'" /". Обозначим такой преобразованный набор транзакций Dr. В зависимости от объема доступной памяти преобразование может быть выполнено полностью над всеми данными, или <ша лету при чтении каждой клиентской последова тельности в процессе прохода по набору данных, Преобразование данных из табл. 6.1 О представлено в табл. 6.12. Таблица 6.12. Преобразованные клиентские последовательности Код Исходная клиентская Прео6раэованная клиентская Результат клиента последовательность последовательность альтернативноrо представления 1 «3); (9» <{(3)}; {(9)}> <{А, Е}> 2 «1,2);(3);(4,6,7» <{(3)}; {(4), (7), (4, 7)}> <{А}, {В, С, D}> 3 «3,5,7» <{(3); (7)}> <{А,С}> 4 «3); (4, 7); (9» <{(3)}; {(4), (7), (4, 7)}, {(9)}> <{А}, {В, С, D}, {Е}> 5 «9» <{(9)}> <{Е}> Например, в процессе преобразования клиентской последовательности 2 набор (1, 2) был исключен, поскольку не является частым, а набор (4, 6, 7) был заменен множеством частых предметных наборов {(4); (7); (4, 7)}.
304 Часть 1. Теория бизнес анализа 4. Поиск частых последовательностей. На множестве частых предметных наборов про изводится поиск частых последовательностей. 5. Поиск максимальных последовательностей. Среди частых последовательно стей ищутся максимальные. Иноrда данный этап совмещают с предыдущим, чтобы уменьшить затраты времени на вычисление не максимальных Последо вательностей. Самым проблемным этапом поиска последовательных шаблонов Является обнаружение частых последовательностей, поскольку большое число предметных наборов требует рассмотрения отромното количества возможных комбинаций и мнотократното прохода по набору транзакций. Каждый проход начинается с ис ходното набора последовательностей, который используется для rенерации НОВЫх потенциальных частых последовательностей, называемых последователыlOСmями кандидатами, или просто кандидатами. Для этоrо вычисляется их поддержка и по завершении прохода определяется, являются ли обнаруженные кандидаты в дей ствительности частыми. Обнаруженные частые последовательности кандидаты станут исходными для новото прохода. На первом проходе ищутся все 1 последовательности, удовлетворяющие усло вию минимальной поддерЖКОЙ, полученные на этапе поиска частых предметных наборов. При этом возможно использование двух алrоритмов полноlO и частич НОlO поиска. Первый ищет все частые последовательности, включая те, которые не являются максимальными (впоследствии они будут исключены). Одним из таких алrоритмов полноrо поиска является AprioriAll, основанный на алrоритме Apriori. Алrоритм AprioriAl1 в алrоритме AprioriAll (Agrawal и Srikant, 1995) на каждом проходе сканируются частые последовательности, найденные на предыдущем, и формируются новые по следовательности кандидаты, а затем вычисляется их поддержка в процессе новото прохода. В дальнейшем она используется для определения частых последователь ностей. Частые предметные наборы, найденные на первом проходе, являются, по сути, частыми 1 последовательностями, поэтому иноrда этот процесс называют ИНИЦИOJluзацией. Рассмотрим набор клиентских последовательностей, представленный в табл. 6.13. Таблица 6.13. Клиентские последовательности Последовательность <{1, 5}; {2}; {З}; {4}> <{1}; {З}; {4}; {З, 5}> <{1}; {2}; {З}; {4}> <{1}; {З}; {5}; {4}> <{4}; {5}>
rлава б. Data Mining: задача ассоциации 305 Клиентские последовательности получены путем замены транзакций содержа rцимися в них частыми предметными наборами. Минимальная поддержка опреде лена 40 % (две клиентские последовательности). На первом проходе производится поиск частых предметных наборов и, COOTBeT ственно, частых 1 последовательностей. Результаты, а именно частые последова тельности длин 2, 3, и 4 и их поддержки, представлены в табл. 6.14. Таблица 6.14. Частые последовательности l-ПОСЛедова- 2-поcnедоватепь- З-поcnедоватепь- 4-поcnедоватепьность тельность ность ность F1 Поддержка F 2 Поддержка Fэ Поддержка F4 I Поддержка 1 4 <1,2> 2 <1,2,3> 2 <1,2,3,4> 12 2 2 <1,3> 4 <1,2,4> 2 3 4 <1,4> 3 <1,3,4> 3 4 4 <1,5> 3 <1,3,5> 2 5 4 <2,3> 2 <2, 3, 4> 2 <2,4> 2 <3,4> 3 <3,5> 2 <4,5> 2 На пятом проходе новых кандидатов получено не было. Таким образом, макси мальными частыми последовательностями являются <1, 2, 3, 4>, <1, 3, 5> и <4,5>, поскольку они не содержатся в последовательностях большей длины. Они и будут искомыми последовательными шаблонами. Обобщенная блок схема алrоритма AprioriAll представлена на рис. 6,8, [де Fk 1 множество всех частых (k 1) по следовательностей, k длина последовательности, C k множество последователь ностей кандидатов длины k, Sj послеДовательности кандидаты, входящие в C k , Sup оператор вычисления поддержки. [лавный недостаток алrоритма АрriоriАllзаключается в том, что он обрабаты вает последовательности всех возможных длин, а это не является оптимальным с точки зрения временных и вычислительных затрат. Среди последовательностей определенных длин может быть мало частых. Такие длины можно про пустить без особоrо ущерба, поскольку вероятность появления для них последовательных шаблонов очень мала. Алrоритм, реализующий данный подход, получил название AprioriSome (от анrл. some HeKOTopыe»> ). Если обозначить номер прохода t, то можно записать, что k(t + 1) =: k(t) + р. Это означает, что на следующем проходе будут анализироваться последовательности, длина которых на р больше, чем на предыдущем. В случае если р =: 1, алrоритм идентичен AprioriAll, то есть будут анализироваться все последовательности. Необходимо определить, какие длины последовательностей MorYT быть пропущены без ущерба для качества решения задачи, Основное преимущество AprioriSome перед AprioriA11 заключается в том, что он позволяет избежать вычисления большоrо числа немаксимальных после Довательностей.
306 Часть 1. Теория бизнес анализа Баэа данных транэакций Нахождение F, (инициализация) k=2,F, ,*0 Вычисляется подцержка для всех последовательностей 5, Е С, Нет Да Исключение 51 5J последовательный шаблон Рис. 6.8. Обобщенная блок схема алrоритма AprioriAll lЕРСОНAJ1ИИ Ракеш ArpaBaп (Rakesh Agrawal) широко известный исследователь в области фундамен- тальных и алrоритмических основ машинноrо обучения, Data Mining и безопасности дaH ных, один из авторов алrоритма Apriori. Аналитический продукт компании 'ВМ Intelligent Miner появился на свет во MHoroM блаrодаря ero стараниям в период работы в исследо вательском центре IBM (Almaden Research Center). Ero идеи также леrли в основу друrих продуктов IBM ОВ2 Mining Extender, ОВ2 OLAP Server.
rлава б. Data Mining: задача ассоциации 307 в 1983 r. защитил маrистерскую и докторскую диссертации в университете Висконсин-Мэди сон (Wisсопsiп-Маdisоп). Начиная с марта 2006 r. Аrравал сотрудник Мicrоsоft Technical, rлава Search Labs в исследовательском центре Мicrоsоft Research. Аrравал имеет более 60 патентов и 150 научных публикаций. Ero работы по базам данных и Data Мiпiпg одни из самых упоминаемых в научной среде: они процитированы более 6500 раз. В 2003 r. американский журнал Scientific American внес Аrравала в ТОП-50 ученых и иссле- дователей. Домашняя страница Ракеша Аrравала: http:j jrakesh.agrawal-family.comj.
Data Mining: кластеризация 7.1. Введение в кластеризацию Кластеризация одна из задач Data Mining, а кластер rруппа похожих объек тов (постановка задачи кластеризации рассматривалась в разделе 1.5 «Техноло rии KDD и Data Mining ). Существует MHoro определений кластеризации, поэтому приведем несколько. ОПРЕДЕЛЕНИЕ Кластеризация 1) rруппировка объектов на основе близости их свойств; каждый кластер состоит из схожих объектов. а объекты разных кластеров существенно отличаются; 2) про цедура. которая любому объекту х Е Х ставит в соответствие метку кластера у Е У. Кластеризацию используют, коrда отсутствуют априорные сведения относи тельно классов, к которым можно отнести объекты исследуемоrо набора данных, либо коrда число объектов велико, что затрудняет их ручной анализ. Постановка задачи кластеризации сложна и неоднозначна, так как: О оптимальное количество кластеров в общем случае неизвестно; О выбор меры «похожести или близости свойств объектов между собой, как и критерия качества кластеризации, часто носит субъективный характер. На рис. 7.1 показан пример кластеризации объектов, которые описываютсЯ двумя числовыми признаками, поэтому объекты леrко изобразить на плоскости. К сожалению, в реальных приложениях количество признаков объектов измеря ется десятками и такой способ их представления не подходит. Естественно, приведенный вариант разбиения не является единственным. ЗАМЕЧАНИЕ Задача кластеризации известна давно. и специалисты в различных областях оперируют рядом друrих терминов таксономия. сеrментация. rруппировка. самоорrанизация. В Data Мiпiпg употребляется термин «кластеризация».
rлава 7. Data Mining: кластеризация 309 о <> <> <> о о ft "" "" о о о Кластер 1 "" Кластер 2 <> Кластер 3 Рис. 7.1. Иллюстрация к задаче кластеризации Остановимся на целях кластеризации и на ее применении в бизнес аналитике. Цели кластеризации в Data Mining MOryT быть различными и зависят от KOH кретной решаемой задачи. Рассмотрим эти задачи. О Изучение данных. Разбиение множества объектов на rруппы помоrает выявить внутренние закономерности, увеличить наrлядность представления данных, выдвинуть новые rипотезы, понять, насколько информативны свойства объ ектов. О Облачение аНOJluза. При помощи кластеризации можно упростить дальнейшую обработку данных и построение моделей: каждый кластер обрабатывается ин дивидуально, и модель создается для каждоrо кластера в отдельности. В этом сМысле кластеризация может рассматриваться как подrотовительный этап перед решением друrих задач Data Mining: классификации, реrрессии, ассоциации, последовательных шаблонов, о Сжатие данных. в случае, коrда данные имеют большой объем, кластеризация Позволяет сократить объем хранимых данных, оставив по одному наиболее типичному представителю от каждоrо кластера. О ПРОl1l0зирование. Кластеры используются не только для компактноrо пред ставления объектов, но и для распознавания новых. Каждый новый объект ОТносится к тому кластеру, присоединение к которому наилучшим образом удовлетворяет критерию качества кластеризации. Значит, можно проrнози ровать поведение объекта, предположив, что оно будет схожим с поведением друrих объектов кластера. о Обнаружение аномOJlИЙ. Кластеризация применяется для выделения нетипич ных объектов. Эту задачу также называют обнаружением аномалий (outlier detection). Интерес здесь представляют кластеры (rруппы), в которые попадает крайне мало, скажем один три, объектов.
310 Часть 1. Теория бизнес анализа Первые две задачи наиболее популярны в бизнес аналитике. В табл. 7,1 ПРИВе дены практические примеры применения кластеризации в разных областях. Таблица 7.1. Примеры кластеризации в различных областях N!! При- Цепь Описание кладная кластери- область эации 1 Роз Облеr Построение в сети розничных маrазинов ассоциативных ничная чение правил, выявляющих совместно покупаемые продукты, при торrовля анализа водило к rpомоздким результатам с большим числом правил. При помощи кластеризации все покупатели были разделены на несколько cerмeHToB, и ассоциативные правила выявля лись в каждом cerмeHTe отдельно. Это позволило разбить задачу на подзадач и и найти ассоциативные правила для каждоrо cerмeHTa покупателей в отдельности 2 Банкинr Изучение Отдел продаж коммерческоrо банка, работающеrо на рынке данных, розничноrо кредитования, задался целью изучить профили облеr потенциальных клиентов, подающих за5'вки на потребитель чение ский кредит. Очень малочисленным оказался кластер под анализа названием ",Молодежь!> работающие студенты и молодые люди в возрасте до 23 лет. Оказалось, что у банка не было TO чек продаж кредитов в тех районах rорода, rде сосредоточены университеты и институты. Данный факт был учтен службой продаж и службой развития бизнеса банка Проrно Исследование клиентов банка, взявших авто кредит, при по зирование мощи инструментов кластеризации выделило кластер, в KO торый попали мужчины в возрасте от 23 до 28 лет, прожи вающие в Московской области менее I"Oда. Их объединяло то, что практичеСК1: все они имели длительные просрочки по кредиту. Скорее Bcero, это молодые люди, переоценившие свои возможности, либо мошенники. Эта информация была учтена банком при разработке скоринrовых карт 3 Телеком Изучение Анализ базы данных клиентов крупной сети сотовой связи муни данных позволил выделить несколько кластеров. Самым малочислен кации ным кластером оказались пожилые женщины, совершающие звонки в весенне летнее время. С большой долей вероятно сти это пенсионерки дачницы, значительную часть теплоro времени rода проживающие за rородом. Для увеличения численности этоrо кластера был разработан соответствующий тарифный план, который наилучшим образом устраивал бы абонентов этой rpуппы 4 CTpaxo Обнару Кластеризация клиентов страховой компании, застрахован вание жение ных от несчастных случаев, выявила небольшой по объему аномалий кластер, в котором фиryрировали одни и те же фамилии врачей; суммы страховых выплат тоже варьировались незна чительно. Про верка показала, что в 90 % таких случаев имел место croBop с врачом
rлава 7. Data Mining: кластеризация 311 Н!! При Цепь Описание кладная кластери- область эации 5 [ocyдap Изучение В ходе исследования базы данных миrpационной службы, ственные данных в которой содержалась информация о людях, переехавших службы из села в rород (возраст, образование, семейное положение и т. д.), С помощью алrоритма кластеризации было выделено несколько cerMeHToB, характеристики которых позволили дать им содержательную интерпретацию. Например, Bыдe лился кластер, куда вошли женщины в возрасте более 60 лет, дети которых живут в rороде. С большой вероятностью это бабушки, которые едут в rород нянчить своих внуков. Bы делились также кластеры <1Демобилизованные солдаты;>, <1Невесты;> и др. Ранее в определении кластеризации встречалось словосочетание <1похожесть свойств;>, Термины <1похожесть;>, <1близость» можно понимать по разному, поэтому в зависимости от Toro, какой вариант оценки близости между свойствами объектов мыI выберем, получим тот или иной вариант кластеризации, В Data Mining распространенной мерой оценки близости между объектами является метрика, или способ задания расстояния. Проблема выбора той или иной метрики в моделях всеrда остро стоит перед аналитиком. Наиболее популярные метрики евк.лидово расстОЯ1lие и расстОЯ1lие Ма1fXэтте1lа рассматриваются Далее при изложении конкретных алrоритмов. Важно понимать, что сама по себе кластеризация не приносит каких либо pe эультатов анализа. Для получения эффекта необходимо провести содержательную интерпретацию каждоrо кластера, Такая интерпретация предполаrает присвоение каждому кластеру eMKoro названия, отражающеrо ero суть, например <1Разведенные женщины с детьми;>, <1Дачники;>, <1Работающие студенты» и т. д. Для интерпретации аналитик детально исследует каждый кластер: ero статистические характеристики, распределение значений признаков объекта в кластере, оценивает мощность кла стера число объектов, попавших в Hero. Интерпретация значительно облеrчается, если имеются способы представления результатов кластеризации в специализиро ванном виде: дендроrpаммы, кластероrpаммы, карты. На сеrодня предложено несколько десятков алrоритмов кластеризации и еще больше их разновидностей. Несмотря на это, в Data Mining в первую очередь при меняются алrоритмы, которые понятны и просты В использовании, Это алrоритм k meaпs и сети Кохопепа, Рассмотрим их. 7.2. Алrоритм кластеризации k..means Одной из широко используемых методик кластеризации являетсяразделитеЛЬ1lая кластеризация (partitioning clustering), в соответствии с которой для выборки данных, содержащей п записей (объектов), задается число кластеров k, которое
312 Часть 1. Теория бизнес анализа должно быть сформировано. Затем алrоритм разбивает все объекты выборки на k rрупп (k < п), которые и представляют собой кластеры. К наиболее простым и эффективным алrоритмам кластеризации относится k means (Mac Queen, 1967), или в русскоязычном варианте k средних (от анrл. mеап <Iсреднее значение» ). Он состоит из четырех шаrов. 1. Задается число кластеров k, которое должно быть сформировано из объектов исходной выборки. 2. Случайным образом выбирается k записей, которые будут служить начальными центрами кластеров. Начальные точки, из которых потом вырастает кластер, часто называют <Iсеменами» (от анrл, seeds <Iсемена», <Iпосевы»), Каждая такая запись представляет собой CBoero рода <Iэмбрион» кластера, состоящий только из одноrо элемента, З. ДЛЯ каждой записи исходной выборки определяется ближайший к ней центр кластера. ПРИМЕР Для лучшеrо понимания методики воспользуемся rеометрической интерпретацией определе- ния Toro, к какому из центров клааеров ближе Bcero расположена та или иная запись. rраницей между двумя клааерами является точка, равноудаленная от четырех центров. Из rеометрии извеано, что множеаво точек, равноудаленных от двух точек А и В, образует прямую, пер- пендикулярную отрезку АВ и пересекающую ero середину. Принцип поиска rраниц будущих клааеров поясняется на рисунке. Для проаоты рассматривается двумерный случай, KorAa проаранаво признаков содержит Bcero два измерения (Хl, Х 2 ). Пуаь на первом шаrе были отобраны три точки А, В и С. TorAa линия 1, проходящая перпендикулярно отрезку АВ через ero середину, будет соаоять из точек, равноудаленных от точек А иВ. Аналоrично ароится прямая 2 для точек А и С, а также прямая 3 для точек В и С. с помощью данных линий можно определить, к какому из центров оказывается ближе та или иная точка. о о 2 Х, о о о в ,е, о ,Ос : :. О О А , . OёS О О О О О О О Х 2 rлава 7. Data Mining: кластеризация 313 однако такая rеометрическая интерпретация полезна только для лучшеrо понимания. На практике, чтобы определить, в «сферу влияния» KaKoro центра клааера входит та или иная запись, вычисляется расаояние от каждой записи до каждоrо центра в MHoroMepHoM проаранаве признаков и выбирается то «семя», для KOToporo данное расаояние мини- мально (более подробно это рассматривается ниже). 4. Производится вычисление цеитроидов центров тяжести кластеров, Это дела ется путем определения среднеrо для значений каждоrо признака всех записей в кластере. Например, если в кластер вошли три записи с наборами признаков (хl' Уl)' (Х2, У2)' (хз, уз), то координаты ero центроида будут рассчитываться следующим образом: ( ) == [ (Xl+X2+X:i) (Yl+Y2+Y:i) ) Х,у з' 3 . Затем старый центр кластера смещается в ero центроид. На рис. 7.2 центры тяжести кластеров представлены в виде крестиков, О О О О ,., О 6 , , 8', , , , О ', Ос '- 8 ер О '6, 1 O : О О О О О О А 8 Рис. 7.2. Определение центров тяжести кластеров (центроидов) и новых rpаниц кластеров Таким образом, центроиды становятся новыми центрами кластеров для следу ющей итерации алrоритма. Шаrи 3 и 4 повторяются до тех пор, пока выполнение алrоритма не будет пре рвано либо пока не будет выполнено условие в соответствии с некоторым крите рием сходимости. Остановка алrоритма производится, коrда rpаницы кластеров и расположение центроидов пере стают изменяться, то есть на каждой итерации в каждом кластере
314 Часть 1. Теория бизнес анализа остается один и тот же набор записей. Алrоритм k means обычно находит набор стабильных кластеров за несколько десятков итераций. Что касается критерия сходимости, то чаще Bcero используется сумма квадратов ошибок между центроидом кластера и всеми вошедшими в Hero записями: k 2 Е== (P mi) , i==l рЕС rде рЕ C i произвольная точка данных, принадлежащая кластеру C i ; т j центроид данноrо кластера. Иными словами, алrоритм остановится тоrда, коrда ошибка Е достиrнет ДOCTa точно малоrо значения. Меры расстояний Ключевой момент алrоритма k means: на каждой итерации вычисляется расстояние между объектами и центрами кластеров, чтобы определить, к какому из кластеров принадлежит данная запись. Правило, по которому вычисляется расстояние в MHO rOMepHoM пространстве признаков, называется метрикой. Наиболее часто в практи ческих задачах кластеризации используются следующие метрики, О Евк.лидово расстояние, или метрика L2' Использует для вычисления расстояний следующее правило: d/; (х,У)== (X; Yi)2, rде Х == (Xj, Х2... Х т ), у == (YI, У2.., Ут) векторы значений признаков двух запи сей, (7.1) Поскольку множество точек, равноудаленных от HeKoToporo центра, при исполь зовании евклидовой метрики будет образовывать сферу (или Kpyr в двумерном случае), кластеры, полученные с использованием евклидова расстояния, также будут иметь форму, близкую к сферической, О Расстояние Манхэттена (Manhattan distance), или метрика L j , вычисляется по формуле: dM(X,Y)== IXi Yil. Фактически это кратчайшее расстояние между двумя точками, пройденное по линиям, параллельным осям прямоуrольной системы координат (рис, 7.3). Преимущество метрики L j заключается в том, что использование прямоyrольной системы координат позволяет снизить влияние аномальных значений на работу алrоритмов. Кластеры, построенные на основе расстояния Манхэтrена, стремятся к кубической форме, Иноrда расстояние Манхэтrена называют «расстоянием ro родских кварталов» (city block distance) из за ассоциаций, возникающих с ПРЯМО yrольными формами застройки, которая характерна для современных rородов.
rлава 7. Data Mining: кластеризация 315 оооо В D Di EJ ... ОООО L,(x, у) = I х, у, ' + I Х 2 У2! Рис. 7.3. Расстояние Манхэттена (метрика L) о Для катеrориальных признаков в качестве меры расстояния можно исполь зовать ФУНКЦИЮ отличия (different function), которая задается следующим образом: d ( ) { О, если Х i == У i Xj,Yi 1, в остальных случаях, [де Х; и У; катеrориальные значения. Свою популярность алrоритм k means приобрел блаrодаря следующим свой ствам. Во первых, это умеренные вычислительные затраты, которые растут линей но с увеличением числа записей исходной выборки данных. Вычислительная сложность алrоритма определяется как k . n . 1, [де k число кластеров, n число записей и 1 число итераций. Поскольку k и 1 заданы, вычислительные затраты возрастают пропорционально числу записей исходноrо множества. BO BTOPЫX, результаты работы k means не зависят от порядка следования запи сей в исходной выборке, а определяются только выбором исходных точек Один из основных недостатков, при сущих алrоритму k means, отсутствие четких критериев выбора числа кластеров, целевой функции их инициализации и модификации. Кроме Toro, он очень чувствителен к шумам В'данных и aHO мальным значениям, поскольку они способны существенно повлиять на среднее значение, используемое при вычислении положений центроидов. Чтобы снизить влияние таких факторов, как шумы и аномальные значения, иноrда на каждой итерации используют не среднее значение признаков, а их медиану. Данная MO дификация алrоритма называется k mediods (k медиан). Пример работы алrоритма k means, разбивающеrо объекты на 4 кластера, при веден на рис. 7.4 (каждому кластеру соответствует свой тип точек).
316 Часть 1. Теория бизнес анализа '" . ... . . . . .. о g -. :: о 00 о 000 о о , 000 00 о о о о -о со ft. А о 8 о "А 0"'0 о о о о о о о о о .. о 000 о o:go о .. .. ,ро о .. .... 00 о 00 1.: !ll!1i . ... <о O O <> о <> 00 0.0 :.: .' с (> <»0. <:о <> <> (J о. о. -о о (>.0 .о 0.8 е о 00 .о о о Q О о. 0.0 * <>00 ....... .6.1J.1J. f- t. t:. Ab.,t. .. .. ok о.. о .. .. .. . . . ., . . . .. .. '!i; ' ". . <:?': .. .. .. .. iJI ." .. '" lJ. JJ. lJ. Рис. 7.4. Результат кластеризации алrоритмом k means Пример работы алrоритма k means Пусть имеется набор из 8 точек данных в двумерном пространстве, из KOToporo требу ется получить два ЮIастера. Координаты точек приведены в табл. 7.2 и на рис. 7.5. Таблица 7.2. Объекты для кластериэации 4 З . . . . у 2 . . о о щ=(1;1) щ,={2; 1) О I О 2 З 4 5 6 Х Рис. 7.5. Начальная инициализация Шаr 1. Определим число ЮIастеров, на которое требуется разбить исходное множество: k == 2. Шаr 2. Случайным образом выберем две точки, которые будут начальными центрами ЮIастеров. Пусть это будут точки тl == (1; 1) и т2 == (2; 1). На рис. 7.5 они представлены знаком «+1>.
rлава 7. Data Mining: кластеризация 317 Шаr З, ПРОХОД 1. Для каждой точки определим ближайший к ней центр кла стера в евклидовой метрике. В табл. 7.3 пред ставлены вычисленные с помощью формулы 0.1) расстояния между центрами кластеров т! == (1; 1), т2 == (2; 1) 1I каждой точкой исходноrо множества и указано, к какому кластеру принадлежит та или иная точка, Таблица 7.3. Нахождение ближайшеro центра для каждой точки (первый проход) точка Расстояние от т1 Расстояние от mz Принадлежит кластеру А 2,00 2,24 1 В 2,83 2,24 2 С 3,61 2,83 2 D 4,47 3,61 2 Е 1,00 1,41 1 F 3,16 2,24 2 G 0,00 1,00 1 Н 1,00 0,00 2 Таким образом, кластер 1 содержит точки А, Е, G, а кластер 2 точки В, С, D, F, Н. Как только определятся члены кластеров, может быть рассчитана сумма квадратов ошибок: k Е == L L(P тi)2 == 22 +2,242 +2,8з2 + i==1 РЕС! +3,612 +12 +2,242 +02 +02 ==36, Шаr 4, ПРОХОД 1. Для каждоrо кластера вычисляется центроид, и в Hero пере мещается центр кластера. Центроиддлякластера 1: [(1 + 1 + 1)/3; (3 +2 + 1)/3] == (1;2). Центроид для кластера 2: [(3 + 4 + 5 + 4 + 2) /5; (3 + 3 + 3 + 2 + 1) /5] == (3,6; 2,4). Расположение кластеров и центроидов после первоrо прохода алrоритма пред ставлено на рис. 7.6, Шаr З, ПРОХОД 2. После Toro как найдены новые центры кластеров, для каждой точки снова определяется ближайший к ней центр и ее отношение к COOTBeTCTBY ющему кластеру. Для это еще раз вычисляются евклидовы расстояния между точ ками и центрами кластеров. Результаты вычислений приведены в табл. 7.4. Относительно большое изменение т2 привело к тому, что запись Н оказалась ближе к центру тl, что автоматически сделало ее членом кластера 1, Все OCTaпь НЫе записи остались в тех же кластерах, что и на предыдущем проходе алrоритма. Таким образом, кластер 1 будет содержать точки А, Е, G, Н, а кластер 2 В, С, D, F, Новая сумма квадратов ошибок составит: k Е== LL(p тi)2 ==12 +0,852 +0,722 + i==1 рЕС +1,522 +02 +0,572 +12 +1,412 ==7,86.
318 Часть 1. Теория БИЗНес анализа у 4 з 2 о о з х 6 2 5 4 Рис. 7.6. Расположение кластеров и центроидов после первоrо прохода алrоритма Таблица 7.4. Нахождение ближайшеrо центра для каждой точки (второй проход) Точка Расстояние от т1 Расстояние от mz Принадлежит кластеру А 1,00 2,67 1 В 2,24 0,85 2 С 3,16 0,72 2 D 4,12 1,52 2 Е 0,00 2,63 1 F 3,00 0,57 2 G 1,00 2,95 1 Н 1,41 2,13 1 Вычисление показывает уменьшение ошибки относительно начальноrо состоя ния центров кластеров (на первом проходе она составляла 36). Это rоворит об улучшении качества кластеризации, то есть о более высокой «кучности» объектов относительно центра кластера. Шаr 4, ПРОХОД 2. Для каждоrо кластера вновь вычисляется центроид, и центр кластера перемещается в Hero, Новыйцентроиддля кластера 1: [(1 + 1 + 1 +2) /4, (3+2 + 1 + 1) /4] == (1,25; 1,75), Новый центроид для кластера 2: [(3 + 4 + 5 + 4) /4, (3 + 3 + 3 + 2) /4] == (4; 2,75). Расположение кластеров и центроидов после BToporo прохода алrоритма пред ставлено на рис. 7,7. По сравнению с предыдущим проходом центры кластеров изменились незна чительно. Шаr з, ПРОХОД з. Для каждой записи вновь ищется ближайший к ней центр кластера, Полученные на данном проходе расстояния пред ставлены в табл, 7,5.
rлава 7. Data Mining: кластеризация 319 4 З . + у 2 . о о 2 з х 4 5 6 Рис. 7.7. Расположение кластеров и центроидов после BToporo прохода алrоритма Таблица 7.5. Нахождение ближайшеrо центра для каждой точки (третий проход) Точка Расстояние от т1 Расстояние от trb Принадлежит кластеру А 1,27 3,01 1 В 2,15 1,03 2 С 3,02 0,25 2 D 3,95 1,03 2 Е 0,35 3,09 1 F 2,76 0,75 2 G 0,79 3,47 1 Н 1,06 2,66 1 Следует отметить, что записей, сменивших кластер на третьем проходе алrорит ма, не было, Новая сумма квадратов ошибок составит: k 2 Е== LL(p тi) ==1,272 +1,032 +0,252 + i lpEC. + 1,0з2 +0,352 + 0,752 +0,792 + 1,062 == 6,23. Таким образом, сумма квадратов ошибок изменилась незначительно по cpaвHe Нию с предыдущим проходом. Шаr 4, прОХОД 3. Для каждоrо кластера вновь вычисляется центроид, и центр кластера перемещается в Hero. Но поскольку на данном проходе ни одна запись Не изменила cBoero членства в кластерах и положение центроидов не поменялось, алrоритм завершает работу,
320 Часть 1. Теория бизнес анализа Алrоритм G means Одним из недостатков алrоритма k means является отсутствие ясноrо Критерия для выбора оптимальноrо числа кластеров. Действительно, пусть множество данных содержит 5 rрупп, внутри которых объекты похожи, а в различных rpуппах СУЩе ственно отличаются, Torдa лоrично задать k == 5, чтобы каждая rpуппа оказалась ассоциирована с отдельным кластером. Но, как правило, такая априорная ИНфор мация отсутствует и аналитику приходится действовать методом проб и ошибок Если будет выбрано k == 3, то какие то две из 5 rрупп окажутся «распылены» по «чужим» кластерам и не будут обнаружены. Это может привести к потере Потен циально ценных знаний. Кроме Toro, в общем то, мало похожие объекты MorYT оказаться в одном кластере, что затруднит интерпретацию результатов аналИза. Если выбрать большее число кластеров, например k == 7, то будут сформированы «лишние» кластеры, При этом получится, что достаточно похожие объекты OKa жутся в различных кластерах, Это проиллюстрировано на рис. 7.8, rде знаком «+» отмечены центры кластеров, сформированные обычным алrоритмом k means. На рис. 7.8, а, rде для 5 rpупп сформировано Bcero 3 кластера, можно увидеть, что rpуппы 1 и 5, а также 2 и 3 оказались ассоциированы с одним центром, то есть попали в общий кластер. В результате аналитик может сделать ошибочный вывод о сходстве объектов из rрупп, объединенных в один кластер, На рис. 7,8, б, rде число кластеров было задано слишком большим, наблюдается обратная ситуация, rруппы 3 и 5 оказались ассоциированы с двумя центрами, и, следовательно, каждая из них разбросана по двум кластерам. Чтобы решить данную проблему, было разработано большое количество ал rоритмов, позволяющих производить автоматический выбор числа кластеров, оптимальноrо с точки зрения Toro или иноrо критерия. Обычно в них строится несколько моделей для различных значений k, а затем выбирается наиболее под ходящая. Примерами MOryT служить алrоритм X means, в основе которorо лежат байесовские оценки лоrарифмическоrо правдоподобия; алrоритм, основанный на принципе минимальной длины описания (MDL) и др. Одним из самых популярных алrоритмов кластеризации с автоматическим выбором числа кластеров является G тeaпs. В ero основе лежит предположение о том, что кластеризуемые данные подчиняются некоторому унимодальному закону распределения, например rayccoBcKOMY (откуда и название алrоритма), Тоrда центр кластера, определяемый как среднее значений признаков попавшиХ в Hero объектов, может рассматриваться как мода соответствующеrо распределения, Если исходные данные описываются унимодальным rауссовским распределением с заданным средним, то можно предположить, что все они относятся к одному кла стеру, Если распределение данных не rayccoBcKoe, то можно попробовать выпол нить разделение на два кластера. Если в этих кластерах распределения окажутся близки к rayccoBcKOMY, то можно в первом приближении считать, что k == 2 будет оптимальным, В противном случае будут построены новые модели с большим числом кластеров, и так до тех пор, пока распределение в каждом из них не OKa жется достаточно близким к rayccoBcKOMY. Такая модель и, соответственно, число кластеров в ней будут считаться оптимальными.
............. , ,. I I , I I I I !.i I 1, , I , I , .,' i i , .; ,-'".7.-.: . , ,., , i ., "<.:;t { }>; ?Y" ", '. '. . ' 5 rлава 7. Data Mining: кластеризация 321 " ", О,. ./ :,;:: : :. . ,.,-.- ,-' ?; ; , 3,.' ; , + ,; ,- : - ;.. - ::: - ,." :< f.:, , , ,- , 4 ;; (ffй!. ...' а 1 cl!>o ,!.,. " . ':. ,; .. i:::: ;} ." .._ .. - ; ; t 5 з 2 ", ' t: ......, 'i ;:' , ;::.< -.,. . ;';+ ":: .: .::':. .. ::;; <. ':t : 4 J j;!": б Рис. 7.8. Разбиение алrоритмом k means: а 3 кластера; б 7 кластеров Алrоритм G means является итеративным, [де на каждом шаrе с помощью обыч Horo k means строится модель с определенным числом кластеров. Обычно G means начинает работу с небольшоrо значения k, и на каждой итерации оно увеличивает ся. Как правило, начальное значение k выбирается равным 1. На каждой итерации увеличение k производится за счет разбиения кластеров, в которых данные не соответствуют rayccoBcKOМY распределению. Алrоритм принимает решение о дальнейшем разбиении на основе статистиче CKOro теста данных, связанных с каждым центроидом. Если при этом будет обнару жено, что они распределены по rayccoBcKOМY закону, то дальнейшеrо смысла в их разбиении нет. Фактически в процессе работы G means алroритм k means будет повторен k раз, поэтому сложность алroритма составит O(k).
322 Часть 1. Теория бизнес анализа 7.3. Сети Кохонена Термин сети KOXOHeHa (Kohonen clastering network KCN) был ВвеДен в 1982 r. финским ученым Тойво Кохоненом. Хотя изначально сети Кохонена применялись для обработки изображений и звука, они также ЯВЛяются эффек тивным средством кластерноro анализа. Сети Кохонена представляют собой разновидность самоорrанизующихся карт признаков, которые, в свою очередь, являются специальным типом нейронных сетей (базовые понятия о неЙРонах и нейронных сетях вводятся в rлаве 9). Основная цель сетей Кохонена преобразование сложных MHoroMepHbIx дaH ных в более простую структуру малой размерности. Таким образом, они хорошо подходят для кластерноro анализа, коrда требуется обнаружить скрытые законо мерности в больших массивах данных. Сеть Кохонена состоит из узлов, которые объединяются в кластеры. Наиболее близкие узлы соответствуют похожим объектам. а удаленные друr от друrа He похожим. Можно рассматривать сеть Кохонена как обобщение метода rлавных компонент друrой методики, применяемой для сокращения размерности дaH ных. В основе построения сети Кохонена лежит конкурентное обучение, коrда BЫ ходные узлы (нейроны) конкурируют между собой за право стать побеДlПелем . [оворят, что нейроны избирательно настраиваются для различных входных примеров или классов входных примеров в ходе соревновательноrо процесса обучения. Пример сети Кохонена представлен на рис. 7.9. , , " Выходной слой " " QO " ,/ ... , 9 ,/ , 0 ' . I f I ,,' . ""''., 0 . : , " Q i ,,' , .. i " , . " " ",.,, t ,/ ,: l' ,,' Q ' O :i, '} W '," : ,/ , ".J..L ', " I : I " ...... ............ , .... ; ' , ! , , , ,1 " I , ...... ' t f {.... 1." . : I ,--........... -- --.. -- -- -- -- -- ----... ..,....--... --1.... .:.:....... :..! -;,, ,!.-- ... ...--.... t-....I ' '" : 1, , _" ,... , ,1 . ',......L..J: ,',' J . : ..., ,,: :r........../ ,',' .... '. ".... " : . .:', '.... ' ",', \ II Связи С весами . '.::: ,/,/,7.............. ".', : .... . 11" I I , ....... ......., " ' ":,',',' ......... О" , ' ., , I ...... ,." . .... ',/ Входной слой Возраст Доход Рис. 7.9. Структура простой сети Кохонена для кластеризации клиентов по возрасту и доходу rлава 7. Data Mining: кластеризация 323 входные нейроны образуют входной слой сети, который содержит по одному f[ei!pOHY для каждоrо ВХОДноrо поля. Как и в обычной нейронной сети, входные еирОНЫ не участвуют в процессе обучения, Их задача передать значения BXOД f[ u u б u К bJX полеи исходнои вы орки на неироны выходноrо слоя. аждая связь между f[ u u еi!ронами сети имеет определенны и вес, которыи в процессе ее инициализации f[сrанавливается случайным образом в интервале от О до 1, Процесс обучения за у u J{JIlOчается в подстроике весов. Однако в отличие от большинства нейронных сетей дрyrих видов сеть Кохонена f[e имеет скрытых слоев: данные с входноro слоя передаются непосредственно на выходной, нейроны которorо упорядочены в одномерную или двумерную решетку JIрямоуrольной или шестиуrольной формы, Значения каждоrо признака объекта поступают через входные нейроны на КаЖДЫЙ нейрон выходноrо слоя. Предположим, что нормированные значения возраста и дохода составляют 0,58 и 0,69 соответственно. Значение 0,58 поступает в сеть через входной нейрон Возраст и передается на все нейроны выходноrо слоя. Аналоrично значение 0,69 поступает через нейрон Доход и также распро сrраняется на все нейроны выходноrо слоя. В процессе обучения и функционирования сеть KCN выполняет три процедуры. 1. Конкуренция (competition). Выходные нейроны конкурируют между собой за то, чтобы векторы их весов оказались как можно ближе к вектору признаков объекта. Выходной нейрон, вектор весов KOToporo имеет наименьшее расстояние до вектора признаков объекта, объявляется победителем. 2. Объединение (cooperation). Победивший нейрон становится центром HeKOTO рой rpуппы соседних нейронов, В KCN все нейроны такorо соседства называют нazражденныиu правом подстройки весов. Следовательно, несмотря на то что нейроны в выходном слое не соединяются непосредственно, они имеют похо жие наборы весов блаrодаря соседству с нейроном победителем. З. Подстройка весов (adaptation). Нейроны, соседствующие с нейроном победи телем, участвуют в подстройке весов, то есть в обучении. Обучение сети Кохонена Рассмотрим набор из т значений полей п й записи исходной выборки, который будет служить входным вектором Х п == (Х п l, Х п 2'" ХптУ, И текущий вектор весов j ro выходноro нейрона W) == (Wl)' (О2}'" (От}у. В обучении по Кохонену нейроны, KO торые являются соседями нейрона победителя, подстраивают свои веса, используя линейную комбинацию входных векторов и текущих векторов весов: Wij, новое == Wij, текущее + 1']( Xni Wij, текущее)' (7.2) rДе О < 11 1 коэффициент скорости обучения. Соrласно Кохонену, скорость обучения должна быть уменьшающейся функцией от числа ero итераций. Поэтому процесс обучения сети можно разделить на две фазы rpубой ПОД стройки и точной ПОД стройки. В первой фазе скорость обучения
324 Часть 1. Теория бизнес анализа велика и веса нейронов корректируются значительно, что позволяет Примерно настроить их в соответствии с распределением значений признаков объектов в ис ходной выборке. Во второй фазе скорость обучения уменьшается, что позволяет подстраивать веса более точно. При инициализации сети начальные веса нейронов назначаются случайно, если отсутствуют априорные знания о характере распределения признаков в исходной выборке. Также при инициализации задаются начальная скорость обучения 11 и pa диус обучения R, то есть количество нейронов, которые будут считаться соседями для нейрона победителя и подстраивать свои веса вместе с ним. Радиус макСимален в начале процесса и по мере обучения уменьшается, Алrоритм Кохонена включает следующие шаrи, 1. Инициализация, Для нейронов сети устанавливаются начальные веса, а таКже задаются начальная скорость обучения 11 и радиус обучения R. 2, Возбуждение. На входной слой подается вектор воздействия Х", содержащий значения входных полей записи обучающей выборки. 3. Конкуренция, Для каждоrо выходноro нейрона вычисляется расстояние D(W j , Х,,) между векторами весов всех нейронов выходноrо слоя и вектором входноrо воздействия. Если в качестве меры близости двух векторов выбрано евклидо 2 во расстояние, то получим: D(Wj,x,,) == E(Wij X"i) . Иными словами, pac считывается расстояние между векторами весов всех нейронов выходноrо слоя и вектором входноrо воздействия. Тот нейрон}, для KOToporo расстояние окажется наименьшим, и будет победителем, 4. Объединение. Определяются все нейроны, расположенные в пределах радиуса обучения относительно нейрона победителя, 5. Подстройка. Производится подстройка весов нейронов в пределах радиуса обучения в соответствии с формулой (7.2). При зтом веса нейронов, ближай ших к нейрону победителю, подстраиваются в сторону ero вектора весов. Это иллюстрирует рис. 7,10, на котором координаты входноrо вектора отмечены знаком «+1>, а вид сети после модификации штриховыми линиями, Рис. 7.10. Подстройка нейронов в соседстве с нейроном победителем
rлава 7. Data Mining: кластеризация 325 6. Коррекция. Изменяются радиус и параметр скорости обучения в соответствии с заданным законом. Пример работы сети Кохонена РаССМОТРИМ работу сети Кохонена на несложном примере. Имеется множество дaH нЫХ; в нем содержатся атрибуты Возраст и Доход, которые были предварительно нормализованы. Для решения задачи кластеризации по этим атрибутам будем ис пользовать сеть Кохонена, содержащую 2 х 2 нейрона в выходном слое (рис. 7.11). Нейрон 1 Нейрон З q---- ' ......... о ... ,W2' w 11 ' ".. I , I , ' '. , I I I I , , I '', ......;..... " ,,' ' W l2 '. .......... ...,' " w " . , /"....,' 14 . '', ' ,'",................. " '. " ...... . 1" ...... j,' W 22 -- w.. /9 , I , I I , I , , , / Нейро 4 , , О ' , , I , I " , , ' "у', , . , Нейрон 2 , W 24 , , , ' , ' , , ' W 23 , , --- . Возраст Доход Рис. 7.11. Сеть Кохонена 2 х 2 Для такой небольшой сети установим радиус обучения R == О, поэтому воз можность подстройки весов будет предоставлена только нейрону победителю. Коэффициент скорости обучения установим 1] == 0,5. Выберем случайным образом начальные веса нейронов: WtI == 0,9; W21 == 0,8; Wt2 == 0,9; W22 == 0,2; WIЗ == 0,1; W2З == 0,8; W.1 == 0,1; W24 == 0,2. Набор записей исходной выборки представлен в табл. 7.6. Таблица 7.6. Объекты для кластеризации N!! Ха Xlj Описание 1 XII == 0,8 XI2 == 0,8 Пожилой человек с высоким доходом 2 Х21 == 0,8 Х22 == 0,1 Пожилой человек с низким доходом 3 ХЗI == 0,2 ХЗ2 == 0,8 Молодой человек с высоким доходом 4 Х41 == 0,1 Х42 == 0,8 Молодой человек с ниэким доходом Для первorо входноro вектора Х! == (0,8; 0,8) выполним такие действия, как конкуренция, объединение и подстройка.
326 Часть 1. Теория бизнес анализа Конкуренция. Вычислим евклидово расстояние между входным вектором Х 1 и векторами весов всех четырех нейронов выходноrо слоя, Нейрон 1: 2 2 2 2 D(W 1 ,X I )== (Wl1 X11) +(W21 XI2) == (0,9 0,8) +(0,8 0,8) ==0,1. Нейрон 2: D(W 2 , Х[) == ( (О12 Х11 / +( (О22 Х12)2 == (0,9 0,8)2 + (0,2 0,8)2 == 0,61, Нейрон 3: D(W:, Х I ) == ( (О1:1 Х11)2 + (Wn Х12)2 == (0,1 0,8)2 + (0,8 0,8)2 == 0,7. Нейрон 4: D(W , Х 1 ) == ( Wt Хl1)2 + (W24 Х12)2 == (0,1 0,8)2 + (0,2 0,8)2 == 0,92, Таким образом, для первой записи победителем стал нейрон с номером 1, для KOToporo расстояние между вектором ero весов W j == (0,9; 0,8) и входным вектором Х 1 == (0,8; 0,8) оказалось минимальным среди всех нейронов, По этой причине мы MO жем предполаrать, что нейрон 1 «близок» записям, в которых фиryрируют пожилые люди с высоким доходом, и открывает кластер, в который будут включены пожилые люди с высоким доходом. ОбъеДlDlение. В данном примере установлен радиус обучения R == О, поэтому только нейрон победитель будет «наrpаждею> возможностью подстройки cBoero вектора весов. В связи с этим мы не будем рассматривать этот этап в дальнейшем. Подстройка. Поскольку для первоrо нейрона j == 1, для первой записи п == 1 при коэффициенте скорости обучения 11 == 0,5 в соответствии с формулой (7,2) получим: (ОН, новое == (ОН, текущее + 0,5. (х 1i (О;1, текущее ). Тоrда для признака Возраст: (Оll, новое == (О11, текущее + 0,5. (Х11 (О11, текущее) == 0,9 +0,5. (0,8 0,9) == 0,85. Для признакаДоход: т21, новое == <1')21, текущее + 0,5, (х 12 (О21, текущее) == 0,8 + 0,5, (0,8 0,8) == 0,8, Обратим внимание на то, как происходит подстройка весов. Они <<подталкива ются» в направлении значений входных полей записи, то есть (О11 связи нейрона победителя, соответствующей признаку Возраст, из начально был равен 0,9, но в результате под стройки изменился в сторону нормализованноro значения Возраст первой записи, равноro 0,8. Поскольку коэффициент скорости обучения 11 == 0,5, Be личина подстройки равна половине расстояния между текущим весом и значением
rлава 7. Data Mining: кластеризация 327 ПОЛЯ. Данная подстройка позволит нейрону 1 стать более успешным в «захвате записей, содержащих информацию о пожилых людях с высоким доходом. Произведем аналоrичные действия для Bтoporo входноro вектора Х 2 == (0,8; 0,1). Конкуренция. Нейрон 1: D(Wl,X2)== (Wll X21)2 +(W21 X22)2 == (0,85 0,8)2 +(0,8 0,1)2 ==0,71. Нейрон 2: D(W2,X2)== (W12 X21)2 +(W22 X22)2 == (0,9 0,8)2 +(0,2 0,1)2 ==0,14, Нейрон 3: 2 2 2 2 D(W з ,Х 2 )== (W1З Х21) +(W2З Х22) == (o,1 0,8) +(0,8 0,1) ==0,99. Нейрон 4: D(W4,X2)== (WI4 X21)2 +(W24 X22)2 == (0,1 0,8)2 +(0,2 0,1)2 ==0,71, Таким образом, для второй записи победителем стал нейрон 2. Обратим вни мание на то, что он выиrpал соревнование, поскольку вектор ero весов W 2 == (0,9; 0,2) ближе к входному вектору второй записи Х 2 == (0,8; 0,1), чем векторы весов друrих нейронов. Можно предположить, что второй нейрон «захватывает записи, в которых содержится информация о пожилых людях с низким доходом. Подстройка весов. Поскольку победил второй нейрон, то j == 2, и для второй записи п == 2 при коэффициенте скорости обучения 11 == 0,5 в соответствии с фор мулой (7.2) получим: Wi2, новое == Wi2, текущее + 0,5, (Х2; Wi2, текущее). Тоrда для признака Возраст: W12,HOBoe == W12, текущее + 0,5. (Х21 W12, текущее) == 0,9 + 0,5. (0,8 0,9) == 0,85. Для признакаДоход: W22, новое == W22, текущее + 0,5, (Х22 W22, текущее) == 0,2 + 0,5. (О, 1 0,2) == 0,15. Как можно увидеть, веса вновь корректируются в направлении значений BXOД Ных полей записи. Вес Wt2 подстраивается так же, как и вес Wl1 для первой записи, поскольку текущие веса и значения поля Возраст для обеих записей одни и те же. Вес W22 дЛЯ признака Возраст уменьшился, поскольку значение поля Доход для второй записи ниже, чем текущий вес связи Доход нейрона победителя. Блarодаря данной подстройке нейрон 2 сможет лучше «захватывать» записи, содержащие информацию о пожилых людях с низким доходом.
328 Часть 1. Теория бизнес анализа Теперь выполним ту же последовательность действий для третьей записи, rде входной вектор Х З == (0,2; 0,9), Конкуренция. Нейрон 1: 2 2 2 2 D(W 1 ,X: J )== (Wl1 Х:и) +(W21 X:J2) == (0,85 0,2) +(0,8 0,9) ==0,66. Нейрон 2: 2 2 2 2 D(W 2 'X:I)== (WI2 X:J1) +(W22 X:2) == (0,85 0,2) +(0,15 0,9) ==0,99, Нейрон 3: 2 2 2 2 D(W:I'X ' )== (WCI X:I1) +(W2:I X:l2) == (0,1 0,2) +(0,8 0,9) ==0,14. Нейрон 4: 2 2 2 2 D(W 'X:I)== (WI1 X:lI) +(W2 X:l2) == (0,1 0,2) +(0,2 0,9) ==0,71. Теперь победителем стал нейрон 3, поскольку вектор ero весов W З == (0,1; 0,8) оказался ближе к входному вектору третьей записи Х З == (0,2; 0,9), чем векторы весов остальных нейронов. Поэтому можно ожидать, что нейрон 3 станет началом кластера для молодых людей с высоким доходом. Подстройка весов. Поскольку победил третий нейрон, то j == 3, и для третьей записи п == 3 при коэффициенте скорости обучения 11 == 0,5 в соответствии с фор мулой (7.2) получим: Wi:J, новое == Wi:, текущее + 0,5, (X:Ji Wi:J, текущее). Тоrда для признака Возраст: Wц новое == WCI, текущее + 0,5, (X:l1 <1')1:1, текущее) == 0,1 + 0,5, (0,2 0,1) == 0,15, Для признакаДоход: W2:1, новое == Wц текущее + 0,5. (X:l2 Wц текущее) == 0,8 + 0,5, (0,9 0,8) == 0,85, и наконец, выполним ту же последовательность действий для входноro вектора четвертой записи Х 4 == (0,1; 0,1). Конкуренция. Нейрон 1: D(Wl,X )== (Wl1 X I)2 +(W21 X 2)2 == (0,85 0,1)2 +(0,8 0,1)2 ==1,03,
rлава 7. Data Mining: кластеризация 329 Нейрон 2: D(W 2 , X ) == (WI2 X 1 / +(W22 X 2)2 == (0,85 0,1)2 +(0,15 0,1)2 == 0,75, Нейрон 3: 2 2 2 2 D(W:I'X )== (WI:1 X I) +(W2:1 X 2) == (0,1 0,1) +(0,8 0,1) ==0,7. Нейрон 4: D(W , X ) == (WH X41)2 +(W2 X 2/ == (0,1 0,1)2 +(0,2 0,1)2 == 0,1, Теперь победителем стал нейрон 4, поскольку вектор ero весов W 4 == (0,1; 0,2) оказался ближе к входному вектору 3 й записи Х 4 == (0,1; 0,1), чем векторы весов остальных нейронов. Поэтому можно ожидать, что нейрон 4 станет основой кла стера для молодых людей с низким доходом. Подстройка весов. Поскольку победил четвертый нейрон, то j == 4, и для чет вертой записи п == 4 в соответствии с формулой (7,2) получим: Wi , НОВое == Wi , текущее + 0,5, (х ; W; , текущее). Тоrда для признака Возраст: W14, новое == W14, текущее + 0,5. (Х41 W14, текущее) == 0,1 + 0,5. (О, 1 0,1) == 0,1. Для признакаДоход: W2 , новое == W2 , текущее + 0,5. (X 2 W2 , текущее) == 0,2 + 0,5, (О, 1 0,2) == 0,15. Таким образом, можно увидеть, что четыре выходных нейрона представляют четыре различных кластера, если выборка данных содержит записи, схожие с за писями из табл. 7.6. Эти кластеры представлены в табл. 7.7. Таблица 7.7. Получившиеся кластеры N!! кnacтepa N!! нейрона Описание 1 1 Пожилой человек с высоким доходом 2 2 Пожилой человек с ниэким доходом 3 3 Молодой человек с высоким доходом 4 4 Молодой человек с низким доходом Число выходных нейронов сети Кохонена должно соответствовать числу кла стеров, которые должны быть построены, Конечно, кластеры, открытые сетью Кохонена в данном примере, достаточ но очевидны. Однако здесь хорошо проиллюстрированы основы работы KCN с использованием конкуренции между нейронами и алrоритма обучения Koxo нена,
ээо Часть 1. Теория бизнес анализа 7.4. Карты Кохонена Самоорzalluзующuеся карты прUЗllаков (self organizing шар SOM) позволяют представлять результаты кластеризации в виде двумерных карт, [де расстояния между объектами соответствуют расстояниям между их векторами в MHoroMepHoM пространстве, а сами значения признаков отображаются различными цветами и оттенками, Можно провести аналоrию между SOM и обычной rеоrpафической картой, [де размещение объектов и расстояния между ними соответствуют их расположению на земной поверхности, Однако, кроме rоризонтальных координат, необходимо показать и рельеф высоту [ор, холмов, а также rлубину водоемов, Для зтоrо используется специальная цветовая [амма. Так, высота местности OTO бражается с помощью оттенков коричневоrо, rлубина морей и океанов синеrо: чем выше или rлубже объект, тем более темным цветом он окрашивается. Таким образом, двумерная карта позволяет представлять трехмерные данные. Если размерность пространства признаков набора данных, на котором строится SOM, равна 2 (например, Возраст иДоход), то и векторы весов нейронов также будут двухкомпонеНПIЫМИ и отображеlШе результатов кластеризации в этом случае проблем не вызовет, Но в большинстве практичесЮ1Х приложеI01Й приходится иметь дело с дaн ными, для которых размерность пространства признаков больше чем 2 (рис. 7.12). у V,(x"y"z,) V 2 (X 2 , Y2"Z2) , , , " I .... " I ,'1, ...................... ....j,' х Рис. 7.12. Нарушение тополоrическоrо подобия при проецировании На первый взrляд, если мы хотим отобразить мнorомерное пространство на пло скую карту, достаточно выполнить соответствующую проекцию. Однако при этом неизбежно нарушится топОЛОl:Uческое подобие, то есть объекты, которые БЫlIИ суще ственно удалены дрyr от друrа (и следовательно, обладали малой степенью сходства) в исходном пространстве признаков, MoryT оказаться рядом друr с друrом на карте. На рис, 7,12 представлено трехмерное пространство признаков с двумя векторами V 1 (Хl, Уl, 21) и v 2 (Х2, У2, 22), евклидово расстояние между которыми равно: rлава 7. Data Mining: кластеризация ЗЗl 2 2 2 D E (V[,V 2 )== (XI X2) +(YI Y2) +(ZI Z2)' КаК ВИДНО, реальное расстояние между векторами в исходном пространстве при зна1<ОВ f{aMHOrO больше, чем расстояние между их проекциями, то есть имеет место У IlIение тополоrическоrо подобия. В этом случае при визуальном анализе из за нар отери информации об одном или нескольких измерениях (признаках) может быть делан неверный вывод о схожести объектов по их свойствам, что станет причиной оnrи60чноrо отнесения объектов к одному классу. Например, требуется выполнить классификацию объектов, признаками которых являются размеры длина, ширина и высота. При этом имеются две rpyттbI объектов, отличающихСЯ по длине, но примерно одинаковых по ширине и высоте. Тоrда, если ИСJ{J1ЮЧИТЬ из рассмотрения длину, эти rpуппы окажутся практически неразличимы, что не позволит выполнить корректную кластеризацию объектов (рис, 7,13). Поэтому при отображении MHoroMep ных векторов на плоской карте необходи мо выполнять проекцию с сохранением тополоrическоrо подобия. Этоrо можно добиться, если проецировать на карту не сами векторы (объекты), а расстоя нмя между ними, вычисленные в cooтвeT ствии с определенной метрикой (Ha пример, евклидовой). Таким образом, чем больше расстояние между объектами на карте, тем больше расстояние между векторами их призна ков и, следовательно, тем больше разли чаются их свойства. Методика построения карты Рис. 7.13. Неразличимость объектов из за потери информации об одном из признаков Чем отличаются понятия «сеть Кохонена» и «карта Кохонена»? Во первых, сеть Кохонена используется только для кластеризации объектов, а визуализация pe Зультатов будет про изводиться традИЦИОННЫМИ способами, то есть с помощью таблиц или диаrpамм. В то же время карта Кохонена позволяет визуализировать результаты кластеризации, в том числе MHoroMepHbIe. BO BTOpЫX, в сети число Выходных нейронов соответствует количеству кластеров, которое должно быть Получено, а в карте количеству cerMeHToB, из KOToporo будет состоять карта, или, иными словами, размеру карты. Из вышесказанноrо можно сделать вывод, ЧТО карта Кохонена это частный случай сети Кохонена, Коrда число выходных нейронов HaMHoro превышает число кластеров.. Размер карты определяется степенью ее детальности: чем выше число cerMeH тов, тем подробнее пред ставлено распределение признаков объектов. К обычной сети Кохонена можно вернуться, уменьшив число cerMeHToB карты до нужноrо количества кластеров.
;J;JZ Часть Т. Теория бизнес анализа Карта Кохонена состоит из cerMeHTOB прямоуrольной или шестиуrольной формы, называемых ячейками (рис. 7.14). Каждая ячейка связана с оПреде ленным выходным нейроном и представляет собой «сферу влияния даННоrо нейрона: в нее попадают объекты, «захваченные» нейроном в процессе класте ризации. Распределение векторов весов нейронов карты происходит так же, Как и в обычной сети Кохонена, то есть на основе KOHKypeHTHoro обучения (см. раз дел 7,3). Объекты, векторы которых оказываются ближе к вектору весов даННоrо нейрона, попадают в ячейку, связанную с ним. Тоrда распределение объектов на карте в целом будет соответствовать распределению векторов весов ее нейронов. Следовательно, если объекты на карте расположены близко друr к друrу, то Их векторы будут близки. Напротив, если объекты на карте находятся далеко друr от друrа, то и векторы их признаков различаются сильно. Рис. 7.14. Структура карты Кохонена размером 10 х 10 ячеек Хотя расстояние между объектами позволяет сделать выводы о степени их cxoд ства или различия, также важна информация о том, в чем проявляется это сходство и различие, по каким признакам объекты различаются в наибольшей степени, а по каким в наименьшей и т, д. Именно специальная раскраска помоrает получить ответы на эти вопросы, выполняя функцию TpeTbero измерения. Идея состоит в том, что каждой ячейке на карте назначается цвет в соответствии со значениями признаков объектов в ней. Таким образом, есть два важных фактора: положение объекта на карте (pac стояние до друrих объектов) и цвет ячейки, в которой он расположен, При данном способе визуализации на одной карте можно использовать расцветку только по одному признаку. Это значит, что для визуализации значений нескольких призна ков требуется строить отдельные картьс Например, если объекты имеют признаки Возраст и Доход, то для получения полной информации о значениях этих призна ков необходимо построить две карты (рис. 7.15). Теперь рассмотрим вопрос о том, как связаны цвета ячеек на карте и значения признаков попавших в них объектов. Пусть в некоторую ячейку попали Bcero два объекта с признаками Возраст и Доход, значения которых образуют векторы (45;
rлава 7. Data Mining: кластеризация 333 Возраст, лет Доход, тыс. ед. . "."=.,..h ., , 19; IEJ 4\ .. 1.... 4L 1 _ 25 Рис. 7.15. Примеры карт размером 16 х 12 21) и (34; 14). Строятся две карты, и цвет ячейки будет определяться по среднему значению признака в них. Для признака Возраст оно будет равно: (45 + 34) /2 '= 39,5, то есть серому оттенку (в цветной палитре зеленому), а для признака Доход (21 + 14) /2'= 17,5, то есть белому оттенку (в цветной палитре желто зеленому). Заметим, что можно не усреднять значения признака, а брать минимальное или максимальное из них. Если в ячейку попал только один объект, то ее цвет будет определяться по OДHO му значению признака. Если центр ячейки «мертвый нейрон, для KOToporo при обучении карты не нашлось ни одноrо достаточно близкоrо объекта, то ячейка OKa жется пустой и ее расцветка будет формироваться только на основе весов нейрона. Но в большинстве случаев из за «подтяrивания ero вектора весов в процессе обу чения мы не увидим резкоrо различия между цветом пустой ячейки и соседНИХ. Ячейки бывают прямоуrольной и шестиуrольной формы. Шестиуrольные ячей ки более корректно отражают расстояния между объектами на карте, поскольку в этом случае расстояния между центрами смежных ячеек одинаковы. В случае же прямоуrольных ячеек расстояния между центрами смежных ячеек зависят от их взаимноrо расположения (рис. 7.16). С точки зрения лоrики работы карты расстояния r! и r2 равны. Однако, как видно на рисунке, при использовании ячеек " " ='2 " <'2 Рис. 7.16. Шестиуrольные и прямоуrольные ячейки
334 Часть 1. Теория биэнес аналиэа прямоуroльной формы диаroнальное расстояние r2 всеrда больше, чем r , что при- водит к некорректному представлению расстояний на карте. Вернемся к рис. 7.15 и проанализируем карту по признаку Доход. На ней вы- деляются три области с ячейками одноrо цвета, в каждой из которых собраны клиенты с примерно одинаковым уровнем дохода. Так, темная область содержит объекты со значением данноrо признака, не превышающим 5 7 тыс. ед. (низкий доход), серая область от 7 до 15 тыс. ед. (средний доход), а область со светло- серыми и белыми ячейками от 20 до 25 тыс. ед. (высокий доход). Проще rоворя, хорошо видна rpуппировка клиентов по уровню их доходов. Раскраска карты позволяет оценивать и сами результаты кластеризации. Если ячейки с примерно одинаковой расцветкой образуют обособленные области, как показано на рис. 7.15, то результаты кластеризации хорошие: aлrоритму удалось вы- делить rpуппы объектов с похожими признаками. Если ячейки разных цветов разбросаны вперемеш ку по всей карте, то результаты плохие: алrоритму не удалось обнаружить rpуппы похожих объектов. Данная ситуация представлена на рис. 7.17. Хотя возможна ситуация, Korдa по одним признакам объ екты различаются хорошо, а по друrим хуже. Это может привести к тому, что карты, построенные по одним признакам, которые для разных rруппо объектов различаются хорошо, покажут хорошую кластеризацию, а по друrим, которые различаются хуже, плохую. зо G: Рис. 7.17. Пример неудачной кластериэации Выбор числа нейронов карты как отмечалось выше, карта Кохонена состоит из ячеек, центром каждой из которых ЯВЛЯется нейрон выходноrо слоя. В ячейку попадают один или несколько объектов, векторы признаков которых оказываются ближе к вектору весов данноrо нейрона. В этом смысле ячейки карты можно рассматривать как cBoero рода микрокластеры. Рассмотрим два крайних случая. Пусть в карте только один нейрон и, COOT ветственно, одна ячейка. Тоrда все объекты попадут в нее и кластеризации не произойдет. По мере увеличения числа нейронов объекты начнут распределяться по ячейкам в зависимости от Toro, к нейрону какой ячейки они окажутся ближе. Однако, пока количество ячеек мало, в каждой из них будет собираться MHoro объектов, в том числе и сильно отличающихся по своим признакам. По мере уве- личения числа нейронов все большее количество объектов будет «расселяться» по своим ячейкам, и в пределе мы получим второй крайний случай, коrда число ячеек будет равно числу объектов. То есть каждый объект получит шанс занять отдельную ячейку. В первом случае карта имеет наибольший масштаб, коrда даже далекие друr от друrа объекты представлены рядом. Во втором случае наименьший, коrда близкие объекты оказываются в разных частях карты. Фактически выбор числа
ячеек в карте признаков аналОЛIЧен выбору масштаба обычной карты: детальность J1редставления данных зависит от особенностей решаемой задачи. Таким образом, число нейронов в карте Кохонена выбирается в зависимости оТ Toro, какую информацию мы хотим получить. Если нужна детальная инфор мация о каждом объекте и ero признаках, то количество нейронов карты должно J1риближаться к числу объектов выборки. Но при этом следует помнить две ВеЩИ. Во первых, увеличение числа нейронов карты приводит к росту вычисли теЛЬНЫХ и временных затрат на ее обучение. BO BTOpЫX, чаще Bcero для анализа J1редставляют интерес обобщенные данные, коrда сделанные на основе карты выIодыы и заключения можно распространить на rpуппы объектов. В этом случае нужно, чтобы число нейронов было в несколько раз меньше числа кластеризуе мых объектов, Можно провести такую аналоппо. Если мы идем в турпоход, то нам по х надобится карта с малым масштабом (например, 1 км В 1 см), детально J1редставляющая местность. Если мы отправляемся в путешествие на автомобиле к морю, то потребует ея карта с большим масштабом, на которой представлены реrион или область. А для заблудившихся в лесу туристов карта мира бесполезна. Поэтому не существует строrих правил для выбора числа нейро нов в карте Кохонена. Каждый раз аналитик должен сам определять (возможно, методом проб и ошибок) х оптимальное количество нейронов, исходя из решаемой задачи и oco бенностей данных. Например, если разброс значений признаков в обу Чающей выборке сильный (то есть векторы объектов в пространстве признаков разрежены), то, воз Можно, следует уменьшить число нейронов карты, чтобы избежать большоrо количества пустых ячеек И наоборот, если векторы объектов расположены в пространстве при знаков плотно, то для получения лучших результатов можно увели Чить число нейронов. Эти ситуации проиллюстрированы на рис. 7.18. rлава 7. Data Mining: кластеризация 335 о о о у у Рис. 7.18. Выбор числа нейронов карты
ЭЭ6 Часть Т. Теория бизнес анализа Недостатки карт Кохонена Карты Кохонена мощное средство визуализации и разведочноrо аналИза дан- ных, отличающееся от классических статистических процедур, в ходе которых проверяется некоторый набор выдвинутых rипотез. Но у карт Кохонена есть ряд недостатков и оrpаничений. Хотя минусы не умаляют ero достоинств, в некоторых случаях требуется осторожное отношение как к самому процессу построения карт, так и к интерпретации ero результатов. Одна из самых серьезных претензий, предъявляемых некоторыми Исследовате- лями в области Data Mining к картам Кохонена, заключается в том, что сами по себе карты задачу кластеризации не решают, а лишь позволяют выдвинуть rИпотезы о наличии кластерной структуры и зависимостей в наборе данных. Выдвинутые rипотезы нужно подтверждать друrими методами, потому что они MOryT оказаться ложными. Остановимся также на таком недостатке, как эвристический характер метода. В большинстве случаев инициализация карты, то есть задание начальных векторов весов нейронов, является произвольной, при этом возможна потеря однозначно сти результата. Если обучать карту несколько раз, то мы всеrда будем получать непохожие итоrи, поскольку устанавливаемые случайным образом начальные веса нейронов будут различны и обучение каждый раз будет идти несколько иначе. Кроме Toro, может возникнуть такая проблема, как «мертвые» нейроны ней роны, веса которых были проинициализированы таким образом, что их векторы оказались в той части пространства признаков, rде отсутствуют или почти OTCYT ствуют векторы объектов. На рис. 7.19 скопление светлых точек соответствует области, rде сrpуппированы веса нейронов объектов исходной выборки. х «Мертвые» нейроны о о 00 о 00 о о о о 000 000 о 00 о о о о о о 0000 о 00 у Рис. 7.19. <!Мертвые» нейроны
rлава 7. Data Mining: клаcrеризация ЭЭ7 «Мертвые» нейроны практически не имеют шансов стать победителями и при нять участие в обучении и коррекции весов. Это может привести к обработке входных данных меньшим числом нейронов, что ухудшит результаты кластери зации. Друrими словами, нейронов в карте может просто напросто не хватить для интерпретации объектов из выборки. Чтобы решить эту проблему, то есть вовлечь в процесс обучения максимальное число нейронов, используются различные подходы и методы. Например, можно инициализировать карту не случайными весами, а векторами признаков объектов обучающей выборки или, как вариант, подсчитывать количество «побед» каждоrо нейрона с целью учета ero активности. Если это число превышает некоторое значе ние, то есть нейрон слишком активен, то, чтобы дать друrим нейронам возможность <!побеждать», налаrается «штраф» искусственным завышением расстояния между вектором весов активноrо нейрона и векторами признаков объектов. При этом величина «штрафа» пропорциональна числу побед нейрона, После Toro как в про цесс обучения вовлекается достаточное количество нейронов, продолжается их <1честная» конкуренция. ПРИМЕР в бизнес аналитике часто возникает необходимость исследовать степень лояльности кли ентов, В зтой связи можно попытаться выделить rруппы клиентов, которые: · полностью лояльны будут пользоваться товарами и услуrами фирмы при любых обстоя- тельствах; · частично лояльны предпочитают пользоваться товарами и услуrами компании, но в лю- бой момент rOТOBbI отказаться от них ради более BbIroAHbIx условий; · нелояльны пользуются товарами и услуrами компании от случая к случаю, KorAa под рукой нет ничеrо более AoaynHoro. Если построить карту Кохонена, содержащую кластеры для каждой rруппы клиентов по сте- пени их лояльности, то с ее помощью можно предсказывать ожидаемое поведение клиентов и применять к ним соответствующую маркетинrовую политику. Так, если клиент попал в кластер, rAe преимущественно находятся лояльные клиенты, то можно рассчитывать на долrое сотрудничество с ним. Если клиент попал в кластер для частично лояль- ных клиентов, зто значит, что особенно полаrаться на Hero как на потребителя товаров и услуr не стоит: он В любой момент переключится на более BbIroAHoe предложение. Если объект попал в кластер для нелояльных клиентов, то ero вообще не следует встраивать в маркетинrовые планы компании, хотя и нужно подумать о том, как повысить уровень ero лояльности. Иными словами, зная свойства объектов, сrруппированных в кластере, мы можем распро- странить зти свойства на любой новый объект, который попал в данный кластер, и приме- нить к нему соответствующие подходы, в частности друrие методы Data Мiпiпg. 7.5. Проблемы алrоритмов кластеризации Ранее уже отмечалось, что одно и то же множество объектов можно разбить на He сколько кластеров по разному. Это привело к изобилию алrоритмов кластеризации.
ЭЭ8 Чаcrь Т. Теория бизнес анализа Пожалуй, ни одна друrая задача Data Mining не имеет в своем арсенале столько алrоритмов и методов решения. Причинами сложившейся ситуации является несколько факторов, имеющих общее объяснение: не существует одноrо универсальноrо алrоритма кластеризации. Перечислим эти факторы и остановимся на каждом подробнее. Неопределенность в выборе критерия качества кластеризации в Data Mining при решении задач кластеризации популярны алrоритмы, которые ищут оптимальное разбиение множества данных на rpуппы. Критерий оптималь ности определяется видом целевой функции, от которой зависит результат кла стеризации. Например, семейство алrоритмов k means показывает хорошие результаты, коrда данные в пространстве образуют компактные сryстки, четко отличимые друr от друrа. Поэтому и критерий качества основан на ВЫ'iислении расстояний точек до центров кластера. На рис. 7.20 приведен пример неуспеха алrоритма k means, При использовании евклидов ой метрики кластеры в k means имеют сферическую форму, поэтому Ta кой алrоритм никоrда не разделит на кластеры вложенные друr в друrа множества объектов. 000 о о о о о 00 о 000 00000 о 000 00000 000 000 000 000 000 00 00000 000 800 000 000 00 <60a:t?00 000 <ФоОО 0000 00 о 00 00... 0 0 0 О О U 0000 00 0 000 0 0 000 о о о о о о 0000 о 0...0 000 О О О О сь u О 00 О 00 00 ОеР.? 00 0000 о 0 0 о о 000 000 0008g o00 Рис. 7.20. Здесь не справится k means [лавная трудность в выборе критерия качества кластеризации заключается в том, что на nрактике в условиях, Kozaa объекты описываются десятками и coт 1I.ЯМи свойств, становится сложно оценить взаuмное расположение объектов и no добрать адекватный 0JllOрит.м..
rлава 7. Data Mining: кластеризация ЭЭ9 ТРУДНОСТЬ выбора меры близости, обусловленная различной природой данных Особенность бизнес данных такова, что в таблицах, описывающих свойства объек тоВ, MoryT присутствовать различные типы данных (типы данных рассматривались в разделе 1.3 «Структурированные данные 1> ). Для задачи кластеризации это чаще Bcero числовые и строковые данные. Строковый тип, в свою очередь, делится на упорядоченный и катеrориальный. Присутствие тех или иных типов данных в наборе определяет ero природу. Ha зовем набор данных числовым, если он состоит только из целых и вещественных признаков. Для вычисления расстояний между объектами таких наборов чаще Bcero применяется популярная метрика евклидово расстояние. Назовем набор данных строковым, если он состоит из упорядоченных и KaTe rориальных признаков (сюда же относятся лоrические признаки). Для упорядо ченных можно также использовать евклидово расстояние, закодировав значения признака целыми числами. А вот к катеrориальным типам эта мера не подходит. Здесь нужно применять специальную меру расстояния, например функцию отли чия (difference function), которая задается следующим образом: d(x, у) == { О, если х == у 1, в остальных случаях, rдe х и у катеrориальные значения. Наборы данных, содержащие признаки, к которым нельзя применять одну и ту же меру расстояния, называются смеШа1l1lЬLМИ (mixed datasets). Проиллюстрируем вышесказанное на примере. Пусть требуется вычислить попарные расстояния между следующими объектами с атрибутами Возрасm, Цвет таз, Образование: (1) {23, карий, высшее}; (2) {2S, зеленый, среднее}; (3) {26, серый, среднее}. Первый атрибут является числовым, остальные строковыми, причем признак Цвет lЛаз имеет катеrориальный тип, а Образование упорядоченный, Если для вычисления расстояний мы выберем одну метрику евклидову, то возникнут проблемы с признаком Цвет lЛаз. Для Hero подходит только функция отличия. [лавная трудность в выборе меры близости состоит в том, что необходимость использования комбинации метрик ухудшает работу алlOритма, а эффективных алlOритмов 'КЛастеризации для смешанных наборов данных мало. Различные требуемые машинные ресурсы (память и время) Алrоритмы кластеризации, как и любые друrие, имеют различную вычислитель ную сложность. Вопрос масштабируемости в кластеризации стоит особенно остро, так как эта задача Data Mining часто выступает первым шаrом в анализе: после выделения схожих rpупп применяются друтие методы, для каждой rpуппы строится
340 Часть Т. Теория бизнес анализа отдельная модель. В частности, именно из за больших вычислительных затрат в Data Mining не получили распространение иерархические алrоритмы, которые строят полное дерево вложенных кластеров. Для кластеризации больших массивов данных, содержащих МИЛЛИоны строк, разработаны специальные алrоритмы, позволяющие добиваться приемлемоrо каче ства за несколько проходов по набору данных. Такие задачи, к примеру, актуальны при сеrментации покупателей супермаркета по их чекам. Получение масштабируемых алrоритмов основано на идее отказа от ло'КалЪ1юй функции оптимизации. Парное сравнение объектов между собой в алrоритМе k means есть не что иное, как локальная оптимизация: на каждом шаrе необходимо рассчитывать расстояние от центра кластера до каждоrо объекта. Это ведет к боль шим вычислительным затратам. При задании lлобалЪ1l0Й функции оптимизации добавление новой точки в кластер не требует больших вычислений: раССТояние рассчитывается на основе cTaporo значения, HOBoro объекта и параметров кластера. К сожалению, ни k means, ни сеть Кохонена не используют rлобальную функцию оптимизации. Выбор числа кластеров Хоть и редко, но встречаются случаи, коrда точно известно, сколько кластеров нужно выделить. Но чаще Bcero перед процедурой кластеризации этот вопрос остается открытым. Если алrоритм не поддерживает автоматическое определение оптимальноrо количества кластеров (как, например, G means), есть несколько эм пирических правил, которые можно применять при условии, что каждый кластер будет в дальнейшем подверrаться содержательной интерпретации аналитиком. О Двух или трех кластеров, как правило, недостаточно: кластеризация будет слишком rрубой, приводящей к потере информации об индивидуальных свой ствах объектов. о Больше десяти кластеров не укладываются в «число Миллера 7 :t 2» 1: аналитику трудно держать в кратковременной памяти столько кластеров. Поэтому в подавляющем большинстве случаев число кластеров варьируется от4д09. При взrляде на изобилие алrоритмов кластеризации возникает вопрос, суще ствует ли объективная, естественная кластеризация, или она всеrда носит субъ ективный характер? Не существует. Любая кластеризация субъективна, потому что выполняется на основе конечноrо подмножества свойств объектов. А выбор этоrо подмножества всеrда субъективен, как и выбор критерия качества и меры близости. Популярные алrоритмы k means и сеть Кохонена изначально разрабатывались для числовых данных, и, хотя впоследствии появились их модификации, приме I В 1956 r. Дж. Миллер обобщил имевшиеся данные об объеме кратковременной памяти человека и показал, что этот объем определяется не числом слов в предложении, а числом объектов и обычно равен 7 :!: 2.
rлава 7. Data Mining: кластеризация 341 f/я емые к смешанным наборам данных, они все равно лучше решают задачи кла стеризации на числовых признаках. Чтобы применять кластеризацию корректно и снизить риск получения pe зультатов моделирования, не имеющих никакоrо отношения к действительности, f/еобходимо придерживаться следующих правил. Правило 1. Перед кластеризацией четко обозначьте цели ее проведения: облеr чение дальнейшеrо анализа, сжатие данных и т. п. Кластеризация сама по себе не представляет особой ценности. Правило 2. Выбирая алrоритм, убедитесь, что он корректно работает с теми данными, которыми вы располаrаете для кластеризации. В частности, если при сутствуют катеrориальные признаки, удостоверьтесь, что та реализация алrоритма, которую вы используете, умеет правильно обрабатывать их. Это особенно актуаль но для алrоритмов k means и сетей Кохонена (впрочем, и для друrих, основанных на метриках), в большинстве случаев при меняющих евклидову меру расстояния. Если алrоритм не умеет работать со смешанными наборами данных, постарайтесь сделать набор данных однородным, то есть отказаться от катеrориальных или числовых признаков. Правило 3. Обязательно проведите содержательную интерпретацию каждоrо полученноrо кластера: постарайтесь понять, почему объекты были сrруппирова ны в определенный кластер, что их объединяет. Для этоrо можно использовать визуальный анализ, rрафики, кластероrраммы, статистические характеристики кластеров, карты. Полезно каждому кластеру дать емкое название, состоящее из нескольких слов. Встречаются ситуации, коrда алrоритм кластеризации не BЫ делил никаких особых rрупп. Возможно, набор данных и до кластеризации был ОДнороден, не расслаивался на изолированные подмножества, а кластеризация Подтвердила эту rипотезу. Таким образом, не существует единоrо универсальноrо алrоритма кластери зации. При использовании любоrо алrоритма важно пони мать ero достоинства, недостатки и оrраничения. Только тоrда кластеризация будет эффективным ин струментом в руках аналитика. ПЕРСОНАЛИИ Тойво Кохонен (reuvo Kohonen) финский ученый и исследователь, профессор технолоrи ческоrо университета r. Хельсинки. Внес большой вклад в развитие теории искусственных нейронных сетей, ассоциативной памяти и распознавания образов. Однако всемирную известность ему принесли сети и карты Кохонена, решающие задачи кластеризации и мно- rомерной визуализации. В последние roAbI Кохонен развивает проект WEBSOM приме- нение самоорrанизующихся карт в Text Мiпiпg. Автор более 300 научных статей. В 2001 r. вышло третье издание ero книrи «Самоорrани- зующиеся карты». Кохонен имеет множество почетных титулов в университетах Европы. Веб страница Тейво Кохонена: http://www.cis.hut.fi/teuvo/.
Data Mining: классификация и реrрессия. Статистические методы 8.1. Введение в классификацию и реrрессию Классификация и реrpессия являются одними из важнейших задач анализа данных. Их объединение в одной rлаве не случайно, поскольку в самой постановке задач классификации и реrpeссии MHoro общеrо. Действительно, как классификационная, так и реrpессионная модель находят закономерности между входными и BЫXOД ными переменными. Но если входные и выходные переменные модели непрерыв ные перед нами задача реrpессии. Если выходная переменная одна и она является дискретной (метка класса), то речь идет о задаче классификации. Применение классификации и реrрессии Задачи классификации и реrpессии возникают практически во всех областях че ловеческой деятельности. Приведем несколько примеров. В банковском деле классификация применяется для решения задач скоринrа, определения кредитноrо рейтинrа клиентов с целью минимизации рисков при выдаче кредитов, выявления мошенничества с кредитными картами. В розничной mОрlовле классификация может использоваться для выделения rрупп покупателей с определенными предпочтениями, что позволит более полно
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 343 удовлетворять спрос и rибко реаrировать на ero изменения, проrнозировать co стояние рынков. В военной технике с помощью классификации можно распознавать тип цели, обнаруженной радиолокатором (пассажирский лайнер, бомбардировщик, истре битель и т. д.), по параметрам отраженноrо от цели сиrнала. В биомедицине с помощью классификации и реrpессии можно диаrностировать заболевания на основе наблюдаемых симптомов (температура, давление, состав крови и т. д.), оценивать ожидаемые результаты лечения. В правоохранителъной деятелъности классификация используется для выявле нИЯ мошеннических действий, при расследовании и предотвращении преступлений на основе анализа ранее совершенных, орrанизации систем безопасности и т. д. В большинстве приведенных примеров упоминалась задача классификации. ЧТО касается реrpессии, то она может использоваться при решении тех же задач, но в несколько друrой постановке. Например, при определении кредитноrо рейтинrа все клиенты банка MorYT быть распределены по трем классам: высокому, cpeд нему и низкому. Если эту же задачу поставить как реrрессионную, то в качестве выходной переменной можно выбрать оценку вероятности возврата кредита. Как и вероятность любоrо события, она будет изменяться от О до 1. Высокая Bepo ятность возврата (O,8 1) соответствует высокому кредитному рейтинrу, низкая вероятность (O,1 O,3) низкому, промежуточные значения (O,3 O,7) среднему. При обеих постановках задачи сохраняется rлавная цель минимизация рисков при кредитовании. 3АМЕЧАНИЕ в ряде источников, особенно зарубежных, задачу, в которой присутствуют непрерывные выходные переменные, называют предСКQЗQнuем (рrеdiсtiоп) и рассматривают не пару «классификация реrрессия», а пару «классификация предсказание». Лоrика использо вания термина «предсказание» понятна. Действительно, если при классификации каждый новый объект или наблюдение относится к одному из заранее определенных классов, то в случае реrрессии фактически предсказываются значения параметров новых объектов. Иноrда термин «предсказание» трактуют еще шире и распространяют как на классифика- цию, так и на реrрессию. То есть при классификации для новых, ранее неизвестных объектов предсказываются их классы, а при реrрессии значения отдельных параметров. Знание класса, к которому относится объект, а также ero важных характеристик позволяет Bыpa ботать стратеrию работы с ним (например, предоставить особые условия кредитования состоятельному клиенту). В такой постановке классификация и реrрессия методы решения задачи предсказания. Классификацию данных можно рассматривать как процесс, состоящий из двух Этапов. На первом этапе (рис. 8.1) строится модель, описывающая предварительно определенный набор классов или катеrорий. Модель строится на основе анализа записей множества данных, содержащих признаки (атрибуты) объектов и COOT ветствующую им метку класса. Такое множество называется обучающей выборкой. В контексте классификации записи MoryT упоминаться как наблюдения, пpuмepы, прецеденты или объекты.
344 Часть 1. Теория бизнес анализа Обучающая выборка ФИО клиента Возраст Доход Кредитный рейтинr Иванов И. И. 28 Ниэкий Ниэкий Сидоров С. А. 26 Ниэкий Ниэкий I Классификационный I Петров В. М. З5 Высокий Высокий I алrоритм Куэнецов П. И. 42 Средний Высокий Васильев И. К. 44 Средний Высокий Николаев А. И. З4 Высокий Высокий Классификационное правило: Если (ЗО Возраст 40) и Доход = Высокий, то Кредитный рейтинr = Высокий Рис. 8.1. Построение классификационной модели Поскольку метка класса для каждоrо примера обучающей выборки предвари тельно задана, построение классификационной модели часто называют обучением с учителем. В процессе обучения формируются правила, по которым производится отнесение объекта к одному из классов (см. рис. 8.1). На втором этапе модель применяется для классификации новых, ранее неиз вестных объектов и наблюдений (рис. 8.2). Перед этим оценивается точность построенной классификационной модели. Одним из наиболее простых способов такой проверки является использование mecmOBOlO множества. Из доступноrо набора данных случайным образом выбирается подмножество примеров (5 1 О % от общеrо объема), которые не используются для настройки параметров модели, а подаются на ее вход для проверки результатов обучения. Заданный класс каждоrо TecToBoro примера сравнивается с классом, к которому пример был отнесен моделью. Точность модели, оцененная с помощью TecToBoro множест ва, будет определяться процентом правильно классифицированных тестовых примеров. Тестов",й набор ФИО клиента Возраст Доход Кредитный рейтинr Классификационное правило Сидоров С. А. Петров В. М. Васильев И. К, 26 Ниэкий Ниэкий З5 Высокий Высокий 44 Средний Высокий Новое наблюдение: Возраст = З6 Доход = Высокий, => Кредитный рейтинr = Высокий Рис. 8.2. Классификация новых данных
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 345 Если установлено, что модель обладает приемлемой точностью и достаточной обобщающей способностью, то ее можно использовать для классификации новых f/аблюдений или объектов, для которых класс еще неизвестен. обзор методов классификации и реrрессии в настоящее время для разнообразных прикладных областей, использующих данные различных природЫ и объемов, разработано orpoMHoe количество методов и алrо ритмов решения задач классификации и реrpессии и еще больше их модификаций. В контексте бизнес аналитики все методы можно разделить на статистические и методы машинноrо обучения. Статистические методы основаны на математической статистике. К ним, в частнОСти, относятся: О линейная реrрессия; О лоrистическая реrрессия; О байесовская классификация и др. Методы маШИ1f.1f.OlО обучения используют модели, основанные на обучении, такие как: О деревья решений; О решающие правила; О нейронные сети; О метод k ближайших соседей и др. К базовому набору методов, которые входят в состав большинства аналитиче ских платформ, относятся множественные реrpессионные модели, деревья решений и искусственные неЙРОЮlые сети. В последние rоды резко возрос интерес к маши 1lам опорных векторов. Кратко рассмотрим суть каждоrо алrоритма. Статистические методы Линейная и лоrистическая реrpессия Задача линейной реrpессии заключается в нахождении коэффициентов ypaв llения линейной реlрессии, которое имеет вид: у==-Ь о +Ь,ХI +Ь2Х2 +...+Ьпх", (8.1 ) rДе у выходная (зависимая) переменная модели; XI, Х2... Х п входные (независимые) переменные; Ь; коэффициенты линейной реrpессии, называемые также параметрами MO дели (Ь О свободный член). Задача линейной реrрессии заключается в подборе коэффициентов Ь; ypaBHe Rия (8.1) таким образом, чтобы на заданный входной вектор Х ==- (Xl, Х2... Х п ) per рессионная модель формировала желаемое выходное значение у.
346 Часть 1. Теория бизнес анализа Одним из наиболее востребованных приложений линейной реrpессии Является пРОl1f.озuроваlluе. В этом случае входными переменными модели Х; являются Ha блюдения из прошлоrо (предикторы), а у проrнозируемое значение. Несмотря на свою универсальность, линейная реrрессионная модель не всеrда ПриrОДНа для качественноrо предсказания зависимой переменной. Коrда для решения задачи строят модель линейной реrрессии, на значения зависимой переменной обычно не налаrают никаких оrраничений. Но на практике такие оrраничения MorYT быть весьма существенными. Например, выходная переменная может быть KaTe rориальной или бинарной. В таких случаях приходится использовать разЛИЧные специальные модификации реrрессии, одной из которых является лоrистическая реrрессия, предназначенная для пред сказания зависимой переменной, приНима ющей значения в интервале от О до 1. Такая ситуация характерна для задач оценки вероятности HeKoToporo события на основе значений независимых переменных. Кроме Toro, лоrистическая реrрессия используется для решения задач бинарной классификации, в которых выходная переменная может принимать только два значения О или 1, «Да» или «Нет» и т. д. ПРИМЕР Пусть требуется спроrнозировать исход операции на сердце. Такие операции очень слож- ны, и их результаты труднопредсказуемы. При построении модели в качестве независимых переменных (предикторов) используются медицинские показатели, характеризующие со- стояние пациента, например возраст, наличие друrих заболеваний, состав крови, давление и т. д. Что касается зависимой (предсказываемой) переменной, то она должна указывать на вероятность успеха или неуспеха операции. В случае успеха больной выживает, в случае неуспеха летальный исход. Возможны два варианта. · Выходная переменная бинарная, то есть на выходе модели MOryт появляться только два значения: 1 успех, О неуспех. Тоrда задача проrнозирования фактически сводится к классификации, а именно к разделению пациентов на две rруппы. К первой rруппе будут отнесены пациенты, для которых проrноз результатов операции положительный, а ко второй rруппе пациенты, для которых проrноз отрицательный. · Выходная переменная непрерывная в диапазоне [О, 1]. Тоrда задача будет заклю- чаться в оценке вероятности появления определенноrо события, например успеха операции. Если переменная на выходе модели примет значение 0,75, это означает, что вероятность успеха операции (событие 1) составляет 75 %, а неуспеха (собы- тие О) 25 %. Таким образом, лоrистическая реrрессия служит не для предсказания значе ний зависимой переменной, а скорее для оценки вероятности Toro, что зависимая переменная примет заданное значение. Предположим, что выходная переменная у может принимать два возможных значения О и 1. Основываясь на доступных данных, можно вычислить вероятно сти их появления: Р(у == О) == 1 р; Р(у 1) == р. Иными словами, вероятность появ ления одноrо значения равна 1 минус вероятность появления друrоrо, поскольку одно из них появится обязательно и их общая вероятность равна 1. Для опереде ления этих вероятностей используется лоrистическая реrрессия: rлава 8. Data Mining: классификация и реrрессия. Статистические методы 347 !og(p/(1 Р))=ОРО +Р1Хl +Р2Х2 +",+PIIX II . (8.2) Правая часть формулы (8.2) эквивалентна обычному уравнению линейной еrрессии (8.1). Однако вместо непрерывной выходной переменной у в левой асТИ отношения вероятностей двух взаимоисключающих событий (в нашем при е р е вероятность появления О и вероятность появления 1). м функция вида !og (р / (1 р)) называется лоzuт преобразоваlluем и обозначается !ogit(p). Использование лоrит преобразования позволяет оrраничить диапазон изменения выходной переменной в пределах [о; 1]. пРИМЕР Предположим, что реrрессионная модель задана уравнением: !ogit(p)=о 1,5 O,6.x! +0,4'Х2 0,3'Хз. Имеется наблюдение (Xt, Х2, Хз) =о (1, о, 1). Используя лоrистическую модель, можно оце- нить вероятность появления BbIxoAHoro значения 1, то есть Р( У =о 1). Для этоro сначала вычислим соответствующее лоrит-преобразование: !ogit(p) =о 1,5 0,6.1 + 0,4. О 0,3.1 =о 0,6. То есть !og(pj /(1 pj)) =о 0,6. Затем можно вычислить вероятность появления значения 1: е О ,6 Р(У = 1) = = 0,65. 1+е' Таким образом, можно заключить, что выходное значение У =о 1 более вероятно, чем У =о о. Даже этот несложный пример показывает, что, несмотря на относительную простоту, лоrи стическая реrрессия может быть очень полезной при решении задачи предсказания, если наилучшим проrнозом считается наиболее вероятное значение. Применение реrpессионных методов в анализе данных активно развивается при мерно с середины ХХ в. В настоящее время реrpессия является одним из наиболее мощных и универсальных методов, успешно используемых для решения широкоrо Kpyra бизнес задач, в том числе проrнозирования. Байесовская классификация Байесовский подход объединяет rруппу алrоритмов классификации, OCHO ванных на принципе максимума апостериорной (условной) вероятности: для объекта с помощью формулы Байеса определяется апостериорная вероятность Принадлежности к каждому классу и выбирается тот класс, для KOToporo она максимальна. Особое место в данной области занимает простая байесовская классификация, в основе которой лежит предположение о независимости признаков, Описываю Щих классифицируемые объекты. Это предположение значительно упрощает задачу, поскольку вместо сложной процедуры оценки мноrомерной плотности вероятности требуется оценка нескольких одномерных.
348 Часть 1. Теория бизнес анализа Линейная, лоrистическая реrрессия и простой байесовский классификатор подробно рассматриваются далее в этой rлаве. Методы, основанные на обучении Деревья решений Деревья решений (деревья классификаций) популярная классификационная методика, в которой решающие правила извлекаются непосредственно из исходных данных в процессе обучения. Дерево решений это древовидная иерархическая модель, rде в каждом узле производится проверка определенноrо атрибута (при знака) с помощью правила. По результатам проверки формируются два или более дочерних узла, в которые попадают объекты, для которых значения данноrо атри бута удовлетворяют (или не удовлетворяют) правилу в родительском узле. Каждый конечный узел дерева (лист) содержит объекты, относящиеся к одному КЛассу. Пример простоrо дерева решений приведен на рис. 8.3. Рис. 8.3. Пример дерева решений Классический алrоритм построения деревьев решений использует стратеrию «разделяй И властвуй». Начиная с KopHeBoro узла, rдe присутствуют все обучающие примеры, происходит их разделение на два или более подмножества на основе значений атрибута, выбранных в соответствии с критерием (правилом) разделения. Для каждоrо из полученных подмножеств создается дочерний узел. Затем процесс ветвления повторяется для каждоrо дочернеrо узла до тех пор, пока не будет BЫ полнено одно из условий остановки алrоритма. В настоящее время разработано большое количество алrоритмов построения деревьев решений. Они отличаются способом отбора атрибутов для разбиения в каждом узле, условиями остановки и методикой упрощения построенноrо дерева. Упрощение дерева заключается в том, что после ero построения удаляются те узлы, правила в которых имеют низкую ценность, поскольку относятся к небольшому числу примеров. Упрощение позволяет сделать дерево решений компактней. ИскусствеlПlые нейронные сети Нейронные сети, или искусственные нейронные сети, представляют собой модели, которые в процесс е функционирования имитируют работу rоловноrО мозrа. Нейронная сеть состоит из простейших вычислительных элементов ис
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 349 I<усственных нейронов, связанных между собой. Каждый нейрон имеет несколько входных и одну выходную связь. Каждая входная связь обладает весом, на KOTO ры й умножается сиrнал, поступающий по ней с выхода дрyrоrо нейрона. Каждый JfеЙРОН выполняет простейшее преобразование взвешенное суммирование своих входов (рис. 8.4). Х, X. . y у Рис. 8.4. Искусственный нейрон в нейронных сетях нейроны объединяются в слои, при этом выходы нейронов предыдущеro слоя являются входами нейронов следующеrо слоя. В каждом слое нейроны выполняют параллельную обработку данных. Пример нейронной сети представлен на рис. 8.5. К. Х, Х Э Рис. 8.5. Пример нейронной сети Первый слой называется входным, ero нейроны обеспечивают ввод в сеть входноrо вектора Х == (XI, Х2, Хз) И распределяют ero по нейронам следующеrо слоя. Нейроны последнеrо слоя, обеспечивающие вывод результатов, называются выходными и образуют выходной слой. Между входным и выходным нейронами расположены один или несколько промежуточных слоев, называемых скрытыми. Именно в скрытых слоях производится основная обработка данных. В процессе работы нейронной сети значения входных переменных Х; передаются по межнейронным связям и умножаются на весовые коэффициенты щ, полученные значения суммируются в нейроне. Также в каждом нейроне выполняется простое преобразование с помощью активационной функции /(5), обычно нелинейной. В результате преобразования значений входноrо вектора всеми нейронами сети на ее выходе формируется вектор результата (выходной вектор) У == (Уl, У2)' Деревья решений и нейронные сети подробно рассматриваются в rлаве 9. :)U '1астъ 1. rеория бизнес анализа Метод k ближайших соседей Этот алrоритм относит любой новый пример к классу, которому принадлежит большинство ero ближайших соседей в обучающем множестве. Под соседством в данном случае подразумевается не расположение объектов или наблюдений рядом в обучающем множестве, а то, что их мноrомерные векторы в простраНСТве признаков близки друr к друrу. Сосед классифицируемоrо объекта считается ближайшим в пространстве признаков, если евклидов о расстояние между ними является наименьшим. Если k == 1, то новый объект относится к тому же классу, что и ero ближайший сосед. Разнообразие подходов Не существует универсальноrо метода для решения задач классификации и pe rpессии, дающеrо наилучший результат во всех случаях. На рис. 8.6 схематически представлено решение задачи классификации деревом решений и нейронной сетью. Так, дерево решений осуществляет последовательное дробление пространства входных признаков на прямоуrольные области (см. рис. 8.6, а). НеЙРОНllОЯ сеть формирует области более сложной формы, чем прямоуrольники (см. рис. 8.6, 6). Х 2 о. . о . . . . . о . о. . о . о . .0 о о . о . . а Х 2 6 . Класс 1 О Класс 2 Х, . Класс 1 О Класс 2 Х, Рис. 8.6. Решение эадачи классификации различными методами: а дерево решений; б нейронная сеть
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 351 Дальнейший материал этой rлавы ориентирован на опытноrо читателя, зна Moro с базовыми понятиями теории вероятностей и математической статисти "О v v б " таКИМИ как вероятность, случаиная величина, случаиное со ытие, среднее, ".., i1сn е рсия, среднеквадратическое отклонение, математическое ожидание, CTa Д v Тi1стическая rипотеза, статистическии тест, статистическая значимость, распре еление вероятностей, нормальное распределение, выборочное распределение. д v Те, Koro статистические методы не интересуют, MorYT сразу переити к изучению [лавы 9. 8.2. Простая линейная реrрессия в Data Mining существует большой класс задач, rде требуется установить зависи мость между признаками (атрибутами, показателями), которые описывают иссле дуемыЙ процесс или объект предметной области, Для этоrо строятся различные модели, в которых данные признаки выступают в качестве переменных, Если модель будет корректно отражать зависимость между входными и выходными nеременными, то с помощью такой модели можно будет предсказывать значения выходной переменной по заданным значениям входных. Как правило, реальные процессы в науке, технике, экономике и бизнесе дo статочно сложны, и для их описания требуется большое количество переменных, которое может насчитывать и несколько сотен в зависимости от сложности объекта исследования. Начнем рассмотрение с простоrо примера, Владелец овощной лавки планирует оптимизировать закупки и для этоrо собирает статистику, отражающую зависи мость объемов продаж от цены, устанавливаемой на продукты. Предполаrается, что розничная цена меняется ежемесячно в зависимости от цены, устанавливаемой поставщиком, на которую, в свою очередь, влияют сезонность, качество товара, ситуация на рынке и т. д. Для розничноrо продавца оценка Toro, сколько товара он сможет продать за определенную цену, представляет большой интерес. Если такая оценка будет получена, то станет ясно, сколько и каких продуктов потребу ется закупить, например, на месяц при определенной ценовой ситуации на рынке. Результатом собранных наблюдений явилась зависимость ежемесячных продаж картофеля от установленной цены (табл. 8.1), Таблица 8.1. Зависимость объема продаж от цены N!! месяца Цена Количество npoAaHHoro Количество npoAaHHoro за 1 Kr, х картофеля, у, Kr картофеля, оцененное с помощью реrрессии, у, Kr 1 13 1000 1323,4 2 20 600 305,6 3 17 500 741,8 4 15 1200 1032,6 Продолжение .р
352 часть 1. Теория бизнес анализа Таблнца 8.1 (продолжение) N!! месяца Цена Количество npOдaHHOI'"O Количество npoAaHHOI'"O за 1 KI'", Х картофеля, у, к... карт еля,оцененное с помощью реl'"рессии, У, кl'" 5 16 1000 887,2 6 12 1500 1468,8 7 16 500 887,2 8 14 1200 1178,0 9 10 1700 1759,6 10 11 2000 1614,2 Цель анализа оценка ожидаемых объемов продаж картофеля в зависимости от установленной цены, Построим модель продаж, rде в качестве входной перемен ной будет использоваться цена, а в качестве выходной объем продаж. На рис. 8,7 пред ставлена диаrpамма рассеяния исходных данных. Даже простой визуальный анализ показывает наличие обратной зависимости между ценой и объемами про даж: с увеличением цены продажи падают. Само по себе это не является неожи данным. Однако с практический точки зрения наибольший интерес представляет количественное описание этой зависимости, а именно KaKoro падения спроса следует ожидать при увеличении цены за единицу. Если предположить, что зависимость между переменными линейная, то для по строения модели достаточно провести прямую линию, проходящую через «облако» точек, соответствующих наблюдениям. Тоrда наклон линии покажет, насколько уменьшатся продажи при увеличении цены, 2500 2000 L... " S 1500 q: о Q. 1000 с 500 О О о о о 00 о о о 00 5 10 15 20 25 Цена Рис. 8.7. Наблюдаемая зависимость объемов продаж от установленной цены
rлава 8. Data Mining: классификация и реrрессия. Статистические методы ЭSЭ Если мы хотим смоделировать зависимость объемов продаж картофеля от v: eHbI за килоrрамм, то нужно построить прямую, каждая точка которой будет J1редставлять собой оценку объемов продаж для заданной цены. Но таких линий можно построить бесконечно мното, и только одна из них обеспечит оптимальную оценКУ объемов продаж. Естественным было бы провести линию таким образом, чтобы рассеяние вдоль нее точек, соответствующих реальным наблюдениям, было минимальным, На практике линию строят так, чтобы сумма квадратов отклонений наблюдаемых значений от оцененных с помощью данной линейной зависимости была минимальной, то есть /1 2 L:(Yi У;) min, i==1 rдe п число наблюдений; Yi оценка выходното значения для i ro наблюдения, полученная с помощью модели; У реально наблюдаемое значение объема продаж. Данный метод приближения линейной зависимости между входными и BЫXOД ными переменными известен как метод llаu.м.еllЪШUX 'Квадратов (МНК), а линия, построенная с ero помощью, называется линией реrpессии. ЛИllИЯ реzрессии это прямая наилучшеrо приближения для множества пар значений входной и выходной переменной (Х, у), выбираемая таким образом, чтобы сумма квадратов расстояний от точек (Х;, Yi) до этой прямой, измеренных верти кально (то есть вдоль оси у), была минимальна, Уравнение, описывающее линию реrpессии, называется уравllеllием реzрессии: у == Ь о + btx, (8.3) rде У оценка значения выходной переменной; Ь о коэффицент, определяющий точку пересечения линии с осью у, называ емый также свободllЫМ чле1l0М. Коэффициент Ь ! определяет наклон линии OТHO сительно оси х (иноrда ero называют уzловым 'Коэффициеllтом). Проще rоворя, Ь 1 это величина, на которую изменяется значение выходной переменной У при изменении входной переменной х на единицу, Коэффициенты линейноrо ypaBHe ния Ь о и Ь ! называются 'Коэффициеllтами реzрессии. Как упоминал ось ранее, в зарубежной литературе реrpессию часто называют предсказанием (prediction). При этом входную переменную называют предсказы вающей переменной, или предиктором (predictor variable), а выходную перемен ную пред сказываемой (predicted variable). Таким образом, задача построения модели линейной реrpессии сводится к нахож дению таких коэффициентов Ь о и b t , для которых сумма квадратов ошибок, то есть разностей между реально наблюдаемыми значениями выходной переменной Yi и их оценками У, была бы минимальна. Уравнение реrрессии с учетом ошибки между наблюдаемым и оцененным значениями будет У==Ь о +biX+E,
ЭS4 Часть 1. Теория бизнес анализа [де Е ошибка. Тоrда сумму квадратов ошибок по всем наблюдениям можно вычислить сле дующим образом: 11 11 2 Il Е=: L:/::2 =: L:(y; Yi) =: L:(y; Ь О blXi ( ;==1 ;==1 ;=1 (8.4) п ""'2 Мы можем найти значения Ь О и Ь[, которые минимизируют L.J/::; , путем диффе i 1 ренцирования уравнения (8.3) по Ь О и Ь 1 . Частные производные для уравнения (8.4) по Ь О и Ь ! соответственно будут: дЕ /1 А дЕ /1 А дЬ =: 2, L:(Yi bo b[Xi); д Ь =: 2. L:Xi(Yi bo bIXi). (8.5) о , I I i 1 Как известно, в точке, [де функция минимальна, ее про из водная обращается в ноль. Поэтому нас интересуют значения Ь О и b j , которые обращают (8.5) в ноль, то есть 11 2 Il L: (У i Ь О Ь[ Х j) =: о; L: Х i . (У i Ь О Ь[ Х; ) == о. i==l ;=1 Опустив некоторые промежуточные выкладки, сразу запишем результат: 11 ( п )( 11 ) /. L:X;Yi L:Xi L:y; / п Ь ' I , [ , I I (tXi2) (tXi)2f (8.6) 1 11 Ь п Ь О =: L:Yi +.....!.. L:x== у blx п i 1 п i 1 [де п общее число наблюдений; Y среднее значение выходной переменной; Х среднее значение входной переменной, Уравнения (8.6) это полученные методом МНК дЛЯ значений Ь О и Ь 1 оценки, которые минимизируют сумму квадратов ошибок Разности между наблюдаемыми значениями выходной переменной и значения ми, оцененными с помощью реrрессии, называются остатками. Справедливо: наблюдение == оценка + остаток Используя МНК, вычислим оценки коэффициентов реrрессии для данных из табл. 8.1. 1493 000 1612 800 ы =: 21560 20 735 145,4; Ь о =: 1120+2093,6 =: 3213,6.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 355 Соответствующее уравнение реrрессии будет иметь вид у == 3213,6 145,4х. Смысл коэффициентов уравнения реrрессии следующий: Ь О это значение выходной переменной у при значении входной переменной х == О. Значит, при цене картофеля, равной нулю, оценка объемов продаж составит 3213,6 Kr. Однако данная формальная интерпретация явно противоречит здравому смыслу, поскольку если раздавать картофель бесплатно, то купят любое ero доступное количество. Такая ситуация возникла из за Toro, что в исходной выборке наблюдений отсутствуют значения х, близкие к нулю, Отсюда вытекает одно из оrраничений линейной реrрессии: линию реrрессии (и, соответственно, описывающее ее уравнение) следует считать подходящей аппроксимацией некоторой реальной функции только в том диапазоне изменений входной переменной х, в котором распреде лены исходные наблюдения. В противном случае результаты MorYT оказаться непредсказуемыми, Значение коэффициента наклона линии реrрессии Ь! можно интерпретировать как среднюю величину изменения значения выходной переменной при изменении значения входной переменной на единицу. В нашем примере это означает, что при увеличении цены за один килоrрамм картофеля на одну денежную единицу можно ожидать уменьшения спроса в среднем на 145,4 Kr. Линия реrрессии для найденноrо нами уравнения представлена на рис. в.в. З500 ЗООО L... 2500 " :s 2000 о Q. С 1500 1000 500 5 10 15 Цена 20 25 Рис. 8.8. Линия реrpессии для при мера из табл. 8.1 Для линии реrpессии сумма квадратов вертикальных расстояний между точка ми данных (светлые точки) и линией должна быть меньше, чем аналоrичная сумма квадратов для любой друrой прямой,
356 Часть 1. Теория бизнес анализа 8.3. Оценка соответствия простой линейной реrрессии реальным данным Линия реrpессии должна аппроксимировать линейную зависимость между входной и выходной переменными модели, Однако при этом возникает вопрос, насколько линейная аппроксимация соответствует наблюдаемым данным. Чтобы определl"Т>. это, введем в рассмотрение два показателя стандартную ошибку оцениванuя ЕCl и коэффициент детерминации, обозначаемый r2. В статистике мерой разброса случайной величины относительно среднеro значения является стандартное отклонение. Аналоrично в качестве меры раз броса точек наблюдений относительно линии реrрессии можно использовать стандартную ошибку оценивания, которая показывает среднюю величину отклонения точек исходных данных от линии реrрессии вдоль оси у, CTaHдapT ная ошибка равна корню квадратному среднеквадратической ошибки (Е ско ), то есть сумме квадратов разностей между реальным и оцененным значениями, вычисленной по всем наблюдениям и отнесенной к числу степеней свободы выборки: t(Yi у,)2 Е ско i===1 п т l rде т количество независимых переменных, которое для простой линейной per рессии равно 1. Е ско можно рассматривать как меру изменчивости выходной переменной, объясняемую реrрессией. Тоrда стандартная ошибка оценивания определится следующим образом: ECI' == ,JE CKO ' Значение стандартной ошибки Ест позволяет оценить степень рассоrласования оценок, полученных с помощью реrpессии, и реальных наблюдений аналоrично тому, как стандартное отклонение позволяет оценить в статистическом анализе степень разброса случайной величины относительно среднеrо. Чем меньше CTaH дартная ошибка оценивания, тем лучше работает модель. Рассмотрим пример. Пусть требуется оптимизировать закупку бензина для сети автозаправочных станций (АЗС), ДЛЯ этоrо была исследована выборка, в которой представлены данные, описывающие объемы продаж бензина определенной марки десятью АЗС, В ней представлено количество бензина в тоннах, проданное АЗС за определенное число дней. На основе наблюдений было получено уравнение pe rpессии.1; == 6 + 2х, Объем продаж оценивается как 6 т плюс удвоенное количество дней, в течение которых осуществлялись продажи. Уравнение позволяет оценить количество тонн бензина, которое может быть продано за заданный интервал Bpe мени. Полученные оценки представлены в табл, 8.2,
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 357 Таблица 8.2. Расчет среднеквадратической ошибки для примера о продажах бензина н!!А3С Время, Х, Объем Оцененное Ошибка (y 9)2 дней продаж, у, т количество, у = 6 + 2х оценивания, y 9 1 2 10 10 О О 2 2 11 10 1 1 3 3 12 12 О О 4 4 13 14 1 1 5 4 14 14 О О 6 5 15 16 1 1 7 6 20 18 2 4 8 7 18 20 2 4 9 8 22 22 О О 10 9 25 24 1 1 L./Y ,ц)2 12 Из табл. 8,2 видно, что сумма квадратов ошибок оценивания 2.: (У [;)2 :=о 12. Эта величина представляет собой общую меру ошибки оценивания значения BЫ ходной переменной с помощью данноrо уравнения реrpессии, Если она велика, то модель работает неудовлетворительно. Является ли полученное значение суммы квадратов ошибок, равное 12, большим? Этоrо достоверно сказать нельзя, посколь ку на данном этапе мы не имеем друrих мер для сравнения. Для примера, который представлен в табл. 8.2, стандартная ошибка будет 2 Е,т:=о ;::: 1,2. Следовательно, при оценке объема продаж АЗС с помощью 10 1 1 уравнения [; :=о 6 + 2х ожидаемая ошибка равна 1,2 т, Теперь предположим, что информация о времени, в течение KOToporo ocy ществлялись продажи, отсутствует, то есть использовать переменную х для oцe нивания переменной У невозможно. Полученные в этом случае оценки объемов продаж окажутся менее точными, поскольку количество исходной информации уменьшится, Тоrда единственно возможной оценкой для У будет простое среднее значение Т! = 16. Рассмотрим рис, 8,9, [де оценка объемов продаж, не учитывающая информацию о времени, за которое они были сделаны, представлена rоризонталь ной линией у = 16. Отсутствие информации о времени приводит к оценке объемов продаж 16 т для всех АЗС независимо от отработанноrо времени. Очевидно, что цeH ность такой оценки сомнительна, Действительно, одни АЗС расположены на оживленных трассах, а друrие на второстепенных, плотность транспортноrо потока меняется под действием различных факторов, Поэтому ожидать, что АЗС, отработавшие 1 2 дня и 5 7 дней, продадут одинаковое количество бен зина, наивно,
358 Часть 1. Теория БИзнес анализа 26 24 22 :I: 20 . л EIO :I: y y О f-- :s 18 . '" у==16 са о 16 Q. с 14 12 . 10 2 З 4 5 6 7 8 9 Количество дней Рис. 8.9. rеометрическая интерпретация линий реrрессии Точки на рис. 8.9 сосредоточены вдоль линии реrрессии, а не вдоль линии у = 16. То есть предполаrается, что суммарная ошибка оценивания будет меньше, если использовать информацию о времени. Например, рассмотрим АЗС N210, на которой было продано у == 25 т бензина за 9 дней. Если иrнорировать информацию о времени и предположить, что на ней, как и на остальных АЗС, продано только 16 т, то ошибка оценивания составит Е 10 == У ,Ц == 9 т. Мы можем сравнить стандартную ошибку Ест == 1,2 и ошибку относительно среднеrо значения у = 16, коrда информация о предсказывающей переменной иrнорируется: Ест == 1 11 1 2 )У; у)2 == 5,0. п i l Таким образом, типичной ошибкой пред сказания для случая, коrда инфор мация о значениях предсказывающей переменной не используется, будет 5,0 т. Следовательно, применение реrpессии вместо оценки на основе простоrо среднеrо значения позволяет уменьшить ошибку с 5,0 до 1,2 т, то есть более чем в 4 раза. Это позволяет сделать вывод о значимости полученной реrрессионной Moдe ли. Если бы значения стандартной ошибки, полученные для оценок реrрессии и простоrо среднеrо значения, были примерно одинаковы, это rоворило бы о том, что реrрессия практически не дает выиrрыша в точности оценки по сравнению с обычным средним наблюдаемых значений, то есть о низкой значимости perpec сионной модели,
rлава 8. Data Mining: классификация и реrрессия. Статистические методы ЭS9 изменчивость выходной переменной q тобы оценить степень соответствия реrрессии реальным данным, полезно ввести мерЫ, количественно характеризующие поведение выходной переменной. В каче стве таких мер используются три квадратичные суммы: общая (полная) Q, perpec С!10ННая и ошибки (остаточная) . Чтобы пояснить смысл данных величин, представим наблюдаемое значение выходной переменной в виде У =с У + (У У), то есть наблюдаемое значение равно сумме ero оценки и ошибки оценивания, ДaH ное выражение может быть записано в виде У =с (Ь О + bjx) + (у Ь О bjx), Здесь У наблюдаемое значение, (Ь О + btx) член, описывающий долю изменчивости BЫ ходной переменной, объясняемой реrрессией, (у Ь О Ь 1 х) член, описывающий отклонение выходной переменной от линии реrрессии (остаток). Если все точки даннЫХ лежат непосредственно на линии реrрессии (идеальное соответствие), то остатки будут равны О. Если из обеих частей предыдущеrо выражения вычесть среднее значение)l, то есть y у =с (.ц у) +(y .ц), то можно показать, что суммы квадратов складываются следующим образом: Il Il 2 Il 2 2:(у; у)2 =с 2:(У, ,У) + 2:(у, ,Yi) , i 1 i l i==! или, используя введенные выше обозначения для квадратичных сумм: Q =с QR +Q/:,. Таким образом, 11 Il., Il 2 Q =с 2:(у; у)2; QII =с 2:(Yi у)"; Q/; =с 2:(у; У,) . i 1 i 1 i 1 Следовательно, полная изменчивость выходной переменной складывается из части, объясняемой реrpессией (линейной зависимостью), и ошибки, то есть части, не объясненной реrрессией, ЗАМЕЧАНИЕ С каждой из квадратичных сумм связано определенное число степеней свободы, кото- рое используется при статистическом анализе реrрессионных моделей. Сумма квадратов , обусловленная уравнением реrрессии, имеет число степеней свободы dfR =с т, rAe т количество независимых переменных модели, поскольку участвующая в ней величина у определяет т линейных связей для N наблюдений, так как в нее входят т оценок коэф- фициентов b t , Ь 2 ". Ь т . Остаточная сумма квадратов Q,E. отражающая долю изменчивости выходной переменной, которая не может быть объяснена уравнением реrрессии, имеет число степеней свободы dfE == п т 1. И наконец, с полной суммой Q, связано d/ == п 1 степеней свободы, поскольку в нее входят N наблюдений, на которые наложена одна ли- нейная связь у. Леrко увидеть, что df == dfR + dfE.
ЭБО Часть 1. Теория бизнес анализа Нужно ли ожидать, что полная квадратичная сумма Q, полученная тОлько При использовании среднеrо значения Tj, будет больше или меньше, чем остаточная сумма Qь-, полученная при оценивании с учетом входной переменной? используя данные табл, 8.2, получим, что Q == 228 окажется HaMHoro больше, чем Qь- == 12 (табл.8.3). Таблица 8.3. Расчет полной квадратичной суммы для примера о продажах бензина N!!АЭС Время, х, Объем У y у (y y)Z дней продаж, у, т 1 2 10 16 6 36 2 2 11 16 5 25 3 3 12 16 4 16 4 4 13 16 3 9 5 4 14 16 2 4 6 5 15 16 1 1 7 6 20 16 4 16 8 7 18 16 2 4 9 8 22 16 6 36 10 9 25 16 9 81 Q 228 Теперь мы можем сравнить две меры точности оценивания выходной пере менной. Поскольку Qь- HaMHoro меньше, чем Q, можно сделать вывод, что ис пользование информации о входной переменной в задаче реrрессии позволяет получить более точные оценки, чем без ее использования, то есть коrда в Ka чеСтве оценки используется простое среднее значение наблюдений выходной переменной. Определим меру, которая позволит увидетЬ, насколько улучшились оценки, полученные с помощью уравнения реrрессии, Для этоrо вернемся к рис. 8,9, Для Азе N 1 О ошибка. полученная при использовании уравнения реrpессии, co ставит у .1; == 25 24 == 1. Если же производить оценку только на основе среднеrо значения у == 16, то полученная ошибка составит у у == 25 16 == 9. Таким образом, ошибка оценивания уменьшится на .1; у == 24 16 == 8, то есть на разность оценок с помощью реrpессии и простоrо среднеrо. Коэффи циент детерминации Введем понятие коэффициента детерминации r2, который показывает степень Соrласия реrpессии как приближения линейноrо отношения между входной и BЫ ходной переменными с реальными данными: 2 / r ==QR Q. Значение коэффициента детерминации максимально, коrда имеет место иде альное соответствие: все точки данных лежат точно на прямой реrpессии, В этом
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 361 случае квадратичная сумма {2t оценки, полученной с помощью реrрессии, равна О, Тоrда Q == {ь и r" == QR/Q == 1. Максимальное значение коэффициента детерми нации, равное 1, имеет место только тоrда, Коrда уравнение реrрессии идеально описывает связь между входной и выходной переменными, оПРЕДЕЛЕНИЕ Коэффициент детерминации (соеffiсiепt of dеtеrmiпаtiоп), называемый также коэффици ентом смешанной корреляции или статистикой R квадрат, статистический показатель, отражающий объясняющую способность уравнения реrрессии. Он также является стати- стической мерой соrласия, с помощью которой можно определить, насколько уравнение реrрессии соответствует реальным данным. Чтобы определить МИflИмальное значение коэффициента детерминации, пред положим, что реrрессия совсем не улучшает точность оценки по сравнению с ис пользованием среднеrо значения, то есть не объясняет изменчивость выходной переменной, В этом случае QR == О, а значит, и r 2 == О. Таким образом, коэффициент детерминации может изменяться от О до 1 включительно. При этом чем выше значение r 2 , тем больше реrрессионная модель соответствует реальным данным. Значения r 2 , близкие к 1, означают очень хорошее соответствие реrрессионной модели реальным данным, а значения, близкие к О, очень плохое. Вычислим значение коэффициента детерминации для примера из табл. 8.З: r" == QR/Q == 216/228 == 0,9474, Можно сделать вывод, что реrpессионная модель работает хорошо, Коэффициент корреляции Еще одной мерой, используемой для количественноrо описания линейной зависи мости между двумя числовыми переменными, является коэффициент корреляции, который определяется следующим образом: 2] х <х)(у у) r== (п 1)axay , (8,7) rде о"х И о"у стандартные отклонения соответствующих переменных, Значение коэффициента корреляции всеrда расположено в диапазоне от 1 до 1 вклю чительно и может быть интерпретировано следующим образом. о Если коэффициент корреляции близок к 1, то между переменными имеет место сильная положительная корреляция, Иными словами, наблюдается высокая степень зависимости входной и выходной переменных (если значения входной переменной х возрастают, то и значения выходной переменной у также будут увеличиваться). о Если коэффициент корреляции близок к 1, это означает, что между перемен ными наблюдается отрицательная корреляция: поведение выходной переменной
362 Часть 1. Теория бизнес анализа будет противоположнь:;:м поведению входной (коrда значение Х возрастает у уменьшается, и наоборот). ' О Промежуточные значения указывают на слабую корреляцию между пере менными и, соответственно, на низкую зависимость между ними: поведение входной пере мен н ой Х совсем (или почти совсем) не будет влиять на Пове дение у. Зависимость степени связи между переменными от конкретных значений коэф фициента корреляции в большинстве задач можно определить с помощью прибли женной оценки, Но следует отметить, что в технических приложениях, например, при обнаружении целей в радиолокации на фоне шумов и помех необходимо при менять более строrие подходы, Для приближенной оценки можно воспользоваться следующей шкалой (табл. 8.4). Таблица 8.4. Шкала соответствия для коэффициента корреляции Коэффициент корреляции, r Корреляция 0,6 < r < 1 Высокая положительная 0,3 $ r$ 0,6 Средняя положительная 0,3 < r< 0,3 Корреляция отсутствует 0,6 $ r$ 0,3 Средняя отрицательная 1<r< O,6 Сильная отрицательная Вычисление коэффициента корреляции по формуле (8,7) может быть несколь ко rpомоздким, поскольку В знаменателе требуется найти стандартные отклонения. для Х и у, Поэтому при вычислении коэффициента корреляции для примера из табл, 8,2 воспользуемся упрощенным выражением: LXY (LxLy)/п r== LX2 (LX)2 /п' Ly2 (Ly)2 /п 908 (50.60)/1 О == 0,9733, 304 502 /10 ' 2788 1602 /10 Видно, что между временем, в течение KOToporo производились продажи, и количеством проданноrо бензина существует сильная корреляция (чеrо, впрочем, и следовало ожидать): с увеличением времени продаж, количество проданноrо бензина увеличивается. Чтобы вычислить коэффициент Koppe ляции, можно использовать коэффициент детерминации r 2 , то есть r == :l:.P, Если коэффициент уравнения реrрессии Ь 1 > О (линия реrрессии возрастает), то и коэффициент корреляции также будет положительным, то есть r == Р. В противном случае коэффициент корреляции будет отрицательным, то есть r == P, Поскольку в нашем примере Ь 1 == 2, коэффициент корреляции будет положительным и равным r == Р == 0,9474 == 0,9733.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы Э6Э 8.4. Простая реrрессионная модель ДЛЯ мноrих практических приложений найти уравнение реrpессии и построить соответствующую линейную зависимость недостаточно, Чтобы решить задачу, требуется построить реzрессuО1f'НУЮ модель. В чем же отличие простой линейной реrpессии от реrpессионной модели? Дело в том, что уравнение реrpессии в боль llIНIIстве случаев строится на основе выборочных данных. При этом из множества наблюдений, называемоrо rенеральной совокупностью, выделяется некоторая выборка, на основе свойств которой предполаrается делать выводы о свойствах всей совокупности, Для данной выборки и строится уравнение реrpессии. Затем производится попытка обобщить полученную линейную зависимость на всю re неральную совокупность, То есть простая линейная реrpессия строится на основе выборки наблюдений, каждое из которых содержит соответствие Х у, а реrpессионная модель предпо лаrает, что обнаруженная линейная зависимость имеет место для всех вОЗМОЖ1iЪLX пар Х у, содержащихся в rенеральной совокупности. Однако при построении реrpессионной модели возникает ряд проблем, выходящих за рамки построения уравнения реrpессии. Во первых, нужно определить, справедливо ли предположе ние о том, что линейная зависимость, обнаруженная для выборочных наблюдений, будет истинна для всей совокупности. BO BTOpЫX, ситуация осложняется тем, что реrpессия, вообще rоворя, не является детерминированной задачей, поскольку для реальных данных зависимость изменения выходной переменной от изменения входной носит случайный характер, Следовательно, коэффициенты реrрессии MOryT рассматриваться как статистики, описывающие распределение выходной переменной. Простая линейная реrpессионная модель задается следующим образом, Пусть имеется выборка данных, содержащая п наблюдений, в каждом из которых значе нию независимой переменной Х; соответствует значение зависимой переменной Yi, связанных с помощью линейной зависимости: y== o + 1X+E, rДе o и 1 параметры модели, определяющие точку пересечения линии реrpессии с осью у и наклон линии реrpессии соответственно; Е член, определяющий ошибку отклонения реальноrо наблюдения от оценки, полученной с помощью данной модели. ЗАМЕЧАНИЕ Если для обозначения коэффициентов уравнения реrрессии мы использовали латинские буквы Ь О и Ь 1 . то при рассмотрении реrрессионной модели соответствующие параметры мы будем обозначать rреческими буквами 130 и 131. Поскольку для реальных данных отношение между входной переменной Х и BЫ ходной переменной у носит случайный характер, любое ero линейное приближение будет характеризоваться некоторой ошибкой, Для учета этой ошибки в модель
364 Часть 1. Теория бизнес анализа необходимо ввести СООТЕетствующий элемент, также представляющий собой слу. чайную переменную. При этом допускается несколько предположений. О Предположение о нулевом среднем. Член, учитывающий ошибку, является слу чайной переменной с математическим ожиданием, равным О, то есть т( Е) '= О, О Предположение о постоянной дисперсии. Дисперсия Е (обозначим ее а;) по. стоянна. О Предположение о независимости. Отдельные значения Е являются независи мыми. О Предположение о нормальности. Ошибка Е является нормально распределенной случайной переменной. Иными словами, ошибка Е i является независимой нормально распределенной случайной переменной с нулевым математическим ожиданием и дисперсией а;. На основе этих предположений можно сделать выводы о поведении зависимой переменной. Статистическая модель простой линейной реrpессии предполаrает, что для каждоrо значения входной переменной х наблюдаемое значение BЫXOД ной переменной у является нормально распределенной случайной величиной со средним Е(у) '= o + IX и постоянной дисперсией (Т 2 . Данное предположение иллюстрируется на рис. 8.10 для случаевх '= 5, х '= 10 их '= 15, Видно, что все кри вые нормальноrо распределения имеют одну и ту же форму, из чеrо следует, что дисперсия постоянна для всех х. Распределение у при х = 15 х= 10 Е(у) при х = 15 Линия реrрессии E(y)== O+ lX Рис. 8.10. Для каждоrо значения х значение у есть нормально распределенная случайная величина Если при решении задачи реrpессии строить модель не требуется, то проверять состоятельность данных предположений не обязательно, поскольку они касаются
rлава 8. Data Mining: классификация и реrрессия. Статистические методы Э65 только ошибки Е, Если ошибка не учитывается, то и предположения не нужны. Oд нако если нужно построить модель, то предположения должны быть проверены. Поясним смысл предположений о поведении зависимой переменной у. О На основе предположения о нулевом среднем имеем: E(y)==E( o + IX+E)==E( o)+E( lx)+E(E)== o + IX. Для каждоrо значения х среднее значение у лежит на линии реrрессии. О На основе предположения о постоянстве дисперсии D(y) имеем D(y)==D( o + IX+E)==D(E)==cr2. Независимо от Toro, какое значение принимает переменная х, дисперсия пере менной у всеrда является постоянной величиной. О Из предположения о независимости следует, что для любоrо х значения у также будут неэависимыми, О Из предположения о нормальности следует, что у также является нормально распределенной случайной переменной, Таким образом, выходная переменная у является независимой нормально pac пределенной случайной переменной со средним, равным o + 1' и дисперсией 0-2, rипотезы в реrрессии Пусть для уравнения линейной реrpессии, построенноrо на некоторой выборке, мы определили коэффициент детерминации f2 == 0,2. Это значение показывает, что соответствующая модель вряд ли является значимой, то есть линейная зави симость между входной и выходной переменными отсутствует, Но отсутствует ли она полностью? Возможно, линейная зависимость между переменными имеет место даже при очень малых значениях коэффициента детерминации. Существует ли системный подход, позволяющий определить наличие линейной зависимости между входной и выходной переменными? Методическую основу для оценки зна чимости таких зависимостей создают zuпотезы линейной реzрессии, Рассмотрим модель простой линейной реrpессии: y== o + IX+E, Данная модель утверждает, что между выходной пере мен ной у и входной пере мен н ой х существует линейная зависимость. Здесь 1 параметр модели, KOHCTaH та, значение которой неизвестно, Существует ли такое значение I' при котором линейная зависимость между переменными х и у будет отсутствовать? Рассмотрим случай 1 == О, Тоrда реrрессионная модель примет вид y== o +O'X+E== o +Е. Следовательно, линейная зависимость между переменными Х и уперестанет существовать. Но если 1 примет любое отличное от нуля значение, то она будет
366 Часть 1. Теория бизнес анализа наблюдаться, Отсюда следует важный вывод: линейная зависимость между Пере менными х и у зависит от параметра l. Возможна ситуация, коrда реrрессия, построенная на основе выборки, обнару Жит линейную зависимость между входной и выходной переменными, в то время как реrpессионная модель, построенная для всей совокупности, нет, Таким образом, если между переменными некоторой выборки существует линейная зависимость ИЗ этоrо не обязательно следует существование линейной зависимости для всеЙ совокупности, Это значит, что даже если коэффициент уравнения реrpессии Ь 1 +'= О, то коэффициент реrpессионной модели 1 может оказаться равным О и линия pe l'J)ессии, вычисленная с использованием всех наблюдений совокупности, окажется rоризонтальной, Поясним данную ситуацию (рис. 8,11), у JЗ1;СО о о о . . о о о о о о о . . о о JЗ1 = о о о о о о . х Рис. 8.11. Отсутствие линейной зависимости во всей совокупности На рис. 8,11 светлыми круrами обозначены точки, соответствующие наблюде НИям rенеральной совокупности. Визуальный анализ показывает, что такой набор точек даст rоризонтальную линию реrpессии ( 1 == О), представленную на рисунке СПлошной линией. В то же время линия реrрессии, построенная по выборочным наблюдениям (темные круrи), может иметь некоторый наклон (штрихпунктирная линия), и в этом случае Ь 1 +'= О, что указывает на наличие положительной линейной зависимости между переменными х и у. Поскольку зависимость выходной переменной от входной носит случайный характер, то и оценки параметра наклона линии реrpессии Ь являются статисти ческими. Как и все такие оценки, они имеют распределение с некоторым средним значением и стандартным отклонением. Стандартное отклонение для оценки Ь 1 определяется следующим образом: cr аь, == Lx2 (LX)2 /п' rде (J' стандартное отклонение, вычисленное для всей совокупности.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 367 Как предположение о среднем значении rенеральной совокупности может быть сделано на основе выборочноrо среднеrо х, так и предположение о значении 1 может быть сделано на основе выборочной оценки Ь 1 . На основе (J /1, мы можем получить показатель (обозначим ero Sb,), отражающий меру изменчивости b j . Определим ero следующим образом: Ест 5/1, == f'L x2 ('LX)2 /п' rде Е", стандартная ошибка оценивания. Большие значения 5/" показывают, что оценка параметра неустойчива, нестабильна, Во мноrих задачах интерес представляет не оценка значения параметра модели 1 для rенеральной совокупности, а некоторое утверждение о нем, В этом случае задача сводится к про верке rипотезы, по результатам которой rипотеза будет либо подтверждена, либо отклонена. Введем в рассмотрение две rипотезы нулевую (основную) и альтернативную. Нулевая rипотеза Но предполаrает, что линейные связи между переменными OT сутствуют, в то время как альтернативная rипотеза На утверждает, что такие связи имеют место. Таким образом: D Но: 1 == О линейные связи между переменными отсутствуют; D На: 1 +' О линейные связи между переменными имеют место. Если верна rипотеза Но, то линия реrрессии будет расположена rоризонталь но и построенная реrрессионная модель бесполезна. С таким же успехом можно использовать для оценки простое среднее значение выходной переменной, BЫ численное по всем имеющимся наблюдениям. Наоборот, если удастся oTBeprHYTb нулевую rипотезу, подтвердится значимость модели, то есть наличие линейной зависимости между входной и выходной переменными. Но чтобы сделать OKOH чательное заключение о приrодности модели к решению той или иной задачи, необходимо определить степень ее значимости. Для этоrо можно использовать силу отклонения нулевой rипотезы. Для подтверждения или отклонения rипо тезы используется некоторый статистический показатель, значение KOToporo должно быть вычислено на основе имеющихся наблюдений, Например, если зна чение, принятое llOказателем, очень маловероятно в предположении истинности rипотезы, то истинность rипотезы также маловероятна и ее следует отклонить. При этом уверенность в отклонении rипотезы тем сильнее, чем меньше Bepo ятность появления данноrо значения показателя. Такое проверочное значение часто называют р значением. Чем меньше р значение, тем выше ожидаемая зна чимость модели и сильнее линейная зависимость между входными и выходной переменными, Для проверки истинности нулевой и альтернативной rипотез существуют различные критерии. Например, rипотеза Но может утверждать, что наблюдаемое выборочное распределение значений переменной является нормальным, а альтер нативная rипотеза что оно таковым не является, Тоrда вероятность значения
368 Часть 1. Теория бизнес анализа проверочной статистики либо подтвердит, что данные имеют нормальное распре. деление, либо покажет степень ero отклонения от нормальноrо. Одними из наиболее популярных критериев оценки значимости реrpессионных моделей являются t критерий, построенный на основе t распределения Стьюдента и F критерий, использующий F распределение Фишера. ' Оценка значимости реrрессионной модели: t критерий и F критерий Для проверки истинности rипотезы Но t критерий использует статистику t == b 1 /5/,!, подчиняющуюся t распределению с (п 2) степенями свободы. При проверке rи потез возможно появление двух видов ошибок, представленных в табл, 8.5. Таблица 8.5. Виды ошибок, возникающих при проверке rипотез Действительное состояние Но принимается НО отверrается Но справедлива Верное решение Ошибка 1 рода: вероят ность а Но несправедлива Ошибка 11 рода: вероят Верное решение ность IЗ Ошибка 1 рода заключается в отклонении верной нулевой rипотезы, а ошибка II рода в принятии неверной нулевой. Вероятности данных событий обозначим а и соответственно, причем вероятность а называется уровнем 31lачu.м.остu 1{pитe рuя. Он определяет вероятность Toro, что справедливая rипотеза Но будет ошибочно oTBeprHYTa, Задав значение а и вычислив значение проверочной статистики t, по таблице t распределения можно установить, насколько вероятно появление полу ченноrо значения статистики t, если нулевая rипотеза будет ошибочно oTBeprHYTa (таблицу t распределения см. в приложении на CD). В качестве примера возьмем данные о продажах картофеля, для которых было получено уравнение реrpессии у == 3213, 6 145,4. х, Тоrда Ест 5/, == , LX2 (LX)2 /п 272,5 ==зо, L(x<i)2 ..182,4 Ест t==bt/Sb, == 14S,4/30== 4,8S. Чтобы оценить вероятность справедливости rипотезы НО при значении CTa тистики t == 4,8S, воспользуемся методом р значения, Под р значением в кри терии проверки rипотезы понимается вероятность получения значения стати стики t, большеrо или paBHoro значению выборочной статистики, вычисленной исходя из предположения о справедливости rипотезы Но. Следовательно, р зна чение представляет собой часть выборочноrо распределения, расположенную правее значения выборочной статистики t, выраженную в процентах. Иными словами, чем меньше р значение, тем больше вероятность Toro, что rипотеза
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 369 !iесправедлива, и если вычисленное р значение будет очень малым, то rипотезу следует oTBeprHYTb, опРЕДЕЛЕНИЕ р-значением, или значимой вероятностью, называют вероятность получения (в предположе- нии о справедливости rипотезы) значения выборочной t-статИСТИКИ, большеrо или paBHoro вычисленному, то есть р == p(1 t ' t'), rде t' значение распределения t статистики для выбранноrо уровня значимости. Иначе rоворя, р значение зто наименьшее значение показателя уровня значимости а (то есть вероятности отказа от справедливой rипотезы), для KOToporo вычисленная t статистика ведет к отказу от rипотезы Но. Из таблицы t распределения можно увидеть, что для п 2 == 10 2 == 8 степе ней свободы значение 3,55 соответствует р == 0,005. Это указывает на вероятность справедливости rипотезы, равную 0,5 %. Значение статистики I t I == 4,85, полученное на основе реrpессии, существенно больше, чем 3,55. Следовательно, для данноrо значения вероятность справедливости rипотезы еще меньше, Можно сделать вы- вод о высокой вероятности несостоятельности rипотезы Но, поскольку появление значения I t I == 4,8 очень маловероятно, если rипотеза Но истинна. Тоrда предполо жение о том, что 1 == О И линейная зависимость между переменными отсутствует, также несостоятельно, Друrим возможным методом определения значимости реrрессионной модели является F критерий. В этом случае используются два показателя средний квадрат реrрессионной квадратичной суммы (в случае простой линейной perpec- сии т == 1): п 5 == QR == {;(у; и 2 т 1 и средний квадрат ошибок реrрессии: 5 2 QE E . п т l п I:(y; ,1;;)2 i==1 п 2 С их помощью можно вычислить значение, называемое F-статистикой. OT ношение F == 5 / 5 подчиняется F-распределению с (1, п т 1) степенями свободы. Если rипотеза Но: 1 == О истинна и линейная связь между перемен б u 2 ными отсутствует, то оши ка оценивания возрастает и ее среднии квадрат 5 Е , соответственно, тоже. Поэтому если нулевая rипотеза справедлива, то значе- ние F статистики будет мало из за увеличения знаменателя 5 .. Напротив, если справедлива альтернативная rипотеза На: 1 +' О, то ошибка оценивания падает, а значение F возрастает. Таким образом, большее значение F соrласуется с ис тинностью альтернативной rипотезы. Например, значение F-статистики, рассчитанное для данных о продажах Kap тофеля, будет F == 1 742 032 /74 280 == 23,S. По таблице F-распределения можно
370 Часть 1. Теория бизнес анализа установить, что для чисел степеней свободы числителя и знаменателя, равных соответственно 1 и п т 1 == 10 1 1 == 8, рассчитанное по наблюдаемым дaH ным значение F == 23,5 HaMHoro превышает теоретическое Fa. == F O . 01 == 11,26, Таким образом, вероятность Toro, что rипотеза но: 1 == О истинна для рассчитанноrо значения F статистики, будет менее 0,01, Поэтому мы вынуждены oTBeprHYTb нулевую rипотезу, что позволяет сделать вывод о высокой значимости нашей реrpессионной модели. Основные формулы, рассмотренные в разделе, сведены в табл. 8,6. Таблица 8.6. Основное разложение для простой линейной реrpессии Источник вариации Число Квадратичные Средние F рвсч . F KP . степеней суммы квадраты свободы Обусловленный 1 QR =О t(Yi у)2 52 QR 2 F,,( 1, N 2) F =О SR реrpессией . R 1 52 i==1 Е Относительно perpec п 2 п 2 2 QE сии (остаток) Q,; =О I:(y; У,) SE=O 10=1 . п 2 Общий п 1 Q =О <2R + Q" 8.5. Множественная линейная реrрессия в простой линейной реrрессии устанавливается линейная зависимость между одной входной переменной и одной выходной, Но на практике в задачах анализа часто возникает необходимость привлечь для решения больше исходной инфор мации. Поэтому представляет интерес исследование зависимости выходной пе ременной от нескольких входных, Мноrие задачи Data Mining имеют достаточно большую размерность и содержат десятки и сотни переменных. Для установления таких связей служит множественная реzрессu.я (иноrда ее называют мноzомерной линейной реzрессией). Как правило, она обеспечивает более высокую точность оценки, чем простая. Если простая линейная реrрессия использует приближение в виде прямой линии, то множественная линейная реrpессия для моделирования линейных свя зей между выходной переменной и набором входных плоскость (если входных переменных две) или rиперплоскость (если входных переменных более, чем две). Обычно входные переменные являются непрерывными, но в некоторых задачах MOryT содержаться и катеrориальные входные переменные, В этом случае приме няется специальный подход, основанный на введении так называемых фиктивныx пepeMeнHы,, хотя в Data Mining пользуются друrой терминолоrией (она paCCMaT ривалась в разделе 3.6). Для изучения множественной реrpессии нам понадобится набор данных, в KOTO ром присутствует несколько входных переменных, Наборы наблюдений, на основе
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 371 j{OTOPbIX рассматривалась простая линейная реrрессия, не подходят, поскольку одержат только одну входную и одну выходную переменную, Поэтому в качестве с б u Ф u J1рим: е ра возьмем еще один на ор данных, содержащии ин ормацию о пищевои l!еfl/JОСТИ продуктов завтраков из сухих злаков, Каждый вид продукта описы JjаетСЯ признаками, в зависимости от значений которых рассчитывается пищевая l!eflHOCTb продукта. Набор данных содержит 77 наблюдений. В табл, 8,7 приведен ero фраrмент (данные взяты из источника Cereals data set, http://lib.stat.cmu,edu/DдSL; оflи доступны в приложении на CD, файл cereals. xls). Таблица 8.7. Фраrмент набора данных «Пищевая ценность продуктов:'> Наимеиоваиие Проиэво Сахар, r Калорий- 6елОК,r Жиры, r Уrле Пищевая продукта дитель ность воды, r цеиность 100 % Bran N 6 70 4 1 130 68,4030 100 % Natura! Q 8 120 3 5 15 33,9837 Bran АН Bran К 5 70 4 1 260 59,4255 AJl Bran Extra К О 50 4 О 140 93,7049 Fiber A!mond De!ight R 8 110 2 2 200 34,3848 Арр!е Cinnarnon G 10 110 2 2 180 29,5095 Cheerios App!eJacks К 14 110 2 О 125 33,1741 Basic 4 G 8 130 3 2 210 37,0386 Bran Chex R 6 90 2 1 200 49,1203 Bran F!akes Р 5 90 3 О 210 53,3138 Cap'n crunch Q 12 120 1 2 220 18,0429 Cheerios G 1 110 6 2 290 50,7650 Cinnarnon Toast G 9 120 1 3 210 19,8236 Crunch C!usters G 7 110 3 2 140 40,4002 Сосоа Puffs G 13 110 1 1 180 22,7364 ." .., ... .., ... ... ... ... Выборка в полном ее варианте содержит следующие признаки: а наименование наименование продукта; а проuзводителъ производитель продукта; а тип заливается холодной или rорячей водой; а калорийностъ содержание калорий в одной порции продукта; а белок содержание белка, [; а жиры содержание жиров, [; а натрий содержание натрия, Mr; а вОЛОК1lа содержание пищевых волокон, [;
372 Часть 1. Теория бизнес анализа о уzлеводы содержание уrлеводов, r; О О О сахар содержание сахара, r; КШ/ИЙ содержание калия, Mr; витамины содержание ежедневной рекомендуемой дозы витаминов (О 25 или 100 %); , , о вес одной порции; О вода количество чашек воды на порцию; О М витрины витрина, на которой расположен продукт; О пищевая ценность продукта, Приступая к анализу, предполаrаем, что признаки, описывающие каждый про дукт, каким то образом влияют на ero пищевую ценность, которая, в свою очередь, определенным образом связана с этими признаками. Цель анализа обнаружить закономерности в этих связях. Если закономерности будут найдены, то с их помо щью можно определять пищевую ценность новых продуктов, описываемых тем же набором признаков, разрабатывать новые рецептуры с требуемой пищевой ценностью, В процессе анализа возникает масса вопросов. О Все ли признаки влияют на пищевую ценность продукта? О Какие из признаков влияют сильнее, а какие слабее? о Какие из признаков способствуют повышению пищевой ценности продукта, а какие уменьшению? О Как влияет изменение отдельноrо признака на пищевую ценность? Пусть требуется смоделировать линейную зависимость между выходной пере менной и двумя входными, Это можно сделать с помощью плоскости, которая является линейной в двух измерениях (по каждой входной переменной). Пред положим, нас интересует оценка пищевой ценности продукта на основе двух признаков содержания сахара и пищевых волокон. [рафическая интерпретация множественной линейной реrрессии для двух входных переменных пред ставлена на рис. 8,12. Увеличение содержания пищевых волокон связано с повышением пищевой ценности, а увеличение содержания сахара с уменьшением. Данное отношение на рисунке пред ставлено с помощью плоскости, которая имеет наклон вниз и вправо (в сторону увеличения содержания сахара), а также в сторону переднеrо фронта (в сторону уменьшения содержания пищевых волокон), Таким образом, чем выше содержание сахара и ниже содержание пищевых волокон, тем меньше ожидаемая оценка выходной переменной и наоборот, Уравнение множественной линейной реrpессии для двух входных переменных и одной выходной имеет вид: у == Ь О +Ь1Хl +Ь 2 Х 2'
rлава 8. Data Mining: классификация и реrрессия. Статистические 1eTOДЫ Э7Э 100 . 90 . 80 .D 1 "" () 70 . о :t 1 :t g} 60 . . '" <11 50 .. Q) :r s с: 40 ЗО 20 10 О 4 о 8 16 4 12 . . . . . . 1 1 . . . . 1 . ... 11 · . 1. · . I.i ll : .. .1. . 1 1.. . I · 8 12 16 Сахар Волокно Рис. 8.12. Диаrpаммы раэбросаданных для переменных caxap;> и ВОЛОКНОj> Обобщив ero на про изволь ное число входных переменных, получим: y bи +Ь 1 ХI +Ь2Х2 +..,+ЬтХ т , Запишем уравнение множественной реrpессии с рассчитанными коэффици ентами, [де в качестве входных переменных используется содержание сахара (Хl) и пищевых волокон (Х2), а в качестве выходной наблюдаемое значение пищевой ценности: y 51,787 2,2090Xl +2,8408Х2, Высокое содержание сахара уменьшает пищевую ценность, и коэффициент при соответствующей переменной имеет отрицательный знак. Содержание пи щевых волокон увеличивает пищевую ценность, и коэффициент для данноrо показателя в уравнении реrрессии положительный. Построим отдельные диа rраммы рассеяния данных для каждой входной переменной, rде коэффициент наклона прямой для сахара будет 2,2090, а для пищевых волокон 2,8408 (см. рис. 8.12). Интерпретация коэффициентов ы и Ь 2 , определяющих положение плоскости множественной реrpессии, несколько отличается от простой линейной реrрессии. Например, при интерпретации Ь 1 2,2090 можно сказать, что оцененное YMeHЬ шение пищевой ценности на единицу увеличения содержания сахара составляет 2,2090 при фUКGuрова1l1l0М З1tаченuu второй входной переменной, то есть содержания
374 Часть 1. Теория бизнес анализа пищевых волокон. АнаJIOi'ИЧНО коэффициент Ь 2 == 2,8408 rоворит о том, что При рост пищевой ценности на единицу увеличения содержания волокон состаВляет 2,8408 при фиксировтl'JЮМ содержании сахара. Таким образом, для множественной линейной реrpессии с т входных переменных коэффициенты реrpессии следует ин терпретировать по следующему правилу: оценка изменения выходной переменной у на единицу изменения входной переменной Х; составляет Ь; при фиксированном значении остOJlьньа nеременнъа. В простой линейной реrpессии остаток у у представляется вертикальным pac стоянием между реальным значением и соответствующей точкой на линии реrpессШf. В множественной реrpeссии остаток представляется в виде расстояния между точкой данных и плоскостью (или rиперплоскостью) реrpессии. Пусть некоторый ПродукТ имеет содержание сахарах! == О r и содержание пищевых волоконхз == 3 r, а ero ПИЩе вая ценность составляет 72,8018. В соответствии с нашим VDавнением Dеrpессии oцe ненная пищевая ценность будет у == 51. 787 2,2090. О + 2,8401:5.3 == 60,3094 и остаток y у== 72,8018 60,3094== 12,4924. Данная ситуация показана на рис. 8.13. о Пищевая ценность фактическая 72,В01 В Остаток 12,4924 о Пищевая ценность оцененная 60,3094 Пищевые волокна Сахар Рис. 8.13. Остаток в множественной линейной реrpессии с помощью этих остатков так же, как и в случае простой линейной реrpессии, MoryT быть вычислены квадратичные суммы Q. и (Ь-. При этом Q == + (Ь-, rде Q полная изменчивость, доля изменчивости, объясняемая реrpессией, и (ь- доля изменчивости, определяемая ошибкой (см. раздел 8.3). Для множественной реrрессии мы также можем ввести множественный KO эффициент детерминации r 2 == / Q. который определяет относительную долю изменчивости, объясненную реrpессией, в полной изменчивости выходной пере rлава 8. Data Mining: классификация и реrрессия. Статистические методы 375 J{J{ОЙ. Чем выше доля изменчивости, объясненная реrpессией, тем больше зна В tjеJ{и е коэффициента детерминации, идеальном случае, коrда все имеющиеся 6лroдениЯ попадут на плоскость реrрессии (изменчивость, обусловленная pe J{Э U U U U и ) 2 1 ес сиеи , окажется равнои полнои изменчивости выходнои переменнои ,r == , rp U U б 11 J{аоборот, чем меньше доля изменчивости выходнои переменнои, о ъясненная реrpессией, тем меньше значение r 2 . Таким образом, как и в случае простой линей JiОЙ: реrрессии, значения коэффициента детерминации, близкие к 1, указывают на хорошее соответствие реrрессии исходным данным, а значения, близкие к О, на плохое, Если r 2 == Qл/ Q == 0,808, это означает, что 80,8 % изменчивости выходной пере м:еННОЙ определяются ее линейной зависимостью от набора входных переменных, МожНО ли ожидать, что r 2 будет больше для простой линейной реrpессии, если в качестве входной использовать только одну переменную содержание сахара? всякий раз, коrда в модель добавляется новая входная переменная, коэффициент детерминации увеличивается. При этом если новая переменная является полезной, то есть существенно увеличивает долю изменчивости, объясненную реrрессией, то коэффициент детерминации увеличивается значительно, в противном случае увеличение может быть едва заметным. Например, если использовать для оценки пищевой ценности только содержание сахара (х), то уравнение простой линейной реrpессии будет иметь вид: у == 59,4 2,42х. Для этоrо случая коэффициент детерминации r 2 == 58 %. После добавления новой переменной, то есть содержания пищевых волокон, коэффициент увели чился до 80,8 %, Таким образом, введение новой переменной в модель добавило 80,8 58 == 22,8 % изменчивости выходной переменной, объясненной с помощью реrpессии. Следовательно, в целом можно утверждать, что соответствие реrpессии реальным данным улучшилось. Увеличение кажется значительным, но оценим ero позже. Обычно в качестве показателя точности оценок, получаемых с помощью pe rpессии, используется среднеквадратическая ошибка Е СКО, которая в случае оценки содержания сахара и пищевых волокон равна 6,24. Следует ли ожидать, что данная ошибка будет больше или меньше, если использовать только одну входную Пере менную (содержание сахара)? Это зависит от степени полезности новой перемен Ной. Если переменная полезна, то есть способствует повышению точности оценки, то ошибка уменьшается, в противном случае увеличивается, Такое поведение делает среднеквадратическую ошибку оценивания более привлекательным показа телем целесообразности добавления в модель новой переменной, чем коэффициент детерминации, который всеrда увеличивается при добавлении новых переменных в модель независимо от степени их полезности, Значение среднеквадратической ошибки Е СКО в случае простой линейной pe rрессии, то есть при оценивании рейтинrа продукта только на основе содержания сахара, составляет 9,16. Таким образом, введение в модель дополнительной входной переменной (содержания пищевых волокон) уменьшает ошибку оценивания с 9,16 до 6,24, то есть на 2,92,
376 Часть 1. Теория бизнес анализа 8.6. Модель множественной линейной реrрессии Как и в случае простой линейной реrрессии, в множественной требуется ОПре делить, можно ли распространить линейную зависимость между набором BXOД ных переменных и выходной переменной, построенную на основе выборочных наблюдений, на всю имеющуюся совокупность данных. Необходимо не только вычислить коэффициенты уравнения множественной реrрессии, но и ПОСТРОить соответствующую реrрессионную модель и определить ее значимость. При построении такой модели можно использовать те же подходы, что и для простой линейной реrрессионной модели, Множественная реrpессионная модель представляет собой прямое расширение простой линейной реrpессионной модели для заданноrо числа переменных: у == РО + РI Х 1 + Р2 Х 2 +". + РтХт + Е, rде o, 1'" т параметры модели, представляющие собой константы, значения которых оцениваются с помощью метода наименьших квадратов. Как и в случае простой линейной реrрессии, об ошибке Е высказываются сле дующие предположения, О Предположение о нулевом среднем. Ошибка Е представляет собой случайную переменную со средним, равным О, то есть Е( Е) == О. о Предположение о постоянстве дисперсии. Дисперсия ошибки а? является по стоянной величиной для всех значений переменных Xt, Х2." Х т . О Предположение о независимости. Значения переменной Е являются статисти чески независимыми, О Предположение о нормальности. Значения ошибки Е распределены по HOp мальному закону. Иными словами, значения ошибки Ei представляют собой независимые случай ные переменные с нулевым средним и постоянной дисперсией а, Как и в случае простой линейной реrрессии, мы можем сделать четыре вывода о поведении выходной переменной у. О На основе предположения о нулевом среднем имеем: Е(у)==Е(Ро +ptXl +.,,+РтХт +1::)== == Е(РО) + E(PIXt)+". + Е(РтХт)+ +Е(Е)== Ро +РI Х 1 +".+РтХт' Для каждоrо набора входных переменных Хl, Х2'" Х т среднее значение выходной переменной у лежит на плоскости реrpессии. О На основе предположения о постоянной дисперсии имеем дисперсию D(y), за данную следующим образом: D(y) == D(Po +Р1Х! +Р2Х2 +." +РтХт + Е) == D(I::) == 02. Иными словами, независимо от Toro, какие значения принимают переменные Хl, Х2... Х т , дисперсия D(y) всеrда постоянна.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 377 CI ИЗ предположения о независимости следует, что для любоrо набора значений Xl, Х2."' Х т значения У также являются независимыми. CI ИЗ предположения о нормальности следует, что у также является нормально распределенной случайной переменной, Таким образом, выходная переменная у является независимой нормально распределенной случайной переменной со средним РО +PtXj +Р2Х2 +."' + РтХт + Е и дисперсией а 2 . Оценка значимости множественной реrрессионной модели КаК и в случае простой реrрессионной модели, для оценки значимости множе ственной реrрессии используются rипотезы о наличии или отсутствии линей ной зависимости между набором входных переменных и выходной переменной, Для проверки этих rипотез также можно применять t критерий и F критерий, Но в случае множественной линейной реrpессии применение данных критериев несколько иное. Если t критерий исследует линейную зависимость между каждой отдельной входной переменной Х, и выходной переменной у, то F критерий иссле дует линейную зависимость для всей модели, то есть между набором входных переменных Хl, Х2"'. Х т И переменной у (рис. 8.14). Х, t TeCT Х, " ,,..кj F- тест {У J Х т Рис. 8.14. Различие между F критерием и t критерием для множественной линейной реrpессии Начнем рассмотрение с t-критерия, который оказывается особенно полезным в Том случае, коrда требуется оценить значимость каждой отдельной входной пере менной. [ипотезы для t TecTa о наличии связи между выходной переменной у и He которой входной переменной Х; задаются следующим образом: 1:1 по....... Р j == о; 1:1 1/ (1 ....... Р i +' О,
378 Часть 1. Теория бизнес анализа Модели, вытекающие из этих rипотез, представляются в следующем виде: О Но У==РО +PIXI +..,+РНХН +PiXj +Pi+IXi+1 +'",+РтХт ."Н:; О Н" У==РО +PIXI +,"'+P' IXH +Pi+IXi+1 +'"'+РтХт +Е. Обратим внимание на то, что разница между двумя моделями заКлючается только в присутствии или отсутствии l ro члена, а остальные члены ПРИсУТствуют в обеих моделях. Следовательно, при интерпретации результатов t TecTa для дaH ной переменной значения остальных переменных должны фиксироваться. При нулевой rипотезе статистика t == bi/Sb. подчиняется t распределению с т п 1 степенями свободы, [де Sb среднеквадратическая ошибка оценки коэффициента Ь ; дЛЯ i й выходной переменной (метод ее расчета излаrался в раз деле, посвященном оценке значимости простой реrрессионной модели), Рассмотрим примеры выполнения t TecTa для выявления линейных зависи мостей между содержанием сахара и пищевой ценностью продукта, содержанием пищевых волокон и пищевой ценностью, а также при использовании обеих входных переменных, О Выполним t TecT для определения зависимости между содержанием сахара и пищевой ценностью. Определим модели, соответствующие ну левой и альтернативной rипотезам: НО PI ==О;у==Ро +РI(сахаР)+Е; Н" РI +оО;у==Ро +РI(сахаР)+Р2(ВОЛОКНО)+Е, . ы 1 == 2,2090, . "/11 == 0,1633. . t==bl/s/ II == 2,2090/0,1633== 13,53. Вычислим р значения для t статистики. Напомним, что р значение это вероятность появления значения t статистики, большеrо, чем наблюда eMoro по результатам реrрессии t', то есть р == P(ltl > t'). Следовательно, р == p(ltl > t') == P(ltl > 13,5). Из таблицы t распределения можно увидеть, что вероятность появления значе ния t, большеrо 13,5, не превышает 0,05 %, Это с достаточной долей уверенности позволяет отклонить нулевую rипотезу и сделать вывод о наличии линейной зависимости между пищевой ценностью продукта и содержанием сахара в нем при фиксированном содержании пищевых волокон. О Выполним t TecT для определения зависимости между пищевой ценностьЮ и содержанием волокон, Определим модели, соответствующие нулевой и альтернативной rипоте зам: Но Р2 == о; У == РО + Р2(сахар) + Е; Н" Р2 +о о; у == Ро +РI (сахар) + Р2(ВОЛОКНО)+ Е. . Ь 2 == 2,8408. . S/)2 == 0,032.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 379 . t==b 2 /51" ==2,8408/0,3032==9,37. . Р < 0,05 %, Нулевая rипотеза вновь отклоняется, и наличие линейной зависимости между пищевой ценностью продукта и содержанием пищевых волокон в нем при фик сированном содержании сахара можно считать доказанным. F Tecт для оценки значимости полной реrрессионной модели [и:потезы F TecTa в случае множественной линейной реrpессии задаются следую щим образом: О Но 1 ==Р2 ==",== т ==0; О Н" как минимум одна из Р; 7: о. Нулевая rипотеза предполаrает, что линейная зависимость между выходной переменной у и набором входных переменных XI, Х2'" Х т отсутствует. Таким образом, она утверждает, что коэффициент ; для каждой входной переменной Х; равен О и модель сводится к виду у == Ь О + Е, Альтернативная rипотеза не утверждает, что все коэффициенты реrрессии отличны от нуля. Для истинности альтернативной rипотезы достаточно, чтобы только один из коэффициентов был отличен от О, Напомним, что используемая в F TecTe F статистика представляет собой отношение двух среднеквадратических } ' 2 / 2 2 v 2 v величин == 5/1 51:' [де 5/1 среднии квадрат реrрессии, 51:' среднии квадрат ошибки. При оценке значимости простой реrpессионной модели ( см. раздел 8.4) мы cдe лали вывод, что высокие значения F статистики соответствуют малой вероятности Toro, что нулевая rипотеза истинна, и наоборот. Данное правило справедливо и для множественной реrpессии. Проведем F TecT для проверки наличия линейных связей между пищевой цeH ностью продукта и содержанием в нем сахара и пищевых волокон, О Определим нулевую и альтернативную rипотезы: . Н 11 Р 1 == 2 == о; . Н" как минимум одна из ; 7: о. О Модель, соответствующая альтернативной rипотезе, определена неоднозначно и может быть представлена в одном из трех видов: . у == РII +Р1ХI +Е; . у==Ро +Р2Х2 +Е; . Y== o + IXI +PZX2 +Е. О Вычислим оценку среднеrо квадрата реrpессии 5 == 6058,9. О Вычислим средний квадрат ошибок реrpессии 5i- == 38,9.
380 Часть 1. Теория бизнес анализа о Вычислим значение статистики F == 6058,9/38,9 == 155,76. О Число степеней свободы F статистики будет п т 1 == 74, [де т == 2 ЧИСЛО входных переменных, п == 77 число наблюдений исходной выборки, о По таблице F распределения для р значения определим: P(Fт,п т 1> Р) == P(F2,74 > 155,76) О. Данное р значение меньше, чем любое допустимое значение пороrа значи мости, поэтому нулевую rипотезу следует oTBeprHyTh. Таким образом, между пищевой ценностью продукта и набором из двух входных переменных co держанием сахара и содержанием пищевых волокон существует линейная зависимость, Это позволяет rоворить о высокой значимости реrрессионной модели в целом. 8.7. Реrрессия с катеrориальными ВХОДНЫМИ переменными В Data Mining часто приходится иметь дело с задачами, содержащими не только количественные, но и качественные данные, коrда входные переменные являют ся катеrориальными, Существуют способы выразить значения катеrориальных переменных в виде числовых величин, В разделе 3.6 приводились различные схемы кодирования катеrориальных переменных: уникальные коды и двоичное кодирование. Все это справедливо и для реrрессионноrо анализа, однако в нем принято оперировать терминолorией фиктивных переменных (dummy variables), что напоминает кодирование по битовой маске, Не нарушая традиций, в данном разделе будем использовать эту терминолоrию. Чтобы исследовать особенности применения катеrориальных переменных в ли ней ной реrpессии, рассмотрим переменную Номер витрИllЫ из набора данных о cy хих завтраках, которая показывает, на какой витрине располаrается тот или иной продукт. Пусть из 77 продуктов 20 размещается на витрине 1, 21 на витрине 2 и 36 на витрине 3. На рис. 8.15 представлен точечный rpафик, показывающий пищевую ценность продуктов, размещенных на соответствующих витринах, при этом среднее значение по каждой витрине отмечено треуrольником. Нас интересует применение катеrориальной переменной Номер витрИllЫ совместно с непрерывными переменными: содержанием сахара и пищевЫХ волокон. Придется использовать множественную реrрессию с фиктивными переменными, На основе сравнения элементов точечноrо rpафика зададимся вопросом, как связан номер витрины, на которой расположен продукт, с ero пищевой ценностью? Казалось бы, продукты, расположенные на витрине 2 и имеющие среднее значение пищевой ценности 34,97, отстают от продуктов, расположенных на витринах 1 и 3 и имеющих среднюю пищевую ценность 46,15 и 45,22 соответственно. Но является ли эта разница значительной? Кроме Toro, данный точечный rрафик не paCCMa
/' rлава 8. Data Mining: классификация и реrрессия. Статистические методы 381 Ji :t 2 ,.. s <!] а. Q) о :I: . . . . . . . . . . . . . . . . . . . . 6 . . . . . . . . . . . . . . . . . . . . . 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I I I з 20 зо 40 6 50 60 70 80 90 Пищевая ценность Рис. 8.15. Точечный rpафик пищевой ценности продуктов, размещенных на витринах rривает такие переменные, как содержание сахара и пищевых волокон. Поэтому непонятно, как расположение продукта на определенной витрине будет проявлять себя в присутствии друrих переменных. Для использования в реrpессии катеrориальная переменная, содержащая k Ka rеrорий, вначале должна быть преобразована в k 1 фиктивных переменных, Фиктивная nеременная это бинарная переменная, которая принимает зна чение 1, если наблюдение соответствует данной катеrории, и значение О в про rивном случае. Для нашеrо примера определим следующие переменные. О Витрина 1 == 1 если продукт расположен на витрине 1, О Витрина 1 == О в противном случае. О Витрина 2 == 1 если продукт расположен на витрине 2. О Витрина 2 == О в противном случае. В табл. 8.8 приводятся значения фиктивных переменных для продуктов, pac Положенных на витринах 1, 2 и 3. Обратите внимание, что нет необходимости определять 3 ю фиктивную переменную Витрина З, потому что оба ее состояния окажутся нулевыми, поскольку продукты, размещенные на 3 й витрине, eCTeCT Венно, не будут располаrаться на 1 й и 2 й, Поэтому оба состояния фиктивной пере мен ной Витрина 3 будут нулевыми, и нам достаточно будет рассмотреть только первые две,
З82 Часть 1. Теория бизнес анализа Таблица Е.В. Использование фиктивныx переменныx Расположение продукта Значение переменной Значение переменной Витрина 1 Витрина 2 Витрина 1 1 О Витрина 2 О 1 Витрина 3 О О Катеrория, для которой фиктивная переменная не назначается, называется опорной катеlOрией, и в нашем примере это Витрина З, Позднее мы оценим влия ние размещения продукта на ero пищевую ценность относительно этой опорной катеrории. Рассмотрим модель множественной реrpессии для линейных отНошений между выходной переменной пищевой ценностью продукта и содержанием сахара, содержанием пищевых волокон и размещением продукта на витрине, используя две фиктивные переменные из табл, В.В. Общая модель выrлядит следующим образом: у == o + 1 . ( сахар) + 2 . (волокна) + ] . (витрина 1) + 4 . (витрина 2) + Е, Torдa соответствующее уравнение реrpессии будет: у == Ь О + Ь 1 . (сахар) + Ь 2 . (волокна) + Ь] ,( витрина 1) + b ,( витрина 2). Для продуктов, расположенных на витрине 1, модель и уравнение реrрессии выrлядят следующим образом: Y== o + 1 ,(сахаР)+ 2,(волокна)+ ].З,1+ .0+10== ==( o + :i)+ 1 ,(сахаР)+ 2.(волокна)+Е; у == Ь О + ы 1 ,( сахар) + Ь 2 . (волокна) + Ь] .3,1 + b . 0== == (Ь О + b:i) + ы 1 . (сахар) + Ь 2 . (волокна), Для продуктов, расположенных на витрине 2, модель и уравнение реrрессии выrлядят следующим образом: у == o + I'( сахар) + 2 . (волокна) + ].o + . 3,1 +10 == ==( o + )+ 1 '(caxap)+ 2 .(волокна)+Е; у == Ь О + Ь 1 . (сахар) + Ь 2 . (волокна) + Ь з ,О + Ь 4 ' З, 1 == ==(Ь О +b )+bl .(сахаР)+Ь 2 . (волокна), Для продуктов, расположенных на витрине 3, модель и уравнение реrpессии выrлядят следующим образом: у == o + 1 . (сахар) + 2 ,(волокна) + :! .0+ .o + Е == == o + 1 ,( сахар) + 2 ,(волокна) + Е;
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 383 у == Ь О +ы 1 . (сахар) + Ь 2 . (волокна) + Ь з .0+b .0 == == Ь О + Ь 1 . (сахар) + Ь 2 . (волокна). обратим внимание на связь уравнений для моделей друr с друrом. Три модели J1редставляют собой параллельные плоскости, как показано на рис. 8.16. .Q u О :I: :I: Q) ::1 '" 10 m Q) 3' :s: с Рис. 8.16. Представление моделей для продуктов на различных витринах в виде параллельных плоскостей Уравнение для исходной выборки будет иметь вид: у == 50,433 2,2554. (сахар) + 3,0856. (волокна) + +1,446,(витрина 1) + 3,828. (витрина 2). Таким образом, получим следующие уравнения реrpессии для продуктов, pac ПОложенных на различных витринах. О Витрина 1: у == 50,433 2,2954.( сахар) + 3,0856. (волокна) + 1,446.1 == 51,879 2,2954'(caxap) + 3,0856. (волокна). О Витрина 2: у == 50,433 2,2954. ( сахар) + 3,0856. (волокна) + 3,828.1 == == 54,261 2,2954.( сахар) + 3,0856. (волокна).
384 Часть 1. Теория бизнес анализа о Витрина з: у == 50, 133 2,2954. ( сахар) + З, 0856. (волокна). Заметим, что данные уравнения реrрессии одинаковы, за исключением CBO бодноrо члена Ь о , то есть точки пересечения плоскости с осью у. Это означает, что для продуктов на каждой витрине имеет место один и тот же наклон плоскости реrрессии, определяемый содержанием сахара ( 2,2954) и волокон (З,0856), что дает три параллельные плоскости, Разница заключается только в коэффициенте Ь о , Опорная катеrория в данном случае Витрина з. Как выразить вертикальное расстояние между Витриной 3 и, скажем, Витриной 17 Исходя из приведенных выше выводов уравнение реrpессии для продуктов на витрине 1: у == (Ь О + Ь:! ) + ы 1 . ( сахар) + Ь 2 . ( волокна). Поэтому значение точки пересечения с осью у есть Ь О + ь з . В то же время уравнение реrpессии для продуктов на витрине З: у == Ь О + ы 1 . ( сахар) + Ь 2 . ( волокна). Таким образом, расстояние между точками пересечения с осью у для COOTBeT ствующих плоскостей реrpессии будет (Ь о + ь з ) Ь 1 == 1,44, Пересечение плоскости с осью у показывает пищевую ценность продукта, если содержание сахара и волокон равно О. Однако, поскольку плоскости па раллельны, разность точек пересечения для разных витрин остается постоян ной во всем диапазоне изменений содержания сахара и волокон. Следователь но, вертикальное расстояние между параллельными плоскостями, измеренное с помощью коэффициента при фиктивной переменной, представляет собой оценку влияния отдельной фиктивной переменной на выходную переменную (рис, 8,17), В примере Ь З == 1,446 означает оценку разности между пищевой ценностью продуктов, расположенных на витрине 1, и пищевой ценностью продуктов, распо ложенных на витрине З. Поскольку значение Ь з положительное, оценка пищевой ценности продуктов с витрины 1 будет более высокой. Коэффициент Ь З можно интерпретировать следующим образом: оценка увеличения пищевой ценности продуктов, расположенных на витрине 1, по сравнению с продуктами, располо женными на витрине З, составит Ь з == 1,446 при постоянном содержании сахара и волокон. Аналоrичные рассуждения можно использовать и для витрины 2. Уравнение реrрессии в этом случае будет иметь вид: у ==(Ь О +Ь 4 )+ ы 1 . (сахар) + Ь 2 . (волокна). Тоrда разность между точками пересечения с осью у плоскостей для витрин 2 иЗ составит(Ь о + Ь 4 ) Ь О == Ь 4 == 54,261 50,4ЗЗ == З,828, Это значит, что расстояние
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 385 ..о .... '"' о Витрина 2 :t: :t: '" са <D Q) 3' s t: со N со Ф ! со) - 11 Витрина 1 .J::J 11 Рис. 8.17. Оценка влияния фиктивной переменной на целевую переменную между плоскостями для витрин 2 и 3 равно 3,828 (рис. 8,17), Torдa коэффициент Ь 4 можно интерпретировать так: оценка увеличения пищевой ценности продуктов, расположенных на витрине 2, по сравнению с продуктами на витрине 3 составит Ь з == 3,828 при постоянном содержании сахара и пищевых волокон. Таким же образом определяется разность пищевой ценности продуктов, распо ложенных на витринах 1 и 2: (Ь О + Ь 4 ) (bo + Ь]) == Ь 4 Ь] == 3,828 1,446 == 2,382. Оценка увеличения пищевой ценности продуктов, расположенных на витрине 2, по сравнению с продуктами, расположенными на витрине 1, составляет 2,382 при постоянном содержании сахара и волокон. Вернемся к рис, 8.15, на котором видно, что продукты, расположенные на витрине 2, имеют среднюю пищевую ценность 35, Это существенно ниже, чем пищевая ценность продуктов, размещенных на витринах 1 и 3, rдe она составляет соответственно 46 и 45. Как это соrласуется с результатами, полученными с по мощью фиктивных переменных, которые показали, что наибольшую пищевую ценность имеют товары, размещенные на витрине 2? Расхождение вызвано тем, что результаты были получены с учетом двух друrих переменных содержания сахара и волокон. Действительно, продукты на витрине 2 имеют самую низкую
386 Часть 1. Теория бизнес анализа пищевую ценность. Но, как видно из табл, 8.9, эти продукты также имеют высокое содержание сахара (в среднем 9,62 r по сравнению с 4,65 и 6,53 r для витрин 1 из соответственно) и самое низкое содержание пищевых волокон (0,92 r против 1,75 и З,17 r для продуктов на витринах 1 и 3 соответственно). Поскольку имеет место отрицательная корреляция между пищевой ценностью Продукта и содержаНИем сахара и положительная корреляция между пищевой ценностью и содержанием пищевых волокон, продукты на витрине 2 должны иметь более низкую пищевую ценность, чем продукты на друrих витринах, В табл. 8.9 представлены среДНИе значения содержания сахара и пищевых волокон, пищевой ценности и ее oцeH ки, полученной с помощью реrрессии, для случая, коrда в качестве входных переменных модели использовал ось только содержание сахара и волокон (без использования номеров витрин), Таблица 8.9. Средние значения и оценки реrрессии N!! витрины Среднее Среднее Средняя Средняя Средняя содержание содержание пищевая оценка ошибка сахара волокон ценность пищевой ценности 1 4,85 1,75 46,15 46,04 0,11 2 9,62 0,92 34,97 33,11 1,86 3 6,53 3,17 45,22 46,36 1,14 Видно, что среднее значение пищевой ценности для продуктов на витрине 2 занижено на 1,86, в то время как оценка для витрины 3 завышена на 1,14. Следо вательно, коrда в модель вводится расположение продуктов, оценки завышаются или занижаются. Заметим, что разность ошибок оценки для витрин 2 и 3 COCTaB ляет 1,86 + 1,14 == З, Таким образом, следует ожидать, что, если использование переменной Номер витрины привело к занижению оценки пищевой ценности продуктов, размещенных на витрине 2 относительно продуктов на витрине З, это и является фактором, определившим суммарную ошибку, равную З. Вспомним, что коэффициент Ь 4 == 3,828, что сопоставимо с суммарной ошибкой, равной З. Также обратим внимание, что относительная ошибка оценки выходной перемен ной между витринами 1 и 3 составляет 1,14 + 0,11 == 1,25. Следует ожидать, что фиктивная переменная Номер витрины не изменит ошибку HaMHoro более чем на 1,25. И действительно, мы имеем похожий коэффициент Ь З == 1,446. Данный пример иллюстрирует особенность множественной реrрессии, KO торая заключается в том, что линейная зависимость между набором входных переменных и выходной переменной не обязательно определяется отношениями между отдельными входными переменными и выходной переменной, Например, рис. 8,17 позволяет увидеть, что если в качестве фиктивной переменной использу ется витрина 2, то оценка пищевой ценности продукта снижается, В то же время в реrрессионной модели, которая включает содержание сахара, волокон и место расположения продукта, пищевая ценность увеличивается из за влияния друrих переменных,
rлава 8. Data Mining: классификация и реrрессия. СТатистические методы 387 8.8. Методы отбора переменных е реrрессионные модели введен ие БОЛЬШИНСТВО реальных анализируемых процессов и объектов являются сложны МИ, для их описания требуется MHoro признаков и показателей: Поэтому типична ситуация, коrда аналитику при построении реrрессионных моделей приходится имеТЬ дело с десятками переменных и, соответственно, производить отбор пере меННЫХ для построения модели. Данная задача совсем не так про ста, как кажется, На первый взrляд, нужно отобрать только те переменные, которые непосредственно связаны с решаемой задачей. Однако даже после Toro, как посторонние переменные будут отсеяны, нет rарантии успешноrо решения, Действительно, из ранее paccMoTpeHHoro материала по реrрессии мы увидели, что: D входные переменные MOryT иметь низкую значимость, то есть линейная зави симость между ними и выходной переменной может либо отсутствовать, либо быть очень слабой. Такие переменные не способствуют повышению точности полученных оценок, а только усложняют модель; D входные переменные MorYT коррелировать между собой, что приводит к му ль тиколлинеарности и, как следствие, к снижению точности и устойчивости модели, к противоречивости результатов и т. д. Как показывает практика, визуально выявить эти проблемы в исходных данных и результатах реrpессии практически невозможно. Чтобы оптимизировать процесс отбора переменных для использования в реrрессионной модели, разработаны различные методы, которые позволяют учесть указанные факторы и выбрать наи лучшую модель. Существует общая рекомендация, которая в первом приближении дает воз можность построить хорошую реrрессионную модель: необходимо включить в рассмотрение все переменные, которые позволяют повысить точность оценок, получаемых с помощью реrрессии, Но возникает дилемма: как реализовать модель с приемлемыми точностью и затратами? На практике приходится соблюдать два противоречивых требования. о В реrpессионной модели нужно использовать как можно больше входных пере менных, содержащих новую информацию о выходной переменной, О Поскольку включение в модель каждой новой переменной увеличивает Bpe менные и вычислительные затраты на ее реализацию, нужно стремиться, чтобы модель содержала как можно меньше входных переменных. Выбор лучшей реrрессионной модели заключается в поиске компромисса между данными требованиями.
388 Часть 1. Теория бизнес анализа Обычно после Toro, как составлен список переменных потенциальных канди датов для использования в модели, переходят ко второму этапу отбора исклю чению переменных, которые по тем или иным причинам неадекватны решаемой задаче. Это MorYT быть коррелированные переменные; переменные, характери зующиеся большими ошибками измерений; переменные, трудно Поддающиеся измерению, и т. д. После Toro как нежелательные переменные будут исключены, среди OCTaB шихся про изводится поиск тех, набор которых обеспечит лучшую реrpессионную модель. Однако и на этом этапе возникает ряд проблем, Во первых, понятие «луч шая модеЛЬ1? не имеет строrих критериев и во MHoroM субъективно. BO BTOpЫX, ни один из известных методов отбора не rарантирует получение набора переменных, позволяющих достичь наилучшеrо результата, Зачастую TaKoro набора просто не существует, В третьих, различные методы отбора при водят к различным резуль татам" Поэтому на практике аналитики чаще Bcero ставят целью получить не наи лучший, а приемлемый набор входных переменных, который позволит соблюсти баланс между противоречивыми требованиями, Рассмотрим наиболее популярные методы отбора входных переменных в pe rpессионные модели: О метод прямоrо отбора (forward selection); о метод обратноrо исключения (backward elimination); о метод последовательноrо отбора (stepwise selection); о метод лучших подмножеств (best subsets), Частный F критерий Перед изучением перечисленных методов отбора переменных рассмотрим част 1fЫЙ F 'Крuтерuй, Предположим, мы уже отобрали для использования в модели набор из k переменных: Xj, Х2.'" Xk. Теперь нас интересует, имеет ли смысл включать в модель некоторую дополнительную переменную х'. Рассмотрим квадратичную сумму реrрессии Q a', QR (х) ,Х 2 .'" x k ), которую дают ранее введенные в модель переменные, а также дополнительную сумму Q OIl QR (x'l X J ,X 2 ... x k ), обуслов ленную только новой переменной х', Очевидно, что если сложить эти две суммы, то можно получить полную квадратичную сумму по модели, включающей как Q IIO!Ш Q ( . ) т ранее введенные переменные, так и новую, то есть R 11 XJ,X2''" Xk'X . 10rда можно записать: Q :lOII Q "O:IH Q Ha'l Q ( . I ) Q ( . ) Q ( ) 11 R R R Х ХI>Х 2 '"' X k R ХI>Х 2 "" Xk,X R ХI>Х 2 "" X k ' Поскольку, как отмечено ранее, квадратичная сумма Qд описывает долю измен чивости выходной переменной, объясненную реrpессией, то чем больше Q o", тем больше ожидаемый вклад новой переменной в объясняющую способность модели. Таким образом, чтобы сделать вывод о целесообразности включения новой пере менной в модель, достаточно оценить статистическую значимость ее вклада. Это и позволяет сделать частный F критерий,
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 389 Нулевая rипотеза для частноrо F критерия определяется следующим образом. Но: нет, квадратичная сумма Q o", связанная с дополнительной переменной х', I1е вносит значительноrо вклада в квадратичную сумму реrрессии для модели, которая уже содержит перемен.ные Xt, Х2'" Xk. Следовательно, включать в модель дополнительную переменную Х не имеет смысла. Torдa альтернативная rипотеза будет формулироваться следующим образом. На: да, квадратичная сумма Q o", связанная с дополнительной пере мен ной х', вносит значительный вклад в квадратичную сумму реrрессии Q;;a', для модели, которая уже содержит переменные Xt, Х2... Xk. Следовательно, включение в модель дополнительной переменной х' имеет смысл. Статистика для частноrо F критерия рассчитывается по формуле: F Q I'O" /E R lютl' rдe Е оо . 10 среднеквадратическая ошибка для полной модели, включающей как Xj, Х2"". Xk, так их', Данное соотношение известно также как частная F статистика для переменной х' с числами степеней свободы (1, п k 2), rдe k число независимых переменных в исходной модели, ЗАМЕЧАНИЕ Можно выделить два типа квадратичных сумм. связанных с определенными комбина циями входных переменных в реrрессионной модели: последовательные и частные. Последовательные квадратичные суммы соответствуют порядку включения переменных в модель. Частные это просто квадратичные суммы для моделей, содержащих опре- деленный набор входных переменных, никак не связанные с порядком их включения в модель. В таблице показывается различие между последовательной и частной квадратичными суммами для модели, содержащей четыре входных переменных Xj. Х2. Хз. Х4. Переменная Поспедоватenьная Частная квадратичная квадратичная сумма сумма Х! S(Xt) S(Xj I Х2, Хз, Х4) Х2 S(Xtl x ) S(x21 Xj, ХЗ, х,;) Хз S(Хз I Xj, Х2) S(ХЗI Xj, Х2, Х4) Х4 S(x41 Xj, Х2, ХЗ) S(x41 Х2, Х2, Хз) Метод прямоrо отбора Прямой отбор начинается с пустой модели, в которую еще не включена ни одна переменная, и содержит следующие шаrи. 1, Вычисляется корреляция между выходной пере мен ной и каждой из потен циальных входных. По результатам выбирается та входная переменная, для
390 Часть 1. Теория бизнес анализа которой корреляция с выходной наибольшая. Для этой переменной вычис ляется последовательная квадратичная сумма и оценивается значимость При помощи частноrо F критерия. Если по ero результатам переменная Признается значимой, то она добавляется в модель, в противном случае начинается анализ следующей переменной. 2. Для каждой из остальных переменных вычисляются последовательные KBaдpa тичные суммы с учетом добавленной на 1 M шаrе переменной, и раССчитывается частный F критерий, Например, сначала MOryT вычисляться последоватеЛЬные F статистики F(X21 Хl)' F(хз I Хl)' F(X41 Хl)' то есть производится выбор между пе ременными Х2, ХЗ и Х4 при условии, что переменная Х! уже включена в Модель. Затем вычисляются F(хз I Хl, Х2) и F(X41 Xj, Х2). При этом каждый раз выбирается та переменная, для которой значение F статистики будет наибольшим (обозначим ее F;пах) , 3. Для всех переменных в порядке убывания связанноrо с ними значения F cTa тистики выполняется расчет частноrо F критерия, и те из них, которые по ero результатам признаются значимыми, добавляются в модель, Процесс продолжается до тех пор, пока все значимые переменные не будут включены в модель. Метод обратноrо исключения в отличие от метода прямоrо отбора в методе обратноrо исключения процесс Ha чинается с полной модели, в которую включаются все доступные переменные. Эта процедура также содержит три шаrа. 1. Решается задача реrрессии с помощью полной модели, в которой присутствуют все доступные переменные, В нашем примере их четыре XI, Х2, Хз, Х4' 2. Для каждой переменной в модели вычисляется частная F статистика, то есть F(Xll Х2, Хз, Х4)' F(X21 Xj, Хз, Х4), F(хз I Xj, Х2, Х4) и F(X41 Xj, Х2, Хз), Предпочтение OTдaeT ся переменной, для которой значение частной F статистики будет наименьшим (обозначим ero F;llin)' 3. Проводится тест значимости F min , Если статистика F;пill не указывает на дoc таточно высокую значимость, то связанная с ней переменная исключается из модели и происходит возврат к шаry 2. Если статистика F;пiп указывает на BЫCO кую значимость, то алrоритм останавливается и формируется отчет о текущем состоянии модели, которое и будет считаться наилучшим. Метод последовательноrо отбора Метод последовательноrо отбора представляет собой модификацию метода пря Moro отбора, Переменные, которые были введены в модель ранее на основе теста их значимости, MOryт стать незначащими после введения новых переменных, KOTO рые MorYT взять на себя <!объяснение» части дисперсии независимой переменной,
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 391 Чтобы выявить данную ситуацию, алrоритм последовательноrо отбора использует часТНЫЙ F критерий для каждой переменной, ранее включенной в модель, после вI<JIючения каждой новой переменной. Если обнаруживается, что F статистика дЛЯ переменной, которая ранее рассматривалась как значимая, стала меньше «на фоне» новой переменной, то переменная, потерявшая значимость, исключается из модели. Процедура прекращается, коrда переменные, которые MOryT быть введены в модель или удалены из нее, заканчиваются, Поиск лучших подмножеств Для наборов данных, в которых количество переменных не очень велико, процедура поиска лучших подмножеств является наиболее привлекательным методом отбора переменных для реrрессионной модели. Однако если число потенциальных BXOД ных переменных составляет несколько десятков и более, то использование этоrо метода может привести к большим вычислительным затратам. Метод наилучших подмножеств работает следующим образом, о Аналитик определяет количество моделей N, которое должно быть проанали зировано, а также максимальное количество переменных k, которое он хочет использовать в модели. О Строятся все модели с одной переменной: у == Ь О + b j , Xj, у == Ь О + b j . Х2 и т. д, Затем для всех моделей вычисляются коэффициенты детерминации R2, и соз дается отчет о лучших N моделях. О Строятся все модели с двумя переменными: у == Ь О + b j . Хl + Ь 2 , Х2, У == Ь О + Ь" Х2 + + Ь 2 , ХЗ и т, д. Затем для всех моделей с двумя переменными вычисляются R2, и вновь создается отчет о лучших N моделях, Данная процедура повторяется до тех пор, пока не будет достиrнуто макси мальное количество входных переменных k. Затем аналитик рассматривает список лучших моделей каждоЙ размерности, чтобы из них выбрать самую лучшую. He достаток этоrо метода в том, что окончательный выбор субъективен, Метод перебора всех возможных наборов Четыре рассмотренных выше метода, по сути, являются алrоритмами оптими зации на большом пространстве наблюдений, По этой причине отсутствует ra рантия, что будет найдена наилучшая модель из всех возможных, то есть модель, обеспечивающая минимальную ошибку и максимальную значимость. Един cTBeHHыM способом, rарантирующим, что будет построена наилучшая модель, является перебор всех возможных комбинаций входных переменных, то есть метод rлобальноrо поиска, К сожалению, аналитические задачи часто содержат очень большое число потенциальных входных переменных, что делает метод rлобальноrо поиска нереализуемым на практике. Действительно, если имеется k потенциальных
392 Часть 1. Теория бизнес анализа входных переменных, то для rлобальноrо поиска потребуется перебрать 2 k 1 комбинаций. Однако если число потенциальных входных переменных не очень велико, то за дача rлобальноrо поиска вполне разрешима. Например, при k == 5 для выбора лучшей модели потребуется перебрать всето 2 5 1 == 31 комбинацию входных переменных, Но котда число входных переменных начинает возрастать, задача rлобальноrо по иска резко усложняется. Так, для 10 потенциальных входных переменных нужно перебрать уже 2 10 1 == 1023 комбинации, для двадцати 2 20 1 == 1 048575 и т. д, Поэтому для большинства типичных задач метод rлобальноrо поиска неприемлем. Таким образом, хотя перечисленные методы и не rарантируют построения наи лучшей модели, они позволяют за приемлемое время выбрать достаточно значимые переменные и получить хорошие результаты. Пример использования алrоритма прямоrо отбора Рассмотрим набор данных, в котором представлена информация о заемщиках банка (табл, 8.10), Таблица 8.10. Кредитные истории клиентов N!! Стаж на Срок кредита Сумма кредита Количество клиента поспеднем месте (Х2), мес. (Хэ), тыс. ед. просрочек (у) работы (Х1), лет 1 7,5 12 170 О 2 4,5 12 120 О 3 6,5 12 85 О 4 2,5 12 160 1 5 3,5 24 105 1 6 6,5 12 90 О 7 2,0 24 80 3 8 3,5 24 395 2 9 6,0 36 150 2 10 2,0 60 70 4 Переменные XI, Х2 и Хз являются независимыми, а у зависимой. Задача заклю чается в отборе переменных прямым методом (forward) для построения модели, предсказывающей значения независимой переменной. Первым кандидатом на включение в модель является переменная, которая в наибольшей степени коррелирована с независимой. Рассчитав коэффициенты корреляции для каждой из независимых переменных, получим: r (XI) == 0,721, r (Х2) == 0,871 и r (Хз) == 0,018. Значит, наибольшую корреляцию с зависимой пе ременной у имеет независимая переменная Х2, которая и оказывается первым кандидатом на включение в модель. Рассчитаем оценки у значения зависимой переменной, полученные с помощью модели, содержащей только Х2, а также их среднее у и соответствующие квадратичные суммы. Уравнение простой линейной
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 393 реrрессии для независимой переменной Х2 будет у == 0,523 + 0,080х 2 . Результаты flромежуточных расчетов представлены в табл. В.11. Таблица 8.11. Исходные и расчетные данные, необходимые для проверки значимости переменной Х2 N2 Х2 У У у QII == (y у)2 QE==(y y)2 lCJIи ента 12 О 0,436 1,3 0,746 0,190 1 2 12 О 0,436 1,3 0,746 0,190 3 12 О 0,436 1,3 0,746 0,190 4 12 1 0,436 1,3 0,746 0,318 5 24 1 1,396 1,3 0,009 0,157 6 12 О 0,436 1,3 0,746 0,190 7 24 3 1,396 1,3 0,009 2,573 8 24 2 1,396 1,3 0,009 0,365 9 36 2 2,356 1,3 1,115 0,127 10 60 4 4,275 1,3 8,852 0,076 L 13,724 4,376 Рассчитаем значение частноrо F критерия для переменной Х2. Е == QE == Q/;, ПОЛ 11 df п k 2 4,376 0,547, 10 0 2 [де df = п k 2 число степеней свободы выборки, связанное с остаточной CYM мой; k число переменных начальной модели, то есть модели без дополнительной переменной, Теперь рассчитаем значение статистики F критерия: F = Q ОП = Q ОЛII Q "" Q полп О 13 724 = = = R =25,089, Е ПОЛII Е,lO,'1' Е'ЮЛII 0,547 Очевидно, что поскольку начальная модель в данном случае не содержит пере менных (Х2 добавляется в пустую модель), то Q "'I = о. Зададим уровень значимости а == 0,05 и по таблице F распределения определим, что теоретическое значение статистики критерия Fr для чисел степеней свободы dfl == 1 и df2 == В составляет 5,31В, что HaMHoro меньше, чем 25,ОВ9 ее значение, рассчитанное для реальных данных. Это с вероятностью ошибки 0,05 позволяет отклонить нулевую rипотезу и сделать вывод о значимости переменной Х2 и целе сообразности включения ее в модель. После включения в модель переменной Х2 остается решить вопрос о целесооб. разности включения переменных Х! и Хз. Рассчитаем прирост значения квадратич ной суммы Q ОП при поочередном включении в модель переменных Х! и Хз с учетом Toro, что она уже содержит переменную Х2'
394 Часть 1. Теория бизнес анализа Для модели, содержащей переменные Х! И Х2, уравнение реrрессии будет у = 1,112 0,279. Х! +0,063 .Х 2 . Данные, необходимые для расчета F статистики представлены в табл, 8.12. ' Таблица 8.12. Таблица с исходными и расчетными данными для оценки Р(Хl I Х2) N!! Х1 Х2 У У у QR QE клиента 1 7,5 12 О 0,228 1,3 2,335 0,052 2 4,5 12 О 0,607 1,3 0,478 0,371 3 6,5 12 О 0,051 1,3 1,560 0,003 4 2,5 12 1 1,167 1,3 0,018 0,028 5 3,5 24 1 1,640 1,3 0,116 0,410 6 6,5 12 О 0,051 1,3 , 1,560 0,003 7 2,0 24 3 2,059 1,3 0,578 0,886 8 3,5 24 2 1,640 1,3 0,114 0,129 9 6,0 36 2 1,695 1,3 0,156 0,093 10 2,0 60 4 4,316 1,3 9,096 0,010 L 16,011 1,985 Число степеней свободы для вычисления среднеквадратической ошибки COCTa вит dJ :::::: п k 2 :::::: 1 О 1 2 :::::: 7. Тоrда Q/:' Q/:' 1,985 ЕпШ/ll:::::: dJ :::::: п k 2 10 1 2 0,284; F ( I , ) :::::: 16,011 1з,724 8053 Х! Х2 0,284 ,. Вновь задавшись уровнем значимости а:::::: 0,05, для чисел степеней свободы dJj :::::: 1 и dJ2 :::::: 7 по таблицам F распределения определим теоретическое значение статистики Fr:::::: 5,591. Поскольку 5,591 < 8,053, мы с вероятностью ошибки 0,05 вновь должны отклонить нулевую rипотезу и сделать вывод о целесообразности добавления переменной Х! в модель, которая уже содержит переменную Х2. Проведем аналоrичные рассуждения для переменной Хз, Уравнение реrpессии будет: у:::::: 0,768 + 0,081, Х2 + 0,002.хз. Соответствующие результаты представлены в табл, 8.13, Е :::::: Q/:' :::::: QE 4,151 ::::::0593. 110.'1" dJ п k 2 10 1 2 ' , F ( x I х ) = 13,940 13,724 = 0364, J 2 0,593 '
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 395 Таблица 8.13. Таблица с ИСХОДНЫМИ и расчетными данными для оценки F(хз I Х2) Н!! Х. Х2 У У у QR QE lCJ1иента 1 12 170 О 0,515 1,3 0,616 0,265 2 12 120 О 0,415 1,3 0,783 0,172 3 12 85 О 0,345 1,3 0,912 0,119 4 12 160 1 0,495 1,3 0,648 0,255 5 24 105 1 1,357 1,3 0,003 0,127 6 12 90 О 0,355 1,3 0,893 0,126 7 24 80 3 1,307 1,3 О 2,866 8 24 395 2 1,937 1,3 0,406 0,004 9 36 150 2 2,419 1,3 1,252 0,176 10 60 70 4 4,203 1,3 8,427 0,041 L 13,940 4,151 Поскольку значение F статистики, полученное на реальных данных, меньше теоретическоrо, то есть 0,364 < 5,591, добавление в модель, содержащую перемен ную Х2, новой переменой ХЗ не является целесообразным, и наконец, осталось рассмотреть целесообразность включения в модель пере менной ХЗ при условии, что она уже содержит переменные Х! и Х2, то есть иссле довать случай (Х з I X 1 ,Х 2 ). ДЛЯ полной модели, содержащей все три переменные, уравнение множественной реrpессии будет у = 0,875 0,273, x 1 +0,064 .Х 2 +О,ООI.х з , Данные, необходимые для расчета F( Х з I Х I 'Х 2 )' представлены в табл, 8.14. Таблица 8.14. Таблица с исходными и расчетными данными для оценки F( Х з I Х 1 ,Х 2 ) N!! Х Х2 хэ У У у QR QE клиента 1 7,5 12 170 О 0,235 1,3 2,355 0,054 2 4,5 12 120 О 0,534 1,3 0,586 0,286 3 6,5 12 85 О 0,047 1,3 1,813 0,002 4 2,5 12 160 1 1,121 1,3 0,032 0,015 5 3,5 24 105 1 1,561 1,3 0,068 0,314 6 6,5 12 90 О 0,042 1,3 1,800 0,002 7 2,0 24 80 3 1,945 1,3 0,416 1,113 8 3,5 24 395 2 1,851 1,3 0,303 0,022 9 6,0 36 150 2 1,691 1,3 0,152 0,095 10 2,0 60 70 4 4,239 1,3 8,638 0,057 L 16,163 1,960 Поскольку теперь исходная модель содержит две независимые перемен ные (k == 2), число степеней свободы, связанное с остаточной суммой, составит п k 2 == 1 О 2 2 == 6,
396 Часть 1. Теория бизнес анализа QE QE Е'Ю}11f == df == п k 2 1,960 10 2 2 ==0,327; 16,163 16,011 F(x:J I X 1,X2)== 0327 ==0,465. , По таблицам F распределения для чисел степеней свободы dfl == 1 и df2 == 6, при уровне значимости а == 0,05 определим, что теоретическое значение статистики Fr == == 5,987, Поскольку F < Fr, мы вынуждены принять нулевую rипотезу и сделать вывод о низкой значимости вклада переменной Хз в объясняющую способность модели и нецелесообразности ее включения. Таким образом, используя метод прямоrо отбора, мы выяснили, что целесооб разно включить в модель переменные Хl и Х2, поскольку именно они вносят наибо лее значимый вклад в объясняющую способность модели, Включение переменной Хз нецелесообразно. 8.9. Оrраничения применимости u реrрессионных моделеи В настоящее время реrрессионные модели являются одним из наиболее попу лярных методов решения различных классов задач бизнес аналитики. Эта попу лярность обусловлена тем, что реrpессия сочетает в себе как высокую эффектив ность и универсальность, так и относительную простоту реализации, понимания и интерпретации пользователем. Кроме Toro, аппарат реrрессионноrо анализа включает множество методов оценивания точности и достоверности полученных результатов, Однако, как и большинство друrих статистических методов, линейную pe rрессию нельзя при менять без учета особенностей конкретной задачи. Такие особенности MorYT по рождать оrраничения применимости реrрессионных MO делей, иrнорирование которых часто приводит к снижению точности результа тов и даже к их полной недостоверности. Поэтому каждый раз при построении реrрессионной модели и особенно при ее практическом применении необходимо удостовериться в ее корректности с точки зрения условий самой задачи и исполь зуемых данных. Приведем несколько основных оrраничений, которые следует учитывать при построении реrрессионных моделей, О Никакая единственная независимая переменная за редкими исключениями не в состоянии хорошо объяснить изменения зависимой переменной. О MorYT существовать несколько одинаково хороших и в то же время противо речивых реrрессионных моделей. О Линейная форма связи примитивна.
rлава 8. Data Mining: классификация и реrрессия. СТатистические методы 397 С) Наличие на входе модели переменных, сильно коррелированных друr с друrом, приводит к проблеме мультиколлинеарности, В процессе реrpессионноrо анализа оценивается качество модели, определяется, насколько данный набор входных переменных объясняет поведение выходной, Для этих целей вычисляется коэффициент детерминации r, который показывает, какую долю информации о поведении выходной переменной можно объяснить входными переменными. Коэффициенты Ь , определяют силу зависимости BЫXOД ной пере мен ной от i й входной, Метод линейной реrрессии имеет несколько методолоrических недостатков, которые при ее неосторожном применении способны существенно исказить результаты. Основным недостатком является то, что реrрессионная модель CTpO ится на основе выборки, формируемой из имеющеrося множества наблюдений. Затем зависимость между входными и выходной переменными, заданная в виде уравнения реrpессии, распространяется на все наблюдаемые данные. В большин стве случаев хранилища данных, в которых консолидируется анализируемая информация, предоставляют пользователю весьма объемные наборы данных, co держащие тысячи, десятки и сотни тысяч наблюдений. Проблема кроется в том, что большие наборы данных часто не являются однородными и MoryT включать rруппы наблюдений, для которых зависимости между входными и выходной переменными различны, Например, такая ситуация может сложиться при ис пользовании линейной реrрессии для пред сказания значений BpeMeHHoro ряда, Так, спрос на некоторый товар может изменяться в соответствии с сезонными колебаниями: возрастать весной и падать осенью. Поэтому если мы используем для построения модели наблюдения за весь rод, то получим две противоречивые тенденции. Друrим примером является построение скоринrовой модели, которая на основе HeKoToporo набора характеристик должна определить кредитный рейтинr клиента, Известно, что к полезным переменным, тесно связанным с вероятностью возврата или невозврата кредита, относится возраст клиента, Ясно, что молодые люди, не имеющие жизненноrо опыта, не всеrда адекватно оценивают свои финансовые возможности, находятся на этапе профессиональноrо становления, обзаводятся семьей, что, вообще rоворя, не делает их привлекательными заемщиками, Поэтому следует ожидать, что в уравнении реrpессии коэффициент при переменной Возраст будет положительным, то есть с возрастом кредитный рейтинr возрастает. Однако по достижении клиентом определенноrо возраста ситуация коренным образом Me няется. Так, человек в возрасте более подвержен риску заболеваний, из за которых Можно потерять работу, при потере работы ему труднее найти новую и т, д, Поэто му очевидно, что начиная с HeKoToporo возраста (например, с 50 лет) кредитный рейтинr будет снижаться, а коэффициент уравнения реrрессии при переменной Возраст станет отрицательным, Данный пример поясняется на рис. 8.18. До 45 лет кредитный рейтинr клиента увеличивается с возрастом, поэтому прямая линейной реrpессии, построенная для возрастной rруппы 20 45 лет, будет возрастающей. После 45 лет наблюдается
398 Часть 1. Теория бизнес анализа обратная тенденция, и реrрессионная модель для возрастной rруппы 45 70 лет будет описываться убывающей линией. Однако если не выделять эти две Воз растные rруппы, то линия реrрессии (пунктирная линия) для всей выборки будет показывать некоторую общую тенденцию, которая не отражает реальную ситуацию. 100 о L... :I: s: t-- ':!; Ф а. о о о о о о ------ ----------- о о о 000 о о о о ---- 00 о о 20 зо 40 50 60 Воэраст Рис. 8.18. НеЛlшейная зависимость возраста от кредитноro рейтинrа Попытка использовать одну реrрессиоННУЮ модель для клиентов всех возраст ных катеrорий будет давать очень недостоверные оценки, а коэффициенты ypaB нения реrpессии будут отражать среднюю температуру по больнице>.>, Очевидно, что при наличии в наборе данных rpупп наблюдений, для которых характер связи между входными и выходной переменными различен, разум- нее строить несколько моделей, то есть отдельную модель для каждой rруппы. Но такой подход не вполне конструктивен, поскольку количество моделей будет оrраничиваться только фантазией аналитика. Тем не менее существует ряд кри териев, позволяющих применить формальный подход к разбиению совокупности на rpуппы, Пусть для примера с кредитным рейтинrом модель имеет вид: рейтиН!' == 12,5 + 0,25. (возраст), Иными словами, минимальный наблюдаемый рейтинr составляет 12,5 и для каждоrо дополнительноrо rода увеличивается на 0,25. При этом данное увели чение будет одинаковым как для клиента в возрасте 25 лет, так и для клиента в возрасте 70 лет. Модель дает единый механизм влияния возраста на вероятность возврата кредита. Здравый смысл и жизненный опыт подсказывают нам, что это не так. Если же мы предположим, что в наборе данных присутствуют возрастные rруппы, для которых поведение выходной переменной различно, то возникает вопрос, rде проходит rраница между этими возрастными rруппами, С точки зрения реrрессионной модели эту проблему можно сформулировать следующим
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 399 образом: «Если построить реrpессионные модели для двух возрастных rрупп, то каК определить, в каком случае эти две модели будут отличными друr от друrа и [де это различие максимально?» Для решения данной проблемы используется статистический метод, называ еМЫЙ тестом Чоу, который показывает, является ли значимым улучшение модели после разделения исходной совокупности наблюдений на однородные rруппы и построения отдельной модели для каждой rруппы, Тест Чоу вычисляется как устатистика вида: (QT Ql Q2)/(k+1) Е== . (QI +Q2)/(п 2k 2) rAe QT остаточная сумма квадратов для модели, построенной на нераэделенном наборе данных; Q! остаточная сумма квадратов для модели, построенной по первой под rpуппе; (ъ остаточная сумма квадратов для модели, построенной по второй под rpуппе; k + 1 и п 2k 2 число степеней свободы F распределения. Иными словами, тест Чоу позволяет определить статистическую значимость повышения качества модели при переходе от одноrо уравнения к двум. Таким образом, в нашем примере можно разделить возрастную шкалу на два интервала, для каждоrо из них построить уравнение реrpессии и с помощью теста Чоу определить, улучшились ли результаты работы модели, то есть увеличилась ли точность получаемых с ее помощью оценок. Однако остается открытым вопрос, какое именно значение возраста следует выбрать в качестве rраничноrо при раз делении исходной совокупности наблюдений на rpуппы. Действительно, можно выбрать 45 лет, а можно 50, при этом в обоих случаях тест Чоу, скорее Bcero, покажет улучшение качества модели. Более Toro, иноrда тест Чоу оказывается значимым практически для любых разумных раз биений исходной совокупности на rpуппы. Но это лишь позволяет сделать вывод, что два уравнения реrpессии почти всеrда более точно описывают связь между входными и выходной переменными, чем единственное уравнение, Проблему выбора rраничноrо значения входной пере мен ной при разбиении исходной совокупности данных на rруппы можно решить следующим обра зом. 1. Реализовать все разумные с точки зрения решаемой задачи разбиения. Очевид но, что в рассмотренном примере нелоrично выбирать в качестве rраничных значений возраст 25 или 65 лет. Скорее Bcero, rpаница будет лежать между 40 и 55 rодами. 2. Перебрать все реализованные на предыдущем шаrе варианты разбиения и для каждоrо из них с помощью теста Чоу определить степень улучшения качества модели, полученной в результате разбиения. 3. Выбрать то разбиение, которое покажет наиболее значимое улучшение Ka чества.
400 Часть 1. Теория бизнес анализа Использование фИКТИВНЫХ переменных Еще одним способом повысить точность модели, построенной на основе совокуп ности наблюдений, которая содержит разнородные rpуппы, является применеНие фиктивных переменных. Предположим, что rраничный возраст 45 лет. Тоrда мы можем ввести фиктивную переменную G, которая определяется следующим образом (табл, 8.15). Таблица 8.15. Фиктивная переменная G j I ..a 20 45 46 70 I " С==1 Уравнение реrрессии может быть записано в виде: рейтинr == 6,4 + 12,5, G 2,24. С. (возраст). Здесь с помощью одноrо уравнения удается объединить в рамках одной модели две тенденции, прослеживающиеся в исходных данных, Действительно, для клиен тов, возраст которых менее 45 лет, то есть коrда G == О, имеем, что рейтинr от возрас та не зависит и равен значению свободноro члена (коэффициента Ь О == 6,4). В то же время для клиентов старше 45 лет, коrда G == 1, уравнение преобразуется к виду: рейтинr == 6,4 + 12,5 2,24.1. (возраст) == 18,9 2,24. (возраст), что отражает убывающую зависимость между возрастом и кредитным рейтинrом для данной возрастной катеrории. Конечно, отражение обеих тенденций в наблюдаемых данных с помощью oд Horo уравнения обеспечивает более компактное и интерпретируемое представ ление. Очевиден и недостаток этоrо подхода: для одной из двух rрупп значимая зависимость от возраста вообще отсутствует. Тем не менее в некоторых случаях использование фиктивных переменных вполне себя оправдывает, rетероскедастичность Еще одной проблемой, которая может привести к оrраниченности применения реrрессионной модели, является rетероскедастичность. Одним из оrраничений, накладываемых на реrрессионную модель, является то, что разброс точек реаль ных значений данных относительно линии реrрессии должен быть равномерным во всем диапазоне изменения независимой переменной дисперсия наблюдений вдоль линии реrpессии должна быть постоянной, Это требование называется lOмо скедасmuчносmью, Если для различных диапазонов изменения входной переменной дисперсия точек данных непостоянна, то имеет место zеmероскедасmuчносmь. Эта ситуация поясняется с помощью рис. 8.19. Возвращаясь к примеру с оценкой кредитноrо рейтинrа, предположим, что в качестве входной переменной будет использоваться не возраст, а доход. Наличие
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 401 у о о о о 000 о х а у о о о о о о о 000 о о о о о 00 00 о б х Рис. 8.19. Иллюстрация случая rомоскедастичности (а) и rетероскедастичности (6) rетероскедастичности имеет простое лоrическое объяснение: при больших зна чениях дохода (переменная х) их вариабельность также увеличивается. Пере фразируя известную поrоворку, можно сказать, что все бедные бедны одинаково, а боrатые боrаты по своему. Действительно, в диапазоне значений, связанных с низким доходом (например, 5000 ед.), значимыми будут изменения и в 1000 ед. Тем не менее и клиент с доходом 4000 ед., и клиент с доходом 6000 ед. относятся к катеrории малообеспеченных. В то же время клиенты, имеющие доход 100000 и 500 000 ед., являются высокообеспеченными, хотя их доходы различаются в 5 раз. Таким образом, линия реrрессии отражает одинаковый рост кредитноrо рейтинrа как при изменении дохода на 1 О % для клиентов с низким доходом, так и при изменении на 500 % для клиентов с высоким доходом. При rетероскедастичности значение выходной переменной зависит не только от величины изменения входной переменной, но и от Toro, относительно какой
402 Часть 1. Теория бизнес анализа величины это изменение происходит. Для борьбы с rетероскедастичностью часто используется простой прием. В наборе переменных ищется такая, которая имеет сильную связь как с входной переменной х, так и с выходной у. Например, если выходная переменная кредит1tый рейти1tl, а входная доход, то ВСпо моrательной переменной может быть стоимость автомобиля, которым владеет клиент, поскольку вероятность наличия дороrоrо автомобиля у человека с низ ким достатком весьма мала. Затем входную, и выходную переменную делят на вспомоrательную и строят модель на основе новых полученных переменных, Низкий доход одноrо клиента окажется разделенным на низкую стоимость ero автомобиля, и наоборот, высокий доход друrоrо на высокую стоимость ero автомобиля. Иноrда такое «масштабирование>,> позволяет избавиться от reTepo скедастичности. МУЛЬТИКQллинеаРНQСТЬ в множественной реrpессии не исключена ситуация, коrда некоторые из входных переменных будут коррелировать между собой. Например, если areHT по недвижи мости оценивает дом, то он использует такие показатели, как число комнат, жилая площадь, rод постройки дома, ero техническое состояние и т. д. Однако чем больше комнат в доме, тем больше ero ожидаемая площадь, и наоборот. Чем меньше возраст дома, тем лучше (как правило) ero техническое состояние. Иначе rоворя, между указанными показателями наблюдается высокая корреляция. Наличие на входе реrрессионной модели коррелированных переменных Ha зывается м-улътиколли1tеар1tостъю. Это явление в большинстве случаев вызывает серьезные проблемы при построении реrpессионных моделей, их неустойчивость и неоднозначность. Например, в наборе данных с сильной мультиколлинеарностью P TeCT может по казать высокую значимость модели в целом, тоrда как t TecT не покажет наличия в модели значимых переменных. Неустойчивость модели при мультиколлинеарности заключается в высокой дисперсии оценок коэффициентов реrрессии. Даже небольшие вариации исходных данных MorYT вызывать сильное изменение коэффициентов. Существуют различные методы, направленные на снижение мультиколли неарности. Некоторые из них предлаrают выбрать одну из коррелированных переменных и исключить ее из модели. Однако это крайнее средство, поскольку исключенная переменная может нести важную информацию. Также для иссле дования корреляционных отношений между переменными и выделения неболь шоrо набора независимых переменных с успехом используется метод rлавных компонент, Эффективным способом борьбы с мультиколлинеарностью служит и комбинирование переменных, коrда две коррелированные переменные объеди няются в одну. Рассмотренные выше оrраничения, связанные с применением реrpессионных моделей, являются только небольшой частью проблем, которые поджидают анали тика при серьезном подходе к анализу данных. Широкое распространение различ
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 403 Jfы x аналитических систем, пакетов статистическоrо анализа и обработки данных убеждает пользователя в том, что для решения определенной задачи достаточно эаrpузитЬ выборку данных и щелкнуть на соответствующем значке на экране. Ok JfaKO, столкнувшись с решением практических задач, большинство начинающих аJfалитиКОВ быстро понимают, что для эффективноrо анализа данных в любой сфере необходимы как знание специфики используемых методов, так и хорошая подrотовка в самой предметной области. Не является исключением и реrpессион JfЫЙ анализ. Знание особенностей применения реrpессионных моделей, связан JfblX с ними оrраничений и условий, при которых эти оrраничения возникают, позволяет строить более совершенные модели и получать с их помощью более достоверные результаты. 8.10. ОСНОВЫ лоrистической реrрессии Линейная реrpессия используется для моделирования линейных зависимостей между непрерывной выходной переменной и набором входных переменных. При анализе данных часто встречаются задачи, rде выходная переменная является катеrориальной и тоrда использование линейной реrрессии затруднено. Поэтому при поиске связей между набором входных переменных и катеrориальной BЫXOД ной переменной получила распространение лоrистическая реrрессия. Ниже мы рассмотрим применение лоrистической реrpессии для случая бинарной выходной переменной (переменной, которая может принимать только два значения), хотя можно использовать данный метод и в случае, коrда выходная переменная прини мает более чем два значения. Простой пример лоrистической реrрессии Предположим, что врача интересует зависимость между возрастом пациента и Ha ли чием (1) или отсутствием (О) HeKoToporo заболевания. Данные, собранные по 20 пациентам, представлены в табл. В. 16, а соответствующий rpафик на рис, В.20. Таким образом, в задаче используется бинарная выходная переменная у, которая может принимать только два значения: О и 1. Иноrда такие переменные называют дихотомическими. ТаБJШца 8.16. Данные о пациентах N!! пациента Возраст, х Напичиеэа60певания, у 1 25 О 2 29 О 3 30 О 4 31 О 5 32 О Продолжение ,р
404 Часть 1. Теория бизнес анализа Таблица 8.16 (продолжение) N!! пациента Возраст, х Наличие заболевания, y 6 41 О 7 41 О 8 42 О 9 44 1 10 49 1 11 50 О 12 59 1 13 60 О 14 62 О 15 68 1 16 72 О 17 79 1 18 80 О 19 81 1 20 84 1 о о о о 000 "" :s; :!: <tI IП Ф <:; о 'g 0,5 '" ф :s; :т :s; :I: /......................................... о о ШD со о 00 о о 25 З5 45 55 Воэраст 75 85 Рис. 8.20. Диаrpамма «Возраст заболевание!>, линия реrpессии и кривая лоrистической реrрессии На рисунке сплошной линией пред ставлена прямая простой линейной perpec сии, построенная для данных из табл. 8.16, а пунктиром кривая лоrистической
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 405 реrрессии, Также для обеих кривых показана ошибка оценивания для пациента .Ng 11 (х == 50, у == О). Линия лоrистической реrpессии, в отличие от линейной, не является прямой. Рассмотрим ошибки оценивания, полученные для пациента N"Q 11. Расстояние меЖДУ точкой данных для пациента N"Q 11 и линией реrpессии показано сплошной вертикальной стрелкой, а для кривой лоrистической реrpессии пунктирной. Вид »0, что расстояние будет больше для линейной реrрессии, а это означает, что она дает худшую оценку выходной переменной, чем лоrистическая. Это утверждение также является истинным для большинства друrих пациентов. Построение линии лоrистической реrрессии Введем в рассмотрение условное среднее Е(у I х) значений выходной переменной у для заданноrо значения х входной переменной Х. Е(у I х) представляет собой ожи даемое значение выходной переменной при заданном значении входной. Напом »им, что выходная переменная в линейной реrpессии это случайная переменная, определяемая как у == o + IX + 1::. Поскольку ошибка Е имеет нулевое среднее, для линейной реrрессии мы получим, что Е (у I х) == о + 1 Х (так же как и в линейной реrpессии, буквой Ь будем обозначать коэффициенты уравнения реrpессии, а параметры соответствующей модели). Для краткости введем обозначение Е(у I х)== р(х). Условное среднее для лоrи стической реrpессии имеет вид: е O + IX р(х) == 1 + e o+ lx (В.В) Функцию, описываемую уравнением (В.В), называют ЛОlистичес'/(ой, а COOTBeT ствующие кривые СИlМоидами, поскольку они имеют характерную S образную форму. Эта функция определена на бесконечности и изменяется в диапазоне от О до 1. Диапазон изменения р(х) также будет от О до 1, поэтому данную функцию можно интерпретировать как вероятность Toro, что выходная переменная при обрела значение 1 (заболевание имеет место), а 1 р(х) как вероятность по явления значения О (заболевание отсутствует). Как уже rоворилось при обсуждении модели линейной реrрессии, ошиб Ка Е является нормально распределенной случайной величиной с нулевым средним и постоянной дисперсией. Предположения, используемые для лоrистической реrрессии, несколько отличаются. Выходная переменная является бинарной, и принятие выходной переменной одноrо из двух возможных значений назы вается исходом. ОПРЕДЕЛЕНИЕ Исход явление, показатель или признак, который служит объектом исследования. Ha пример, при проведении клинических испытаний в медицине вероятность исхода служит критерием оценки эффективности лечебноrо или профилактическоrо воздействия.
406 Часть 1. Теория бизнес анализа Если предположить, что принятие выходной переменной у значения 1 paCCMa тривается как успех, а значения О как неуспех, то р(х) можно интерпреТИРовать как вероятность успеха, а 1 р(х) неуспеха. Данная ситуация поясняется На рис. 8,21. 1 О О.. О О 000 CJ: :s; :!: <tI IП Ф <:; о о <tI '" Ф :s; -- :s; :I: 1 P(Xi..................................... ......... 0,5 ...... ......1... ...... ........ ......... ............. ...... ; р(х) 't o О OJD m О 00 О О I 25 I З5 I 45 I 55 I 65 I 75 I 85 Воэраст Рис. 8.21. rеометрическая интерпретация вероятности исхода заболевания В лоrистической реrpессии используется преобразование вида: р(х) g(x)==ln 1 p(x) O+ IX. Оно называется лОlит nреобразованиеМ и обладает такими полезными свойст вами, как линейность, непрерывность и определенность на бесконечности. Оценки максимальноrо правдоподобия Одним из наиболее привлекательных свойств линейной реrpессии является то, что коэффициенты реrpессии MOryт быть получены с помощью метода наименьших квадратов. Для оценки t<оэффициентов лоrистической реrрессии таких решений не существует. Поэтому в ней коэффициенты оцениваются на основе метода MaK симальноrо правдоподобия, который позволяет найти такие значения коэффици ентов, для которых вероятность появления максимальна. Введем в рассмотрение функцию nравдоnодобuя l( I х) (likelihood function). Она определяет вероятность появления значений параметров == 1' 2." Il для за
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 407 даIllюrо значения х. Задача заключается в поиске таких значений этих параметров, оторые максимизируют функцию правдоподобия: строятся оценки максимальною равдоподобuя (maximum likelihood estimates), для которых значения параметров являются наиболее подходящими для наблюдаемых данных. Вероятность Toro, что выходная переменная у приобретет значение 1 для задан no ro значения х (вероятность успеха), будет р(х) =о Р(у =о 11 х), а вероятность Toro, что у =о О при заданном х, будет 1 р(х) =о Р(у =о О I х). Таким образом, поскольку . б б [ ( )] 1/' [ ( )] I I/') у, === о или 1, вклад l ro на людения может ыть выражен как р Х; . . 1 р Х; '. Предположение, что наблюдения являются независимыми, позволяет представить функцию правдоподобия как произведение двух отдельных членов: 1( lx)=o [Пр(х;)]'/; .[1 P(Xi)](1 Y'). i==1 В вычислительном плане более удобна лоrарифмическая функция правдопо добия L( I х) =о ln[l( I х)]: L( I х) =о ln[l( I х)] =о t {У; lп[р(х,)] + (1 y,)ln[1 р(х,)]}. (8,9) 1==1 Оценки максимальноrо правдоподобия MoryT быть найдены путем дифферен цирования L( I х) относительно каждоrо параметра и приравниванием результи рующих выражений к О. Проверим результаты лоrистической реrpессии для данных из табл. 8.16. Коэф фициенты, то есть оценки максимальноrо правдоподобия неизвестных параметров o И 1' определятся как o =о 4,372, а 1 =о 0,067. С учетом уравнения (8.8) можно записать: g(x) е 4.372+0.067(uo:Jr'ltT) р( х) =о 1: е к(х) 1 + е 4,372+0.067(uo:Jpa('T) , [де g(x) =о 4,372 + 0,067.х есть лоrит преобразование. Эти уравнения MoryT использоваться, чтобы оценить вероятность наличия за болевания у пациентов определенноrо возраста. Например, для пациента в возрасте 50 лет имеем: еК(х) e l,022 g ( x ) =o 4,372+0,067.50=o ],022; p (x)= ( ) = 1022 =0,26. l+e gx l+е' в итоrе вероятность Toro, что пациент 50 лет страдает заболеванием, co ставляет 26 %. Соответственно, вероятность отсутствия заболевания будет 1 00 26 =о 74 %. Если провести такую же оценку для пациента в возрасте 72 лет, то можно увидеть, что вероятность наличия заболевания составит 61 %, а ero отсутствия 39 %.
408 Часть 1. Теория бизнес анализа Значимость входных переменных Напомним, что в простой линейной реrрессии модель считал ась значимой, есл v v б б 11 среднии квадрат значении оценок реrрессии ыл ольше, чем средний квадра ошибки оценивания. Средний квадрат реrpессии представляет собой меру УЛУЧlUе ния оценки выходной переменной, если для оценивания мы используем не среДнее значение, а входную переменную. Если входная переменная является «полезной!> для оценивания значения выходной, то средний квадрат реrрессии будет Бо лыue и статистика F == Qя./ Q также будет больше. Тоrда соответствующую линейную реrрессионную модель можно будет рассматривать как значимую. Значимость коэффициентов лоrистической реrpессии определяется аналоrично. В сущности, мы проверяем, обеспечивает ли использование в модели определенной входной переменной лучшую оценку выходной переменной. Введем понятие насыщенной модели (saturated model), то есть модели, в KOTO рой количество входных переменных равно числу наблюдений данных. Очевидно, что такая модель будет предсказывать значения выходной переменной с абсо лютной точностью. Затем мы можем посмотреть на наблюдаемые значения BЫ ходной переменной, которые были предсказаны с помощью насыщенной модели. Для сравнения оценок, полученных с помощью обычной модели и насыщенной модели, введем понятие отклонения D: D == 2ln [( I х) [нас ( I х) (8.10) Здесь мы имеем опюшение двух значений функции правдоподобия, поэтому про верка результирующей rипотезы называется провер'/(ой отношения правдоподобuя. ОПРЕДЕЛЕНИЕ Отношение правдоподобия отношение вероятности получить положительный результат для положительноrо исхода к вероятности получить положительный результат для отрица- тельноrо исхода. Например, для выборки из табл. 8.16 отношение правдоподобия это OTHO шение вероятности обнаружить болезнь у больноrо к вероятности обнаружить болезнь у здоровоrо. Кроме этоrо, введем еще два понятия. ОПРЕДЕЛЕНИЕ Отношение правдоподобия положительноrо результата отношение вероятности получить истинноположительный результат к вероятности получить ложноположительный результат. ОПРЕДЕЛЕНИЕ Отношение правдоподобия отрицательноro результата теста отношение вероятности получить истинноотрицательный результат к вероятности получить ложноотрицательный результат.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 409 Обозначим оценку р(х), полученную с помощью обычной модели, как р( х). 3a теМ, используя уравнение (8.10), для случая лоrистической реrpессии мы можем записать отклонение D в следующем виде: D = 2i [ Yi ln Р. +(1 yJln 1=Р. ] . i 1 Yi 1 У; Чтобы определить, является ли переменная значимой, нужно найти разность двух отклонений вычисленноrо для модели без данной входной переменной D и Jfайденноrо для всей модели D+, то есть G = D D+ = 2ln [ правдоподобие без переменн й ] . правдоподобиеспеременнои Введем обозначения п l == L.1I и по == L(1 .1II)' Тоrда для случая единственной входной переменной можно записать: G = 2'{ [Yi lnp' +(1 YJ.ln(I p')] [nl1nnl +п о lnn o nlnn]}. Для примера из табл. 8.16 лоrарифмическое правдоподобие будет 10,101, Torдa: G == 2{ 10,1 01 [71п(7) + 1з1п (13) 20 lп (20 )]} == 5,696. При справедливости нулевой rипотезы, состоящей в предположении 1 == == О, статистика G имеет распределение х 2 с одной степенью свободы. Следо вательно, результирующее р значение для проверки данной rипотезы будет Р(х: > 5,696) = 0,017. Блаrодаря весьма малому р значению становится очевидно, что возраст очень значимая переменная при определении вероятности наличия заболевания, Друrим методом для проверки значимости определенной входной переменной Является тест Валъда. При нулевой rnпотезе 1 == О отношение Zw ( J 2 COOT E<;r(b) ветствует распределению хи квадрат с одной степенью свободы, rдe EcT(b t ) стаJЩарт ная ошибка оценивания коэффициента реrpессии на основе наблюдаемых данных. Напомним, что стандартная ошибка оценивания коэффициентов реrpессии Ее] использовалась ранее для оценки значимости коэффициентов линейной реrpессии. В лоrистической реrрессии она также используется для этих целей. О том, как вычисляются стандартные ошибки оценивания коэффициентов лоrистической реrpессии Ее], будет рассказано дальше, а пока возьмем [отовые цифры. Посколь ку Ь 1 == 0,067, а E(b t ) == 0,0322, то Zw == 0,0672 / 0,03222 == 4,33 и P(z > 4,33) == 0,038. Это неравенство означает, что вероятность справедливости нулевой rипотезы не превышает 3,8 %. Данное р значение также достаточно мало, хотя и не настолько, как полученное с помощью отношения правдоподобия. Следовательно, результаты
410 Часть 1. Теория бизнес анализа обоих тестов совпадают, и переменная возраста является статистически значимой для оценки вероятности заболевания. Введем в рассмотрение понятие доверителЪ1tOlO интервала. ОПРЕДЕЛЕНИЕ Доверительный интервал наиболее вероятный диапазон изменения наблюдений случай- ной величины. Величины, полученные в исследованиях на выборке данных, оТЛичаются от истинных (наблюдаемых) величин вследствие влияния случайной состаВЛЯющей. Так 95% Й доверительный интервал означает, что истинное значение величины с вероятность 95 % лежит в пределах AaHHoro интервала. Доверительные интервалы помоrают опреде- лить, соответствует ли данный диапазон значений представлениям аналитика о значимости связи между переменными. Величина доверительноrо интервала характеризует степень доказательности данных, в то время как р-значение указывает на вероятность отклонения нулевой rипотезы. Определим rpаницы доверительных интервалов для оценок коэффициента Ь 1 лоrистической реrрессии (1 а) . 100 % в следующем виде: Ь , Iz.E c , (b 1 ), [де z определяется с использованием t критерия Стьюдента для двусторонней об ласти при заданном уровне значимости а и с п k степенями свободы (для а == 0,05 z::::: 1,96, таблицу критических точек t распределения смотрите в прило жении на компакт диске). В нашем примере 95% ный доверительный интервал для коэффициента Ь 1 определится так: CI( b 1 ) == 0,06696 I 1,96. 0,03223 == 0,06696 I 0,06317 == [0,00379; 0,13013], Поскольку О не входит в данный интервал, мы можем заключить, что с Be роятностью 95 % Ь 1 +' О и, следовательно, возраст пациента является значимой переменной. Использование лоrистической реrрессии для решения задач классификации Постановка задач классификации и реrрессии отличается характером выходной переменной. Если выходная переменная является непрерывной, то имеет место задача реrрессии, а если дискретной (метка класса) то классификации. Как было показано выше, лоrистическая реrрессия позволяет работать с дихотомиче ской выходной переменной, что предполаrает возможность использования этоrо метода для решения задач бинарной классификации. В бинарной классификации каждое наблюдение или объект должны быть отнесены к одному из двух классов (например, А и Б). Тоrда с каждым исходом связано событие: объект принадлежит к классу А и объект принадлежит к классу Б. Результатом будет оценка вероятно сти соответствующеrо исхода. Если в процессе анализа будет установлено, что вероятность Р(А) принадлеж ности объекта с заданным набором значений признаков (входных переменных)
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 411 1< классу А больше, чем вероятность Р(Б) ero принадлежности к классу Б, то он будет классифицирован как объект класса А. Очевидно, что поскольку события взаимоисключающие, то Р(Б) == 1 Р(А). Может быть задан пороr вероятности, при превышении KOToporo вероятность, связанная с определенным классом, «пере веIIlиваеТ1> и объект относится к этому классу. В простейшем случае это может быть пороr равной вероятности, то есть 0,5. Как только вероятность Р(Б) CTaHO вится 0,51, а Р(А) 0,49, объект относится к классу Б, Иноrда пороr определяется более сложным образом, например исходя из надежности решения. Так, решение о принадлежности объекта к определенному классу может быть принято только тоrда, коrда вероятность данноrо события, оцененная с помощью лоrистической реrрессии, превысит 0,7. Бинарная классификация на основе лоrистической реrpессии широко применя ется при решении задач в медицине, технической диаrностике, социальной сфере и друrих предметных областях. 8.11. Интерпретация модели лоrистической реrрессии Очень важно не только математически описать модель, но и правильно интерпре тировать ее с точки зрения анализа, то есть извлечь всю необходимую информацию об исследуемых объектах и процессах. Напомним, что в простой линейной реrрессии коэффициент Ь 1 интерпретиру ется как изменение значения выходной переменной при изменении входной на 1. В лоrистической реrpессии ero интерпретация аналоrична, но применительно к ло rистической функции. То есть коэффициент Ь 1 может быть интерпретирован как изменение значения лоrистической функции при изменении входной переменной на 1. Формально это можно записать в виде: Ь 1 ==g(x+1) g(x). Рассмотрим интерпретацию коэффициента Ь 1 в простой лоrистической perpec сии для трех случаев: О коrда входная переменная принимает только два значения (дихотомическая входная переменная); О коrда входная переменная может принимать несколько значений (полихотоми ческая входная переменная); О для случая непрерывной входной переменной. Шансы и отношение шансов Введем в рассмотрение понятие «шанс», который определяется как вероятность Toro, что событие произошло (шанс успеха), разделенная на вероятность Toro,
412 Часть 1. Теория бизнес анализа что событие не произошло (шанс неуспеха). Шансы и вероятности СодеРЖат одну и ту же информацию, но по разному выражают ее. Если вероятность Toro что событие про изойдет, обозначить р, то шансы этоrо события будут равны р; (1 р), Например, если вероятность выздоровления составляет 0,3, то шансы вы- здороветь равны 0,3/(1 0,3) == 0,43. Если вероятность вытащить любую карту пиковой масти из колоды составляет 0,25, то шансы этоrо события равны 0,25/ (1 0,25) == 0,33. Ранее мы обнаружили, что вероятность наличия заболевания у 72-летнеrо паци- ента составляет 61 %, соответственно, вероятность отсутствия заболевания 39 %, Таким образом, если обозначить шанс как О (Odds), то 0== 0,61/0,39 == 1,56. Мы также нашли, что вероятность наличия или отсутствия заболевания у 50- летнеrо пациента составляет 26 и 74 % соответственно, Torдa 0== 0,26/0,74 == 0,35. Заметим, что коrда вероятность появления события выше, чем вероятность ero отсутствия, то О> 1, а коrда наоборот 0< 1. Коrда вероятности появления и отсутствия события равны, 0==1. В бинарной лоrистической реrpессии с дихотомической входной переменной вероятность Toro, что выходная переменная принимает значение у == 1 (событие произошло) при х == 1, может быть записано в виде: ( 1 ) еРО+Р' /( 1+еРО+Р' ) р == еР" +Р, 1 p(1) 1/(1+е Р '+Р') , Аналоrично вероятность Toro, что выходная переменная принимает значение у == 1 (событие произошло) для наблюдений, в которых х == О, будет: р(О) еР' /(1 + еР' ) , == еР 1 p(O) 1/(1+е Р ") . Введем в рассмотрение так называемое отношение шансов, или отношение несоzласuя (odds ratio OR), являющееся отношением шансов Toro, что событие произойдет, к шансам Toro, что событие не произойдет, В нашем случае это OT ношение шанса Toro, что выходная переменная примет значение 1 (событие про- изошло), к шансу Toro, что переменная примет значение О ( событие не произошло), То есть: p(1)/(1 p(I») еР'+Р' OR = =eP', р (0)/1 р (О) еР' (8.11) Данное отношение достаточно широко используется аналитиками, поскольку с ero помощью хорошо выражается взаимосвязь между OR и коэффициентом b j . Очевидно, что если отношение шансов равно 1, то есть шансы блаrоприятноrо и неблаrоприятноrо исхода равны, то модель оказывается бесполезной, поскольку коэффициент 131 == О И выход модели будут определяться только константой 130. Та- ким образом, чем сильнее отношение шансов отличается от 1, тем более значимой
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 413 будет модель. Если OR < 1, шансы блаrоприятноrо исхода меньше, чем шансы He блаrоприятноrо (событие не произойдет), а если больше 1, то наоборот. Значения отношения шансов, близкие к О, указывают на очень низкую вероятность блаrо приятноrо исхода, Чтобы определить точность полученной оценки отношения шансов, используют стандартную ошибку отношения шансов, которая для случая дихотомической BЫ ходной переменной вычисляется с помощью выражения 1 1 1 1 ECt(OR)==OR-Е,о(Ь)==ОR. + + + ' п\ п2 п 21 п 22 (8.12) [де Ест стандартная ошибка оценивания соответствующеrо коэффициента per рессии, а значения пl1, п12, п21 и п22 элементы четырехклеточной таблицы сопряженности признаков, отражающей все возможные состояния входной и выходной переменных, Например, для задачи, в которой исследуется зависимость наличия HeKoToporo за болевания от возраста пациента, таблица будет иметь следующий вид (табл. 8,17), Таблица 8.17. Четырехклеточная таблица сопряженности признаков Наличие заболевания, у Возраст, х х< 50 (О) X 50 (1) Да (О) nll == 21 n12 == 22 Нет (1) n21 == 6 n22 == 51 1 1 1 1 Тоrда Е, ( OR ) ==OR. + + + == О 529.0R. ( т 21 22 6 51 ' rраницы доверительноrо интервала отношения шансов будут вычисляться по формулам: ехр( Ь О :J:: z. Ест (Ь О )); ехр( Ь :J:: Z' ЕС] (Ь )), [де z критическое значение коэффициента Стьюдента, связанное с уровнем дo стоверности (1 а) . 100 % (для а == 0,05 z:::::: 1,96); Ест(Ь о ), Е ст (Ь 1 ) стандартные ошибки оценивания коэффициента реrрессии на основе наблюдаемых данных. Если данный интервал не содержит е О == 1, то OT ношение шансов с достоверностью 95 % является статистически значимым, Ошибка Ест ( Ь [) для непрерывной переменной определяется как квадратный Корень дисперсии оценки и вычисляется в процесс е оценки максимальноrо прав доподобия, Ручные вычисления трудоемки и rpомоздки, поэтому значения ошибки берут из соотвествующей компьютерной проrpаммы, Часто отношение шансов используется для определения понятия от1l0ситель 1l0Ю риска: v р(l) относительны и риск == р( о) .
414 Часть 1. Теория бизнес анализа При низкой частоте событий значение отношения шансов приблизительно равно относительному риску. Интерпретация модели для дихотомической переменной Рассмотрим еще один пример, В сфере телекоммуникаций и предоставления Услуr связи существует понятие «текучести» абонентской базы, Текучесть показывает, насколько часто клиенты отказываются от услуr данной компании и переходят к друтим поставщикам услут связи, Очевидно, что высокая текучесть проблема для компании, Поэтому представляют интерес исследования, цель которых заКЛючается в выявлении причин ухода клиентов и в оценке вероятности ухода клиента с задан ными показателями, На основе результатов таких исследований можно разработать методы работы с клиентами, позволяющие повысить их лояльность компании. Фраrмент множества данных, собранных для TaKoro исследования, представлен в табл, 8.18 (данные взяты из источника Churn data set, TJCI Repository of Machine Learning Databases, http://archive.ics.uci.edu/ml; доступны в приложении на CD, файл churn. xls). Таблица 8.18. Фрarмент набора данных «Текучесть абонентской базы!> I ID ID >с о о :i :.= :.= ! cu ra :z: o :z: :z: >с :z: >с :i c::':S: o о о cu '7 :S: :S: :i 5 :z: '7 о :S: ID ID :S: о :Z: ::Е :Z: о L. :Z: :Z: :Z: 111 :Z: :Z: 111 :Z: с о cu :: i :Z: :Z: , i I:S: 2 о ra :S: о о :: :S: о &.ID а. а: ID 3' ID ::Е ID ID ID :S: > ra ra D о >с о >с ::Е о ::Е ID е&. ID :Z: :Z: :Z: ID :i :S: >с cu u >:S: 8 '7 8 С:: :Z: '7&. '7 о >0 о> о 3' ! С:: :Z: '7 с:: :i ё о :S: о ID :S: ::Е оа. :S: cu о :Z: :S: :.= 5 ! ",а. 5 с:: >с с cu с:: cu с cu с:: '7 С '7 5 6 8 cu о ! u :Z: a u '7 Ж U о cu 111 :S: cu о :I: .... s si S:z: :1:& ::E OID Нет Да 25 265.10 110 197,4 99 244,7 91 10,0 3 1 Нет Нет Да 26 161,60 123 195,5 103 254,4 103 13,7 3 1 Нет Нет Нет О 243,40 114 121,2 110 162,6 104 12,2 5 О Нет Да Нет О 299,40 71 61,9 88 196,9 89 6,6 7 2 Нет Да Нет О 166,70 113 148,3 122 186,9 121 10,1 3 3 Нет Да Нет О 223,40 98 220,6 101 203,9 118 6,3 6 О Нет Нет Да 24 218,20 88 348,5 108 212,6 118 7,5 7 3 Нет Да Нет О 157,00 79 103,1 94 211,8 96 7,1 6 О Нет Нет Нет О 184,50 97 351,6 80 215,8 90 8,7 4 1 Нет Да Да 37 258,60 84 222,0 111 326,4 97 11,2 5 О Нет Нет Нет О 129,10 137 228,5 83 208,8 111 12,7 6 4 Да Нет Нет О 187,70 127 163,4 148 196,0 94 9,1 5 О Нет Нет Нет О 128,80 96 104,9 71 141,1 128 11,2 2 1 Нет Нет Нет О 156,60 88 247,6 75 192,3 115 12,3 5 3 Нет ... ... ... ... ..' ... ... ... ... ... ... ... ...
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 415 Для описания признаков клиента, которые предположительно влияют на вероятность ero ухода в друrую компанию, используются следующие пере м:ен ные : CI .международные звон/Ш использует ли клиент международный тариф; CI zoлосовая почта использует ли клиент службу отправки rолосовых сообще ний; CI количество юлосовьLX сообщений число отправленных rолосовых сообще ний; CI использовано минут днем количество минут дневных разrоворов, использо ванных клиентом; CI количество звою.ов днем количество дневных звонков, сделанных клиен том; CI использовано вечерних минут количество минут вечерних разrоворов, исполь зованных клиентом; О количество звонков вечером количество вечерних звонков, сделанных кли ентом; о использовано ночнъLX минут количество минут ночных разrоворов, исполь зованных клиентом; О количество ночнъlX звою.ов количество ночных звонков, сделанных клиен том; О минут междуюродних разюворов количество минут междуrородних разrово ров, использованных клиентом; О число международных разюворов число международных разrоворов, сделан ных клиентом; О число обращений в сервисную службу число обращений клиента в абонентскуЮ сервисную службу. Выходная переменная уход показывает, ушел ли клиент в друryю компанию. Обозначим данную переменную как с. Предположим, нужно оценить, как влияет использование или неиспользование клиентом службы rолосовых сообщений (обозначим эту переменную VoiceMail) На вероятность ero ухода к друrому оператору связи. В табл. 8.19 указано, какое КОЛичество клиентов, использующих и не использующих rолосовую почту, ушло и осталось, Таблица 8.19. Сводная таблица ухода клиентов в эависимости от VoiceMail Vo;ceMa;I = Нет, Vo;ceMa;I = Да, Bcero х=о х=l С == Нет, у == о 2008 842 2850 С == Да, у == 1 403 80 483 Bcero 2411 922 3333
416 Часть 1. Теория бизнес анализа Из таблицы видно, что из 2411 клиентов, не использующих rолосовую почту 2008 клиентов остались, а 403 ушли в друrую компанию. Из 922 клиентов, ис пользующих rолосовую почту, 80 клиентов ушли, а 842 остались, Оценим ВЛИЯНИе использования rолосовой почты на вероятность ухода клиента, ЗАМЕЧАНИЕ При использовании лоrистической реrрессии сначала необходимо определить, какое собы- тие и состояние выходной переменной связано с положительным исходом, а какое с ОТри- цательным. Например, если целью медицинскоrо обследования является про верка наличия заболевания, то положительным исходом будет обнаружение болезни, а отрицательным ее отсутствие. Напротив, если обследование пациента про изводится после лечения, то целью является подтвердить результаты лечения. Torдa положительным исходом будет ОТСУТСТВИе заболевания, а отрицательным ero наличие. В каждом случае положительный и ОТРИца тельный исход определяется лоrикой задачи. Для положительноrо исхода вероятность будет р(х). а для отрицательноrо 1 р(х). Что касается состояния бинарной выходной перемен- ной, то 1 обычно связывают с положительным исходом, а О с отрицательным. Функция правдоподобия задается следующим образом: l(pl х)==[р(о)]'ОЗ +[(1 p(0))]200H .[р(1)]НО '[(1 p(1))]H'2 На основе данных, приведенных в табл. 8.19, вычислим шансы и отношения шансов. При этом, если клиент ушел, исход считается положительным, а если остался отрицательным. О Шанс ухода клиента, использующеrо rолосовую почту: O==p(1)/(1 p(1»== == 80/842 == 0,095. о Шанс ухода клиенrа, не использующеro rолосовую почту: 0== 403/2008 == 0,201. Тоrда отношение шансов будет: OR== P(l)/(1 p(l)) == 80/842 o 473 р( 0)/(1 р( о)) 403/2008 ' . Значения коэффициентов реrpeссии для модели с одной независимой переменной VoiceMail будут Ь О == 1,606 и Ь 1 == 0,748. Тоrда OR == ехр(Ь 1 ) == ехр( O,748) == 0,47, что совпадает с ранее вычисленным значением. Вероятность ухода клиента, исполь зующеrо (х == 1) или не использующеrо (х == О) rолосовую почту, будет равна: А exp(g(x)) р(х)== (А ) ' 1+ехр g(x) а соответствующее лоrит преобразование g( х) == 1, 606 0,748. х. Тоrда для клиентов, использующих rолосовую почту, вероятность ухода со- ставит: А. А ( ) exp( 2,354) g(x)== 1,606 0,748.1== 2,354;P х == 1+exp( 2,354) 0,087.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 417 Иными словами, вероятность Toro, что клиент, использующий rолосовую почту, откажется от услуr компании, составляет Bcero 8,7 %, Это меньше, чем общая доля j(ЛиентоВ, которые отказались от услуr компании, в исходном множестве данных, составившая 14,5 %. Следовательно, тот факт, что клиент использует rолосовую почту, снижает вероятность ero ухода. Вероятность ухода также может быть вычислена непосредственно с помощью табл.8.19: Р( с I VoiceMai/) == 80/922 == 0,087. Для клиентов, не использующих rолосовые сообщения, вероятность ухода оценивается как л Л ( ) exp( 1,606) g(x)== 1,606 0,748,0== 1,606.p х == 1 ( .06) O,167. , +ехр 1,6 Это HeMHoro выше 14,5 %. Следовательно, если клиент не использует rолосовую почту, вероятность ero ухода несколько увеличивается, Вероятность ухода также может быть вычислена непосредственно с помощью табл. 8,19: Р(С I VoiceMail) == 403/2411 == 0,167. Интерпретация модели для полихотомической входной переменной Введем в рассмотрение переменную, которая указывает на количество обращений клиентов в абонентскую сервисную службу. Число обращений за поддержкой в сервисную службу зависит от числа проблем. А чем больше проблем, тем выше вероятность Toro, что клиент откажется от услуr компании. Чтобы использовать данную переменную, определим, какое число обращений в сервисную службу (обозначим эту переменную через CSC) можно рассматривать как низкое, среднее и большое, Для этоrо введем фиктивные переменные (табл. 8.20). Таблица 8.20. Квантование переменной CSC CSC 1 CSCz Ниэкое (О или 1 вызов), CSC == Ниэкое О О Среднее (2 или 3 вызова), CSC == Среднее 1 О Высокое ( 4 выэовов), csc == Высокое О 1 Таким образом, мы квантовали переменную, указывающую на количество обращений клиентов в сервисную службу. При этом использовалась новая пере менная CSC, которая порождает три фиктивные переменные. Выберем в качестве опорной катеrории CSC == Низкое.
418 Часть 1. Теория БИЗНес анализа В табл. 8,21 представлена зависимость значения выходной переменной от Пере- менной CSc. Таблица 8.21. Сводная таблица для переменной CSC ас = Низкое csc = Среднее csc = Высокое Bcero С == Нет, у == о 1664 1057 129 2850 С == Да, у == 1 214 131 138 483 Bcero 1878 1188 267 3333 Вычислим отношения шансов. ДЛЯ CSC == Среднее: OR 138,1664 o 964. 214.1057 ' Для csc == Высокое: 131.1664 OR== 214,129 7,90. Коэффициенты уравнения лоrистической реrpессии будут равны Ь О == 2,051, Ь ! == 0,037 и Ь 2 == 2,118. Вероятность ухода клиента: А exp(g(x)) р(х) == А 1+exp(g(x))' с лоrит преобразованием g(x) == 2,051 0,037 ,CSC 1 + 2,11S,CSC 2 , Оценим вероятность ухода для клиентов с низким числом обращений в cep висный центр: А А ) ехр( 2,051) g(x) == 2,051 0,0369891. О + 2,11844.0 == 2,051; р( х == 1 + ехр( 2,051) == 0,114, Таким образом, вероятность Toro, что клиент с низким числом обращений в сервисный центр откажется от услуr компании, составляет 11,4 %, Это меньше, чем доля таких клиентов по всему исходному набору данных, которая составляет 14,5 %, Следовательно, клиенты, которые редко обращаются в сервисный центр, менее склонны к уходу из компании. Данная вероятность также может быть рассчитана непосредственно с помощью табл, 8.21: Р(С I CSC == Низкое) == 214/1878 == 0,114, Для клиентов со средним числом обращений: , А exp( 2,088) g(x) == 2, 051 0,037.1 + 2, 118, 0== 2,088; р(х) == 1 2 088 0,11 О, + ехр( , ) Оцененное значение показывает, что вероятность ухода клиентов, число обра- щений которых в сервисный центр мы определили как среднее, примерно та же, что и для клиентов, редко обращающихся в сервисный центр.
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 419 Наконец, определим вероятность ухода клиентов, для которых зафиксировано большое число обращений в сервисный центр: , л ехр( O,003) g(x) == 2,051 0,037.1+2,118,1 == 0,003; р(х) == 1 +ехр( О,ООЗ) == 0,500. Таким образом, вероятность ухода клиентов с большим числом обращений в сервиснЫЙ центр составляет около 52 %, а это более чем в три раза превышает вероятность ухода по выборке в целом, Очевидно, что компании необходимо Bыдe лять клиентов, которые 4 и более раза обращались в сервисный центр, и про водить с ними определенную работу. Чтобы определить значимость переменной CSC == Среднее, выполним тест Вальда. Вычислим стандартную ошибку оценивания для данноrо коэффициента, Расчеты выполняются по той же схеме, что и для случая дихотомической входной переменной, но относительно опорной переменной. Это можно сделать, взяв дaH ные непосредственно из табл. 8.21: 1 1 1 1 Err(b(CSC == Среднее))== 1664 + 1057 + 214 +т == 0,118; Zw == == 0,037 0,З14. Ее, (b l ) 0,118 В данном случае р значение p(lzl::::: 0,314) == 0,753 указывает на низкую зна чимость переменной. Поэтому в плане предсказания ухода клиента перемен ная CSC == Среднее HeHaMHoro полезнее, чем CSC Низкое, В то же время дЛЯ CSC == Высокое имеем, что Ь 1 == 2,118, а EcT(b l ) == 0,1424, поэтому: Zw == == 2,118 ==14,87, Ест (Ь 1 ) 0,1424 В этом случае р значение p(/zl ::::: 14,87) О, Очевидно, что переменная CSC == Bы СОКое HaMHoro полезнее с точки зрения предсказания, чем переменная CSC == Низ Кое, Доверительный интервал для отношения шансов между CSC == Высокое и CSC == Низкое вычислится следующим образом: С/ exp[2,l18:t 1,96. 0,1424] (е 1 . вз , е 2 ,40) (6,23; 11,0). Интервал не содержит значение е О == 1, поэтому отношение является статисти чески значимым. Однако если рассмотреть доверительный интервал между CSC == Срсднее и CSC == Низкое, получим: С/ == ехр[ О,о П ::1: 1,96. 0,118] == (e O,20H ,еО,19,) == (0,77; 1,21). Интервал содержит единицу, следовательно, отклонение отношения шансов от единицы является статистически незначимым на уровне а == 5 %,
420 Часть 1. Теория бизнес анализа Интерпретация лоrистической модели для непрерывной переменной В рассмотренном в самом начале примере с предсказанием вероятности налИЧИя заболевания для пациентов различных возрастов используется непрерывная BXoд ная переменная Возраст, В наборе данных по текучести абонентской базы таКЖе присутствуют непрерывные переменные. Предположим, что нас интересует оцеНКа вероятности ухода клиентов на основе информации о том, сколько времени клиент разrоваривал в дневные часы, Обозначим эту переменную DayMin, Визуально про анализировав статистические характеристики, рассчитанные для поля DayMin (табл, 8.22), можно заметить, что клиенты, отказавшиеся от услуr компании, в среднем использовали в дневное время несколько большее количество минут. Это позволяет предположить, что данная переменная может использоваться в качестве входной переменной реrрессионной модели для оценки вероятности ухода клиента, Таблица 8.22. Статистические характеристики для пере мен ной DayMin УХОД Число, N!! Среднее Ст. откп. Минимум Максимум Медиана Нет 2850 175,18 50,18 0,00 315,60 177,20 Да 483 206,91 69,0 0,00 350,80 217,6 Здесь можно по казать, что Ь О == 3,929 и Ь 1 == 0,011. Вероятность ухода р(х) для клиента с заданным числом минут, использованным в дневное время, будет иметь лоrит преобразование g(x) == 3,929 +0,011. DayMiп. Так, вероятность ухода клиента, который использовал 100 минут разrовора в дневное время, можно оценить следующим образом: А <, А ехр( 2,802) g(x) == 3,929 + 0,011,100 == 2,802; р(х) == 2802) == 0,057, 1 + ехр( , Таким образом, оцененная вероятность Toro, что клиент, использовавший 100 минут в дневное время, уйдет, составляет менее 6 %, Это меньше, чем общая доля ушедших в исходной выборке (14,5 %). Значит, малое число минут, исполь зованных днем, каким то образом снижает вероятность ухода клиента, Это позволит нам интерпретировать коэффициент Ь! как изменение лоюрифма отношения шансов при увеличении на единицу значения входной переменной. В дaH нам примере Ь I == О, О 11. Это означает, что для каждой дополнительной минуты, которую использует клиент, лоrарифм отношения шансов увеличивается на 0,011. Значение для отношения шансов, найденное ВЫШе, OR == е О , о !! == 1,01 может быть интерпретировано как отношение шансов для клиента с х + 1 минутами OT носительно клиента с х минутами. Например, для клиента с 201 минутой разrовора уход в 1,01 раза более вероятен, чем для клиента с 200 минутами. Но поединичное увеличение значения входной переменной не всеrда соответствует особенностям решаемой задачи. В при мере мы видим, что увеличение времени, используемоrо клиентом, на одну минуту, не окажет существенноrо влияния на шанс ero ухода.
rлава 8. Data Mining: классификация и реrрессия. Статистические r-1етоды 421 I10ЭТОМУ вместо единицы обычно используют константу с. При этом отношение шансов станет OR 0= eel)l, Таким образом, можно обобщить интерпретацию коэффи Lиентов лоrистической реrpессии с помощью следующеrо правила, Для некоторой константы с произведение с . Ь ! представляет собой оцеНКУ изменения лоzaрифма отношения шансов при увеличении входной переменной на с единиц. Пусть с 0= 60, то есть нас интересует, как изменится лоrарифм отношения шансов, если клиент увеличит время использования на 60 дневных минут, Это ОLенивается как с . Ь ! 0= 60 ' 0,011 == 0,66. Рассмотрим клиента А, у KOToporo время использования на 60 дневных минут больше, чем у клиента Б. Torдa мы можем oцe нить отношение шансов ухода клиента А по сравнению с клиентом Б как е О ,()7 1,95. Таким образом, увеличение времени использования в дневное время на 60 минут почти удваивает вероятность Toro, что клиент уйдет. 8.12. Множественная лоrистическая реrрессия До сих пор мы рассматривали лоrистическую реrpессию только для случая с oд ной входной переменной. По аналоrии с множественной линейной рсrрессией существует множественная лоrистическая реrpессия, в которой значение бинар ной выходной переменной предсказывается на основе более чем одной входной переменной. Вернемся к набору данных Текучесть абонентской базы!> и проверим, cy ществует ли зависимость между выходной переменной и следующим набором входных: о использование международных звонков (/ntCall); О использование rолосовой почты (VoiceMai/); О обращения в сервисную службу (CSC) бинарная переменная, указывающая, является ли количество обращений в сервисный центр большим (истинна при CSC'? 4); О количество минут, использованных в вечернее время (EveMin); О количество минут, использованных в дневное время (DayMin); О количество минут, использованных в ночное время (NightMin); О количество минут международных разrоворов (/ntMin). Параметры модели множественной лоrистической реrрессии представлены в табл. 8.23. Проинтерпретируем полученные результаты, Отметим, что отрицательные KO эффициенты реrpессии дают отношения шансов меньше 1. Для дихотомической переменной это означает, что шансы положительноrо исхода (то есть ухода клиента) меньше, чем отрицательноrо. Данную ситуацию мы можем наблюдать для перемен ной VoiceMail, которая указывает на использование или неиспользование клиентом сервиса rолосовой почты, Ранее мы увидели, что клиенты, использующие rолосовую
422 Часть 1. Теория бизнес анализа Таблица 8.23. Параметры модели множественной реrрессии Переменная р, Е.:.. Zw р..эначение OR 95 % CI Константа 8,07 4 IntCall == Да 2,036 0,1468 13,86 0,000 7,66 5,74 10,21 VoiceMail == Да 1,044 0,1501 6,59 0,000 0,35 0,26 0,47 СSС 4==Да 2,677 0,1592 16,82 0,000 14,54 10,64 19,86 DayMin 0,014 0,0011 12,04 0,000 1,01 1,01 1,02 EveMin 0,007 0,0012 6,24 0,000 1,01 1,01 1,01 NightMin 0,004 0,0011 3,68 0,000 1,00 1,oo 1,01 IntMin 0,085 0,0210 4,06 0,000 1,09 1,os 1,13 почту, почти в 2 раза меньше склонны к уходу по сравнению с не ИСПОЛЬЗУЮЩими ее, Аналоrичную ситуацию показывает и множественная модель, Отношение шан сов 0,35 демонстрирует, что в данном случае шанс ухода примерно в 3 раза меньше. Значительно выделяется среди остальных отношение шансов для дихотомической переменной CSC =' Да, которая указывает на факт большоrо числа обращений (боль ше 4) в сервисную службу компании. Отношение шансов 14,54 показывает, что если клиент обращался в сервисную службу больше 4 раз, то шанс ero ухода в 14,54 раза выше, чем клиента, имеющеrо малое число обращений, Отношение шансов, значительно отличающееся от нуля OR =' 7,66, связано Taк же с бинарной переменной IпtCall, которая отражает факт использования клиентом международноrо тарифа. Оно позволяет сделать вывод, что клиенты, использу ющие международный тариф, уходят из компании примерно в 7,5 раза чаще, чем клиенты, не использующие ero. Теперь рассмотрим непрерывные переменные DayMiп, IпtCall, EveMiп, NightMiп и IпtMiп, которые показывают количество минут, использованное клиентом в раз личное время суток. Общим свойством этих переменных является то, что связанные с ними коэффициенты модели близки к нулю, а их отношения шансов, поскольку OR, =' exp(Pi)' к единице. Поскольку для непрерывной выходной переменной коэффициент Ь интерпре тируется как изменение лorарифма отношения шансов при увеличении на единицу значения входной переменной для каждой дополнительной минуты, которую ис пользует клиент, лorарифм отношения шансов, например, для переменной DayMiп увеличивается на 0,01347. Если взять 60 минут, то получим отношение шансоВ OR =' ехр(60 . 0,01347) =' 2,24. Значит, каждый дополнительный час разrоворов повышает вероятность ухода в 2,24 раза. Лоrит преобразование для модели множественной лоrистической реrрессии будет иметь вид: g(x) =' 8,074 +0,014. DayMin + 0,007. EveMin +0,004, NightMin + +0,085, IntMin + 2,036. (IntCall =' Да) 1,044, (VoiceMail =' Да) + 2,677, (CSC 4 =' Да).
rлава 8. Data Mining: классификация и реrрессия. СТатистические методы 423 С помощью преобразования р(х) можно оценить вероятность ухода опреде ленноrо клиента для заданных значений входной переменной, Вычислим ее для следующих катеrорий клиентов, 1. Клиенты с малым количеством использованноrо времени и небольшим числом обращений в абонентскую сервисную службу, не использующие rолосовую почту. Типичный клиент данной катеrории использует 100 мин, дневных, вечерних и ночных разrоворов и не ведет международных разrоворов. Подставив значе ния в лоrит преобразование, получим g(x) == 5,574. В итоrе вероятность Toro, что клиент данной катеrории сменит оператора, co ставит: " exp( 5,574) р ( х ) == о 004 1+exp( 5,574) , , что менее 1 %. 2. миенты с умеренным количеством использованноrо времени и небольшим чис лом обращений в абонентскую службу, не использующие rолосовую почту. Такой клиент может использовать 1ВО мин. в дневное время, 200 мин. в Be чернее и ночное, а также 10 мин, международных разrоворов. В этом случае g(x) == O,468, Соответствующая вероятность ухода р(х) == 0,385. з. Клиенты с большим количеством использованноrо времени, имеющие меж дународные звонки, но не использующие rолосовую почту, с большим числом обращений в абонентскую службу. Такой клиент может использовать 300 дневных, вечерних и ночных минут и 20 мин, международных разrоворов, Получим: g(x) == 5,84; р(х) == 0,997. Клиенты с этими параметрами имеют очень высокую склонность к уходу: вероят ность события составляет 99,7 %. Очевидно, что во мноrих случаях использование нескольких входных пере менных позволяет сделать модель более информативной и повысить точность оценивания. Однако в наборах данных, на основе которых строятся реrрессион ные модели, может содержаться большое количество переменных (до нескольких десятков). Поэтому при построении моделей множественной реrрессии аналитик неизбежно сталкивается с проблемой выбора наиболее значимых переменных, которые имеют самую сильную связь с выходной переменной. Для отбора пере менных в лоrистической реrрессии применяются те же пошаrовые процедуры, что и в линейной (см, раздел В.В). 8.13. Простой байесовский классификатор Байесовский подход представляет собой rpуппу алrоритмов классификации, OCHO ванных на принципе максимума апостериорной вероятности. Сначала определя
424 Часть 1. Теория БИзнес анализа ется апостериорная вероятность отношения объекта к каждому из классов, а заТем выбирается тот класс, для KOToporo она максимальна. Как и в лоrистической реrрессии, алrоритм предсказывает вероятность Toro, что объект или наБЛюдеНие относится к определенному классу. Этот подход к классификации является одним из старейших и до сих пор сохраняет прочные позиции в технолоrиях анализа данных. Кроме Toro, он Ле жит в основе мноrих удачных алrоритмов классификации. Рассмотрим один из них так называемый простой, или наивный, байесовский классификатор (naive Bayesian classifier). Это специальный случай байесовскоrо классификатора, в KO тором используется предположение о статистической независимости ПрИзнаков описывающих классифицируемые объекты. Такое предположение существенн упрощает задачу, поскольку вместо одной мноrомерной плотности вероятности по всем признакам достаточно оценить несколько одномерных (марrинальных) плотностей. К сожалению, на практике предположение о независимости Призна ков редко выполняется, является «наивным», что и дало название методу, Основные преимущества наивноrо байесовскоrо классификатора леrкость проrpаммной реализации и низкие вычислительные затраты при обучении и клас сификации. В тех редких случаях, коrда признаки действительно независимы (или близки к этому), он почти оптимален. [лавный ero недостаток относительно низкое качество классификации в большинстве реальных задач. Поэтому чаще Bcero ero используют либо как примитивный эталон для сравнения различных моделей, либо как блок для построения более сложных алrоритмов. Рассмотрим базовые принципы работы простоrо байесовскоrо классификатора. Формула Байеса Пусть имеется объект или наблюдение Х, класс KOToporo неизвестен, Пусть также имеется rипотеза Н, соrласно которой Х относится к некоторому классу С. Для за дачи классификации можно определить вероятность Р( Н I Х), то есть вероятность Toro, что rипотеза Н для Х справедлива. Р( Н I Х) называется условн.ой вероятностью Toro, что rипотеза Н верна при условии, что классифицируется объект Х, или aпo стериорной вероятностью. Предположим, что объектами классификации являются фрукты, которые описываются их цветом и размером, Определим объект Х как красный и круrлый и выдвинем rипотезу Н, что это яблоко. Тоrда условная вероятность Р(Н I Х) oтpa жает меру уверенности в том, что объект Х является яблоком при условии, что он красный и круrлый, Кроме условной (апостериорной) вероятности, рассмотрим так называемую априорную вероятность Р(Н). В нашем примере это вероятность Toro, что любой наблюдаемый объект является яблоком, безотносительно к тому, как он выrлядит. Таким образом, апостериорная вероятность основана на боль шей информации, чем априорная, не предполаrающая зависимость от свойств объекта Х. Аналоrично Р(Х I н) апостериорная вероятность Х при условии Н, или Bepo ятность Toro, что Х является красным и круrлым, если известно, что это яблоко,
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 425 Р(Х) априорная вероятность Х. В нашем примере это просто вероятность Toro, что объект является красным и круrлым. Вероятности Р(Х), Р(Н) и Р(Х I н) MorYT быть оценены на основе наблюдаемых данных. Для вычисления апостериорной вероятности Р(Н I Х) на основе Р(Х), Р(Н) J1 p(HI Х) используется формула Байеса: ( I ) P(XIH)P(H) Р Н Х Р(Х) (8.13) Алrоритм работы простоrо байесовскоrо классификатора содержит следующие шаrи. 1. Пусть исходное множество данных 5 содержит атрибуты At, А 2 ... AII' Тоrда каждый объект или наблюдение Х Е 5 будет представлено своим набором зна чений этих атрибутов Xt, Х2... Х'" rде Xi значение, которое принимает атрибут А; в данном наблюдении. 2. Предположим, что задано т классов С == {C 1 , С 2 .,. С т } и наблюдение Х, дЛЯ KO Toporo класс неизвестен. Классификатор должен определить, что Хотносится к классу, который имеет наибольшую апостериорную вероятность Р(Н I Х). Про стой байесовский классификатор относит наблюдение Х к классу C k (k == 1,., т) тоrда и только тоrда, коrда выполняется условие Р( C k I Х) > Р( C j I Х) для любых 1 "5:.j"5:.т,k:;r.j. По формуле Байеса: ( I ) P(XICk)P(Ck) Р C k Х () РХ (8.14) З. Поскольку вероятность Р(Х) дЛЯ всех классов одинакова, максимизировать требуется только числитель формулы (8,14), Если априорная вероятность класса Р( C k ) неизвестна, то можно предположить, что классы равновероятны, Р( C t ) == Р( С 2 ) == ... == Р( С т ), и, следовательно, мы должны выбрать максимальную веРоятностьР(хl C k ), Заметим, что априорные вероятности классов MOryT быть оценены как Р( C k ) == == 5k / 5, rде 5k число наблюдений обучающей выборки, которые относятся к классу C k , а 5 общее число обучающих примеров, 4. Если исходное множество данных содержит большое количество атрибутов, то определение Р(Х I C k ) может потребовать значительных вычислительных затрат. Чтобы их уменьшить, используется «наивное» предположение о независимости признаков. То есть для набора атрибутов Х == (XI' Х2... X II ) можно записать: Р( X!C k ) == p(xtIC k )' Р( xzIC k ), ...' p(x"IC k ), (8.15) Вероятности, стоящие в правой части формулы (8.15), MOryT быть определены из обучающеrо набора данных для следующих случаев.
426 Часть 1. Теория бизнес анализа . Атрибут А; является катеrориальным, Torдa Р(Х I C k ) == 5ik / 5k, rде 5ik ЧИСJI наблюдени класса С, в которых А; принимает значение Х;, а 5k общее ЧИСJI наблюдении, относящихся к классу C k . . Атрибут А; является непрерывным, тоrда предполаrается, что ero значения подчиняются закону распределения [аусса: [ 2 ] 1 (x т) Р(х; IC k )== exp 2 ' ,,2па 2а rде т и 0-2 математическое ожидание и дисперсия значений атрибута A j для наблюдений, относящихся к классу C k , При классификации неизвестноrо наблюдения объект Х будет относиться к классу, для которorо Р(Х I С,) . Р( С) принимает наибольшее значение. Пример работы простоrо байесовскоrо классифи катора Рассмотрим пример работы наивноrо байесовскоrо классификатора на основе уже знакомой задачи пред сказания текучести абонентской базы, только в качестве Ha бора данных возьмем упрощенный вариант Churn data set, содержащий 14 записей с квантованными входными полями (табл. 8,24). Таблица 8.24. Набор данных «Текучесть абонентской базы>.'> N2 Количество SМS активность Internet Международные Уход звонков активность звонки 1 < 100 Высокая Средняя Нет Да 2 < 100 Высокая Высокая Нет Да 3 100 150 Высокая Средняя Нет Нет 4 > 150 Средняя Средняя Нет Да 5 > 150 Низкая Средняя Да Нет 6 > 150 Низкая Высокая Да Нет 7 100 150 Низкая Высокая Да Да 8 < 100 Средняя Средняя Нет Нет 9 < 100 Низкая Средняя Да Да 10 > 150 Средняя Средняя Да Да 11 < 100 Средняя Высокая Да Да 12 100 150 Средняя Высокая Нет Да 13 100 150 Высокая Средняя Да Да 14 > 150 Средняя Высокая Нет Нет Обозначим как С 1 класс клиентов, для которых Уход == Да. К классу С 2 будем относить клиентов, которые сохраняют лояльность компании. Для них метка класса будет Нет. Пусть новый клиент, вероятность ухода которorо мы хотим оценить, обладает следующими параметрами:
rлава 8. Data Mining: классификация и реrрессия. Статистические методы 427 Х == (Количество звонков == < 100, SМS активность == == Сред1fЯ.Я, Iпtеrnеt активность == Сред1fЯ.Я, Международные звонки == Да). Соrласно простому алrоритму Байеса нужно максимизировать Р(Х I Ck)P( C k ) для k == 1,2 (поскольку классов Bcero два). Априорная вероятность появления каждоrо J(Jlacca Р( C k ) может быть вычислена с помощью обучающеrо множества из таблицы как отношение числа примеров k ro класса к общему числу примеров, Поскольку Bcero примеров 14, наблюдений с меткой класса Да 9, а с меткой Нет 5, то Р( C 1 ) == 9 / 14 == 0,643; Р( С 2 ) == 5 / 14 == 0,357. Для вычисления Р(Х I C k ), k == 1,2 определим следующие условные вероятности (табл.8.25). Таблица 8.25. Расчет условных вероятностей Р(Число звонков == < 100 I Уход == Да) == 4 / 9 == 0,444 Р(Число звонков == < 100 I Уход == Нет) == 1/5 == 0,200 Р(SМS активность == Сред1fЯ.Я I Уход == Да) == 4 /9 == 0,444 Р(SМS активность == Сред1fЯ.Я I Уход == Нет) == 2 / 5 == 0,400 Р(Iпtеrnеt активность == Сред1fЯ.Я I Уход ==Да) == 5 /9== 0,555 Р(Iпtеrnеt активность == Сред1fЯ.Я I Уход == Нет) == 3 /5 == 0,600 Р(Международные звонки == Да I Уход == Да) == 5 / 9 == 0,555 Р(Международные звонки == Да I Уход == Нет) == 2 / 5 == 0,400 Используя рассчитанные условные вероятности, получим (табл. 8.26). Таблица 8.26. Расчет условных вероятностей Р(Х I Уход == Да) == 0,444.0,444, 0,555 . 0,555 == 0,061 Р(ХI Уход == Нет) == 0,600.0,400' 0,200' 0,400 == 0,019 Р(Х I Уход == Да) . Р(Уход == Да) == 0,061 .0,643 == 0,039 Р(Х I Уход == Нет) . Р(Уход == Нет) == 0,019 . 0,357 == 0,007 Таким образом, для наблюдения Х произведение вероятностей для класса C j , то есть Р(Х I С,) . Р( C j ) == 0,039, а для класса С 2 Р(Х I С 2 ) . Р( С 2 ) == 0,007, Поэтому выбирается класс C j , для KOToporo оно больше. Можно нормализовать эти вероят ности, тоrда получим: Р'(Х I С,)Р( С 1 ) == 0,039 / (0,039 + 0,007) == 0,848 и Р'(Х I С 2 )Р (С 2 ) == 0,007 / (0,039 + 0,007) == 0,152, Следовательно, для наблюдения Х метка класса будет Да, а клиент, характери зуемый соответствующими признаками, должен рассматриваться как склонный к уходу. Хотя предположение о статистической независимости признаков на практике выполняется достаточно редко, в Data Mining существуют различные методы, которые позволяют отбирать наименее коррелированные из них. Использование таких методов позволяет повысить эффективность байесовских классификаторов до уровней, сравнимых с эффективностью нейронных сетей и деревьев решений.
;' Data Mining: классифи ка ция и реrрессия. Машинное обучение J tt I 9.1. Введение в деревья решений Деревья решений (decision trees) относятся к числу самых популярных и мощных инструментов Data Mining, позволяющих эффективно решать задачи классифи кации и реrрессии. В отличие от методов, использующих статистический подход, таких как классификатор Байеса, линейная и лоrистическая реrрессия, деревья решений основаны на машинном обучении и в большинстве случаев не требуют предположений о статистическом распределении значений признаков. В основе деревьев решений лежат решающие правила вида <!:если... то...», которые MorYT быть сформулированы на естественном языке. Поэтому деревья решений являются наиболее наrлядными и леrко интерпретируемыми моделями. Для удобства приведем базовые понятия теории деревьев решений в табл. 9.1. Таблица 9.1. Понятия, встречающиеся в теории деревьев решений Название Описание Объект Пример, шаблон, наблюдение, эапись Атрибут Признак, независимая переменная, свойство, входное поле Метка класса Зависимая переменная, целевая переменная, выходное поле Узел Внутренний узел дерева Лист Конечный узел дерева, узел решения Проверка Условие в узле
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 429 Атрибутами в теории деревьев решений называются признаки, описывающие J(JIассифицируемые объекты. В основе работы деревьев решений лежит процесс рекурсивноrо разбиения ис ходноrо множества наблюдений или объектов на подмножества, ассоциированные с J(JIассами. Разбиение производится с помощью решающих правил, в которых ocy rцествляется про верка значений атрибутов по заданному условию. Рекурсивными называются алrоритмы, которые работают в пошarовом режиме, при этом на каждом последующем шаrе используются результаты, полученные на предыдущем шаrе. Рассмотрим rлавную идею алrоритмов построения деревьев решений на приме ре, Пусть требуется предсказать возврат или невозврат кредита с помощью набора решающих правил на основе единственноrо атрибута Возраст 'КЛиента. Для этоro бу дем использовать множество наблюдений, в каждом из которых указывается возраст, а также факт возвратаjневозврата кредита, rрафически такое множество наблюде ний представлено на рис. 9.1. Условно примем, что объект в форме Kpyra указывает на дефолт, в форме прямоуrольника на возврат по кредиту, а внутри каждоrо объекта указан возраст. Необходимо разбить множество объектов на подмножества таким образом, чтобы в каждое из них попали объекты только одноrо класса. 1 o 0 o 11 2 o o o o 11 11 11 11 11 Рис. 9.1. Разделение на классы Выберем некоторое значение возрастноrо пороrа, например равное 50, и разобьем исходное множество на два подмножества в соответствии с условием Возраст> 50. В результате разбиения в одном подмножестве окажутся все записи, для которых значение атрибута Возраст больше 50, а во втором меньше 50. На рис. 9.1 данные подмножества обозначены номерами 1 и 2 соответственно. Леrко увидеть, что выбор возрастноrо пороrа 50 не позволил получить подмножества, содержащие только объекты одноrо класса, поэтому для решения задачи применяется разбиение полу ченных подмножеств. Поскольку для этоrо имеется только один атрибут Возрасm, мы будем использовать ero и в дальнейшем, но в условиях выберем друrой пороr, Например, для подмножества 1 применим пороr 60, а для подмножества 2 30, Результаты повторноrо разбиения представлены на рис. 9,2.
430 Часть 1. Теория бизнес анализа з G 0 4 0 11 5 0 11 11 0 11 11 0 0 б 11 Рис. 9.2. Продолжение деления на классы На рис. 9.2 можно увидеть, что задача решена: исходное множество удалось разбить на чистые подмножества, содержащие только наблюдения одноrо класса. Дерево, реализующее данную процедуру, представлено на рис. 9.3. Рис. 9.3. Сформированное дерево решений Сопоставление рис. 9.2 и 9,3 показывает, что подмножества 4 и 6 ассоциированы с классом добросовестных клиентов, а 3 и 5 с классом клиентов, не поrасивших Кредит. Применяя построенную модель к новым клиентам, мы можем предсказать риск, связанный с выдачей им кредита, на основе Toro, в какое из подмножеств модель поместит соответствующую запись. Конечно, приведенный пример тривиален, В реальности задача классификациИ по одному атрибуту встречается очень редко, поскольку для эффективноrо разде ления на классы требуется несколько атрибутов. Но даже этот пример позволяет увидеть причину привлекательности деревьев решений, Они не только класси фицируют объекты и наблюдения, но и объясняют, почему объект был отнесен К данному классу, Так, если с помощью дерева решений было предсказано, что
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 431 вероятность возврата кредита данным клиентам слишком мала и на этом OCHO вании в выдаче кредита было отказано, то можно не только принять решение, но J1 объяснить ero причину. В нашем случае это возраст клиента, Обладая высокой объясняющей способностью, деревья решений MOryT исполь зоваться и как эффективные классификаторы, и как инструмент исследования предметной области. Таким образом, мы получили систему правил вида «если"" ТО",.'), которые позво ляют принять решение относительно принадлежности объекта к определенному классу. Решающие правила образуют иерархическую древовидную структуру, дающую возможность выполнять классификацию объектов и наблюдений. Эта структура и называется деревом решений. ОПРЕДЕЛЕНИЕ Деревья решений иерархические древовидные структуры, состоящие из решающих правил вида «если... то...» И позволяющие выполнять классификацию объектов. В дереве каждому объекту соответствует единственный узел, дающий решение. Деревья решений стали одним из наиболее популярных методов Data Mining, используемых при решении задач классификации. Это обусловлено следующими факторами, О Деревья решений это модели, основанные на обучении. Процесс обучения сравнительно прост в настройке и управлении. О Процесс обучения деревьев решений быстр и эффективен, О Деревья решений универсальны способны решать задачи как классификации, так и реrpессии. О Деревья решений обладают высокой объясняющей способностью и интерпре тируемостью, ЗАМЕЧАНИЕ Термин «дерево решений» используется не только в Data Мiпiпg, но и в смежных областях анализа и обработки данных, искусственном интеллекте. Например, в задачах алrоритми- зации дерево решений это способ представления процесса принятия решения, имеющий вид ответов на серию вопросов. образующих древовидную структуру, каждая конечная вер- шина которой представляет элементарное решение. В менеджменте ПОДДЕ'ревом решений понимают rрафическое изображение альтернативных действий и их последствий. Однако между всеми этими толкованиями термина MHOro общеrо. Для эффективноrо построения дерева решений должны выполняться следу ющие условия, О Описание атрибутов, Анализируемые данные должны быть пред ставлены в виде структурированноrо набора, в котором вся информация об объекте или наблюдении должна быть выражена совокупностью атрибутов. о Предварительное определение классов. Катеrории, к которым относятся Ha блюдения (метки классов), должны быть заданы предварительно, то есть имеет место обучение с учителем.
432 Часть 1. Теория бизнес анализа D Различимость 1UlaCCOB. Должна обеспечиваться принципиальная возможность установления факта принадлежности или непринадлежности при мера к опреде ленному классу. При этом количество примеров должно быть HaMHoro больше, чем количество классов. D Пол1tота данных. Обучающее множество должно содержать достаточно большое количество различных примеров. Необходимая численность зависит от таких факторов, как количество признаков и классов, сложность классификационной модели и т. д, Структура дерева решений Как можно увидеть на рис, 9,3, структура деревьев решений проста и в целом аналоrична древовидным иерархическим структурам, используемым в друrих об ластях Data Mining, например деревьям ассоциативных правил, В состав деревьев решений входят два вида объектов узлы (node) и листья (leaf), В узлах содержат ся правила, с помощью которых про изводится проверка атрибутов и множество объектов в данном узле разбивается на подмножества. Листья это конечные узлы дерева, в которых содержатся подмножества, ассоциированные с классами. Основным отличием листа от узла является то, что в листе не производится про верка, разбивающая ассоциированное с ним подмножество и, соответственно, нет ветвления, В принципе, листом может быть объявлен любой узел, если принято решение, что множество в узле достаточно однородно в плане классовой при надлежности объектов и дальнейшее разбиение не имеет смысла, поскольку не приведет к значимому увеличению точности классификации, а только усложнит дерево. В дереве, представленном на рис. 9.3, объекты с номерами 1 и 2 узлы, а с HO мерами 3, 4, 5 и 6 листья. Обратим внимание на то, что в дереве имеется по два листа, ассоциированных с одним классом, В этом нет никакоrо противоречия, просто для классификации объектов в них использовались различные способы про верки. Для каждоrо листа в дереве имеется уникальный путь, Начальный узел дерева является входным: через Hero проходят все объекты, предъявляемые дереву. Обычно входной узел называют корневым узлом (root node). Следователь но, дерево растет сверху вниз. Узлы и листья, подчиненные узлу более высокоrо иерархическоrо уровня, называются потомками, или дочер1tими узлами, а тот узел по отношению к ним предком, или родительским узлом, Обобщенная структура дерева про иллюстрирована на рис. 9.4. Как и любая модель Data Mining, дерево решений строится на основе обу чающеrо множества, Атрибуты MOryT быть как числовыми (непрерывными), так и катеrориальными (дискретными). Одно из полей обязательно должно содержать независимую переменную метку класса. Иными словами, для каждой записи в обучающем множестве должна быть задана метка класса, определяющая классо вую принадлежность связанноro с ней объекта. В процессе построения дерева решений формируются решающие правила и для каЖДоrо из них создается узел. Для каждоrо узла нужно выбрать атрибут, по KOTO
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 4ЭЭ Корневой узел Родительский уэел (предок) Рис. 9.4. Уэлы и листья в дереве решений рому будет производиться проверка правила. Ero принято называть атрибутом ветвления, или атрибутом разбиения (splitting attribute), и от Toro, насколько удачно он выбран, зависит классифицирующая сила правила. Метод, в соответствии с которым осуществляется выбор атрибута ветвления на каждом шаrе, на..'iывается алlOpumмом построения дерева решений. Разработано достаточно MHoro таких ал rоритмов. Сформулируем общую цель, которая должна преследоваться при выборе атрибута ветвления: очередной выбранный атрибут должен обеспечивать наилучшее разбиение в узле. Наилучшим разбиением считается то, которое позволяет класси фицировать наибольшее число примеров и создавать максимально чистые ПОДМНо жества, в которых примесь объектов друrоrо класса (то есть не ассоциированноrо с данным узлом или листом) минимальна. Хотя между aлrоритмами построения деревьев решений имеются существенные различия, все они основаны на одной и той же процедуре рекурсивном разбиении данных на все более малые труппы таким образом, чтобы каждое новое поколение узлов содержало больше примеров одноrо класса, чем родительский. Выбор атрибута разбиения в узле Процесс создания дерева начинается с подrотовки обучающеrо множества. В итоrе будет построено дерево, которое назначает класс (или вероятность принадлеж ности к классу) для выходноrо поля новых записей на основе значений входных переменных. Мерой оценки возможноrо разбиения является так называемая чистота (purity), под которой понимается отсутствие прuмесей. Существует несколько способов определения чистоты, но все они имеют один и тот же смысл. Низкая чистота означает, что в подмножестве представлены объекты, относящиеся к раз личным классам. Высокая чистота свидетельствует о том, что члены отдельноrо класса доминируют. Наилучшим разбиением можно назвать то, которое дает наи большее увеличение чистоты дочерних узлов относительно родительскоrо. Кроме
434 Часть 1. Теория бизнес анализа Toro, хорошее разбиение должно создавать узлы примерно одинаковоrо размера или как минимум не создавать узлы, содержащие Bcero несколько записей, Pac смотрим рис. 9.5, . "4f: Исходное множество . . . . . .. Плохое раэбиение . . .. .. ... t . . . Плохое раэбиение tA Хорошее раэбиение Рис. 9.5. Различные варианты разбиений В исходном множестве представлена смесь объектов различной формы (Tpey rольники и круrи) в пропорции 1: 1 (10 KpyroB и 10 треуrольников). Разбиение слева признано плохим, потому что оно не увеличивает чистоту результирующих узлов: пропорция объектов обоих классов в них сохраняется и также составляет 1 : 1 (5 KpyrOB И 5 треyrольников). Во втором случае плохоrо разбиения (справа) с помо щью условия В родительском узле удалось добиться доминирования класса в одном из дочерних узлов (круrи), но к классу было отнесено только два объекта, Такое разбиение неудачно по двум причинам. Во первых, правило, с помощью KOTOporO было получено это разбиение, имеет очень низкую значимость, то есть относится к малому числу примеров. BO BTOpЫX, чистота друrоrо узла осталась низкой: COOT ношение объектов в нем 0,8 : 1 (8 KpyroB и 1 О треуrольников). И хотя в целом чи стота относительно родительскоrо узла улучшилась (масс треуrольников стал слабо доминирующим), это не позволяет rоворить о положительном результате, Наконец, случай хорошеrо разбиения обеспечивает абсолютную чистоту обоих дочерних узлов, поскольку в каждый из них распределены объекты только ОДНоrо класса. Алrоритмы построения деревьев решений являются <жад1tыu>>.. Они раз виваются путем рассмотрения каждоrо входноrо атрибута по очереди и оцени вают увеличение чистоты, которое обеспечило разбиение с помощью данноrо атрибута.
3АМЕЧАНИЕ rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 435 «Жадными» называются алrоритмы, которые на каждом шаrе делают локально оптималь- ный выбор, допуская, что итоrовое решение также окажется оптимальным. Для большо- ro числа алrоритмических задач «жадные» алrоритмы действительно дают оптимальное решение. Однако вопрос оприменимости «жадноrо» алrоритма в каждом классе задач решается отдельно. При построении деревьев решений «жадность» алrоритма заключается в следующем: для каждоrо узла ищется оптимальный атрибут разбиения и предполаrается, что дерево в целом также будет оптимальным. После Toro как все потенциапьные атрибуты будут проверены, тот из них, KOTO рый обеспечит наилучшее разбиение, будет использован для начальноrо разбиения в корневом узле, в результате чеrо будут созданы дочерние узлы. Если дальнейшее разбиение невозможно (например, из за Toro, что в узле осталось Bcero два приме ра) или ни одно возможное разбиение не может увеличить чистоту дочерних узлов, то алrоритм завершит работу, а текущий узел будет объявлен листом. ЗАМЕЧАНИЕ Еще одним важным свойством деревьев решений является ацикличность. Выбрав атрибут разбиения в определенном узле и выполнив соответствующее разбиение, алrоритм не мо- жет вернуться назад, если оно оказалось неоптимальным, и выполнить новое разбиение на основе Apyroro атрибута. Иными словами, если по какой либо причине на определенном шаrе построения дерева решений было получено неудачное разбиение, алrоритм все рав- но будет продолжать строить дерево. Чтобы компенсировать неудачный выбор, алrоритму потребуется создать дополнительные узлы, что приведет к увеличению сложности дерева и временных затрат на ero построение. Принцип «разделяй И властвуй» Процесс рекурсивноrо разбиения подмножеств в узлах дерева решений получил название (разделяй и властвуй!> (divide and conquer). В ero основе лежит следующий принцип. Пусть задано множество Т, в котором определены классы {С, С 2 "" C k }. Тотда существуют три возможных варианта разбиения, 1, Множество Т содержит два примера или более, которые OTHO сятся к одному классу . Деревом решений для множества Т бу дет лист, идентифицирующий класс , Это тривиальный слу чай, который на практике не представляет интереса. [рафически он может быть интерпретирован, как показано на рис, 9.6, 2. Множество Тне содержит примеров, то есть является пустым, Деревом решений также будет лист, но класс, ассоциирован ный с данным листом, должен быть определен из друrоrо множества, например родительскоrо, Этот случай иллюстриру ется на рис. 9.7, После разбиения по атрибуту Доход ветвление продолжилось по атрибуту Образование, Как должен вести себя алrоритм, если в обучающем множестве нет ни одноrо наблюдения, тде Доход == Высокий и Образование == Среднее? Алrоритм должен Рис. 9.6. Иллюстрация первото случая
436 Часть 1. Теория бизнес анализа создать три дочерних узла, и в Т1 окажется пустое множество. Тоrда сrенериру ется узел, который будет ассоциирован с ЮIассом, наиболее часто встречающим ся в родительском множестве, ДОХОД? I I С} наиболее часто встречающийся класс Рис. 9.7. Иллюстрация BToporo случая з. Множество Т содержит примеры, относящиеся к различным ЮIассам, Задача заЮIючается в разделении Т на подмножества, ассоциированные с классами. Выбирается один из входных атрибутов, принимающий два отличных друr от друrа значения Vl, V2'"' V , или более, после чеrо Т разбивается на подмножества {Тl (Vl)' Т 2 (V2 )'". 1 , (V II )}, rде каждое подмножество 1: содержит все примеры из исходноrо множества, в которых выбранный атрибут принимает значение Vi, Данная процедура будет рекурсивно повторяться до тех пор, пока подмножества не будут содержать примеры только одноrо ЮIасса. Этот случай проиллюстри рован на рис, 9.8, Рис. 9.8. Иллюстрация TpeTbero случая Пусть требуется определить ЮIасс риска, связанный с выдачей кредита ЮIиенту, на основе двух атрибутов Доход и Имущество, Атрибуты принимают по два значения Высокий и Низкий. На первом шаrе алrоритм разобьет исходное множество на два подмножества, в одно из которых будут помещены ЮIиенты с высокими доходами, а в друrое с низкими. Предположим, что все ЮIиентЫ с высокими доходами относятся к ЮIассу низкоrо кредитноrо риска, поэтому co ответствующее подмножество будет объявлено листом и дальнейшее разбиение
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 437 в нем остановится, Друrое подмножество, в котором остались ЮIиенты с низ ким доходом, подверrается про верке с помощью атрибута Имущество. Лоrика про ста: если ЮIиент не имеет высокоrо дохода, но имеет достаточно имущества, чтобы по крыть кредит при невозможности ero выплатить, то кредитный риск может быть определен как низкий. Данный случай является наиболее распространенным и практически важным в процессе построения деревьев решений. Процесс построения дерева решений не является однозначно определенным. Для различных атрибутов и даже для различноrо порядка их применения MorYT быть сrенерированы различные деревья решений, В идеальном случае разбиения должны быть такими, чтобы результирующее дерево оказалось наиболее компакт Hы." Встает вопрос: почему бы тоrда не исследовать все возможные деревья и не выбрать самое компактное? К сожалению, во мноrих реальных задачах перебор всех возможных деревьев решений приводит к комбинаторному взрыву. Даже для небольшой базы данных, содержащей Bcero 5 атрибутов и 15 примеров, возможное число деревьев превышает 106 в зависимости от количества значений, принима емых каждым атрибутом. Эффективность разбиения оценивается по чистоте полученных дочерних узлов относительно целевой переменной. От ее типа и будет зависеть выбор предпоч тительноrо критерия разбиения. Если выходная переменная является катеrори альной, то необходимо использовать такие критерии, как индекс Джини, прирост информации или тест хи квадрат. Если выходная переменная является непрерыв ной, то для оценки эффективности разбиения используются метод уменьшения дисперсии или E TeCT (рис, 9,9). Индекс Джини Уменьшение дисперсии Информационный критерий F TecT Критерий хи квадрат Информационный критерий Рис. 9.9. Критерии разбиения 9.2. Алrоритмы построения деревьев решений Если обратиться к истокам деревьев решений, то можно увидеть, что одни методы их построения были разработаны в рамках теории машинноrо обучения, а друrие пришли из математической статистики, Все они имеют определенные преимущества
438 Часть 1. Теория бизнес анализа и недостатки: одни MOryT работать только с катеrориальной выходной переменной а друrие с непрерывной; одни работают медленнее, а друrие быстрее; OДH методы более точны, чем друтие, и т, д. Аналитик выбирает тот или иной алrоритм:, исходя из особенностей конкретной задачи анализа, Прежде чем приступить к обзору распространенных алrоритмов Построения деревьев решений, введем в рассмотрение несколько важных понятий. Полное дерево решений Процесс роста дерева решений начинается с разбиения KopHeBoro узла на ДВа потомка или более, каждый из которых рекурсивно подверrается дальнейшему разбиению. При этом каждый раз все входные атрибуты рассматриваются как по тенциальные атрибуты разбиения, даже те, что уже использовались ранее, КРоме атрибутов, все значения в которых одинаковы. Такие атрибуты ИСЮIючаются из рассмотрения, поскольку с их помощью нельзя разделить при меры различных ЮIассов, Коrда больше не удается обнаружить разбиения, значимо повышающие чистоту дочерних узлов, или коrда число примеров в узле достиrает HeKoToporo заданноrо минимума, процесс разбиения для данной ветви заканчивается. Узел объявляется листом, Коrда найти в дереве какие либо новые разбиения, повышающие ero точность, не удается и разбиение прекращается по всем ветвям, это значит, что построено полное дерево. Как мы увидим позднее, полное дерево не является оптималь ным. Если существуют полностью детерминистические отношения между входными и выходной переменными, то рекурсивное разбиение в конечном итоrе дает дерево с абсолютно чистыми листьями. В реальности такое встречается редко, Меры эффективности деревьев решений в целом эффективность деревьев решений определяется с помощью TecToBoro множества набора примеров, которые не использовались при построении дерева. Дереву предъявляется набор тестовых примеров и вычисляется, для KaKoro про цента примеров ЮIасс был определен правильно, Это позволяет оценить ошибку ЮIассификации, а также качество решения задачи ЮIассификации или реrрессии отдельных ветвей в дереве. Каждый узел или лист дерева обладает следующими характеристиками: О количество примеров, попавших в узел (лист); О доли примеров, относящихся к каждому из ЮIассов; О число ЮIассифицированных примеров (для листьев); о про цент примеров, верно ЮIассифицированных данным узлом (листом), Особый интерес представляет количество правильно классифицированных записей в данном узле или листе, Поэтому для оценки качества ЮIассификации вводятся два показателя поддержка (support) и достоверность (confidence).
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 439 Поддержка определяется как отношение числа правильно классифицированных примеров в данном узле или листе к общему числу попавших в Hero примеров, то есть: 5== N K :, . N 06щ Очевидно, что значение поддержки может изменяться от О до 1. Достоверность определяется как отношение числа правильно классифициро ваННЫХ примеров к числу ошибочно классифицированных, то есть: c== N КJ , . N O"1 Значит, чем больше число правильно классифицированных примеров в узле, тем выше достоверность, Поддержка и достоверность MOryT использоваться в качестве параметров по строения дерева решений. Например, можно задать, что разбиение должно произ водиться до тех пор, пока в узле не будет достиrнут заданный пороr поддержки, Критерии выбора наилучших атрибутов ветвления Существует множество различных подходов к оценке потенциальных разбиений, При этом методы, разработанные в рамках теории машинноro обучения, в основном сосредотачиваются на повышении чистоты результирующих подмножеств, в то время как статистические методы фокусируются на статистической значимости различий между распределением значений выходной переменной в узлах. Аль тернативные методы разбиения часто приводят к построению совершенно разных деревьев, которые, впрочем, функционируют примерно одинаково. Различные меры оценки чистоты ведут к выбору различных атрибутов разбиения, но, поскольку все меры основаны на одной и той же идее, полученные с их помощью модели будут похожи. Для выбора атрибута ветвления в случае катеrориальной целевой переменной используются такие методы, как: О индекс Джини, или метод разнообразия выборки (Gini index); О энтропия, или прирост информации (information gain); О отношение прироста информации (gain ratio); О тест хи квадрат (chi square test). Данные методы применимы и тоrда, коrда целевая переменная является непре рывной, но в этом случае необходимо предварительно выполнить ее квантование, Индекс Джини Один из популярных критериев разбиения получил название индекса Джини в честь итальянскоrо статистика и экономиста. Эта мера основана на исследовании разнообразия совокупности. Она определяет вероятность Toro, что два объекта,
440 Часть 1. Теория бизнес анализа случайным образом выбранные из одной совокупности, относятся к одному классу, ОчевидНО, что для абсолютно чистой выборки данная вероятность равна 1, Мера Джини для узла представляет собой простую сумму квадратов долей классов в узле. В случае, представленном на рис, 9.1 О, родительский узел содержит одинаковое количество светлых и темных KpyroB, . ... .. .. .0 Рис. 9.10. Пример разбиения Для узла, в котором содержится равное число объектов, относящихся к двум классам, можно записать: 0,52 + 0,52 == 0,5, Такой результат вполне ожидаем, по скольку вероятность Toro, что случайно дважды будет выбран пример, относящий ся к одному классу, равна 1/2. Индекс Джини для любоrо из двух результирующих узлов будет 0,12 + 0,92 == 0,82. Идеально чистый узел имеет значение индекса Джини, равное 1. Узел, в котором содержится равное число объектов двух классов, будет иметь значение индекса 0,5. Таким образом, предпочтение следует отдать тому атрибуту, который обеспечит максимальное значение индекса Джини. Уменьшение энтропии, или прирост информа'ции Из теории информации известно, что чем больше состояний может принимать некоторая система, тем сложнее ее описать и тем больше информации для этоrо потребуется, Примером может служить кодирование цифровых изображений. Для представления каждой точки черно белоrо изображения достаточно одноrо бита. Если он принимает значение 1, точка черная, а если О белая, Коrда нужно описать изображение, содержащее 256 оттенков, для задания каждой ero точки потребуется k == log2 256 == 8 бит и т. д. Аналоrичный подход можно применить к описанию подмножества в HeKOTO ром узле дерева решений. Если лист совершенно чистый, то все попавшие в Hero примеры относятся к одному классу и ero описание будет очень простым. Но если лист содержит смесь объектов различных классов, то ero описание усложнится и для этоrо потребуется большее количество информации. В теории информации
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 441 существует мера количества информации энтропия, Она отражает степень He упорядоченности системы. В контексте нашеrо рассмотрения энтропия это мера разнообразия классов в узле. Проще rоворя, будем считать, что это мера, определяющая количество BO просов <дa/HeT1>, на которые нужно ответить, чтобы определить состояние системы. Если существует 16 возможных состояний, это даст log2 (16), или 4 бита, необходи мых для описания всех состояний. Целью разбиения узла в дереве решений является получение дочерних узлов с более однородным классовым составом, В результате разбиения должны образо вываться узлы с меньшим разнообразием состояний выходной переменной. Сле довательно, энтропия падает, а количество внутренней информации в узле растет, Уменьшение энтропии эквивалентно приросту информации. Известно, что значение энтропии для HeKoToporo множества максимально тоrда, коrда все массы в этом множестве равновероятны, то есть с точки зрения класси фикации имеет место полная неопределенность. Коrда вероятность появления oд Horo из массов увеличивается, энтропия множества уменьшается, При раз биении целесообразно выбрать атрибут, который позволит разбить множество так, чтобы в результирующих подмножествах определенный класс стал доминирующим, то есть алrоритм должен минимизировать энтропию. Формально энтропия определенноrо узла Т дерева решений определяется фор мулой k Info(T) ЕР} Iog 2 Р} J 1 И представляет собой сумму всех вероятностей появления примеров, относящихся Kj MY классу, умноженную налоrарифм этой вероятности. Поскольку вероятность меньше или равна 1, значение лоrарифма всеrда будет отрицательным. На практике эта сумма обычно умножается на 1 для получения положительноrо числа. Энтропия Bcero разбиения это сумма энтропий всех узлов, умноженных на долю записей каждоrо узла в числе записей исходноrо множества. Пусть в некотором узле дерева решений содержится множество Т, которое состоит из N примеров. При этом неважно, является ли данный узел корневым или потомком, Torдa по формуле (9.1) для Hero может быть рассчитана энтропия Iпfo(n. В результате разбиения S для данноrо узла были созданы k потомков Tt, Т 2 ... Tk' каждый из которых содержит число записей N j , N 2 и N k. Для потомков pac считывается энтропия по формуле (9,1): Iпfo(T t ), Iпfo(T 2 ),., Iпfо(Щ. Тоrда общая энтропия разбиения s: (9.1) N j N 2 N k , k N i Info(S) M' Info(T t )+М' Info(T 2 )+.., +'""N,InfO(I/I) Е М' lnfo(T i ).(9.2) , ! Для бинарной целевой переменной, показанной на рис. 9.1 О, формула энтропии отдельноrо узла будет: Info(T) ( 1), (Р( темные), log2 Р( темные) + Р( светлые). Iog 2 Р( светлые )).
442 Часть 1. Теория бизнес анализа Здесь Р( темные) вероятность Toro, что случайно выбранная из ПОДМножеСтва запись имеет значение целевой переменной Темные. В нашем примере вероятности Р( темные) и Р( светлые) равны 0,5. Подставив значение 0,5 в предыдущую формулу, получим: fnfo(n == 1, (0,5' log2 0,5 + 0,5. log2 0,5) == 1, log2 (0,5) == 1, Что собой представляет энтропия узлов, полученных в результате разбиения? Один из них содержит 1 темный и 9 светлых объектов, в то время как друrой 1 светлый и 9 темных. Очевидно, что оба узла имеют одинаковую энтропию: Info(T 1 ) == Info(T 2 ) == 1. (0,1. log2 0,1 + 0,9, log2 0,9) == 0,33 + 0,14 == 0,47, Для вычисления общей энтропии разбиения воспользуемся формулой (9.2): ( ) N! ( ) N2 ( ) 10 10 fnfo 5 ==N'fnfo Т I +N,fnf o Т 2 == 20 ,0,47+ 20 ,0,47==0,47. В результате разбиения уменьшение полной энтропии, или прирост инфор мации, составит Gain(S) == 1 0,47 == 0,53. Это показывает, что данное разбиение является эффективным. Отношение при роста информации Энтропия как мера эффективности разбиения в узле может использоваться COBMeCT но с методолоrией разбиения путем создания отдельной ветви для каждоrо значения атрибута. Это так называемый алrоритм ID3 (lterative Dihotomizer 3), разработанный австралийским ученым Дж. Р. Куинленом а. Ross Quinlan), Практическое приме нение данноrо алrоритма сопряжено с б()льшой проблемой, а именно: только при раз биении набора данных на достаточное число небольших подмножеств количество ЮIассов, представленное в каждом узле, имеет тенденцию сокращаться и их энтропия, следовательно, тоже, Поэтому деревья решений, которые строятся с использованием критерия уменьшения энтропии, предрасположены к сильной ветвистости. Сложные деревья с большим числом ветвей имеют узлы с малым количеством примеров, трудно интерпретируются, ведут к снижению устойчивости модели в целом. Для решения этой проблемы были разработаны модификации алrоритма ID3, такие как алrоритмы С4,5, С5.0 и др. В них используется отношение полноrО прироста информации, полученноrо в результате данноrо разбиения, к приросту информации в данном узле. Такой метод называется отношением прироста инфор мации (gain ratio), Он уменьшает ветвистость деревьев. Тест хи квадрат Тест хи квадрат это тест статистической значимости различия между распреде лениями значений двух выборок, разработанный К. Пирсоном. Тест представляет собой оценку вероятности Toro, что статистические законы распределения для двух неупорядоченных совокупностей наблюдений значимо различаются. При использо
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 443 вании чистоты в качестве меры эффективности разбиения большое значение теста J{и квадрат rоворит о том, что различие значимо. На основе критерия хи квадрата построен популярный алrоритм CHAID (CЫ square Automatic Interaction Detector). Принцип ero работы основан на обнаруже нии статистических свяэей между переменными. Критерий хи квадрат при меняется для катеrориальных переменных, поэтому и в CHAID входные переменные должны быть катеrориальными, Непрерывные переменные должны быть подверrнуты квaн тованиЮ. Иноrда критерий хи квадрат используется для построения разбиений на основе катеrориальных переменных, в то время как для непрерывных переменных применяются друrие статистические тесты, например P TeCT, Уменьшение дисперсии Все рассмотренные выше меры используются только для катеrориальных целевых переменных, Коrда целевая переменная числовая, удачное разбиение должно yмeHЬ тать ее дисперсию. Напомним, что дисперсия представляет собой меру разброса значений случайной переменной относительно ее среднеrо значения. В выборке с Ma лой дисперсией все значения переменной сосредоточены вблизи среднеrо значения, а в выборке с большой f(исперсией они имеют существенный разброс относительно среднеrо. Хотя метод уменьшения дисперсии применяется для разбиения по число вым переменным, ero работу можно проиллюстрировать с помощью рис. 9.10 для светлых (О) и темных (1) кружков. Среднее значение в родительском узле будет: N т., о=; (l/N)'Ex; 0=;0,5, i::::1 rде Х, наблюдаемое значение целевой переменной; N число наблюдений. Каждое наблюдение, то есть О или 1, отличается от среднсrо также на 0,5, то есть Ix/ т, I о=; 0,.1, Следовательно, дисперсия будет: 1 N . 1 N D о=; N Е(х; т,)' о=; 2О ' ЕО,5 2 о=; 0,25. 1::::.1 /==::1 После разбиения левый узел содержит 9 темных и 1 светлый кружок, поэтому среднее значение для данноrо узла составит т х о=; 0,9. Тоrда для 9 наблюдений значения целевой переменной будут отличаться от среднеrо значения на 0,1 и для 1 наблюдения на 0,9. Значит, дисперсия в данном узле составит D о=; 0,09, По скольку оба узла, полученные в результате разбиения, будут иметь дисперсию D о=; 0,09, общая дисперсия составит 0,09. Тоrда уменьшение дисперсии по cpaBHe пию с родительским узлом будет 0,25 0,09 о=; 0,16. F критерий Фишера Еще одним статистическим критерием, который может оказаться полезным при построении разбиений ДЛЯ случая числовой целевой переменной, является критерий
444 Часть 1. Теория бизнес анализа Фишера (Ronald А. Fisher), или F 'Крuтерuй, Он позволяет оценить вероятность Toro что выборки наблюдений, имеющие различные среднее и дисперсию, при надлежа; одной и той же совокупносш. Иными словами, F критерий показывает, являются ли различия статистических свойств выборок, полученных при разбиении СОВОКупно сти в родительском узле, значимыми. Если это так, то разбиение является удачным. В противном случае хорошо разделить объекты различных ЮIассов не удалось. Существует связь между дисперсией выборки и дисперсией совоКупности, из которой данная выборка была извлечена. Фактически если выборка формируется случайным отбором и имеет приемлемый размер, то ее дисперсия может СЛУЖить хорошей оценкой дисперсии всей совокупности, Если выборка слишком мала, например 30 или менее наблюдений, то ее дисперсия обычно оказывается ВЫШе, чем дисперсия исходной совокупности, F TecT проверяет связь между двумя oцeH ками дисперсии совокупности и выборки из нее. Первая оценка получается путем объединения всех выборок и вычисления на их основе общей дисперсии. Вторая оценка вычисляется как дисперсия по отдельным выборкам, полученным из COBO купности. Если различные выборки случайным образом извлечены из одной и той же совокупности, эти две оценки должны быть хорошо соrласованы. Отношение этих двух оценок называется F статuстu'Кой. Чем больше значе ние F статистики, тем меньше вероятность Toro, что выборки принадлежат одной совокупности. Следовательно, в дереве решений большое значение F статистки показывает, что разбиение позволило успешно разделить совокупность примеров в узле на подмножества, которые имеют значимо различающиеся распределения, 9.3. Алrоритмы ID3 и С4.5 Одними из наиболее популярных алrоритмов построения деревьев решений явля Ются алrоритм ID3 и ero модификация С4,5. Алrоритм ID3 начинает работу со всеми обучающими примерами в корневом узле дерева. Для разделения множества примеров KopHeBoro узла выбирается один из атрибутов, и для каждоrо значения, принимаемоrо этим атрибутом, строится ветвь и создается дочерний узел. Затем все примеры распределяются по дочерним узлам в соответствии со значением атрибута. Поясним это на рис. 9.11. Пусть атрибут Х принимает три значения: А, В и С. To rда при разбиении исходноrо множества Т по атрибуту х алrоритм создаст три дочерних узла Т 1 (А), Т 2 (В) и Тз(С), в первый из которых будут помещены все записи со значением А, во второй со значением В, а в третий со значением С. Рис. 9.11. Разбиение по атрибуту
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 445 Алrоритм повторяется рекурсивно до тех пор, пока в узлах не останутся только примеры одното класса, после чеrо узлы будут объявлены листами и разбиение прекратится. Наиболее проблемным этапом алrоритма является выбор атрибута, по которому будет производиться разбиение в каждом узле. Для выбора атрибута разбиения ID3 использует критерий, называемый при ростом информации (information gain), или уменьшением энтропии (entropy reduction). Введем в рассмотрение меру прироста информации, вычисляемую как: (;ain(S) == /nfo (т) /nfo." (Т), (9,3) rде /nfo (т) энтропия множества Т до разбиения; /nfos(I) энтропия после разбиения S. Данная мера представляет собой прирост количества информации, получен ный в результате разделения множества Т на подмножества Т!, Т 2 ... Tk С помощью разбиения S. В качестве наилучшеrо атрибута для использования вразбиении S выбирается тот атрибут, который обеспечивает наибольший прирост информа ции Gain(S). Рассмотрим пример. Пусть имеется набор данных Т, содержащий 14 записей и 3 входных атрибута А I , А2, Аз, а также выходной атрибут (метку ЮIасса) С, KO торый принимает два значения С! и С 2 (табл. 9.2), Таблица 9.2. Набор данных для иллюстрации работы алrоритма ID3 N п/п Аl Аl Аз С 1 А 70 Да C 1 2 А 90 Да С 2 3 А 85 Нет С 2 4 А 95 Нет С 2 5 А 70 Нет С! 6 В 90 Да С 1 7 В 78 Нет С 1 8 В 65 Да С, 9 В 75 Нет С! 10 С 80 Да С 2 11 С 70 Да С 2 12 С 80 Нет С 1 13 С 80 Нет С, 14 С 96 Нет С, В данном примере 9 записей относится к ЮIассу С!, а пять к ЮIассу С 2 , Энтропия множества Т будет /nfo(T) == (9 /14)' log2 (9 /14) (5/14)' log2 (5/14) == 0,94 бит. После использования атрибута А I дЛЯ разбиения исходноrо множества на три подмножества: Т I (А), Т 2 (В) и Т з ( с) общая энтропия разбиения составит (условно полаrаем, что log2 (о) == О):
446 Часть 1. Теория БИзнес анализа Info.1 (Т) == 5 /14( 2/ 5. !Og2 (2/5) 3 /5.!Og2 (3/5)) + +4/11( 4/ 4 '!Og2 (4/ 4) 0/4, !Og2 (О / 4))+ +5 /14( 3 /5, !Og2 (3/ 5) 2/5.!Og2 (2/5)) == 0,694 бит, Таким образом, прирост информации при использовании атрибута АI дЛЯ раз биения исходноrо подмножества составит: Gain(5 1 ) == 0,94 0,694 == 0,246 бит, При использовании разбиения на основе атрибута Аз, проведя аналоrИЧные вычисления, получим: Es, (Т) == 6 /14( 3 /6.!Og2 (3 /6) 3 /6.!Og2 (3/6)) + +8/14( 6/8. !Og2 (6/8) 2/8, log2 (2/8)) == 0,892 бит. Тоrда прирост информации, обеспечиваемый разбиением исходноrо множества на основе атрибута Аз, будет Gain(5:1)== 0,94 0,892 == 0,048 бит. и так, для начальноrо разделения множества Т алrоритм выберет разбиение 51 с использованием атрибута А 1 как обеспечивающее наибольший прирост инфор мации, Для нахождения оптимальной проверки необходимо также рассмотреть атрибут А2' Ранее рассматривались разбиения по катеrориальным атрибутам, Но в текущем примере мы столкнулись с необходимостью проверки по числовому атрибуту А 2 . Проверки по таким атрибутам сложнее, поскольку требуется установка пороrов для разбиения, которая в общем случае может быть произвольной. Существует алrоритм для определения оптимальноrо значения пороrа z. Сначала обучающие примеры сортируются в том порядке, в котором будут рассматриваться значения атрибута: (')1' V2"". V т), Тоrда существует только т 1 пороrов из возможных раз биений, каждое из которых должно быть проверено на предме максимальноrо прироста информации, При этом в качестве пороrа MoryT выбираться срединные точки между соседними значениями (Vi, Vi+l )/2 или наименьшие значения из Ka ждоrо интервала (v i, V i + 1 ). Для ИЛлюстрации данноrо способа нахождения пороrа возьмем числовой атри бут А 2 . После сортировки примеров множества по возрастанию значений атрибута получим следующий ПОРЯДОК: {65, 70, 75, 78, 80, 85, 90, 95, 96} и множество воз можных пороrовых значений z == {65, 70, 75, 78, 80, 85, 90, 95}, Из девяти значений оптимальным будет то, которое обеспечивает наибольший прирост информации. Если для каждоrо IIотенциальноrо пороrа определить прирост информации по добно тому, как ранее это делалось для значений катеrориальной переменной, то можно обнаружить, что лучшим значением пороrа будет z == 8О. Соответствующий процесс вычисления прироста информации для разбиения 52 (А 2 ::; 80 ИЛИ А 2 2': 80), производится следующим образом:
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 447 /n/os, (Т)== 9 Л4( 7 /9')Og2 (7 /9) 2/9')Og2 (2/9)) + +5 /14( 2/5. )Og2 (2/5) 3 /5')Og2 (3/5)) == 0,837 бит; Gain(X:!) == 0,94 O,837 == 0,103 бит. Теперь можно сравнить прирост информации для всех трех атрибутов иллю стративноrо примера. Видим, что атрибут А по прежнему обеспечивает наиболь IlIИЙ прирост информации 0,246 и, следовательно, он должен быть выбран для использования в первом разбиении дерева решений. Корневой узел произведет проверку для атрибута А, в результате чеrо будут созданы три ветви по одной для каждоrо значения атрибута (рис. 9.12). Проверка 5, А =? , . Т 2 А, Аз Класс 70 Да С, 90 Да С, ВО Да С 2 90 Да С 2 7В Нет С, 70 Да С 2 В5 Нет С 2 65 Да С, ВО Нет С, 95 Нет С 2 75 Нет С, ВО Нет С, 70 Нет С, 96 Нет С, Рис. 9.12. Разбиение по первому атрибуту для примера из табл. 9.2 После начальноrо разбиения все узлы потомки будут содержать по нескольку наблюдений из исходноrо множества, и для каждоrо узла затем будет повторен процесс выбора атрибута разбиения и оптимизации пороrа (если для разбиения используется числовой атрибут). Поскольку узел потомок т 2 , полученный в ветви для значения В, содержит 4 наблюдения, которые относятся к одному классу, то энтропия равна О, узел объявляется листом и дальнейшее ветвление для Hero не про водится. Для узла т., включающеrо 5 наблюдений, может быть сделана про верка по оставшимся атрибутам. Опуская промежуточные расчеты, констатируем, что опти мальное разбиение будет достиrнуто с помощью атрибута А 2 дЛЯ альтернативных вариантов А 2 70 или А 2 > 70. Поскольку множество т. содержит 5 наблюдений, из которых два относятся к классу С, а три к классу С 2 , то в соответствии с фор мулой энтропии можно записать: ln/os, (т) == 2/5.)Og2 (2/5) З/5.lоg2 (3/5) == 0,97 бит. При использовании атрибута А 2 дЛЯ разбиения Т с пороrом 70 получим чистые узлы, поэтому /n/os, (Т 1 ) == о. Прирост информации, обеспеченный данным разбие нием, составит Gain(X:{) == 0,94 o == 0,94 бит и будет максимальным.
448 Часть 1. Теория БИзнес анализа Аналоrичным образом MorYT быть выполнены расчеты и для подмножества Тз. В нем оптимальна проверка по значениям атрибута Аз. Следовательно, будут СОзда ны две новые ветви, соответствующие значениям Аз == Да и Аз == Нет, В реЗультате получим два однородных подмножества, содержащих наблюдения ОДноrо КЛаСса. Результирующее дерево представлено на рис. 9.13. Рис. 9.13. Сrенерированное алrоритмом IDЗ дерево решений ЗАМЕЧАНИЕ Если в процессе работы алrоритма получен пустой узел, не содержащий ни oAHoro примера, то он объявляется листом, с которым ассоциирован класс, наиболее часто встречающийся в родительском узле. Практическое применение классическоrо алrоритма ID3 сопряжено с рядом проблем, характерных для моделей, основанных на обучении вообще и деревьев pe шений в частности. Основными из них являются переобучение и наличие пропус ков в данных. Для их эффективноrо преодоления ID3 был доработан, в результате чеrо появилось ero расширение, названное C4,S, Рассмотрим ero подробнее. Проблема переобучения Основной недостаток алrоритма ID3 тенденция к перео.бучению. Например, если данные содержат шум, то число уникальных значений атрибутов увеличИт ся, а в крайнем случае для каждоrо примера обучающеrо множества значениЯ атрибутов окажутся уникальными. Следуя лоrике ID3, можно предположить, что при разбиении по такому атрибуту будет создано количество узлов, равное числу примеров, так как в каждом узле окажется по одному примеру. После этоrо каждый узел будет объявлен листом и дерево даст число правил, равное числу примеров обучающеrо набора, С точки зрения классифицирующей способности такая модель бесполезна. В качестве примера описанной ситуации возьмем случай, коrда атрибут А I в BЫ борке, представленной в табл, 9.2, содержит не три значения А, В и С, а 14 зна чений от А до N. Тоrда в результате разбиения будет сформировано 14 узлов, в каждый из которых попадет только один пример, и на этом построение дерева закончится. Дополнительно усложняет проблему тот факт, что критерий прироста
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 449 IIнформации всеrда будет приводить к выбору атрибутов с наибольшим количе ством уникальных значений. Действительно, если в результате разбиения будут получены множества, содержащие по одному объекту, образующему один класс, то частота появления этоrо класса окажется равной числу примеров, то есть 1. Таким образом, в выражении для оценки количества информации появится log2(1) == О. Следовательно, и все выражение обратится в ноль, то есть Iпfos(r) == О. Всеrда бу дет обеспечен максимальный прирост информации Gaiп (5) == юах, что приведет к выбору алrоритмом соответствующеrо атрибута, Данная проблема решается введением нормировки. В рассмотрение включается дополнительный показатель, который представляет собой оценку потенциальной информации, созданной при разбиении множества Т на п подмножеств Т;: 5plit Iпfo(S) == t((IТiИТI). Iog 2 (ITil/ITI)), i 1 С помощью этоrо показателя можно модифицировать критерий прироста ин формации, перейдя к отношению: 5plit Iпfo(S) == Gaiп(rJ/5plit Iпfo(1). Новый критерий позволяет оценить долю информации, полученной при разби ении, которая является полеЗ1tой, то есть способствует улучшению классификации, Использование данноrо отношения обычно приводит к выбору более удачноrо атрибута, чем обычный критерий прироста. Вычисление отношения прироста проиллюстрируем с помощью при м ера из табл. 9.2, Найдем прирост информации для разбиения 51: 5plit Iпfo(51) == 5 /14, Iog 2 (5/14) 4/14. Iog 2 (4 /14) 5 /14. Iog 2 (5/14) == 1,577. Тоrда отношение прироста будет: 5plit Iпfo(51) == 0,246/1,577 == 0,156, Аналоrичная процедура должна быть выполнена для остальных раз биений в дереве решений. Смысл этой модификации прост. Т;/Т отношение числа примеров в i M под множестве, полученном в результате разбиения 5, к числу примеров в родительском множестве Т. Если в результате разбиения получается большое число подмножеств с небольшим числом примеров, что характерно для переобучения, то параметр 5plit Iпfo растет. Поскольку он стоит в знаменателе выражения, то Gaiп ratio есть обычный прирост информации, «оштрафованный),) с помощью параметра 5plit Iпfo. Блarодаря этому атрибут, для KOToporo параметр 5plit Iпfo растет, имеет меньше шансов быть выбранным для разбиений, чем при использовании обычноrо Gаiп 'КРuтерuя. Неизвестные значения атрибутов Рассматривая алrоритмы 1О3 и С4.5, мы предполаrали, что все значения атрибутов, используемых при раз биении, известны. Но типичной проблемой реальных наборов
450 Часть 1. Теория бизнес анализа данных является отсутствие значений атрибутов в отдельных наблюдениях. При чины появления отсутствующих значений и связанные с эrnм сложносrn излaraлИсь в разделе 2.10. Если в наборе данных, для KOTOporO строится дерево решений, име ют место отсутствующие значения, то можно выбрать один из вариантов решения данной проблемы: о исключить все наблюдения, содержащие пропущенные значения; О создать новый или модифицировать существующий алrоритм таким образом, чтобы он Mor работать с пропусками в данных, Первое решение простое, но оно часто неприемлемо из за Toro, что в наборе данных может присутствовать большое количество записей с пропущенными зна чениями. И если все такие записи будут исключены из рассмотрения, то оставшихся записей окажется недостаточно для формирования обучающеrо множества. При выборе альтернативноrо подхода необходимо ответить на следующие BO просы. О Как сравнивать два наблюдения при отсутствующих значениях атрибутов? о Обучающие примеры с пропущенными значениями не MOryT использоваться в разбиении по атрибуту, значение KOTOporO отсутствует, и поэтому не MOryT быть отнесены ни к одному из полученных подмножеств. как такие наблюдения должны обрабатываться при разбиении? О Как работать с отсутствующим значением при классификации, если проверка в узле производится по атрибуту, значение KOToporo отсутствует? Эти и мноrие друrие вопросы возникают при попытке найти решение проблемы пропущенных данных, Различные классификационные алrоритмы обычно основаны на заполнении пропусков наиболее вероятными значениями. В алrоритме C4.S предполаrается, что наблюдения с неизвестными значениями имеют статистическое распределение соответствующеrо атрибута соrласно относи тельной частоте появления известных значений. Например, рассмотрим множество наблюдений из табл. 9.2, в котором отсутствует значение атрибута А! в строке 6. Введем в рассмотрение параметр Р, который представляет собой число наблю дений в наборе данных с известным значением данноrо атрибута, отнесенное к об щему числу наблюдений. Тоrда модифицированный для работы с пропущенными значениями критерий прироста информации будет иметь вид: Gaiп(S) == Р( Iпfo(T) Iпfos (т)). Аналоrично параметр Split Iпfo(S) может быть видоизменен путем отнесениЯ ЧИСла наблюдений, содержащих пропущенные значения, к отдельным дополни тельно создаваемым подмножествам. Если разбиение 5 дает п подмножеств, ero параметр Split Iпfo(S) вычисляется, как если бы в результате разбиения было получено п + 1 подмножество. Рассмотрим работу алrоритма C4.S, модифицированноrо для обработки пропу щенных значений, на примере из табл. 9.3.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 451 Таблица 9.3. Набор данных для иллюстрации работы алrоритма С4.5 N п/п АI Az Аз С 1 А 70 Да С 1 2 А 90 Да С 2 3 А 85 Нет С 2 4 А 95 Нет С 2 5 А 70 Нет С 1 6 90 Да С 1 7 В 78 Нет С 1 8 В 65 Да С 1 9 В 75 Нет С 1 10 С 80 Да С 2 11 С 70 Да С 2 12 С 80 Нет С 1 13 С 80 Нет С 1 14 С 96 Нет С 1 Из 13 наблюдений, в которых значения атрибута А 1 известны, 8 относятся к классу С ! и 5 к классу С 2 . Поэтому в результате разбиения по атрибуту А 1 получим: /nfOsl (Т) == 8/13, log2 (8 /13) 5/13, log2 (5/13) == 0,961 бит. После разделения исходноrо множества Т с помощью атрибута А 1 на подмноже ства в соответствии со значениями атрибута А, В и С результирующая информация определяется следующим образом: /nfO.l'1 (Т) == 5 /13( 2/ 5. IOg2 (2/ 5) 3/ 5.log 2 (3/5)) + +3 /13( 3 /3. log2 (3 /3) o /3. IOg2 (о /3)) + +5 /14( 3 /S.log2 (3/ 5) 2/5.log 2 (2/5)) == 0,747 бит. Прирост информации, полученный в результате данноrо разбиения, корректи руется с помощью фактора F == 13/14 == 0,93. Тоrда: Gain(SI) == р, (0,961 o, 747) == 0,93. (0,961 0,747) == 0,199 бит. Прирост, полученный в результате данноrо разбиения, несколько ниже, чем для множества из табл. 9.2 (то есть без пропусков), rде он составлял 0,246: Split /nfo(X 1 ) == 5 /13. log2 (5 /13) 3 /13.log 2 (3 /13) s /13.log 2 (5 /13) 1/13.log 2 (1/13) == 1,876, Коrда наблюдение с известным значением атрибута переходит из множест ва Тв подмножество Т" вероятность ero отношения к т, равна 1, а ко всем остальным подмножествам О. Если в примере имеется пропущенное значение, то относительно
452 Часть 1. Теория БИэнес аналиэа данноrо примера может быть сделано только некоторое вероятностное преДПОЛОЖе ние. При этом очевидно, что вероятность принадлежности примера ко всем подмно- жествам, полученным в результате разбиения, будет равна 1 (то есть к какому либо из них он будет отнесен обязательно). После разбиения множества Тна подмножества по атрибуту А запись, coдep жащая пустое значение, будет распределена во все три полученных ПОдмножества. Данная ситуация проиллюстрирована на рис. 9.14. Проверка Х, А =? 1 . Т. А 2 Аз Класс w 70 да С, 1 90 Да С, 3/13 80 Да С 2 1 90 Да С 2 1 78 Нет С, 1 70 Да С 2 1 85 Нет С 2 1 65 Да С, 1 8С Нет С, 1 95 Нет С 2 1 75 Нет С, 1 80 Нет С, 1 70 Нет С, 1 96 Нет С, 1 90 Да С, 5/13 90 Да С, 5/13 Рис. 9.14. Пример разбиения множества Веса w; для примеров с пропусками будут равны вероятностям 5/13, 3/13 и 5/13 соответственно. Теперь т; может быть интерпретировано алrоритмом не как число записей в соответствующем подмножестве, а как сумма весов w для данноrо под множества. Практический пример работы алrоритма С4.5 Чтобы про иллюстрировать работу алrоритма С4.5, рассмотрим задачу кредитноrо скоринrа. Воспользуемся набором данных для оценки кредитноrо риска, представ ленным в табл. 9.4. Таблица 9.4. Кредитные истории клиентов N!! кпи С6ере- Друrие активы (недви- rОДОВОЙ доход, Кредитный риск ента жения жимость, автомобиль и т. Д.) тыс. у. е. 1 Средние Высокие 75 Ниэкий 2 Низкие Низкие 50 Высокий 3 Высокие Средние 25 Высокий 4 Средние Средние 50 Низкий 5 Низкие Средние 100 Низкий 6 Высокие Высокие 25 Низкий 7 Низкие Низкие 25 Высокий 8 Средние Средние 75 Низкий
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 453 Уровень риска, связанный с выдачей креДИта клиенту, определяется на основе трех признаков: количества имеющихся у Hero сбережений, наличия собственности (автомобиль, недвижимость и т. д,), а также rодовоrо дохода. Первые два показате ЛЯ представлены в модели катеrориальными переменными Сбережения и ДРУlие активы, которые MoryT принимать три значения Высокие, Низкие и Средние, Доход клиента представлен числовой переменной Fодовой доход. Поскольку в 5 из 8 записей целевая переменная указывает на низкий кредитный риск, а в оставшихся 3 записях на высокий, энтропия исходноrо множества до разбиения составит: lпfo(T)== 2t Pj log2 pj == IOg2( ) IOg2 ( ) ==0,954 бит. Рассмотрим разбиение по атрибуту Сбережения, Две записи имеют значение данноrо атрибута Высокие, три Средние и три НUЗ'Кие, Torдa соответствующие вероятности будут: РНhJСUКИС == 2/8, РсреЛ I1ИС == 3/8 и РI1ИJКИС == 3/8, Из двух записей, в KO торых присутствуют высокие сбережения, одна имеет значение целевой переменной, указывающее на высокий кредитный риск, а вторая на низкий, Torдa при случай ном выборе из этих двух записей вероятность появления каждоrо класса составит 0,5. Следовательно, энтропия для значения ВЫСО1Ше атрибута Сбережения составит: lпfоuысокис (Т) == log2 ( ) log2 ( ) == 1 бит. Три записи, в которых имеют место средние сбережения, содержат целевую переменную, указывающую на низкий кредитный риск, поэтому соответствующая энтропия будет: lпjосрсднис (т) == log2 ( ) log2 ( ) == о, rдe условно полаrаем, что log 2 (о) == о. в технических приложениях информация рассматривается как аналоr полез Horo сиrnала, а энтропия как аналоr шума. Отсюда понятно, почему энтропия Для средних сбережений равна о: мы получили чистый сиrнал без шума. Таким образом, если потенциальный заемщик имеет средние сбережения, то кредитный риск будет низким с поддержкой 100 %. Теперь приведем аналоrичные рассуждения для значения Низкие атрибута Сбережения, Соответствующая энтропия будет: lпfонюкис (т) log2 ( ) log2 ( ) == 0,918 бит. Затем, используя выражение (9,2), рассчитаем полную энтропию разбиения: 2 3 3 lпfОсБС[>СЖСIIИИ (Т) == 8' 1 + 8' о + 8" 0,183 == 0,594 бита.
454 Часть 1. Теория БИзнес анализа Torдa прирост информации, полученный в результате разбиения по атрибуту Сбережения, будет: Gaiп(T) == Iпfo(T) IпfОС&'РСЖСIJИЯ (Т) == 0,954 0,594 == 0,36 бит. Как интерпретировать полученное значение? Во первых, Iпfo(T) == 0,954 озна чает, что в среднем потребуется 0,954 бита для представления кредитноrо риска для 8 клиентов из табл. 9.4. BO BTOpЫX, IпfОс6ерсжеlJИЯ (Т) == 0,594 rоворит о том, что разделение клиентов на три подмножества понизило среднее количество бит, Tpe буемых для представления кредитноrо риска. Уменьшение энтропии после разбие ния указывает на то, что в целом разбиение является полезным, то есть повышает чистоту дочерних узлов. В результате разбиения по переменной Сбережения мы получили прирост информации на 0,36 бита. Теперь мы должны вычислить прирост информации для остальных возможных разбиений, представленных в табл. 9.5, и выбрать то из них, которое даст наиболь ший прирост информации (или, что одно и то же, уменьшение энтропии). Таблица 9.5. Все варианты первоrо раэпиения Н!! раэ6и- Дочерние yэnы ения 1 Сбережения == Низкие Сбережения == Средние Сбережения == Высокие 2 Активы == Ниэкие Активы == Средние Активы == Высокие 3 Доход 25 тыс. у. е. Доход> 25 тыс. у. е. 4 Доход 50 тыс. у. е. Доход> 50 тыс. у. е. 5 Доход 75 тыс, у, е, доход> 75 тыс. у, е, Потенциальное разбиение под номером 2 из табл. 9.5 использует атрибут Акmи вы. В исходном множестве данных (см. табл. 9.4) две записи имеют значения дaH Horo атрибута ВЫСО1Ше, четыре записи Средние и две НUЗ'Кие. Вероятности по явления соответствующих значений будут следующие: Ряыcuкие == 2/8, РСРСДIJИС == 4/8, Р"И:JКIIС == 2/8. Обе записи, в которых атрибут Активы принимает значение ВЫСО1Ше, имеют значение целевой переменной, указывающее на н зкий кредитный риск- В результате будет получен совершенно чистый узел с нулевой энтропией. Анало rичная ситуация ранее имела место для значения Высокие атрибута Сбережения, Три записи из четырех, в которых Активы == Средние, указывают на низкий кредитный риск и одна запись на высокий. Энтропия соответствующеrо потомка рассчитывается как: IпfОСРСДlIlIС (Т) == log2 ( ) log2 ( ) == 0,811 бит, В обеих записях, в которых клиенты имеют низкие активы, целевая переменная указывает на высокий кредитный риск, поэтому соответствующий дочерний узел также будет чистым с нулевой энтропией, На основе результатов, полученных для каждоrо из трех узлов, вычислим пол- ную энтропию разбиения по переменной Активы:
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 455 2 4 2 IпfОШИIJЫ (Т) == в'О +в,0,811 +в' о == 0,406 бит, Энтропия, полученная после разбиения по атрибуту Активы, меньше, чем по еЛе разбиения по атрибуту Сбережения, что указывает на более эффективное раз деление записей различных классов, Чтобы убедиться в этом, вычислим при рост информации, полученный в результате разбиения по атрибуту Активы: Gain(T) == Info(r) IпfОШИВhI (Т) == 0,954 0,406 == 0,548 бит. Таким образом, прирост информации в результате разбиения по атрибуту AK ти8Ы больше, чем при разбиении по атрибуту Сбережения, что вьщвиrает ero на первое место среди возможных кандидатов. При разбиении по числовому атрибуту Доход используются четыре пороrа 25,50,75 и 100 тыс. Для возможноrо разбиения под номером 3 (см. табл. 9.5) три записи содержат значение переменной Доход меньше 25 тыс., а остальные пять записей больше 25 тыс, Torдa соответствующие вероятности будут: P 25000 == 3/8 и Р>2;'ООО == 5/8. Для одной из записей, в которых доход менее 25 тыс., указан низкий кредитный риск, а для двух друrих высокий. Тоrда энтропия узла, в который будут помеще ны клиенты с доходом, меньше или равным 25 тыс., составит: Info 25000 == (Т) 10g2 ( ) 10g2 ( ) == 0,918 бит. Четыре из пяти записей с доходом более 25 тыс. имеют низкий кредитный риск, и только одна запись высокий. Тоrда энтропия узла, куда попадут записи, сумма дохода клиента в которых превышает 25 ТЫс., составит: 4 ( 4 ) 1 ( 1 ) Info>2;'ooo == '510g2 '5 5'10g2 5' ==0,722бит. Теперь вычислим энтропию для Bcero разбиения по условию Доход:::; 25 ТЫС.: 3 5 InfoILoxoIL(25000) (Т) == в' 0,918 + в' 0,722 == 0,796 бит. При рост информации, полученный в результате разбиения по атрибуту Доход с пороrом 25 ТЫС.: Gain(T) == Info(T) InfolloxOIL(25000) (Т) == 0,954 0,796 == 0,159 бит. Эти расчеты показывают, что наименее эффективным является разбиение 3. Далее рассмотрим потенциальное разбиение 4 (см, табл, 9.5), в котором исполь зуется атрибут Доход с пороrом 50 тыс. Вычислим энтропию для Hero: InfoILoxoIL(;'OOOO) (Т) == . ( 10g2 ( ) 10g2 ( )) + . ( 10g2 ( ) %10g2 (%)) == 0,607 бит,
456 Часть 1. Теория бизнес-анализа Прирост информации составит: Gaiп(n == Iпfo(n IпfОЛОХOi!(50000) (т) == 0,954 0,607 == 0,347 бит. Данное значение прироста также существенно ниже, чем для атрибута Активы. И наконец, рассмотрим разбиение 5 по атрибуту Доход с использованием Поро ra 75 тыс.: Iпfodoxod(75000) (Т) == . ( *10g2 (*) 10g2 ( )) + , ( {10g2 ({) 10g2 ( )) == 0,862 бит; Gaiп(T) == Iпfo(T) IпfО;юхол(7;'ООО) (Т) == 0,954 0,862 == 0,092 бит, что является самым низким показателем среди всех потенциальных разбиений, Таким образом, мы вычислили прирост информации, который обеспечивают все возможные разбиения корневorо узла. Полученные результаты в компактной форме представлены в табл. 9.6, Таблица 9.6. Варианты разбиений корневorо уэла с энтропией N!! разбиения Дочерние уэnы Прирост информации 1 Сбережения == Низкие 0,36 Сбережения == Средние Сбережения == Высокие 2 Активы == Низкие 0,548 Активы == Средние Активы == Высокие 3 Доход < 25 тыс. у. е, 0,159 Доход> 25 тыс. у. е. 4 Доход < 50 тыс. у. е. 0,347 Доход> 50 тыс. у. е. 5 Доход < 75 тыс. у. е. 0,092 Доход> 75 тыс. у. е. Видно, что разбиение по атрибуту Активы обеспечило наибольший прирост информации, поэтому оно выбирается в качестве начальноrо разбиения в корневом узле дерева, Схема начальнorо разбиения представлена на рис. 9,15, Высокий риск (З) Низкий риск (4,5,8) Рис. 9.15. Результат первоrо шаrа алrоритма С4.5
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 457 Получилось два листа для значений Низкие и Высокие атрибута Активы, даль нейшее разбиение которых производиться не будет, Для значения Средние получен узел, содержащий одну запись со значением целевой переменной Высокий и три записи со значением Низкий, Поскольку в данном узле содержится смесь классов, алrоритм будет выполнять дальнейшее разбиение подмножества в нем (обозначим это подмножество T j ). Для этоrо вновь будет произведен поиск оптимальноrо раз биения. Множество Т 1 представлено Б табл. 9.7. Таблица 9.7. Множество Т I N!! ми- Сбережения Друrие активы rодовой доход, Кредитный ента тыс. допп. риск 3 Высокие Средние 25 Высокий 4 Средние Средние 50 Низкий S Низкие Средние 100 Низкий 8 Средние Средние 75 Низкий Три из четырех записей в узле имеют значение целевой переменной Низкий, и одна Высокий. Энтропия узла до разбиения составит: Iпfo(T 1 ) == 2tPJ 10g2 Р} == IOg2 ( ) {IOg2 ({ J == 0,811 бит, Возможные разбиения в узле показаны в табл, 9.8. Таблица 9.8. Все варианты BToporo разбиения N!l раs6и- Дочерние yэnltl ения 1 Сбережения == Ниэкие I Сбережения == Средние I Сбережения == Высокие 2 Доход:::; 2S тыс, у. е, Доход> 2S тыс, у, е. 3 Доход < 50 тыс, у. е, Доход> SO тыс, у, е, 4 Доход < 75 тыс. у, е. Доход> 7S тыс, у, е, Для разбиения одна единственная запись с низкими сбережениями имеет и низ кий кредитный риск наряду с двумя записями, содержащими средние сбережения, Единственная запись с высокими сбережениями имеет высокий кредитный риск. Поэтому энтропия узлов, полученных с помощью всех трех значений атрибута Сбе режения, равна О, то есть IпfОr6ерсжеIJИЯ (т 1 ) == О. Все три потомка, полученные в резуль- тате разбиения, будут абсолютно чистыми. Ясно, что такое разбиение обеспечивает максимальный прирост информации: Gaiп(T 1 ) == Iпfo(T 1 ) IпfОс6сР"ЖСНИН (Т 1 ) == 0,811 О == 0,811 бит, Аналоrично можно показать, что энтропия для разбиения по атрибуту Доход с пороrом 25 тыс. также равна О и такое разбиение обеспечивает максимальный прирост информации. Но остановим выбор на разбиении по атрибуту Сбереже- ния. Полное дерево, полученное в результате даНноrо разбиения, представлено на рис. 9,16.
458 Часть 1. Теория БИзнес анализа Корневой уэел (все записи) Активы? Высокий риск (записи 2, 7) Высокий риск (3) Низкий риск (4, 5, 8) Сбережения? Низкий риск (записи 1, 6) Рис. 9.16. Полное дерево решений Таблицы частот Напомним, что ключевым моментом в работе алrоритмов IО3 и С4.5 является вычисление энтропии Iпfo{T)== LP j log2{pj), j rде Р j вероятность Toro, что случайно выбранная из множества Т запись OTHO сится к классу j. Данная вероятность определяется как отношение числа записей j ro класса к общему числу записей. Это означает, что для вычисления энтропии совершенно не обязательно рассматривать все записи множества данных достаточно исполь зовать информацию о частоте появления классов в этом множестве. Такая инфор мация представляется в специальных таблицах, называемых т блица.ми частQт. В столбцах таблицы частот приводятся атрибуты, которые MOryT использоваться для разбиения, и принимаемые ими значения, а в строках для каждоrо значенИЯ указывается количество записей, в которых атрибут принимает данное значение при определенном состоянии переменной класса. Например, для множества из табл. 9.2 может быть построена таблица частот следующеrо вида (табл. 9.9). Из табл. 9.9 можно увидеть, что из четырех записей, в которых атрибут A,, тивы принимает значение Средние, одна связана с высоким кредитным риском, а три с низким. Таблица частот сама по себе является очень информативным представлением, например, для разведочноrо анализа. Даже простой визуальный анализ табл. 9.9 позволяет ответить на вопрос: что критичнее с точки зрения кредитноrо риска ниЗкие сбережения или низкие активы? Поскольку все клиенты, имеющие низкие активы, связаны с высоким кредитным риском, а клиенты с низкими сбережениями
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 459 Таблица 9.9. Пример таблицы частот Сбережения Активы rОДОВОЙ доход, тыс. у. е. Кредитный риск QI QI QI QI s: s: QI s: s: QI :11: :z: s: :11: :z: s: о In В I :11: В I :11: In In ,... In 111 111 N .h 6 ,... :i s: :i 1: .а u :с .а u :с VI N In Л 1 О 2 О 1 2 2 1 1 О Высокий 1 3 1 2 3 О 1 1 2 1 Низкий распределились поровну, можно предположить, что низкие активы более важны. Но риск зависит от состояний нескольких входных атрибутов, поэтому выводы, которые MOryT быть сделаны на основе визуальноrо анализа таблицы частот, явля ются приближенными, Чтобы получить более достоверные результаты, необходимо использовать формальный подход. Кроме Toro, таблица частот дает возможность сразу оценить эффективность разбиений по тому или иному атрибуту, Так, если в столбце для определенноrо значения атрибута присутствует О, то соответствующее разбиение позволит по лучить максимальный прирост информации и чистый узел с нулевой энтропией, который будет объявлен листом. 9.4. Алrоритм CART CART (Classification and Regression Tree) популярный алrоритм построения деревьев решений, предложенный в 1984 r, (L. Breiman, J. Friedman, R. Olshen и Ch. Stone), Деревья решений, построенные с помощью CAR Т, являются бинарными, то есть содержат только два потомка в каждом узле. Пусть задано обучающее множество, содержащее К примеров и N классов. Введем в рассмотрение показатель, который позволит оценить эффективность разбиения, полученноrо на основе KOHKpeTHoro атрибута. Обозначим ero Q(s I t), rде s идентификатор разбиения, t идентификатор узла. Тоrда можно запи сать: N Q(s I t) == 2. Р,.' Р/I Е(ри I t,.) Ри I t/l )), j l (9.4) rде t L И t R левый и правый потомки узла t соответственно; Р,. == К,. / к отношение числа примеров в левом потомке узла t к общему числу примеров; Р/I == К /1 / к отношение числа примеров в правом потомке узла t к общему числу примеров; Ри I t 1.) == к}- / к т отношение числа примеров j ro класса в t L К общему числу примеров в t L ;
460 Часть 1. Теория бизнес анализа Ри I t R ) == К: jK, ОТношение числа примеровj rо класса в t R к общему числу примеров в t R . Тоrда наилучшим разбиением в узле t будет то, которое маКСИмизирует Пока затель Q( s I t), Рассмотрим ту же задачу предсказания кредитноrо риска потенциальноrо кли ента банка, что и в примере на алrоритм С4,5 (см. табл. 9.4), Все восемь примеров обучающеrо множества поступают в корневой узел дерева. Поскольку алrоритм CART создает только бинарные разбиения, возможные KaH дидаты, которые будут оцениваться на начальном этапе, представлены в табл. 9.1 О, Непрерывный атрибут Доход был предварительно квантован с использованием пороrов 25, 50 и 75 тыс. Таблица 9.10. Потенциальные разбиения Раs6иение ЛеВltlА ПОТОМОК, t L ПР.ВЫЙ ПОТОМОк, t" 1 Сбережения == Низкие Сбережения Е {Высокие, Средние} 2 Сбережения == Средние Сбережения Е {Высокие, Низкие} 3 Сбережения == Высокие Сбережения Е {Средние, Низкие} 4 Активы == Низкие Активы Е {Высокие, Средние} 5 Активы == Средние Активы Е {Высокие, Низкие} 6 Активы == Высокие Активы Е {Средние, Низкие} 7 Доход < 25 Доход> 25 8 Доход 50 Доход> 50 9 Доход < 75 Доход> 75 Для каждоrо потенциальноrо раэбиения вычислим значения составляющих выражения (9.4) и исследуем их влияние на значение Bcero показателя Q. Можно увидеть, что Q (s I t) увеличивается, коrда оба сомножителя в выраже N нии 9.4: 2, Р/. 'P R И Е(ри I tL) Ри I tR)) также увеличиваются. j 1 Обозначим сумму в выражении 9.4 через W (s I t), то есть: N W(slt)== E(p(Jltl.) p(JltR))' j 1 Компонент W (s I t) будет расти при увеличении разности в скобках, Данная CYM ма максимальна, коrда количество примеров, относящихся к одному классу, в обоих потомках максимально различается. Следовательно, значение окажется наиболь шим тorда, коrда оба потомка вообще не будут содержать примеров одинаковых классов. В частности, если классов только два, то оба потомка будут чистыми. Теоретически максимальное значение W (s I t) равно числу классов в обучающем множестве, Поскольку в нашем примере только два класса Высокий и Низкий, максимальное значение W(s I t) равно 2. В табл. 9.11 приведены результаты расчета компонентов выражения (9.4).
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 461 Таблица 9.11. Расчет значений меры Qдля потенциальных разбиений N!! Р , P R P(j I tL) P(j I tR) 2 . P L . P R W(S I t) Q(s I t) Низкиii Высокиii Низкиii Высокиii 1 0,375 0,625 0,333 0,667 0,8 0,2 0,46875 0,934 0,4378 2 0,375 0,625 1 О 0,4 0,6 0,46875 1,2 0,5625 3 0,25 0,75 0,5 0,5 0,667 0,333 0,375 0,334 0,1253 4 0,25 0,75 О 1 0,833 0,167 0,375 1,667 0,6248 5 0,5 0,5 0,75 0,25 0,5 0,5 0,5 0,5 0,25 6 0,25 0,75 1 О 0,5 0,5 0,375 1 0,375 7 0,375 0,625 0,333 0,667 0,8 0,2 0,46875 0,934 0,4378 8 0,625 0,375 0,4 0,6 1 О 0,46875 1,2 0,5625 9 0,875 0,125 0,571 0,429 1 О 0,21875 0,858 0,1877 Произведение PCP R возрастает с увеличением значений сомножителей. Это происходит, коrда доли записей одноrо класса в левом и правом потомках оказы ваются равны, Следовательно, мера Q (s I t) имеет тенденцию давать сбалансиро ванные разбиения, которые будут делить исходное множество на подмножества, содержащие примерно одинаковое количество записей, Теоретически максималь ное значение 2. P L 'P R == 2. 0,5, 0,5 == 0,5. В нашем примере только потенциальное разбиение 5 (см. табл. 9.11) дает произ ведение P L , P R , достиrающее теоретическоrо максимума 0,5, поскольку в результате записи были разделены на две равные rруппы по четыре в каждой, Наибольшее из наблюдаемых значений Q(s I t) было получено для разбиения 4 (см. табл. 9.11), rде Q(s I t) == 0,6248. Значит, для начальноrо разбиения CART выбе рет условие, являются ли активы К7Iиента низкими, Тоrда в результате разбиения будут созданы два потомка: в одном окажутся записи, в которых атрибут Активы принимает значение Низкие, во втором записи, в которых этот же атрибут при нимает значения Высокие и Средние. Полученное в результате данноrо разбиения дерево представлено на рис. 9.17, Активы = {Средние, Высокие} (эаписи 1, З, 4, 5, 6, 8) Рис. 9.17. Дерево после первorо разбиения Обе записи, в которых активы К7Iиента являются низкими и по этой причине оказавшиеся в левом узле, содержат одну и ту же целевую переменную, указы вающую на высокий кредитный риск Таким образом, узел является чистым. Узел
462 Часть 1. Теория бизнес аналиэа будет объявлен листом, и дальнейшее разбиение по данной ветви ПРОИЗВодиться: не будет. Записи в правом узле относятся к различным классам. Потребуется даль- нейшее разбиение, поэтому мы снова рассчитаем Q (s I t) и представим получеННЫе результаты в табл. 9.12. Обратим внимание на то, что ранее использоваННое раз- биение 4 больше не рассматривается. Таблица 9.12. Второй этап расчета значений меры Q N9 P L P R P(j I t L ) P(j I tR) 2 . P L . P R W(s I t) Q(s I t) Низкий Высокий Низкий Высокий 1 0,167 0,833 1 О 0,8 0,2 0,2782 0,4 0,1112 2 0,5 0,5 1 О 0,667 0,333 0,5 0,6666 0,3333 3 0,333 0,667 0,5 0,5 1 О 0,4444 1 0,4444 4 0,667 0,333 0,75 0,25 1 О 0,4444 0,5 0,2222 5 0,333 0,667 1 О 0,75 0,25 0,4444 0,5 0,2222 6 0,333 0,667 0,5 0,5 1 О 0,4444 1 0,4444 7 0,5 0,5 0,667 0,333 1 О 0,5 0,6666 0,3333 8 0,167 0,833 0,8 0,2 1 О 0,2782 0,4 0,1112 Наибольшее значение меры Q( s I t) == 0,4444 было получено для разбиений 3 и 7. Произвольным образом выберем разбиение 3 Сбережения == Высокие. В результате дерево будет дополнено двумя новыми узлами, В левом потомке окажутся запи си, в которых атрибут Сбережения принимает значение Высокие. Таких записей в исходном множестве Bcero две (см. табл. 9.4, записи 3 и 6). Однако они имеют разное значение целевой переменной: для записи 2 кредитный риск высокий, а для записи 3 низкий. Следовательно, данный узел содержит два класса и в нем возможно дальнейшее ветвление. Во второй узел этоrо разбиения будут отобраны оставшиеся записи 1,4,5 и 8. Как можно увидеть из табл. 9.4, все они имеют одну и ту же метку класса, указывающую на низкий риск кредитования заемщИ ков, Поскольку записи, попавшие в данный узел, относятся к одному классу, узел объявляется листом. Результирующее дерево представлено на рис, 9.18. Рис. 9.18. Дерево после BTOpOro разбиения
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 463 Новое разбиение возможно только для узла, содержащеrо записи 3 и 6, OTHO сящиеся к различным классам. Для разбиения можно использовать два ранее не применявшихся атрибута Доход и Друzие активы. Однако, поскольку в обеих записяХ сумма дохода одна и та же (25 000 у. е.), это ничеrо не даст. В то же время значения атрибута Друzие активы различаются: для записи 3 Средние, а для записи 6 Высокие, поэтому ero можно использовать для разбиения. Результи рующее дерево представлено на рис. 9.19. Сбережения = {Средние, Низкие} (записи 1, З, 4, 5, б, В) Рис. 9.19. Дерево после тpeтbero разбиения в общем случае алrоритм будет рекурсивно продолжаться, пока в дереве OCTa ются узлы, содержащие примеры, которые относятся к различным классам. Коrда узлов, для которых можно выполнить разбиение, не останется (то есть все подветви будут заканчиваться листьями), будет построено полное дерево. Но при работе с реальными наборами данных часто возникает ситуация, коrда получить абсолют но чистые узлы не удается, что ведет к возникновению ошибки классификации. Рассмотрим набор данных, представленный в табл. 9.13. Таблица 9.13. Набор данных N9 клиента Сбережения Друrие акrивы rодовой доход, Кредитный риск (недвижимость, тыс. у. е. автомобиль и т. д.) 1 Высокие Ниэкие <30 Ниэкий 2 Высокие Низкие <30 Низкий 3 Высокие Ниэкие <30 Высокий 4 Высокие Ниэкие <30 Высокий 5 Высокие Ниэкие <30 Высокий
464 Часть 1. Теория бизнес анализа Визуальный анализ табл, 9.13 показывает, что все представленные в ней IlО тенциальные заемщики характеризуются высокими сбережениями, но низкими (менее 30 тыс, у. е,) доходами. В то же время, несмотря на одинаковые значения атрибутов, целевые переменные для идентичных записей окажутся разными, Как известно, записи, [де одному и тому же набору значений входных переменных соответствуют разные значения выходных, называются противоречивыми и от них стремятся избавиться путем очистки данных. На практике подобная ситуация может сложиться, если атрибуты Сбережения и ДрУlие активы получены путем квантования соответствующих непрерывных атрибутов. Очевидно, что в данном случае невозможно получить чистые узлы, так как одинаковые значения независимых атрибутов не позволят разделить объекты по классам. В результате в листьях окажутся «смеси нескольких классов. В такой си туации можно отнести всех клиентов к катеrории BbIcoKoro кредитноrо риска. Тоrда вероятность Toro, что случайно выбранная из данноrо набора запись будет отнесена к соответствующему классу, составит 3/5 0,6, или 60 %. В то же время вероятность неправильной классификации составит 0,4, или 40 %. Данное значение называется ошибкой 'К.Лассификации (classification error rate). Если узлов, в которых допущена ошибка классификации, несколько, то полная ошибка дерева есть средневзвешенная Оlliибка по всем узлам. При этом в качестве весов используются доли записей в каж дом листе относительно общеrо количества записей в обучающем множестве. Реrрессионное дерево решений Как следует из названия алrоритма CART классификационные и реrpессионные деревья решений, он позволяет строить не только классификационные, но и perpec сионные модели. В основном процесс построения реrpессионноrо дерева аналоrичен процессу построения классификационноrо, но вместо меток классов в листьях будут расположены числовые значения, Фактически реrpессионные деревья реализуют кусочно постоянную функцию входных переменных (рис. 9.20). х, а t, " " " '. " t, t, Х, Рис. 9.20. Реrрессионное дерево решений б
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 465 На рис, 9.20, а представлено дерево решений, построенное для двух входных переменных Х! и Х 2 И содержащее 5 листьев, На рис. 9,20, б показано разбие f{ие (кусочно постоянная функция двух переменных), которое реализует данное дерево. В результате построения реrрессионноrо дерева в каждом листе должны OKa заться примеры с близкими значениями выходной переменной, Чем ближе будут эти значения, тем меньше их дисперсия. Поэтому дисперсия является хорошей мерой чистоты узла. Для минимизации квадратичной ошибки на обучающем множестве результат в листе определяется как среднее значений выходных переменных обучающих J1римеров, распределенных в данный лист. При этом мера «заrpязненности лис та 1 пропорциональна дисперсии Dy значений выходной переменной примеров в узле: 1 == D,! == Е {(Уп Еу /}, Torдa наилучшим разбиением в узле будет то, которое обеспечит максимальное уменьшение дисперсии выходной переменной. Следует отметить, что для реrрессионных деревьев решений упрощение важ нее, чем для классификационных. Это связано с тем, что реrpессионные деревья, как правило, получаются более сложными, чем классификационные, поскольку количество значений непрерывной целевой переменной HaMHoro разнообразнее, чем катеrориальной, Например, если значения непрерывной целевой переменной уникальны для каждоrо примера обучающеrо множества, то полное дерево будет содержать число листьев, равное числу примеров, Процедура упрощения дерева путем отсечения ветвей основана на анализе квадратичной ошибки на тестовом множестве: отсекаются все узлы, удаление которых не приводит к росту ошибки, превышающему заданное значение. 9.5. Упрощение деревьев решений Если не принять определенных мер, то дерево решений будет строиться до тех Пор, пока MorYT быть найдены новые разбиения, которые на последующем шаrе дают более чистые узлы, чем на предыдущем, В результате будет построено так называемое полное дерево с абсолютно чистыми листьями, Полное классифика ционное дерево дает нулевую ошибку классификации, а полное реrрессионное дерево нулевую ошибку реrрессии, но только на обучающем множестве. Каж дое дерево строится на конкретном обучающем множестве, поэтому исключение каких либо ветвей увеличивает ошибку дерева. Значит ли это, что полное дерево, то есть дерево, правильно распознавшее все примеры и содержащее только абсо лютно чистые листья, является наилучшим с точки зрения задачи классифика ции? Определенно нет, Вообще rоворя, полное дерево почти всеrда результат переобучения MO дели.
466 Чаcrь 1. Теория бизнес анализа Переобучение и сложность моделей Для деревьев решений сложность модели пропорциональна количеству Узлов, разбиений и листьев. Как уже упоминалось, дерево решений может выполнять разбиения до тех пор, пока не будут получены абсолютно чистые листья или пока листья не будут содержать только одно наблюдение. Такие деревья будут Показы вать прекрасные результаты на обучающем множестве, но не на новых данных. Друrая крайность: дерево решений имеет только один лист, совпадающий с корневым узлом, и любое наблюдение будет всеrда относиться к одному и тому же классу. В результате недообученuя (underfitting) дерево получается слишком простым и содержит недостаточно раз биений, чтобы обеспечить приемлемую точность классификации. Основной признак недообучения большая общая ошибка дерева. Очень важно найти баланс между точностью и сложностью дерева, С этой целью бьш разработан комплекс подходов и методов под общим названием упрощение (дe ревъев решений), в анrлоязычной литературе известный как pruning или reduction, Поиск компромисса между точностью и сложностью дерева решений проиллю стрирован на рис. 9.21. Здесь точками представлены наблюдения, которые долЖна воспроизвести (аппроксимировать) модель. Леrко увидеть, что данные содержат закономерную составляющую (плавный спад и подъем) и шум (разброс точек). Сплошной линией представлена аппроксимация, полученная на основе переобу ченной модели, она моделирует не только закономерности в данных, но и шум, что выражается в большой дисперсии модели. Пунктирная линия дает более rpубое приближение, что ведет к увеличению суммарной ошибки модели. 16 14 , , , 12 , 10 8 6 4 2 О О 5 10 15 20 Рис. 9.21. Переобучение и недообучение
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 467 Процесс упрощения деревьев решений можно рассматривать как поиск опти мзльной модели с точки зрения ошибки и дисперсии. 1 С позиции точности классификации эффект переобучения может быть проиллю стрирован следующим образом. На рис. 9.22, а представлена переобученная модель, разделяющая объекты на два класса круrи и треуrольники. Как видно, на обуча IOщем множестве она не допустила ни одной ошибки. Однако если эту же переобу ченную модель применить к новым (тестовым) данным, то будет допущено семь оши бок: четыре треуrольника и три Kpyra будут распознаны неправильно (рис. 9.22, 6). На рис. 9.22, в представлена более удачная модель: хотя на обучающем множестве она и допустила две ошибки, зато на тестовом множестве блarодаря более высокой обобщающей способности количество ошибок снизилось до трех (рис. 9.22, 2). Обучающее множество Тестовое множество . . f:::. . f:::. . f:::. f:::. . . . . . f:::. f:::. . . . f:::. f:::. f:::. f:::. f:::. f:::. . f:::. . . . f:::. . . f:::. f:::. . f:::. . f:::. f:::. . f:::. а б . . . f:::. f:::. . f:::. . f:::. f:::. . . . . . f:::. f:::. . . . f:::. f:::. f:::. f:::. f:::. f:::. . f:::. . . . f:::. . f:::. f:::. . f:::. . f:::. f:::. f:::. в r Рис. 9.22. Иллюстрация эффекта переобучения Критерии оптимизации деревьев решений Существуют два основных подхода к выбору оптимальной сложности дерева pe IlIений. 1. Принудительная остановка алrоритма с помощью условия, при выполнении KOToporo рост дерева автоматически остановится. Этот метод называется ранней остановкой (prepruning) (рис. 9.23). Здесь MOryт использоваться такие параметры,
468 Чаcrь 1. Теория бизнес анализа оrраничивающие рост дерева, как минимальное количество примеров в УЗJIе rлубина дерева, статистическая значимость разбиений и т. д, ' Рис. 9.23. Ранняя остановка построения дерева решений 2. Сначала строится полное дерево, затем производится ero упрощение Путем отсечения ветвей (postprunning) (рис, 9.24), В данном случае создается ПОсле довательность поддеревьев в порядке увеличения их сложности, После этоrо при помощи определенноrо критерия выбирается лучшее поддерево. Обычно в качестве TaKoro критерия используется эффективность работы дерева на Ba лидационном множестве, Полное дерево Дерево после отсечения ветвей tl+ Рис. 9.24. Отсечение ветвей ЗАМЕЧАНИЕ Обычно процесс построения дерева решений делится на две фазы: фазу роста и фазу упро- щения. Если упрощение производится первым способом, то rоворят, что имеет место ранняя остановка, и используют термин рrерruпiпg. Для упрощения вторым способом используют термин «отсечение ветвей», или роstрruппiпg. Предварительная остановка менее затратна в вычислительном плане, но воз никает риск потери хороших разбиений, которые MorYT следовать за плохими, Поэтому отсечение ветвей, как правило, позволяет получить лучшие результаты и пользуется большей популярностью. Алrоритм дерева решений строит лучшее разбиение в корневом узле, rде прИ сутствует вся выборка записей, На более низких уровнях, по мере Toro как записи распределяются по узлам, узлы становятся меньше и в них преобладают при мерЫ с близкими значениями атрибутов. С уменьшением числа примеров в узлах па
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 469 дает ценность связанных с ними правил, И если на не котором уровне разбиение дало узлы, содержащие один два примера, то такие разбиения не имеют смысла, поскольку обобщающая способность модели оказывается слабой. Данный фактор обычно связывают с переобучением адаптацией модели J( частнЫМ случаям, нетипичным примерам, шумам в данных и т, д. Вследствие переобучения модель оказывается неустойчивой, а ее поведение при работе с pe альными данными непредсказуемым, Способом решения проблемы является удаление неустойчивых раз биений путем объединения узлов с небольшим числом примеров. Подытожив, можно сказать, что упрощение деревьев решений преследует такие цели: О уменьшить сложность дерева и извлеченных из Hero правил, повысить ИНТер претируемость классификационной модели; О повысить устойчивость и обобщающую способность модели; о сократить вычислительные затраты, связанные с работой МодеЛИ, Рассмотрим основные подходы, применяемые в обеих методиках, Ранняя остановка Ранняя остановка процесс а построения дерева решений связана с некоторым оrраничением, по достижении KOToporo поиск новых разбиений прекращается. Наиболее типичными оrраничениями являются: О ошибка дерева; о минимальное допустимое количество примеров в узле; О rлубина дерева; о статистическая значимость разбиений. Простейший способ оrpаничить рост дерева задать некоторую ошибку, опреде ляемую как отношение числа неправильно классифицированных записей к общему числу записей, поступивших в корневой узел, Можно установить ошибку в размере 1 %, полаrая, что если из 1000 примеров 10 останутся нераспознанными, то это не окажет существенноrо влияния на качество решения задачи в целом, Такой метод оrраничения роста дерева решений иноrда называют оптимистическим, поскольку предполаrается, что минимальная ошибка будет у полноrо дерева, а у любоrо подде рева ошибка будет больше, Однако при работе с новыми данными это не всеrда так Из за переобучения. Поэтому при отсечении ветвей используется пессимистический Подход, который предполаrает, что в результате переобучения полное дерево даст худшие результаты, чем упрощенное. При задании минимально допустимоrо количества примеров в узле исходят из Toro, что листья, в которые попало очень мало записей (например, один или два), Являются следствием переобучения модели и ухудшают качество классификации при работе с новыми данными, хотя наличие таких узлов и листьев формально увеличивает точность дерева на обучающем множестве. Возникает вопрос: почему
470 Часть 1. Теория бизнес-анализа пример оказался в листе один и почему он не был распознан на более ранних ypOB нях? Вероятно, он является нетипичным, аномальным для обучающей выборки. Совокупность таких примеров образует шум в данных. Таким образом, не позволяя дереву создавать узлы и листья с малым числом примеров, можно снизить влияние шумов в данных. fII При определении максимальной rлубины дерева просто задается ДОПУСТИмое количество разбиений для каждой ветви. Например, если задана rлубина, равная 10, то по прошествии 1 О разбиений последний узел будет объявлен листом независимо от ero чистоты. Отсечение ветвей Если в узел или лист попали Bcero один два примера, то правило, с помощью KOTO poro был создан этот лист или узел, имеет низкую значимость. Следовательно, ис ключение из дерева данноrо правила и созданных с ero помощью узлов не приведет к заметному ухудшению работы модели. Проанализируем несколько популярных алrоритмов упрощения деревьев решений путем отсечения ветвей. Рассмотрим, например, методику отсечения ветвей, используемую в алrоритме CART Он строит дерево до тех пор, пока MOryT быть созданы новые разбиения, повышающие чистоту узлов. Как показано на рис. 9.25, внутри сложноrо полноrо дерева выделяется несколько более простых поддеревьев, каждое из которых пред ставляет собой компромисс между сложностью дерева и точностью классифика ции. Алrоритм CART определяет наборы таких поддеревьев, проверяет каждое на некотором валидационном множестве, и то из них, которое обеспечит наименьшую ошибку классификации, будет выбрано в качестве окончательной модели. Рис. 9.25. Выделение по,rщеревьев в полном дереве
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 471 CART обнаруживает поддеревья кандидаты путем последовательноrо OTce qениЯ ветвей от полноrо дерева решений. Цель отсечь ветви, имеющие наи меньшую классифицирующую способность, то есть ветви, которые классифици руют малое число примеров в расчете на лист. Для этоrо используется понятие скорректuроваююй ошибки (adjusted error rate). Это мера, которая увеличивает показатель, отражающий количество ошибок классификации каждоrо узла на обучающем множестве, налаrая штраф, учитывающий сложность дерева на основе количества листьев в нем. Она используется для определения самых слабых» ветвей, то есть тех, в которых количество неправильно классифицированных примеров недостаточно мало, чтобы компенсировать штраф, Затем такие ветви помечаются как удаляемые. Выражение для вычисления скорректированной ошибки имеет вид: R==E+a.(N), [де а корректирующий параметр, который постепенно увеличивается по мере создания новых поддеревьев; N количество поддеревьев; Е показатель количества ошибок (в простейшем случае это количество оши бок классификации, допущенных деревом в данном узле). Котда а == О, скорректированная ошибка равна показателю ошибки, то есть R == Е. Чтобы найти первое поддерево, вычисляются скорректированные показатели ошибок для всех поддеревьев, включая корневой узел. Котда скорректированный показатель ошибки становится меньше или равен соответствующему показателю для полноrо дерева, это значит, что обнаружено первое поддерево кандидат а,. Все ветви, которые не являются частью at, отсекаются, и процесс повторяется, Затем из поддерева aj аналоrичным образом получается а2 и т. д. до тех пор, пока все дe рев о не будет острижено» до корневото узла. Каждое из полученных в результате поддеревьев а; является потенциальным кандидатом, чтобы стать окончательной Моделью. Обратим внимание на то, что все кандидаты содержат корневой узел, а самый большой кандидат это полное дерево, После тото как определены все поддеревья кандидаты, из них нужно выбрать то, которое лучше остальных работает с новыми данными. Для этоrо через каждое Поддерево пропускается валидационный набор данных, и поддерево, допустившее наименьшее число ошибок, объявляется победителем, Фактически поддерево по бедитель это часть полноrо дерева, от которото бьmо отсечено достаточно ветвей для тото, чтобы компенсировать эффект переобучения, но недостаточно для тото, чтобы потерять полезную информацию. Влияние упрощения дерева на точность классификации качественно иллю стрируется с помощью rрафика на рис. 9.26. Здесь представлена зависимость Количества ошибок классификации Е от числа узлов N в дереве. На обучающем Множестве увеличение числа узлов ведет к постоянному уменьшению ошибки классификации. На тестовом множестве ошибка снижается только до опреде ленноrо числа узлов. Котда дерево становится слишком сложным, модель теряет
472 Часть 1. Теория бизнес анализа устойчивость и количество ошибок на тестовом множестве начинает возрастать. В этом и проявляется эффект переобучения. N Тестовое множество , , , Обучающее множество Пороr упрощения , ... ... . .. . ................................ Е Рис. 9.26. Зависимость ошибки классификации от числа узлов дерева Лоrично установить пороr упрощения, после KOToporo начинает проявляться эффект переобучения, то есть возрастание ошибки после достижения определенно ro количества узлов. Все узлы, созданные после данноrо пороrа, следует отсечь. Поскольку этот алrоритм основан только на количестве ошибок классификации и не рассматривает вероятности появлений классов, он заменяет любое поддерево, все узлы KOToporo выполняют одну и ту же классификацию, на ero родительский узел. Если целевая переменная является числовой и в качестве критерия выбора лучшеrо разбиения используется/-критерий Фишера, то естественным критерием оrраничения роста дерева будет р-значение. При этом рост дерева прекращается, коrда больше не удается обнаружить статистически значимые разбиения. Ha помним, что р значение (p value) это показатель, позволяющий принять или oTBeprHYTb статистическую rипотезу, например оценит)) вероятность Toro, что законы распределения двух выборок значимо различаются. Устанавливая пороr р значения, можно ужесточать или, наоборот, ослаблять уровень статистической значимости различия распределений в дочерних узлах, что и позволяет реryлиро вать rлубину дерева. 9.6. Введение в нейронные сети Ранее отмечал ось, что такие популярные инструменты Data Mining, как реrрессия и деревья решений, широко используемые для решения задач классификации и проrнозирования, имеют ряд оrpаничений. В частности, этим алrоритмам не все- rда удается разделить множество объектов на классы или построить реrрессион. ную зависимость с приемлемой ошибкой. Поэтому рассмотрим еще один подход,
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 473 основанный на машинном обучении, искусственные нейронные сети (artificial neural network), или просто Не'Йронные сети. В основе их функционирования лежит принцип обработки информации мозrом человека, и они привлекательны тем, что MoryT моделировать практически любые, в том числе нелинейные, зависимости. ОrовоРИМСЯ сразу, что речь дальше пойдет только о таких нейронных сетях, в KO торых применяются алrоритмы обучения с учителем. Сети Хопфилда и подобные йм модификации не рассматриваются. Структура и принцип работы нейронных сетей Мозr обрабатывает информацию образами, которые ассоциируются в сознании с определенными действиями, выводами, символами и т. д. Человеческий мозr может распознавать весьма сложные образы за несколько миллисекунд. Высокая эффективность обработки информации человеческим мозrом всеrда привлекала внимание специалистов. Создание вычислительных систем, действующих по аналоrичному принципу, открывает путь к созданию систем искусственноrо ин теллекта и обработки сложной информации в реальном времени. Очевидно, что обычные цифровые вычислительные машины для этоrо неприrодны, поскольку они оперируют не образами, а элементарными единицами данных битами. Толь ко для Toro, чтобы создать образ с помощью обычноrо компьютера, требуется ряд сложных операций, занимающих мнorо времени. Вывод напрашивается сам собой: необходимо разработать вычислительную систему, в основе которой лежал бы тот же принцип обработки данных, что и в че ловеческом мозrе. Интуитивно понятно, что такая система должна выполнять параллельную обработку данных. Образ должен восприниматься одновременно и полностью. Любой образ формально описывается набором признаков, таких как размеры, цвет, форма и т. д. (рис. 9.27). Поэтому для формирования образа нужно ввести в систему набор (вектор) значений соответствующих признаков. В теории нейрон ных сетей входной вектор часто так и называют образ внешней среды. На выходе система должна сформировать значение, указывающее на класс объекта. :i 1:[ QI а. () ':s; QI Ж 3 QI Ж 111 1'1 10 а. 10 О ? . Рис. 9.27. Распоэнавание образа по набору ero приэнаков
474 Часть Т. Теория бизнес анализа Остается ответить на вопрос: какими должны быть структура и принцип раБотыI системы, чтобы наиболее эффективно решать задачу распознавания образов? Есте- ственным было бы построить систему, моделирующую процесс обработки данных человеческим мозrом. Так возникла теория нейронных сетей. Появлению и развитию нейронных сетей во мнorом способствовали досruжения медицины и биолоrии в области знаний о функционировании нервной системы живых существ. В настоящее время с нейронными сетями связана целая отрасль знаний нейроинформатика, Это междисциплинарная сфера, объединяющая в себе элементы биокибернетики, электроники, стаruстики, прикладной математики и даже биомедицины. Искусственная нейронная сеть это вычислительная модель человеческоrо мозrа. Человеческий мозr состоит из примерно 1011 простейших клеток, называ емых 'Нейро'НGМИ, которые способны обрабатывать информацию. Нейроны связаны между собой, и количество связей оценивается как 1015. Каждый нейрон в отдель ности выполняет только простейшие преобразования, но параллельная работа большоrо числа нейронов и orромное количество связей между ними приводят к тому, что нейронная сеть в целом может выполнять очень сложные преобразова ния сиrналов в реальном времени. Кроме Toro, большое количество связей делает нейронную сеть устойчивой к ошибкам, возникающим в отдельных связях, pa бота всей сети не претерпевает'существенных изменений. Визуально нейронные сети обычно представляются в виде rpафов, в которых нейроны узлы, а связи линии, Достаточно часто нейронные сети упоминают ся как нейрокомпьютеры. Структурная схема типичной нейронной сети с тремя входами и двумя выходами изображена на рис. 9.28. Рис. 9.28. Пример нейронной сети Введем следующее формальное определение, которое отражает rлавное свойство нейронной сети как адаптивной системы. ОПРЕДЕЛЕНИЕ Искусственная нейронная сеть представляет собой параллельно-распределенную систему процессорных элементов (нейронов), способных выполнять простейшую обработку данныХ, которая может настраивать свои параметры в ходе обучения на эмпирических данныХ. Накопленные энания нейронной сети сосредоточены в весах межэлементных свяэей.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 475 Основные свойства нейронных сетей Нейронные сети обладают большой вычислительной мощностью по ряду причин. Во первых, нейронная сеть это параллельно распределенная структура. Bo вторЫХ, она способна к обучению и, следовательно, к обобщению. Кроме Toro, нейроННЫМ сетям присущ ряд полезных свойств и возможностей, делающих их привлекательными при решении мноrих задач обработки информации и сиrна лов. а Нели'Ней'Ность. Нейронная сеть в целом является нелинейной системой. Данное свойство особенно важно для моделирования процессов, которые нелинейны по своей природе. а Обучение 'На пpuмepax. Нейронная сеть способна изменять веса связей между нейронами с помощью наборов обучающих примеров. Результатом обучения является настройка параметров сети таким образом, что они в неявном виде хранят информацию об объектах, о решаемой задаче и предметной области. а Параллель'Ная обработка да'Н'НъLX. Поступающие сиrналы распараллеливаются, что значительно ускоряет обработку информации. а АдаптИ6'Ность. Нейронная сеть способна адаптировать веса связей между нейронами к изменениям во внешнем окружении. В частности, сеть, ранее обученная для решения одной задачи, может быть адаптирована (переобучена) для друrой задачи. О Отказоустойчивость. При большом количестве связей между нейронами потеря или искажение данных в отдельных связях не ведет к существенному ухудшению качества работы сети в целом. В последние несколько десятилетий наблюдается orромный интерес к нейросе тевым технолоrиям и значительный проrpесс в их исследовании, а также в разра ботке на их основе различных систем обработки информации и сиrналов. В Data Mining нейронные сети применяются для решения двух классов задач: классификации и реrpессии. Кроме Toro, с помощью специальноrо вида нейронной сети Кохонена можно решать и задачу кластеризации (см. rлаву 7 Data Mining: кластеризация» ). Сеrодня теория нейронных сетей хорошо развита, а на практике они нашли ши рокое применение в науке и технике, экономике и бизнесе, медицине и социальной сфере. Поэтому алrоритмы нейронных сетей содержатся в любой коммерческой аналитической платформе. Знание базовых принципов функционирования ней ронных сетей открывает перед аналитиком перспективы эффективноrо решения практических задач. Пример нейронной сети для оценки недвижимости Нейронные сети способны обучаться на примерах точно так же, как эксперт при обретает опыт в процесс е изучения предметной области и практической работы в ней. Продемонстрируем это на примере.
476 Часть Т. Теория бизнес анализа Почему автоматическая оценка недвижимости представляет такой интерес? Во первых, она дает areHTaM по недвижимости возможность эффективнее нахОДить соответствия между желаниями потенциальных покупателей и объектами продаж что позволяет улучшить работу даже неопытных areHToB, BO BTOpЫX, нейронны сети MorYT применяться при создании веб страниц, rде возможные покупатели моrли бы задавать параметры дома, который они хотели бы купить, и немедленно получать ответ на вопрос, сколько стоит дом их мечты. Нейронные сети работают аналоrично эксперту, который оценивает СТои мость объекта недвижимости на основе ero признаков. Очевидно, что квартиры в различных частях rорода будут стоить по разному. Тип дома, район, КОличество и площадь комнат и друrие признаки являются факторами, которые участвуют в формировании цены. Эксперт не применяет каких либо формул, а делает оценку на основе личноrо опыта и знания цен на аналоrичные дома. При этом ero знание не статично: он может распознавать и оценивать тенденции на рынке недвижи мости, приводя оценку в соответствие с ситуацией. Итак, объекты недвижимости описываются определенным набором CTaHдapT ных признаков, рассматриваемых экспертом и формирующих цену, Поэтому оценка недвижимости хорошо формализуется для решения методами perpec сии, в том числе нейросетевыми. На вход сети подаются значения признаков определенноrо объекта недвижимости, а на выходе формируется оценка ero стоимости. С получением входных данных обычно проблем не возникает, поскольку ис черпывающую информацию о рынке недвижимости можно получить с помощью различных areHTcTB. Помимо этоrо, существуют стандарты описания объектов недвижимости для ипотеки и вторичных рынков. Желаемый выход также xo рошо определен цена. Кроме Toro, имеется боrатый опыт в виде предыдущих продаж. Нейронные сети эффективный инструмент для решения задач классифика ции и предсказания, если задача хорошо формализована. Задача является хорошо формализованной, если выполняются три требования. 1. BxoДНbIe дюrnые хорошо mперпреmpуются: Дана задача, для решения которой требуется исследовать набор признаков, но неясно, как именно их использовать, чтобы получить желаемые результаты моделирования, 2. Желаемые результаты также хорошо интерпретируются. Аналитик знает, чему нейронная сеть должна научиться. 3. Доступный опыт. Имеется достаточно примеров, в которых присутствуют каК заданный вход, так и заранее известный выход, Первым шаrом в построении нейросетевой модели, позволяющей рассчи тывать стоимость недвижимости, является определение набора признаков, влияющих на эту стоимость (вопросы сбора и подrотовки данных к анализу рассматривались в rлаве 1). Пусть возможный набор таких признаков выявлен (табл.9.14).
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 477 Таблица 9.14. Входные признаки, влияющие на стоимость жилья N!! Наименование Тип значений 1 Микрорайон Строковый 2 Число комнат в квартире Целый 3 Тип дома Строковый 4 Возраст дома Целый 5 Этаж Целый 6 Этажность дома Целый 7 Общая площадь Вещественный 8 Жилая площадь Вещественный 9 Площадь кухни Вещественный На практике перечисленные признаки работают только для определенных rеоrpафических и климатических областей. Более полный набор будет включать сведения о демоrpафической ситуации, показатели уровня жизни и транспортной инфраструктуры, а также друrие признаки, которые интересуют клиента при по купке недвижимости. Затем строится модель, которая впоследствии будет использоваться для оценки целевых значений новых примеров. В процессе обучения ей предъявляются приме ры данные о прошлых сделках. Обучающие примеры должны содержать два допол нительных признака цену объекта и дату продажи, Цена нужна в качестве значения целевой переменной, а дату можно использовать для rpуппировки продаж. Взаимодействие нейронных сетей с друrими методами Data Mining Реrрессионные модели, деревья решений и нейронные сети cBoero рода три кита1> Data Mining: они входят в состав практически любой серьезной аналити ческой платформы. Решение мноrих бизнес задач с помощью методов Data Mining представляет собой достаточно сложную и мнorоэтапную процедуру, а результаты Применения той или иной модели не всеrда однозначно интерпретируемы. Имен Но поэтому использование не одной, а нескольких моделей может способствовать более эффективному решению задач. И реrpессионные модели, и деревья решений имеют свои преимущества и недостатки. Не лишены недостатков и нейронные сети. В частности, они не обладают объясняющей способностью деревьев решений, по скольку сами по себе веса нейронов, настраиваемые в процессе обучения, не несут для пользователя никакой смысловой наrpузки. Кроме Toro, выбор оптимальной конфиryрации нейронной сети для решения конкретной задачи не всеrда очевиден, а сам процесс обучения может оказаться весьма затратным как по объемам вычис JIений, так и по времени. Однако нельзя сказать заранее, без проб и ошибок, без детальноrо исследо Вания исходных данных, коrда та или иная модель проявит свои преимущества
478 Часть Т. Теория бизнес анализа либо недостатки. Во мноrих случаях реrрессионные модели, деревья решений и нейронные сети дополняют друr друrа и их комбинация дает наИЛучшее Ре- шение. Иноrда удается произвести декомпозицию сложной задачи на несколько бо- лее простых этапов, на каждом из которых применяется определенная модель Например, на первом этапе выделяются объекты с общими свойствами, зате внутри полученной rруппы устанавливается связь между входными и ВЫходны- ми переменными и т. д. Модели применяются последовательно, в соответствии с некоторым заранее настроенным сценарием. При этом результаты, получеННые одной моделью, являются исходными данными для друrой. При параллельном использовании моделей один и тот же обучающий набор данных <<проrоняется» одновременно через несколько моделей, которые затем сравниваются на основе полученных результатов. Модель, признанная наИЛучшей, выбирается в качестве рабочей. В отличие от деревьев решений, нейронные сети изначально не развивались внутри технолоrий Data Mining. Исследования нейронных сетей СТИМулирова лись разработками в областях искусственноrо интеллекта, машинноrо зрения, обработки изображений и сиrналов и др. Поэтому нейронные сети, пришедшие в Data Mining из научно технической сферы, стоят особняком. Несмотря на это, они оказались эффективным методом решения бизнес-задач, применяемые как в отдельности, так и совместно с друrими моделями. 9.7. Искусственный нейрон Ключевую роль в понимании принципов функционирования нейронных сетей иrрает знание Toro, как работает искусственный нейрон. В основе ero действия лежат те же принципы, по которым работает ero биолоrический прототип. Поэтому начнем с KpaTKoro рассмотрения свойств биолоrическоrо нейрона. Биолоrический нейрон Биолоrический нейрон это нервная клетка, являющаяся основным элементом нервной системы живых орrанизмов. Именно нейроны, взаимодействуя между собой, обеспечивают протекающие в нервной системе процессы поиска, передачи и обработки информации. Биолоrический нейрон состоит из тела клетки, или сомы, оболочки, со- держащей вещества, необходимые для обеспечения жизнедеятельности клетки. Размер тела клетки составляет от 3 до 100 мкм, Внутри расположено ядро. Нейрон соединяется с друrими нейронами через отростки двух видов: мноrочисленные тонкие, сильно ветвящиеся деllдриты и единственный aKCOll, более толстый и раз- ветвляющийся на конце. Сиrналы от друrих нейронов поступают в клетку через так называемые СИllапсы, образующиеся в местах контакта дендритов одноrо нейрона с телом друrоrо, а передаются через аксон (рис. 9.29).
rлава 9. Data Mining: классификация и реrpессия. Машинное обучение 479 Сома Аксон Рис. 9.29. Строение биолоrическоrо нейрона Передача сиrналов внутри нервной системы представляет собой сложный электрохимический процесс. Нервные импульсы передаются между нейронами с помощью специальных биохимических веществ, называемых нейромедиато рами, которые служат раздражителями, заставляющими нейрон переходить в возбужденное состояние. Если рассматривать процесс упрощенно, то под воздействием нейромедиаторов синапсы MorYT изменять способность переда вать сиrнал. Иными словами, каждой межнейронной связи (синапсу) можно поставить в соответствие некоторый коэффициент или вес, на который должно умножаться значение сиrнала, поступающеrо через синапс. Эти веса MorYT при нимать как отрицательные, так и положительные значения. Связи, имеющие положительные веса, называются возбуждающими, а имеющие отрицательные веса тормозящими. Сиrналы, принятые через синапсы, поступают в тело нейрона, [де происходит их суммирование. При этом одни связи являются возбуждающими, а друrие тормозящими. В зависимости от баланса возбуждающих и тормозящих связей нейрон сам может перейти в возбужденное состояние: как только суммарное воз буждение превышает некоторый nopOl активации, нейрон начинает через аксон передавать сиrналы друrим нейронам. Интенсивность сиrнала роли не иrрает, так как работает принцип «всё или ничеrо». Если соотношение возбуждающих и тормозящих связей таково, что пороr активации превышен, нейрон переходит в возбужденное состояние, если нет то в тормозящее. Данная ситуация поясняется на рис. 9.30, [де иллюстрируется так называ емая активационная функция нейрона. Она имеет вид ступеньки. Если сумма Возбуждающих и тормозящих сиrналов, поступающих на вход нейрона через Синапсы, не превышает HeKoToporo пороrа Т, то сиrнал на выходе нейрона в соответствии с активационной функцией равен О. Если сумма превышает этот пороr, то нейрон переходит в состояние возбуждения и передает сиrналы друrим нейронам.
480 Часть Т. Теория бизнес анализа Область торможения (ничеrо) Область воэбуждения (все) т т" s Рис. 9.30. Ступенчатая активационная функция Несмотря на orромное количество нейронов в мозrе, они составляют лишь He сколько процентов от ero объема; остальное место занято межнейронными связями, при этом число связей каждоrо нейрона не имеет аналоrов в электронной техни ке. Исследования показали, что именно cTporo орrанизованное взаимодеЙСтвие orpoMHoro количества синаптических связей обеспечивает высокую ПРОИЗВОДи тельность мозrа в плане обработки информации. Таким образом, нейрон выполняет простейшее преобразование: суммирует входные сиrналы, взвешенные с помощью весов синаптических связей, и сравни вает полученные значения с пороrом активации. Каждый нейрон обладает своим набором весов и пороrом, значения которых мотут рассматриваться аналоrично содержимому памяти компьютера. Блаrодаря OrpOMHOMY количеству работающих параллельна нейронов и числу связей между ними (каждый нейрон имеет до 20 000 связей) ошибки в работе OT дельных нейронов теряются в массе взаимодействующих клеток и не оказывают практически никакоrо влияния на результаты деятельности всей системы. OrpoMHble способности к обработке информации, исключительная устойчи вость и стабильность работы нейронной сети мозrа не моrли не привести к попыт кам создать вычислительные системы, действующие по аналоrичным принципам. Но, к сожалению, современные технолоrии не позволяют создавать нейронные сети, сопоставимые по масштабам с нейронной сетью мозrа. Искусственный нейрон Искусственный нейрон является процессорным элементом, на основе KOToporo строятся искусственные нейронные сети. Подобно биолоrическому прототипу искусственный нейрон выполняет взвешенное суммирование своих входов с по следующим нелинейным преобразованием результата, аналоrичным сравнению с пороrом активации. Искусственный нейрон состоит из таких основных элементов, как: О набор входных связей (синапсов) Х;, каждая из которых имеет вес Wj. ЗначениЯ весов нейронов мотут быть как положительными, так и отрицательными; О сумматор для суммирования входных сиrналов Xj, взвешенных весами щ; о активационная функцияJ(S), выполняющая преобразование (обычно нелиней ное) значений с выхода сумматора,
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 481 Модель искусственноrо нейрона схематично представлена на рис. 9,31, Х, Iw,'x, Х, Х, Рис. 9.31. Обобщенная модель искусственноrо нейрона в математическом смысле искусственный нейрон это абстрактная модель био лоrическоrо нейрона. Каждое значение Х;, поступающее по i й синапсической связи, умножается на вес связи щ. Тоrда взвешенная сумма входов нейрона будет: п 5 == W!'Xj +W2 'Х2 +...+W n 'Х п +Ь о == Z::::w; 'Х; +Ь о . i::::1 (9.5) Свободный член Ь о в выражении (9.5) называется с-мещеlluе-м (bias). Оно позво ляет дополнительно управлять уровнем активации нейрона, сдвиrая активацион ную функцию вправо или влево вдоль rоризонтальной оси. Увеличивая смещение, мы повышаем пороr активации и искусственно вводим некоторое торможение нейрона, а уменьшая, как бы подталкиваем нейрон, заставляем ero выдавать большее значение на выходе для меньших значений S. В некоторых случаях используется матричная запись выражения (9,5): смеще ние Ь О также рассматривается как дополнительный вес Wo при фиктивном входном значении Хо == 1. Тоrда выражение (9.5) записывается как п 5 == Wo 'Хо + Wl' Хl + W2 'Х2 +... + W n 'Х п + Ь о == Z::::w; 'Х;. ; o После Toro как полученная сумма будет преобразована с помощью активацион ной функции, выход нейрона у составит у == f(S). rрафически преобразование данных искусственным нейроном можно ПрОИk люстрировать следующим образом (рис. 9.32). у , /" :1 1 s Ь О Рис. 9.32. Лоrистическая активационная функция
482 Часть 1. Теория бизнес анализа По rоризонтальной оси rрафика откладывается результат взвешенноrо СУмми- рования входных значений нейрона, а по вертикальной ero выходное значение, Оно полностью определяется видом активационной функции, На рисунке Пред- ставлена так называемая лоrистическая активационная функция с насыщением или CUlMouaa, При увеличении 5 происходит оrраничение выходноrо значени нейрона между О и 1. Если 5 изменяется вблизи О, то выход нейрона меняется существенно, а область изменения определяется крутизной активационной Функ- ции. При уходе 5 в область насыщения выходное значение нейрона у стремится к О или 1. Активационная функция нейрона Активационная функция иrрает очень важную роль в работе как отдельноrо нейрона, так и нейронной сети в целом. При построении нейронных сетей MOryт использоваться различные виды активационных функций, основные из которых пред ставлены в табл. 9.15. Таблица 9.15. Распространенные активационные функции Название rрафик функции Формула Лоrистическая функция (сиrмоида) 1 1 T у== , 1 + е n' 5 rиперболический TaHreHc 1 а.') (JS I . . е e у== е n ' + e n. 1 5 Жесткий пороr (функция единичноrо у {1' S о . . . . . . . скачка) 1 у О, 5 < О о 5 Симметричный жесткий пороr у {1' S о . . . . . 1 У 1, S < о о 5 . . . . . . . . . 1 Выбор активационной функции зависит от характера преобразования, который должна выполнять нейронная сеть, а также от применяемоrо метода обучения, Например, лоrистическая функция и rиперболический TaHreHc имеют полезное свойство непрерывности и дифференцируемости на всей числовой оси, что позво
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 483 дяет использовать их в методах обучения, в которых присутствует производная активационной функции (так называемые rрадиентные методы). Жесткий пороr и: симметричный жесткий пороr удобно применять в бинарных нейронных сетях, [де выход нейрона может принимать только два состояния. Сиrмоидальный нейрон Одной из наиболее часто применяемых моделей нейрона является так называемый сиrмоидальный нейрон, использующий сиrмоидальную активационную функ ци: ю лоrистическую или rиперболический TaHreHc (см. табл, 9.15). Структура сиrмоидальноrо нейрона представлена на рис, 9,33, Х, Х 2 W 2 W, : XH s .I Рис. 9.33. Сиrмоидальный нейрон Основное преимущество сиrмоидальноrо нейрона непрерывность и диф ференцируемость активационной функции на всей числовой оси, что позволяет использовать для обучения нейронных сетей, построенных на таких нейронах, rрадиентные алrоритмы обучения. Модели нейронов, применяющие разрывные активационные функции, такие как линейный и жесткий пороrи, не позволяют использовать при обучении информацию об изменении значения у, поскольку Производная в точках разрыва функции не существует. К таким нейронным сетям Возможно применение только неrрадиентных методов обучения, что при водит К возрастанию длительности обучения и не rарантирует ero успех. Существуют и друrие модели искусственных нейронов, такие как модель Маккаллока Питтса и пр. Но мы оrраничим рассмотрение сиrмоидальным нейроном, поскольку большинство задач Data Mining MorYT быть эффективно решены с помощью сетей, построенных на нейронах данноrо ТИпа. Пример вычисления выхода нейрона Чтобы обеспечить лучшее понимание принципов работы искусственноro нейрона, покажем, как вычисляется результат на ero выходе. Рассмотрим нейрон с лоrисти Ческой активационной функцией, Пусть на вход нейрона поступает 4 сиrнала Х; (i == 1..,4), [де Х! == 0,4, Х2 == 0,7, Х 1 == 0,6 и Х4 == 0,2 (рис. 9,34). Значения входов нейронов нормируются к 1, Каждая Связь обладает некоторым весом щ. Значения весов зададим следующим образом: rю[ == 0,8, W2 == 1,2, Wз == 1,5 и W4 == 0,35. Смещение пусть будет Ь О == 0,5.
484 Часть 1. Теория бизнес-анализа Х, = 0,4 W,'X, х,=0,7 х,=0,6 Х. = 0,2 Рис. 9.34. Вычисление выхода нейрона в соответствии с формулой (9.5) рассчитаем взвешенную сумму входов ней рона: n==-1 S == EW; 'Х; +Ь О == 0,4.0,8 +0,7.( 1,2) +0,6.1,5 + ; 1 +0,2.0,35 +0,5 == 0,32 0,84 +0,9 +0,07 +0,5 == 0,95. Теперь вычислим результат преобразования полученной суммы с помощью сиrмоидальной активационной функции, полаrая крутизну а == 1: 1 1 У == , 109" == 0,72. 1 + е I<' 1 + е ,.) Из rpафика лоrистической функции можно увидеть, что выходные значения нейрона всеrда лежат в диапазоне от О до 1. Кроме Toro, значения у < 0,5 COOTBeT ствуют отрицательным суммам S, а у 0,5 положительным. Следует отметить, что при использовании сиrмоидальной активационной функции не выполняется принцип «все или ничеrо , реализуемый моделью, использующей ступенчатую активационную функцию единичноrо скачка. В сиrмоидальном нейроне зависи мость выхода от взвешенной суммы ero входов является плавной и непрерывной с насыщением для больших отрицательных и положительных S, Иными словами, можно выделить интервал [ S; 5], в котором выход нейрона будет существенно зависеть оТ S, Этот интервал определяется параметром крутизны а активацион ной функции. Подбирая параметр крутизны в процессе обучения нейронной сети, можно оптимизировать ero результаты, поэтому крутизна активационной функции является одним из настраиваемых параметров. 9.8. Принципы построения нейронных сетей Функционирование нейронной сети определяется не только тем, какие модели нейронов в ней используются, и видом их активационных функций, но и KO личеством нейронов, а также способом их соединения внутри сети. Параметры выбираются исходя из особенностей решаемой с помощью нейронной сети зада
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 485 чи, уровня ее сложности и трудоемкости, количества используемых переменных, характера исходных данных. При реализации нейронной сети и определении ее параметров необходимо выбрать нейросетевую архитектуру и конфиryрацию. При этом под архитектурой понимаются общие принципы построения нейронных сетей для определенноrо класса задач, а под КОllфuzурацuей параметры конкретной нейросетевой модели. Если решаемая задача является типовой и хорошо известной, что характерно для задач Data Mining, то при создании нейронной сети можно воспользоваться одной из [отовых конфиryраций. В научных и технических приложениях, [де сложность и разнообразие задач HaMHoro выше, в некоторых случаях приходится синтези ровать не стандартные нейросетевые конфиryрации, что может оказаться весьма трудоемким и длительным процессом, Построение и обучение нейронных сетей часто называют искусством, поскольку выбор конфиryрации сети и параметров ее обучения не всеrда однозначен, он во мнorом определяется опытом и даже интуицией аналитика. Конечно, в данной об ласти существуют теория и общие рекомендации, но сильная зависимость работы нейронных сетей от особенностей входных данных и характера искомых законо мерностей делает процесс построения классификационных и реrpессионных Moдe лей на их основе неоднозначным: при поиске оптимальноrо решения приходится использовать метод проб и ошибок. Прежде чем приступить к рассмотрению основных нейросетевых архитектур и конфиryраций, а также рекомендаций по выбору соответствующих параметров, введем некоторые базовые понятия. Основные rpYnnbI нейронов в сети В зависимости от расположения в сети и выполняемых функций все нейроны MOryT быть разбиты на rpуппы. 1, Входные нейроны. На них поступают значения переменных вектора входноrо воздействия Х == (Хl, Х2... ХпУ, [де n число компонентов вектора, равное числу входных переменных модели; соответственно ему же будет равно число входных нейронов, Совокуrnюсть входных нейронов образует вход нейронной сети. Входные нейроны не выполняют обработку информации: их задача принять компонентыI вектора входноrо воздействия и распределить по друrим нейронам сети, 2. Выходные нейроны. Служат для вывода результатов обработки нейронной сетью входноro вектора, На их выходах формируются компоненты выходноro вектора у == (у 1, У2... У тУ, [де т число выходных нейронов, которое соответствует числу выходных переменных модели. В общем случае т 7: n. Выходной вектор У часто называют откликом, или реакцией, сети на заданное входное воздействие, а сеть в процессе функционирования реализует функцию мноrих переменных У == ЛХ). 3, Скрьпые нейроны. Расположены внутри сети. Если у входных нейронов с дpy rими нейронами сети связаны только выходы, а у выходных нейронов только входы, то скрытыми можно назвать все нейроны, не имеющие связи с внешним
486 Часть 1. Теория бизнес анализа окружением сети. Именно скрытые нейроны выполняют преобразование дaH ных в нейронной сети. Архитектуры нейронных сетей Функциональные возможности нейронной сети возрастают с увеличением ЧИСла нейронов и связей между ними. Чем больше связей, тем больше количество весов, настраиваемых в процессе обучения нейронной сети, При увеличении числа Beco вых коэффициентов возрастает число возможных состояний нейросетевой модели, а значит, и количество возможных функциональных преобразований. Однако усложнение модели неизбежно приводит к росту вычислительных затрат, связан ных с ее обучением и работой. Кроме тоro, уровень сложности задач Data Mining не требует применения нейронных сетей с большим числом связей, поэтому при выборе конфиrурации нейронной сети всеrда следует искать компромисс. Единственное жесткое требование, предъявляемое к конфиrypации сети, это соответствие размерности вектора входноrо воздеЙСТВI-fЯ числу входов нейронной сети и размерности вектора отклика числу выходных нейронов. Искусственную нейронную сеть прямоrо распространения, в которой при сутствует хотя бы один скрытый слой, называют м1l0loслойllыM nepcenmp01l0M (multilaya perceptron, MLP). Из всех архитектур нейронных сетей именно он с сиrмоидной функцией активации является базовым для решения задач класси фикации и реrpессии. Существуют нейронные сети, в которых сиrнал проходит не только в прямом направлении, но и в обратном, в структуре их связей присутству ют замкнутые циклы, однако такие сети реже применяются в Data Mining. Принципыфункционирования мноrослойноrо персептрона Рассмотрим сначала несложную конфиryрацию мноrослойноrо персептрона, co держащую один скрытый слой (рис. 9.35, смещением пренебреrли). Слой 1 Слой 2 Рис. 9.35. Мноrослойный персептрон Нейроны выходноro слоя обрабатывают данные и выполняют вывод результата. Обозначим каждую связь внутри сети как <RJt, rде i номер нейрона входноrо слоя,
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 487 С выхода KOToporo выходит связь;} номер нейрона выходноrо слоя, на вход KO roporo поступает связь (полаrаем, что нейроны в слоях нумеруются сверху вниз). Индекс k указывает на слой сети, к которому относится данная связь. Например, w; ) это первая связь первоro нейрона первorо слоя сети. При подаче на вход вектора Х == (Хl, Х2... ХОУ сеть сформирует на выходе ДBYX компонентный вектор У == (у [; У2У, значения элементов KOTOporO вычисляются по формуле: Yj == f [ t XiWij ] , , 1 (9.6) [де f активационная функция нейрона. Рассмотрим пример, который иллюстрирует процесс формирования выхода в мноrослойном персептроне, содержащем три входных нейрона, три нейрона CKpbIToro слоя и два нейрона выходноrо слоя (рис, 9.36), Скрытый слой Рис. 9.36. Сеть 3 х 3 х 2 Пусть на вход нейронной сети поступает вектор Х == (0,4; 0,6; 0,8)1; а веса связей установлены в соответствии с табл, 9.16. Таблица 9.16. Начальные веса нейронов l й спой 2 й спой W(I) o 25 W ) == 0,17 11 , (1) 2 (2) 25 w l2 == 1, W 12 == 1, т;? == 1,5 (21 Ш 21 0,25 w ? == 0,5 (2) W 22 == 2,25 ш ==о,75 (2) W:!1 == 0,65 (1) 07 (2) 7(') 2:1 , W:l2 == 0,76 П одолжение .р р
488 Часть 1. Теория бизнес аналиэа Таблица 9.16 (продолжение) l-й спой 2-й спой WI{ == 0,45 WV == 1,9 w == 0,9 На каждый нейрон cKpbIToro слоя поступает один и тот же входной вектор, распределяемый нейронами входноrо слоя. Тоrда на выходах сумматоров нейро нов cKpbIToro слоя будут получены следующие значения: (1) (1) (1) (1) O О 5 51 X1'WII +X2'W21 +ХЗ'W ЗI ,4. ,2 + + 0,6.1,2 + 0,8.0,45 == 0,1 +0,72 +0,36 == 1,18; (1) (1) (1) (1) О 4 1 2 О 6 О 75 52 ХI'W12+Х2'W22+ХЗ'WЗ2 ' " +,', + + 0,8.1,9 == 0,48 + 0,45 + 1,52 == 2,45; 51) == x1.wi +Х2 'W +Хз 'W ==0,4.( 1,5)+0,6.( 0,7)+ + 0,8, 0,9 == 0,6 0,42 +0,72 == о,ЗО. Если используется лоrистическая активационная функция с параметром KPy тизны, равным 1, то выходы нейронов 1 ro слоя будут: yll) == f( 511)) == 1/( 1 + е 1.18 ) == 0,86; y l) == f( 5 1)) == 1/( 1 + e 2, 5) == 0,92; y l) == f( 5 1)) == 1/(1 + е О , з ) == 0,42. Таким образом, вектор входов для нейронов cKpbIToro слоя составит Х I == == (0,86; 0,92; 0,42). Тоrда 512) == Х1 . wl ) + Х2' w ) + ХЗ' W: ) == 0,86, 0,17 + 0,92. ( 0,25) + + 0,42.0,65 == 0,15 0,23 + 0,27 == 0,9; (2) (2) (2) (2) О 86 25 92 2 25 52 ==XI' W I2 +X2'W22 +ХЗ'W З2 ==, ,1, +0, ., + + 0,42.0,76 == 1,08 + 2,07 +0,32 == 3,47. Выходы нейронной сети будут иметь следующие значения: y12) == f( 512)) == 1/( 1 + e O,19) == 0,54; УР) == f( 5 2)) == 1/( 1 + е З'П) == 0,97.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 489 выбор числа нейронов в мноrослойном персептроне При выборе конфиrypации нейронной сети для решения конкретной задачи очень ваЖно правильно определить оптимальное число нейронов, Строrих соотношений, I10ЗВОЛЯЮЩИХ точно рассчитать ero, не существует, Тем не менее можно привести ряд рекомендаций (отчасти эмпирических), которые помorут оценить приемлемое для pe шенИЯ той или иной задачи число нейронов. Вообще, mперес представляет не столько количество нейронов сети, сколько число связей между ними, так как имеmю настрой ка весов связей определяет выполняемое сетью функциональное преобразование. Чтобы исключить переобучение нейронной сети, нужно придерживаться сле дующих рекомендаций. О Число нейронов во входном и выходном слоях жестко определяется числом входных и выходных переменных модели соответственно. О Число нейронов в CKpbIТbIX слоях И число CKpbIТbIX слоев выбираются таким обра зом, чтобы количество образованных ими связей было меньше числа обучающих примеров как минимум в два три раза, Рассмотрим конкретный случай. Пусть обучающее множество содержит 150 при меров, Полаrая, что число связей в нейронной сети должно быть в три раза меньше числа примеров, получаем общее число связей в сети С == 150/3 == 50. Пусть обуча ющий набор данных содержит четыре входных переменных и одну выходную. Тоrда нейронная сеть должна иметь четыре входных нейрона и один выходной. Рассмотрим две возможные конфиryрации с одним скрытым слоем и с двумя. В случае одноrо cKpbIToro слоя можно составить соотношение 4 . t + 1 . t == 50, rде t число нейронов в скрытом слое. Можно записать: 4 . t + 1 . t == t. (4 + 1) == 5 . t == 50, откуда t == 10. Следовательно, для обеспечения 50 связей нейронная сеть с че тырьмя входными нейронами, одним выходным и одним скрытым слоем должна содержать в нем 10 нейронов (рис. 9.37, а). Аналоrично определяем, что в случае двух скрытых слоев можно использовать варианты по 5 нейронов в слое; в первом слое 7 нейронов, во втором 3 и т. д. (рис, 9.37, 6). а Рис. 9.37. Возможные конфиryрации сетей с SO свяэями 6
490 Часть 1. Теория бизнес анализа 9.9. Процесс обучения нейронной сети в процессе работы нейронная сеть реализует преобразование данных, которое в об щем виде может быть описано функцией мноrих переменных У == f (Х). Это преоб разование определяется конфиryрацией сети (числом нейронов, способом их co единения, количеством связей, видом активационной функции и смещениями), а также весами межнейронных связей. Поэтому после Toro как конфиrypация сети задана, необходимо выполнить соответствующую настройку весов, то есть Произ вести обучение нейронной сети, чтобы она моrла выполнять требуемую обработку данных, Пусть F множество всех функций, которые возможно реализовать при помощи нейронной сети с данной конфиrурацией. Тоrда это множество будет содержать и функцию g: У == g(X), которую должна выполнять нейронная сеть после обучения. Функцию g часто называют целевой функцией, При Этом для обучения нейронной сети целевая функция должна быть задана в табличном виде парами значений «известный вход известный выход», Каждая пара (X i , Y i ) образует обучающий пример. Очевидно, что связь между входным и цe левым вектором в каждом примере обучающеrо множества должна определяться функцией g;, Таким образом, процесс обучения нейронной сети будет сводиться к подбору ее весовых коэффициентов так, чтобы из всех возможных функций f Е F нейронная сеть реализовывала функцию f', максимальное близкую к функции g. Степень близости функции f', которую реализует нейронная сеть с данным состоянием весов, и целевой функции g определяется ошибкой Е == f' g. Следовательно, обучить нейронную сеть значит настроить веса ее нейронов так, чтобы для всех пар (х" У,) функция ошибки Е принимала минимальное значение. Задачи, в которых требуется минимизировать или максимизировать HeKO торую функцию, называются задачами оптимизации. В случае нейронной сети задачу оптимизации можно интерпретировать с помощью рис. 9,38. На нем cxe матически пред ставлено пространство F функций, которые MOryT быть реализо ваны нейронной сетью с данной конфиrурацией. Тоrда каждая из этих функций может быть пред ставлена точкой в пространстве F. Обучение нейронной сети является итерационной процедурой, rде на каждой итерации про изводится подстройка весов нейронов. Следовательно, после завершения каждой итера ции сеть будет принимать некоторое новое состояние и реализовывать новую функцию, Например, на рис, 9.38 точкаf соответствует начальному состоянию сети, которое она приобрела в результате инициализации задания начальных значений весов нейронов (обычно небольшими случайными значениями), после первой итерации веса нейронов меняются и сеть переходит в состояние, в KO тором реализуется функцияf!, после второй итерации сеть реализует функцию f2 и Т, д. Так продолжается до тех пор, пока рассоrласование между целевой функци ейg и функциейj;, реализуемой нейронной сетью после i й итерации, не станет
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 491 ,-,,-, '" " 9 ""' ..........,, , , 1 , , F Рис. 9.38. Обучение нейронной сети как задача оптимизации меньше заданной величины. Поскольку рассоrласование определяется ошибкой Е, то обучение будет продолжаться до тех пор, пока не будет найдено состояние сети, обеспечивающее минимальную ошибку E rnillJ или ошибка не станет меньше HeKoToporo пороrа Е. MorYT использоваться и друrие условия остановки обучения, например достижение заданноrо числа итераций. Роль выходной ошибки сети в процессе обучения Возникает вопрос: как менять веса нейронов на каждой итерации, чтобы достичь требуемоrо состояния весов за приемлемое число итераций? Само собой напра шивается решение перебрать все возможные состояния весов сети и выбрать то из них, которое даст минимальную ошибку. На практике такой подход нереализуем Из за orpoMHoro числа возможных комбинаций весов в процессе обучения сеть может бесконечно блуждать по пространству F. Более удачным решением является управление процессом обучения с помощь'ю ошибки Е. Действительно, при каждом изменении состояния весов сети ошибка будет или уменьшаться, или увеличиваться. Тоrда естественным решением будет принимать только те корректировки весов, которые приводят к уменьшению ошиб ки. Хотя данный метод и позволит придать процессу обучения нужное направле ние, но все еще может потребовать слишком большоrо числа итераций. Поэтому на практике для вычисления коррекций весов на каждой итерации используют различные методы, позволяющие достичь нужноrо состояния нейронной сети за минимальное число итераций. Эти методы позволяют определить правила, по
492 Часть 1. Теория бизнес анализа которым производится вычисление новых значений весов. Такое правило назЫва ется aJllоритмом обуче1lИЯ 1lеЙрО1l1l0Й сети, В настоящее время разработано MHoro алrоритмов обучения нейронных ce тей, в основе которых лежат различные методы решения задач оптимизации (некоторые из них будут рассмотрены в следующем разделе). Выбор алrОРИтма зависит от особенностей решаемой задачи, в частности от количества данных, ис пользуемых для обучения, их качества и требования к уровню точности решения задачи. Например, одни алrоритмы работают очень быстро, но являются крайне неустойчивыми при наличии в данных шумов и аномальных значений. Друrие, наоборот, требуют для обучения большеrо числа итераций, но позволяют достичь хороших результатов даже при низком качестве данных, Поэтому выбор алrОритма обучения для конкретной задачи может быть неочевидным, требовать исследова ния особенностей данных, использовать метод проб и ошибок, опираться на опыт и интуицию аналитика. Независимо от алrоритма, обучение с использованием ошибки (с учителем) производится по схеме, представленной на рис, 9.39. Поясним ее по шаrам, а для упрощения выкладок будем рассматривать сеть с одним выходным ней роном. 1. Инициализация задание начальноrо состояния сети путем установления ее весов небольшими случайными значениями. Для обобщенноrо состояния весов сети введем обозначение W, тоrда начальное состояние будет W o . Также введем счетчик итераций i, 2. Начинаем первую итерацию и увеличиваем i на 1, 3. Подаем на вход сети первый обучающий пример (Х;, d;), на который сеть реаrи рует выходным значением у. 4, Вычисляется ошибка, допущенная сетью на данном примере, как разность между целевым выходом d; и реальным выходом сети У;, Если ошибка Е; меньше HeKoToporo достаточно малоrо пороrа Е или число ите раций превышает некоторое заданное значение i m 3X! т.о обучение завершается. Эти оrраничения часто используются, потому что достижение малоrо пороrа ошибки rарантировано не всеrда. Это может быть связано с неудачным выбором конфиrурации сети, алrоритма обучения, с проблема ми в обучающих данных ит,д. Если пороr ошибки сети и (или) максимальное число итераций не достиrнуты, то в соответствии с заданным алrоритмом обучения на основе ошибки, полученной на четвертом шаrе, вычисляются новые веса нейронов сети и делается их KoppeK ция. Далее производится возврат к пункту 2, счетчик итераций увеличивается на 1 и начинается следующая итерация. После изучения данной процедуры возникнет два вопроса. О Как выбрать значение пороrа ошибки Е, по достижении KOToporo можно завер шать процедуру обучения и считать процесс обучения успешным? О Как выбрать количество итераций imaX! по достижении которorо процесс обуче ния будет остановлен автоматически?
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 493 да Да Вычисление HOBoro состояния весов W,= g (Е) Рис. 9.39. Обобщенная блок схема процесс а обучения нейронной сети Выбор nopora ошибки При выборе пороrа ошибки Е следует помнить, что даже достаточно малая резуль Тирующая ошибка, полученная в процессе обучения, не rарантирует хорошей pa боты сети с реальными данными. Формально ошибка показывает, насколько точно MoryT быть настроены веса нейронов для воспроизведения на выходе сети целевых значений обучающих примеров. Тем не менее ошибка позволяет оптимизировать I<онфиrypацию нейронной сети предпочтение отдается варианту с минимальным значением ошибки.
494 Часть 1. Теория бизнес анализа Ч то касается пороrа Е, то выбрать ero оптимальное значение МОЖно только опытным путем в зависимости от особенностей решаемой задачи, ВОЗМОЖностей сети, качества обучающих данных и от Toro, что вообще хочет получить аНaJIИТI1:К Так, ошибка 10 7 может оказаться в принципе недостижимой, а ошибку 10 З Мож но получить за малое число итераций, и построенная в результате модель будет прекрасно работать. Однако определить это можно только после мнorократных экспериментов. Выбор числа итераций Точно так же выбрать предельное число итераций можно лишь путем MHoroKpaT ных экспериментов. С одной стороны, оно должно быть достаточным для полу чения малой выходной ошибки, С друrой слишком большое число итераций требует MHoro времени на обучение сети. На практике сначала число итераций устанавливают достаточно большим, затем осуществляют пробный (<проrон;,> сети и контролируют динамику изменения выходной ошибки, По достижении HeKoToporo числа итераций ошибка перестает уменьшаться и стабилизируется. Это rоворит о том, что сеть в данной конфиryрации достиrла предела Своих B03 можностей и дальнейшее обучение не приведет к увеличению точности. Поэтому максимальное число итераций должно быть примерно таким, которое необходимо для обеспечения минимальной ошибки, Режимы обучения в приведенной на рис. 9.39 схеме коррекция весов нейронов производится после предъявления сети каждоrо примера обучающей выборки. Данный режим обу чения называется oпliпe, или «обучение по шаrам», Здесь на каждой итерации коррекция весов рассчитывается на основе ошибки, которую сеть показала на одном примере. Таким образом, шаr обучения это цикл, в котором на вход сети подается один случайно выбранный пример из обучающеrо множества и на основе ошибки, допущенной сетью на этом примере, производится коррекция весов сети. Широко используется друrой режим обучения, называемый offliпe, или «обу чение по эпохам». В этом случае коррекция весов нейронной сети производится после подачи на ВХОД всех примеров обучающеrо множества. Тоrда эпоха это цикл обучения, в котором на ВХОД сети подаются все примеры обучающеrо MHO жества, рассчитывается среднеквадратическая ошибка по всем примерам и на ее основе корректируются веса. Преимуществом режима oпliпe является быстрота обучения. Поскольку под стройка весов про изводится после каждоrо при мера, то желаемое состояние весоВ сети может быть достиrнуто относительно быстро. Но данный подход имеет Heдo статок чувствительность к наличию в обучающих данных шумов и аномальнЫХ значений. Действительно, если какой либо пример содержит аномально большое
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 495 значение, скорее Bcero, сеть на данном примере даст большую ошибку, что может вызвать сбой в процессе обучения. Поэтому при использовании алrоритмов обу чения, работающих в режиме опНпе, необходимо уделять повышенное внимание очистке данных. Алrоритмы, использующие режим обучения offliпe, более устойчивы, поскольку среднеквадратическая ошибка по всем при мерам обучающеrо множества более состоятельная оценка рассоrласования текущеrо состояния сети и желаемоrо. Таким образом, если заранее известно, что обучающие данные имеют низкое качество, то предпочтение следует отдать алrоритмам, реализующим обучение по эпохам. Если обучающие данные достаточно равномерны и не содержат аномалий, противоречий и шумов, то использование алrоритмов, реализующих обучение по шаrам, ускорит процесс обучения, Обучающая выборка Настройка весов нейронной сети производится с помощью обучающеrо набора данных, или обучающей выборки. Определение, структура, требования и особен насти формирования обучающих выборок для построения аналитических моделей, основанных на машинном обучении, подробно рассматривались в разделах 1.7, 3,6 и S, 11. Поэтому остановимся только на тех особенностях обучающих выборок, которые характерны для нейронных сетей, Одной из особенностей функционирования нейронных сетей является необ ходимость нормализации значений входных полей, причем как числовых, так и катеrориальных (для дерева решений, к примеру, такая процедура не нужна), у числовых полей распространена обычная минимаксная нормализация, причем принято входные признаки нормировать в диапазон [ 1; 1], а выходные [о; 1], Кодирование катеrориальных переменных обязательная процедура. Здесь используются любые известные методы: уникальные числовые коды (для упо рядоченных признаков ) либо двоичное кодирование по маске или компактным кодом (для неупорядоченных признаков ). Продемонстрируем это на примере с оценкой недвижимости, рассматривав шемся в разделе 9.6. Пусть требуется обучить нейронную сеть для пред сказания оценочной стоимости квартиры и пусть обучающая выборка содержит четыре входных поля и одно выходное. Используя один скрытый слой с тремя нейронами в нем, получим конфиryрацию нейронной сети, представленную на рис, 9.40. Данная конфиrурация содержит 1S межнейронных связей, веса которых будут настраиваться в процессе обучения (связь, отвечающая за смещение, не показана). Следовательно, полаrая, что число примеров обучающей выборки должно быть как минимум в два раза больше, чем число межнейронных связей, для обучения потребуется не менее 30 примеров. А если предположить, что для повышения достоверности предсказания целесообразно учитывать еще и площадь кухни, то во входной слой сети будет добавлен еще нейрон. Тоrда количество связей сети увеличится до 18, что потребует использования как минимум 36 примеров.
Общая площадь 496 Часть 1. Теория бизнес анализа Число комнат Воэраст дома Тип дома Цена Рис. 9.40. Структура мноrослойноrо персептрона для решения эадачи о недвижимости Проблема переобучения Так же как и для друrих моделей, основанных на машинном обучении, для нейрон ных сетей актуальна проблема переобучения. Переобучение нейронной сети заклю чается в слишком точной подстройке весов, в результате чеrо сеть адаптируется не к общим закономерностям в данных, а к изменениям, обусловленных случайной составляющей. Как и во всех подобных случаях, переобучение нейронной сети приводит к ухудшению ее обобщающей способности, то есть способности работать с новыми данными, не участвовавшими в процессе обучения. Как rоворилось в разделе 1.7, чтобы избежать переобучения сети, нужно ис пользовать тестовое множество, содержащее примеры, которые не использова лись в процессе обучения. Если сеть по результатам обучения покажет низкую ошибку как на обучающем, так и на тестовом множестве, то переобучения не произошло. Если на обучающем множестве ошибка низкая, а на тестовом BЫ сокая, имеет место переобучение сети и ее обобщ щая способность будет ниже, чем ожидалось. Некоторые особенности формирования обучающей выборки Чтобы построить хорошую нейросетевую модель, аналитику приходится затра чивать MHoro усилий, идти методом проб и ошибок, использовать весь свой опыт и интуицию. Ключевым моментом при построении модели является удачное формирование обучающей выборки. В определенном смысле все рекомендации, касающиеся формирования обучающей выборки, эвристические. Тем не менее их применение на практике во мноrих случаях позволяет добиться хороших pe зультатов. Кратко рассмотрим дополнительные рекомендации, помимо тех, что обсуждались в разделе 5.11.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 497 Покрытие значений всех признаков обучающая выборка должна быть разнообразной. В примере об оценке недвижИ мости это означает, что в рассмотрение должны включаться квартиры всех ценовых катеrорий от экономкласса до элитных, с большой и малой общей площадью и т. д, Желательно, чтобы обучающее множество содержало несколько примеров для каждоrо значения катеrориальноrо признака, а также для всех диапазонов значений упорядоченных признаков. Кроме Toro, желательно, чтобы значения признаков были распределены paBHO мерно, то есть ни один диапазон не доминировал в процесс е обучения. Например, еслИ в обучающей выборке будет рассматриваться 90 % квартир на первом этаже, то нейронная сеть вряд ли распознает закономерность Toro, как этажность влияет на стоимость. Выбор количества признаков Количество входных признаков воздействует на нейронную сеть в двух аспектах, Во первых, чем больше входных признаков, тем больше число входных нейронов и тем больше весов будет в сети, что приведет к росту риска переобучения и увели чению размера обучающеrо множества. BO BTOpЫX, чем больше входных признаков, тем больше требуется итераций для оптимизации весов. Проблема отбора признаков, которые будут использоваться в качестве BXOД ных при построении различных аналитических моделей, выходит далеко за рамки нейронных сетей. Часто хорошие результаты дает интуитивный подбор признаков, Метод проб и ошибок Работу начинают с набора признаков, которые, как ожидает ся, влияют на результат, Затем экспериментально проверяют, исключение каких признаков ухудшает модель. Во мноrих случаях представляет интерес комбини рование признаков. Размер обучающей выборки Чем больше входных признаков используется при обучении нейронной сети, тем больше примеров потребуется включить в обучающую выборку для достаточноrо покрытия всех значений признаков. К сожалению, правила, позволяющеrо Bыpa Зить связь между числом входных признаков и числом обучающих примеров, не существует, Если обучающее множество невелико, нейронная сеть имеет тенденцию к пере обучению. Переобучение может возникнуть, если число обучающих примеров соизмеримо с числом весов сети. Конечно, обратной стороной увеличения числа обучающих примеров являет ся рост затрат на обучение, За время, требуемое для обучения модели с большим числом признаков и на большой обучающей выборке, можно построить несколько более простых и компактных моделей, комбинируя различные признаки и конфи rурации нейронной сети, и в конце концов добиться лучших результатов.
498 Часть 1. Теория бизнес анализа 9.10. Алrоритмы обучения нейронных сетей Обучение нейронных сетей как задача оптимизации Процесс обучения нейронной сети заключается в подстройке весов ее нейронов, Целью обучения является поиск состояния весов, которое минимизирует выхОдную ошибку сети в обучающем и тестовом множествах, Задачи поиска оптимальноrо состояния систем по минимуму или максимуму некоторой функции образуют отдельный класс и называются задачами оптимизации. в случае нейронной сеТI1 оптимизация ведется по функции ошибки, зависящей от состояния весов нейро нов, Состояние системы, при котором обеспечивается минимум целевой функции (в данном случае выходной ошибки сети), называется оптимальным, Задачи оптимизации для обучения нейронных сетей достаточно сложны. Это связано со следующими причинами, О Нейронная сеть может содержать очень большое количество связей, поэтому пространство возможных состояний нейронной сети OrpOMHO и рассмотреть их все практически невозможно. Например, сеть, которая содержит 28 связей, при условии, что вес каждой связи является бинарным, будет иметь 228, или примерно 250 млрд комбинаций весов. о Нейронные сети, которые содержат более чем один нейрон в скрытом слое, имеют не одно, а несколько оптимальных состояний, обусловленных наличием у функции ошибки нескольких минимумов. Однако истинно оптимальным co стоянием является только одно, rде обеспечивается «наименьший», или, как rоворят, lлобалЪ1lЫЙ, МИ1lИМУМ, Остальные минимумы функции ошибки назы ваются локалЪ1lЪ/.М.И, Наличие множества минимумов существенно затрудняет поиск rлобальноrо оптимума. На рис, 9.41 представлена зависимость ошибки сети Е от HeKoToporo обобщенноrо состояния вектора весов сети W, которая имеет три локальных минимума. В настоящее время для решения задач оптимизации разработано большое количество различных методов, На их основе создаются алlОрИтмы обуче1lИЯ 1lеЙрО1l1lЫХ сетей. Е Локальные минимумы Рис. 9.41. Локальные и rлобальный минимумы Каждый раз, приступая к постро ению нейросетевой модели, аналитик должен не только задать конфиryра цию сети и сформировать обучающий набор данных, но и выбрать алrоритм обучения, наиболее соответствующий конкретной задаче. Очевидно, что раз личные алrоритмы обучения обладают w своими достоинствами и недостатками, поэтому неудачный выбор алrоритма может свести на нет все преимущества, полученные на первых двух шаrах.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 499 В общем случае предпочтение следует отдать тому алrоритму, который: [) позволяет достичь оптимальноrо состояния модели за меньшее число итера ций; [) обладает приемлемыми трудоемкостью и объемом требуемых вычислительных затрат; [) обеспечивает наименьшую результирующую ошибку сети; [) обладает устойчивостью к низкому качеству данных наличию в них аномалий, шумов, противоречий и т. д. Перечисленные требования часто противоречат друт друry, и приходится искать компромисс. Обзор алrоритмов обучения нейронных сетей Методы оптимизации, применяемые при обучении нейронных сетей, делятся на два основных направления: [) методы локальной оптимизации, использующие анализ производной функции ошибки (rpадиентные методы); О методы rлобальной оптимизации. Нахождение оптимальноrо состояния весов сети можно сравнить с поиском экстремума на выпуклой поверхности. Алrоритм начинает работу со случайноrо набора весов, а затем делает небольшие коррекции весов в разных направлени ях. После этоrо выбирается та коррекция, которая дает наибольшее сокращение ошибки, а затем процедура повторяется. Можно провести аналоrию с нахождением наивысшей точки в холмистой местности. При этом нет rарантии, что вершина, на которой будет остановлен поиск, является самой высокой, rрадиентные методы Введем в рассмотрение одно из важнейших понятий, используемых при решении задач оптимизации, lpaaUe1lm (от лат, gradientis «шаrающий»). Это xapaK теристика, показывающая направление наискорейшеrо возрастания некоторой величины, значение которой меняется от одной точки пространства к друrой. Например, если взять высоту поверхности земли над уровнем моря (двумерное пространство), то ее rpадиент в каждой точке поверхности будет показывать вверх (рис. 9.42). Таким образом, операция rpадиента преобразует холм», если смотреть на нето сверху, в поле векторов, направление которых в каждой точке совпадает с направ лением наиболее крутото подъема, а длина пропорциональна крутизне подъема, Видно, что все векторы направлены к вершине. На полоrом участке у «подножия холма» длина векторов небольшая. На самом крутом участке векторы имеют MaK симальную длину. И наконец, там, тде вершина «холма» образует купол, длина векторов уменьшается.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 501 Формально rрадиент определяется следующим образом: дЕ. дЕ. дЕ k V l+ J+ , Е дх ду az [де Е не которая скалярная величина, обозначающая ошибку сети. Методы оптимизации, которые в том или ином Виде используют rрадиент, называются zрадие1lт1lы.ии методами. Их применение в алrоритмах обучения нейроННЫХ сетей позволяет добиться очень хороших результатов, что делает эти mP-ТОДЫ весьма распространенными при создании нейросетевых моделей. Большинство методов обучения нейронных ce Е тей являются локальными, то есть выполняют поиск локальных минимумов функции ошибки, Обучение производится до тех пор, пока алrо ритм не достиrнет минимума, значение ошибки в котором окажется меньше HeKoToporo задан Horo пороrа Е, При этом rлобальный минимум, то есть оптимальное состояние сети, не будет достиrнут (рис, 9.43), Если предположить, что начальное COCTO яние вектора весов W o совпадает с началом координат, то, поскольку локальный минимум, значение ошибки в котором падает ниже Е, «встретится» алrоритму первым, rлобальный минимум не будет обнаружен, Вообще rоворя, если значение rлобальноrо минимума заранее неизвестно, то невозможно сказать, насколько близко к нему находится текущее состояние весов сети, Для поиска rлобальноrо минимума используются следующие Me тоды. О Метод перебора всех возможных значений целевой функции rарантированно позволит обнаружить rлобальный минимум, но в большинстве случаев этот способ неприменим на практике из за orpoMHoro количества состояний весов, которое потребуется рассмотреть, о Можно несколько раз последовательно произвести процесс оптимизации, каждый раз изменяя начальное состояние модели в надежде, что KaKoe TO из них окажется в «области притяжения» rлобальноrо минимума, Этот способ не rарантирует обнаружения rлобальноrо оптимума, но позволяет задать поиску более определенное направление, Кроме Toro, разработаны специальные методы rлобальной оптимизации, напри мер метод имитации отжиrа, rенетические алrоритмы, метод виртуальных частиц идр. Методы rлобальной оптимизации W o W Обучение остановится эдесь Рис. 9.43. Остановка алrоритма в локальном минимуме
500 Часть 1. Теория биэнес аналиэа о 10 8 1O -8 ... , J J J I '.\ IJ/ $o' ''''\!I,II,(// - ......'.1 1 '/////- ....-'''',. ! I //// ' ... -................... "-...' " ;// ./ ,./'; - ...... ................."' // ....- ........ .............................,..........., / .."................. ......... ;. . .. 1; ............ .----'>' ./'/ ! ''''''''' ''''''''' /""';I, } .........."-.------- ,/'/ /' /' /. -,,,.............. ..... .... ,////1 , 1. ,,'-.... /////1 \.",-", ,//1'1111\,-", ,'//11\" I J , 1 Рис. 9.42. rрадиент «<холм» и поле векторов) Методика использования rрадиента в алrоритме обучения нейронной сети понятна. Здесь ключевой вопрос: в каком направлении и на какую величину менять веса, чтобы достичь минимума функции ошибки за минимальное число шаrов? Ясно, что в том направлении, в котором функция ошибки уменьшает ся быстрее Bcero. Именно это направление и указывает rрадиент. Точнее, не rрадиент, а антиrрадиент, поскольку в данном случае речь идет не о «холме , а о «впадине». Если rрадиент всеrда направлен в сторону возрастания вели чины, то антиrрадиент, наоборот, в сторону ее уменьшения. Коррекция весоВ нейронной сети в направлении антиrрадиента функции ошибки называется zрадuе1lт1lЪtМ спуском. Оператор rрадиента обычно обозначается как grad или V' (читается «набла»), соответственно аmиrрадиент будет обозначаться как grad или V'.
502 Часть 1. Теория бизнес анализа rрадиентные алrоритмы обучения нейронных сетей Наибольшую популярность при обучении мноrослойных персептронов получили rpадиентные алrоритмы. В их основе лежат метод rpадиентноrо (наискорейшеrо) спуска, метод сопряженных rpадиентов и пр. Причины распространенности rpa диентных алrоритмов заключаются в том, что они требуют относительно неболь шоrо числа итераций для обучения сети, обеспечивают достаточно малый уровень ошибки и устойчивы к аНОМa7IЬНЫМ значениям входных признаков. Недостатком rpадиентных методов является то, что они обнаруживают только локальные ми нимумы целевой функции. Метод rрадиентноrо спуска fрадиентный спуск это метод нахождения локальноrо минимума функции с помощью движения вдоль антиrpадиента. В случае обучения нейронных сетей целевой функцией является функция выходной ошибки сети E(W). Напомним, что rpадиент представляет собой сумму производных функции по трем коорди натам. fрафик целевой функции в трехмерных координатах (х, у, z) напоминает рельеф земной поверхности. Минимумы функции образуют «впадины , а макси мумы холмы (рис. 9.44). Рис. 9.44. [радиентный рельеф Процесс оптимизации, то есть поиск оптимальноrо состояния весов нейронной сети, начинается со случайноrо выбора точки на рельефе, которая получается в результате инициализации весов не60ЛЬШИМИ случайными значениями. Затем
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 503 в данной точке вычисляется rрадиент функции, и на ero основе определяется точка, соответствующая новому состоянию весов. При этом соrласно paCCMOT ренному выше свойству rрадиента новая точка формируется с определенным шаrом в направлении максимальноrо убывания функции. Далее вычисляется следующая точка, и процесс повторяется, пока не будет достиrнут ближайший минимум, Можно провести следующую аналоrию: если на поверхности YCTaHO вить шарик, он скатится в ближайшую впадину по направлению наибольшей крутизны спуска. Направление коррекции весов мы определили, но остается открытым вопрос о величине этой коррекции, или, как rоворят, о шazе коррекции, Влияет ли величи на коррекции весов на результаты обучения, и если да, то как ее выбрать? Влияние шаrа коррекции на каждой итерации очевидно. Если шаr коррекции окажется слишком большим, то алrоритм может <<перешаrнуть>,> через «впадину>,> на рель ефе и не обнаружить соответствующеrо минимума. Если шаr коррекции будет слишком малым, то для достижения минимума потребуется большое количество итераций, что приведет к очень долrой процедуре обучения. При практической реализации rрадиентных алrоритмов обучения величину шаrа коррекции делают переменной, и в процессе обучения она адаптируется к си туации, Для этоrо желательно, чтобы на начальных этапах обучения шаr коррекции весов был наибольшим, а к концу процесса постепенно уменьшался, как показано на рис. 9.45. Рис. 9.45. rрадиентный спуск
504 Часть 1. Теория БИзнес анализа На рисунке пред ставлена «впадина» rрадиентноrо рельефа, При rрадиентном спуске осуществляется переход из точки в точку в направлении антиrрадиента. При этом расстояние между двумя соседними точками Х; и Х; 1 меняется в зави симости от номера шаrа, Начальные шаrи самые большие, а последующие YMeHЬ шаются по мере приближения к минимуму. Рассмотрим вопрос о том, как менять величину шаrа в процессе обучения. Характер rрадиентноrо рельефа может быть различным: «впадины» MoryT быть «rлубже» или «мельче , их склоны «круче» или «более полоrими», область Точ ки минимума может иметь разную кривизну. Если просто задать некоторый коэф фициент изменения шаrа в зависимости от номера итерации обучения, желаемоrо эффекта достичь не получится, Длина шаrа должна подстраиваться к конкретным особенностям поведения целевой функции. Удачным решением является использование для определения величины шаrа значения производной функции в данной точке, ведь про из водная позволяет по лучить всю необходимую информацию о поведении функции, Производная опре деляется как отношение приращения функции к приращению apryMeHTa, поэтому чем быстрее изменяется функция, тем выше значение ее производной, Кроме Toro, значение производной функции в данной точке численно равно TaHreHcy уrла касательной к rрафику функции в этой точке. Следовательно, в тех точках, rде функция убывает, ее производная имеет отрицательный знак, а в тех, rде возрас тает, положительный, При проходе через экстремум производная меняет свой знак: в точке минимума с отрицательноrо на положительный (функция сначала убывает, а потом возрастает); в точке максимума, наоборот, с плюса на минус (функция сначала возрастает, а потом убывает). Экстремум расположен в точке, rде производная равна О. Следует отметить, что при приближении к экстремуму функция становится более полоrой, поэтому значение производной в области экстремума уменьшается и стремится к нулto. Эти свойства производной функции делают ее удобным инструментом для управления процессом обучения нейронных сетей с использованием rpадиентных алrоритмов, Величина шаrа коррекции на каждой итерации определяется Bыpa жением: aE(w) дw == 11дW' (9.7) rде w текущее состояние веса; дw шаr коррекции состояния веса; E(w) текущее значение ошибки; 11 константа, называемая коэффициентом скорости обучения. Знак «минус» в правой части выражения (9.7) учитывает, что движение осуще ствляется в направлении антиrpадиента. Методика использования производной функции ошибки для управления шаrоМ коррекции весов нейронов иллюстрируется на рис. 9.46.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 505 Е 2 3 4 дЕ < о aw , дЕ < о: дЕ > О aw i aw дЕ = о aw дЕ = о aw дЕ = о w aw Рис. 9.46. Управление шаrом коррекции весов На рисунке пред ставлен rpафик функции ошибки Е( w). На начальных итераци ях ошибка падает интенсивно, поэтому значение ее про извод ной велико и имеет OT рицательный знак (область 1), В соответствии с формулой (9.7) шаr коррекции дт также велик: пока ошибка падает быстро, веса корректируются с большой CKOpO стью, По мере приближения алrоритма к минимуму скорость падения функции уменьшается, следовательно, уменьшается и шаr коррекции, что позволяет более точно настроиться на минимум функции ошибки. При коррекции весов методом наискорейшеrо спуска возможна ситуация, коrда алrоритм попадет в точку экстремума, [де производная равна о. Тоrда по формуле (9.7) величина коррекции весов также будет tJ.w == о. На следующем шаrе алrо ритм останется в точке, [де производная равна о, поэтому ситуация повторится и т. д. Проще rоворя, алrоритм «забуксует» в точке экстремума, и коррекция весов остановится. Чтобы выйти из этоrо состояния, можно запустить обучение заново. Предположим, имеется вектор весов W == (Wo, W, W2... wmY, которые требуется настроить таким образом, чтобы минимизировать выходную ошибку сети. Для этоrо можно использовать метод rpадиентноrо спуска, который определит направление коррекции весов, fрадиент функции ошибки относительно вектора весов запишется как вектор производных: [ дЕ дЕ дЕ дЕ ] V'E(W)== д ' д ' д ". д ' Wo Wj W2 W m то есть вектор частных производных функции ошибки по каждому весу. Рассмотрим отдельно вес Wl. На рис, 9.47 представлен rрафик зависимости функции ошибки от этоrо веса. Наша задача выбрать такое значение Wl, которое минимизирует ошибку, Пусть оптимальным значением будет Wl == w opt . Нужно выбрать правило, которое переместит W в положение, максимально близкое к W opt : W(k + 1) == W(k) + tJ.w(k), rДе k номер итерации,
506 Часть 1. Теория БИзнес анализа Е W, < W"", W 1 > w opt W"", W, Рис. 9.47. Зависимость функции ошибки Е от веса WI Теперь предположим, что Wt лежит слева от минимума. Тоrда текущий вес следует увеличить, чтобы он стал ближе к оптимальному. Если текущий вес выше оптимума, то мы должны уменьшать ero. В первом случае про из водная ошибки OT рицательная, а во втором положительная. Следовательно, настройка весов всеrда должна выполняться в направлении, противоположном знаку производной. Коэффициент скорости обучения Величину шаrа коррекции веса на каждой итерации обучения часто называют скоростью обучения. В соответствии с формулой (9.7) она определяется значением производной функции ошибки. Однако, кроме производной, на скорость обучения влияет дополнительный параметр коэффициент скорости обучения Т' Е (0;11. Он подбирается экспериментально. Если коэффициент скорости обучения велик (1] 1), то скорость обучения определяется только производной функции ошибки, При уменьшении коэффи циента возникает эффект «торможения» процесса: шаr коррекции уменьшается в соответствии со значением коэффициента. Например, при 1] == 0,5 каждый шаr коррекции уменьшается в два раза, При подборе 1] руководствуются следующей лоrикой. Если задать ero значение большим, например 0,8 или 0,9, то такой шаr коррекции весов приведет к ускорению процесса обучения для достижения оптимума потребуется меньшее число итера циЙ, но при этом несколько снизится точность настроЙки на оптимум. Если задать маJIЫЙ коэффициент скорости обучения (0,1 0,2), то время, требуемое для обучения, возрастет, но увеличится и ожидаемая точность настройки на оптимум (рис. 9.48), На верхнем rрафике, rде шаr обучения мал, для достижения точки оптимума требуется шесть шаrов, но при этом точность настроЙки на оптимум будет высокоЙ. На нижнем rрафике, rде шаr большой, оптимум будет достиrнут Bcero за три шаrа, но точность при этом уменьшится. Наиболее распространенным rрадиентным алrоритмом обучения для неЙрон ноЙ сети является Шlюриfll.,.1 обратною распространения ошибки,
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 507 . w . w Рис. 9.48. Подбор коэффициента скорости обучения 9.11. Алrоритм обратноrо распространения ошибки Алrоритм обратноrо распространения ошибки (error backpropagation, BackProp) представляет собой rрадиентный алrоритм обучения мноrослойноrо персептрона, основанный на минимизации среднеквадратической ошибки выходов сети, Алrо ритм был предложен в 1974 [, п. Дж. Вербосом, а в 19В6 [. ero развили д. Румель харт и Р. Вильямс, Появление алrоритма дало дополнительный толчок развитию нейросетевых технолоrий, Основная идея алrоритмов обучения с учителем, к которым относится и Back Prop, заключается в том, что на основе разности между желаемым и целевым BЫXO дами сети можно вычислить выходную ошибку сети. Цель определения выходной ошибки управление процессом обучения нейронной сети, то есть корректировки весов ее межнейронных связей для минимизации функции ошибки. Корректировка весов сети делается по правилу Видроу Хоффа. Каждый нейрон в сети получает возбуждение от вектора входных значений, производит их взвешенное суммирование и преобразует полученную сумму с помощью aK Тивационной функции. Выходная ошибка сети формируется на нейронах BЫXOД Horo слоя. Но это не означает, что поrрешность работы сети обусловлена только выходными нейронами. Свой вклад в результирующую ошибку вносит каждый скрытый нейрон. Тоrда для Hero может быть указана ошибка 8 == d у, [де d же лаемое выходное значение, а у реальное выходное значение. Правило Видроу Хоффа, называемое также 8 правилом, подразумевает KOp ректировку весов в соответствии с выражением: !:J. Щ == 1]8x i , (9.В) [де 1] коэффициент скорости обучения; Xi значения, поступающие по входным связям. Зная величину коррекции веса i связи, мы можем вычислить ее новый вес по формуле: щ(k + 1) == щ(k) + !:J.щ, (9.9) [Де k номер итерации обучения.
508 Часть 1. Теория БИзнес анализа Непосредственно применять правило (9,9) для мноrослойноro персепrpона невоз можно: ошибки на выходах нейронов скрытых слоев неизвестны. Возникает вопрос: нельзя ли рассчитать ошибку 8 на выходах скрытых нейронов как вклад в общую ошибку сети? Иначе rоворя, чтобы вычислить ошибки на выходе каждоrо CKpbIToro нейрона и на их основе рассчитать соответствующую коррекцию весов по форму ле (9.8), нужно передавать значение выходной ошибки от выходноrо слоя к BXOДHO му через все скрытые слои, Тоrда, зная веса связей, виды активационных функций и входные значения каждоrо нейрона, можно рассчитать их выходные ошибки, Пусть выходная ошибка сети определяется по формуле: 1", 2 Е == 2 (Y; dj) . ; в соответствии с выражением для коррекции весов алrоритма rрадиеНТноrо спуска запишем: (9,10) дЕ !'!.Wij == Т] д ' wij (9.11) rде wij текущий вес i й связиj rо нейрона. Можно показать, что: дЕ дЕ ду) дWij ду) дWij' Подставим выражение (9,12) в формулу (9,11): дЕ ду) !'!.wij == Т] д д . у; wij (9.12) (9,13) Torдa в соответствии с формулой (9,7) получим: дЕ/ду} == Oj, а дуJ!дWi; ==Х; илидЕ/дWii == О jXj, Выражение (9.12) справедливо только для линейноrо нейрона, у KOТOporo выходное значение равно взвешенной сумме входов. В случае, коrда выход нейрона формируется с помощью активационной функции/(S), выражение. (9. 12) запишется в виде: дЕ дЕ ду) дS j дWij ду) дS j дту' (9,14) Тоrда и выражение дЕ / ду j == O j примет вид: дЕ ду) О j == ду j дS j ' Продифференцировав выражение (9.10), получим: дЕ д ==(У) dj). У) Поскольку реальный выход у j == /(S), то производная ду j / дS; == j'(S). с уче том формул (9,15) и (9,16) получим: (9.15) (9,16)
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 509 о) == :E J == (Y) d)),/'(S). (9,17) У] ] в соответствии с принципом функционирования искусственноrо нейрона S == LX,Wij и as / дlЮу == Xj, Таким образом, нам удалось выразить все сомножители в пра ой части выражения (9.14) в виде известных значений и определить величину коррекции веса: д дЕ == (y) d)./'(S)'Xi' Wj) ] с учетом Toro, что вес должен изменяться в направлении, противоположном знаку производной функции ошибки, получим: ДlЮу == о) 'Xj. (9.18) Ошибка 8) была получена для выходноrо нейрона. Что касается ошибки на BЫXO дах скрытых нейронов, то она не имеет непосредственной связи с выходной ошиб кой, Поэтому вес скрытых нейронов в соответствии с формулой (9.18) приходится корректировать по ero вкладу в величину ошибки следующеrо слоя. В сети с одним скрытым слоем при распространении сиrнала ошибки в обратном направлении ошибка выходноrо нейрона также вносит вклад в ошибку каждоrо нейрона CKpЫ Toro слоя. Этот вклад зависит от значения ошибки выходноrо нейрона и веса связи, соединяющей ero со скрытым нейроном, ошибку которorо требуется определить, Чем больше ошибка на выходном нейроне и больше вес связи, соединяющей ero со скрытым нейроном, тем больше ошибка на выходе cKpbIToro нейрона. Тоrда для произвольноrо нейрона cKpbIToro слоя выходная ошибка может быть получена в следующем виде: о) == /'(S), LOkWk), k rде k номер слоя, по 'ошибке которorо производится корректировка весов преды дущеrо слоя. Если сеть имеет только один скрытый слой, то k выходной слой. Поскольку в формуле (9.19) присутствует про из водная активационной функ ции, становится понятно, почему к ней предъявляется требование дифференци руемости на всей числовой оси. В алrоритме обратноrо распространения ошибки наиболее часто используется лоrистическая активационная функция, производная которой равна: (9.19) /' (S) == J( S)( 1 / (s)) == у) (1 у) ), (9,20) На основе формул (9.19) и (9.20) можно вычислить ошибку для нейронов как выходноrо ojUl, так и cKpbIToro ojid слоев: ojU/ ==y)(1 YJ).(d) y)); Ohil/ y ' ( 1 y , ) ,"oW k ' J J J L.J J l' k (9.21) (9.22)
510 Часть 1. Теория бизнес анализа Блок схема алrоритма обратноrо распространения ошибки для нейронной сети с одним скрытым слоем представлена на рис. 9.49. Если нейронная сеть содержит несколько скрытых слоев, то шarи с 6 ro по 8 й повторяются ДЛЯ каждоrо CKPbIToro слоя (пунктирная линия на блок схеме), 2. Ввод в сеть обучающеrо при мера з. Вычисление ошибок I',и, для ВЫХОДНЫХ нейронов по формуле (9,21) 4. Вычисление коррекций весов W j '"' для ВЫХОДНЫХ нейронов по формуле (9.18) 5, Корректировка весов BbIxoAHoro слоя по формуле (9.9) 6. Вычисление ошибок OJh'" для нейронов cKpbIToro слоя по формуле (9.20) 7. Вычисление коррекций весов W,hкJ ДЛЯ нейронов cKpbIToro слоя по формуле (9.18) 8. Корректировка весов cKpbIToro слоя по формуле (9.9) Нет Рис. 9.49. Блок схема алrоритма обратноrо распространения ошибки
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 511 ПРИМЕР Имеется сеть, состоящая из трех нейронов входноrо слоя, одноrо cKpbIToro слоя из двух нейронов и одноrо выходноrо нейрона Сеть 3 х 2 х 1. Смещением для упрощения пре- небреrли. Х, Х 2 Х 3 Предположим, что начальные веса связей были установлены следующим образом: (1')111 == 0,6; rCI211 == 0,8; W]11 ==0,4;WI8 ==0,7;W28 ==0,9;W:8 ==0,5;wl1c == 0,9; WBC ==0,2. Козффициент скорости обучения зададим 11 == 0,1. Пvсть для HeKoToporo обучающеrо примера выход сети У == 0,87, а целевое значение (1 == 0,80, а также при прямом проходе алrоритма уже рассчитаны значения выходов УА и Ув для нейронов cKpbIToro слоя. Проделаем одну итерацию алrоритма BackProp в об- ратном направлении. По формуле (9.21) найдем ошибку для выходноrо нейрона ос: ОС == У) (1 У) ).(d J Yj)== 0,87.(1 0,87).(0,8 0,87)== 0,0079, Теперь на основе полученной ошибки вычислим величины коррекции весов f'..w I1С и f'..W/JC. ДЛЯ зтоrо сначала рассчитаем ошибки на выходах нейронов А и В CKpbIтoro слоя. Слой, следующий за скрытым, является выходным и содержИТ только один нейрон С, позтому формула (9.22) примет вид: 011 == УI1 .(1 УI1 )'Ос 'WI1C. Пусть УА == 0,78. Имеем: О А == 0,78, (1 0,78). ( 0,0079). 0,9 == 0,0012. Зная ошибку ос нейрона С, с помощью формулы 9.18 вычислим коррекцию веса связи f'..w 11 С: f'..WI1C == l1'Ос' УА == 0,1.( 0,0079).0,78 == 0,00062, После выполним коррекцию веса: W: p , == ш + МС'I1С == 0,9 0,00062 == 0,89938,
512 Часть 1. Теория БИзнес анализа Теперь для вычисления коррекции веса дw IJC рассчитаем ошибку на входе нейрона В (пусть Ув == 0,82): о JJ == У JJ . (1 у п)' ОС' WJJC == 0,82. (1 0,82), ( 0,0079). 0,2 == 0,0002. Тоrда ДШJJС == 11' ОС' У /J == 0,1-( 0,0079). (0,82) == 0,00065; ш;;'С" == w'/fz + дш пс == 0,2 0,00065 == 0,19935. Аналоrичным образом рассчитываются коррекции для весов нейронов cKpbIToro слоя, в формулах которых будут использоваться ранее вычисленные ошибки о А и О в и оставши- еся веса связей. Момент Алrоритм обратноrо распространения ошибки можно сделать более эффективным, если ввести в Hero дополнительный элемент, называемый MoMe1tтO.JI.t. Момент обо значается а и вводится следующим образом: дЕ Д Ш(k)== 11 ( ) +адw(k 1). дш k Иными словами, при вычислении коррекции веса на итерации k к значению коррекции, вычисленному в соответствии с методом rрадиентноrо спуска, дела ется добавка, равная значению коррекции веса на предыдущей итерации (то есть итерации k 1), умноженному на некоторый коэффициент О::; а < 1. Использование момента позволяет придать некоторую инерционность процессу обучения. При больших значениях параметра а момент будет сдвиraть текущую KOp рекцию веса в направлении предыдущей коррекции. Включение момента в алrоритм ведет к тому, что подстройка весов на текущей итерации становится экспоненциаль ным средним значений подстроек весов на всех предыдущих итерациях, то есть: 00 k дЕ дш(k) == 11L> (k) ' k O дw Член a k показывает, что более поздние итерации, поскольку им соответствуют большие значения k, оказывают большее влияние. Большие значения а позволяют алrоритму запоминать больше значений подстроек весов, имевших место на более ранних итерациях. Малые значения а, наоборот, уменьшают эффект инерцион ности, При а == О инерционность алrоритма полностью исчезает. Момент ослабляет колебания алrоритма около оптимума, поддерживая подстроЙ ку весов в одном и том же направлении, Но если коэффициент а слишком большоЙ, то алrоритм приобретает чрезмерно большую инерционность и может про пустить минимум функции ошибки из за cyMMapHoro влияния предыдущих итераций.
rлава 9. Data Mining: классификация и реrрессия. Машинное обучение 513 Рассмотрим рис. 9.50. На обоих rpафиках присутствуют локальные минимумы в точках А и С, а также rлобальный минимум в точке В. Движение алrоритма по поверхности функции ошибки можно представить в виде перемещения шарика с определенной массой. Если масса шарика и, соответственно, ero инерция низкие, то он не сможет преодолеть локальный минимум А и остановится в нем (этот слу чай соответствует малым значениям а). Если значения а велики (правый rpафик), то rипотетический шарик будет обладать слишком большими массой и инерцией, вследствие чеrо проскочит оптимум и остановится только в точке С. Е о. малый, инерция ниэкая А в с w Рис. 9.50. Влияние момента на обучение сети Е о. большой, инерция высоквя А в с w Таким образом, введение момента позволяет алroритму преодолевать локаль ные минимумы и задерживаться только в более rлубоких и значимых впадинах поверхности ошибки. Экспериментально подбирая момент а и коэффициент скорости обучения 11, можно добиться эффеюивной раБотыI алroритма обратноrо распространения ошибки. ПЕРСОНАЛИИ Лео &рейман (Leo Breiman) (1928 2005) выдающийся ученый, профессор, работавший в Калифорнийском университете в Беркли, член Национальной академии наук США, один из авторов алrоритма CART и подходов под названием «случайные леса» (random forests). Брейман занимался вопросами на стыке математической статистики и машинноrо обучения. исследованиями в области MHoroMepHoro статистическоrо анализа, в том числе нелинейны ми методами распознавания образов. Активно развивал идеи ансамблей деревьев решений и связанных с ними технолоrий бутстрэп анализа (bootstrap) и бэrrинrа (bagging). Росс Куинпан (Ross Quinlan) один из ведущих мировых специалистов в области машин Horo обучения. Data Mining и деревьев решений. автор алrоритмов ЮЗ и С4.5 и их KOMMep ческой модификации С5.0. Долrое время работал в Сиднейском университете, Сиднейском технолоrическом универси тете, а в 1997 r. основал собственную компанию RuleQuest Research (http://rulequest.com/) по разработке и поставке коммерческоrо ПО в области машинноrо обучения. Известность получили такие проrраммные решения компании. как пакеты Sees (деревья решений) и Magnum Opus (ассоциативные правила).
Анализ и проrнозирование временных рядов 10.1. Введение в проrнозирование Проrнозирование одна из самых востребованных задач бизнес аналитики. И это неудивительно: зная, пусть даже с определенной поrpешностью, характер разви тия событий в будущем, можно принимать более обоснованные управленческие решения, планировать деятельность, разрабатыБтьь соответствующие комплексы мероприятий, эффективно распределять ресурсы и т. д. С точки зрения технолоrий анализа данных проrнозирование может paCCMaT риваться как определение некоторой неизвестной величины по набору связанных с ней значений. Поэтому проrнозирование выполняется с помощью таких задач Data Mining, как реrрессия, классификация и кластеризация. Продажи, поставки, заказы это процессы, распределенные во времени. Данные, собираемые и используемые для разработки проrнозов, чаще Bcero представляют собой временные ряды, то есть описывают развитие TOro или иноrо бизнес процесса во времени. Следовательно, проrнозирование в области продаж, сбыта и спроса, управления материальными запасами и потоками обычно связанО именно с анализом временных рядов. Это объясняет, почему обработке временныХ рядов в бизнес аналитике и Data Mining уделяется такое большое внимание. Все методы проrнозирования можно разделить на три большие rpуппы фор мализованные, эвристические и комплексные. Формализованные методы позволяют получать в качестве проrнозов количе ственные показатели, описывающие состояние HeKoтoporo объекта или процесса. При этом предполаrается, что анализируемый объект или процесс обладает свой ством инерционности, то есть в будущем он продолжит развиваться в соответствии
rлава 10. Анализ и проrнозирование временных рядов 515 с теми же законами, по которым развивался в прошлом и существует в настоящем. Недостатком формализованных методов является то, что для проrноза они MorYT использовать только исторические данные, находящиеся в пределах эволюци OHHoro цикла развития объекта или процесса. Поэтому такие методы приrодны лишь для оперативных и краткосрочных проrнозов. К формализованным методам относятся экстраполяционные и реrрессионные методы, методы математической статистиКИ, факторный анализ и др, Эвристические методы основаны на использовании экспертных оценок Экс перт (rpynna экспертов), опираясь на свои знания в предметной области и прак тический опыт, способен предсказать качественные изменения в поведении исследуемоrо объекта или процесса, Эти методы особенно полезны в тех случаях, коrда поведение объектов и процессов, для которых требуется дать проrноз, xapaK теризуется большой степенью неравномерности, Если формализованные методы в силу присущих им оrраничений используются для оперативных и краткосроч ных проrнозов, то эвристические методы чаще применяются для среднесрочных и перспективных, Комплексное пРО11l0зирование использует комбинацию формализованноrо под хода с экспертными оценками, что в некоторых случаях позволяет добиться наи лучшеrо результата. Независимо от методики на эффективность проrноза в наибольшей степени влияет то, насколько он полезен для планирования и ведения бизнеса, Проrноз полезен только тоrда, коrда ero компоненты тщательно продуманы и оrраничения, содержащиеся в нем, представлены явно, Чтобы понять, будет ли проrноз полезен, необходимо ответить на несколько вопросов. CI Для чеrо нужен проrноз, какие решения будут на нем основаны? Этим опреде лится требуемая точность проrноза. Например, одни решения принимать опас но, даже если возможная поrрешность проrноза менее 10 %. Друrие решения можно безбоязненно принимать и при значительно более высокой допустимой ошибке. CI Какие изменения должны произойти, чтобы проrноз оказался достоверным? Друrими словами, следует оценить вероятность событий, которые должны случиться, чтобы проrноз сбылся, Например, если таким событием будет озе ленение Луны, от проrноза в ближайшей перспективе следует отказаться. CI Насколько структурированным должен быть проrноз? Например, при про rнозировании продаж может оказаться целесообразным выделение отдельных cerMeHToB рынка (развивающиеся клиенты, стабильные клиенты, крупные и мелкие клиенты, вероятность появления новых клиентов и т, п,). Кроме Toro, необходимо подумать об источниках информации; определить, Ha сКолько ценен опыт прошлоrо и не настолько ли быстры изменения, что основанный На Опыте проrноз окажется бесполезным; выяснить, какие финансовые, временные II Прочие затраты потребуются, чтобы получить надежную информацию, и др, Условия функционирования рыночной экономики делают невозможным эф фективное управление бизнесом без проrнозирования, От Toro, насколько проrноз
516 Часть 1. Теория бизнес анализа будет точным и своевременным, а также от ero соответствия поставленным задачам будет зависеть успех деятельности предприятия. Проrнозирование очень широкое понятие, Как отмечал ось ранее, в боль шинстве случаев оно связывается с предвидением во времени, с предсказанием дальнейшеrо развития событий, В таком контексте проrнозирование пони мается и в системах бизнес аналитики. Поэтому далее при изложении аспектов проrно зирования речь будет идти именно о проrнозировании временных рядов; с ЭТИХ позиций будут рассматриваться основные модели и методы проrнозирования, 10.2. Временной ряд и ero компоненты Аналитику часто приходится иметь дело с данными, представляющими собой Ис торию изменения различных объектов во времени, TaKoro рода данные называются временны,ми рядами (time series data). Именно они вызывают наибольший интерес с точки зрения множества задач анализа, а особенно проrнозирования. Временной ряд представляет собой последовательность наблюдений за измене ниями во времени значений параметров HeKoToporo объекта или процесса, CTporo rоворя, каждый процесс непрерывен во времени, то есть некоторые значения па раметров этоrо процесса существуют в любой момент времени. Например, если вы запросите в банке текущий курс валют, вам никоrда не ответят, что в настоя щее время курса валют нет. Возможно, новый курс установился минуту назад, возможно, через час он изменится, но в настоящее время KaKoe TO ero значение непременно существует, Для задач анализа не нужно знать значения параметров объектов в лю бой момент времени. Интерес представляют временные отсчеты значения, зафиксированные в некоторые, обычно равноотстоящие моменты времени, Отсчеты MorYT браться через различные промежутки: через минуту, час, день, неделю, месяц или rод в зависимости от Toro, насколько детально должен быть проанализирован процесс. В задачах анализа временных рядов мы имеем дело с дискретным временем, коrда каждое наблюдение за параметром образует временной отсчет, Непрерывный и дискретный временные ряды иллюстриру ются на рис, 10.1. ЗАМЕЧАНИЕ Не следует путать такие понятия, как непрерывный или дискретный ряд и непрерывные или дискретные данные. Непрерывный ряд это процесс, значения KOToporo известнЫ в любой момент времени, а дискретный ряд процесс, значения KOToporo известны только в заданные моменты времени (временные отсчеты). Непрерывные данные зто данные, которые MOryт принимать бесконечное множество значений. Непрерывными MOryт быть только числовые данные. Дискретные данные MOryт принимать оrраниченный набор зара- нее определенных значений (катеrорий). Все временные отсчеты нумеруются в порядке возрастания. Тоrда временной ряд будет представлен в следующем виде: Х == {Xt, Х2.". Х п },
rлава 10. Анализ и проrнозирование временных рядов 517 20 15 QJ :s: :I: QJ 10 :т ro :I: (") 5 О Непрерывный ряд 2 З 4 5 6 Время Дискретный ряд 7 20 10 QJ :s: :I: QJ 10 :т ro :I: (") 5 О 2 з 4 Время 5 6 7 Рис. 10.1. Непрерывный и ди:скреrnый временные ряды Временные ряды бывают одномерные и MHOI"OMepHbIe. Одномерные ряды coдep жат наблюдения за изменением только одноro параметра исследуемоrо процесса или объекта, а MHoroMepHbIe за двумя параметрами или более. Трехмерный временной ряд, содержащий наблюдения за тремя параметрами Х, у и Z про цесса Е, можно записать в следующем виде: F == {(XI, YI, 21); (Х2, У2, 22 )... (Х", У,,, 2" )}. Пример MHoroMepHoro BpeMeHHoro ряда представлен на рис. 10.2. Значение ЗО 25 20 15 10 5 О 2 з 4 5 Время 6 7 Рис. 10.2. Мноrомерный временной ряд
518 Часть 1. Теория бизнес анализа Значения BpeMeHHoro ряда получаются путем реrистрации соотвеТСТВующе ro параметра исследуемоrо процесса через определенные промежутки времени. При этом в зависимости от природы данных и характера решаемых задач реrист рируется либо текущее значение (например, температура или курс валюты), либо сумма значений, накопленная за определенный интервал времени (например, сумма продаж за день, количество клиентов за неделю и т. д.). В последнем случае может использоваться не только суммирование, но и среднее значение за интервал, минимальное, максимальное значения или медиана, Так, исследователя может ин" тересовать средний объем продаж за неделю, максимальный курс доллара к рублю, минимальная температура за месяц и т. д. Цели и задачи анализа временных рядов При изучении BpeMeHHoro ряда аналитик должен на основе HeKoToporo отрезка ряда конечной длины сделать выводы о характере и закономерностях процесса, который описывается данным рядом, Наиболее часто в ходе анализа временных рядов решаются следующие задачи: О описание характеристик и закономерностей ряда. На основе этоrо описания MorYT быть выявлены свойства соответствующих бизнес процессов; О моделирование построение модели исследуемоrо процесса; О пРО11l0зирование предсказание будущих значений BpeMeHHoro ряда; О управление. Зная свойства временных рядов, МОЖНО выработать методы воздей ствия на соответствующие бизнес процессы для управления ими. Наиболее востребованными в бизнес аналитике являются задачи моделиро вания и проrнозирования. Они взаимосвязаны: чтобы составить проrноз, сначала нужно построить соответствующую модель, проверить степень ее адекватности и правильно применить к имеющимся наблюдениям. При решении данных задач МОЖНО столкнуться с такими проблемами, как: о недостаточное количество наблюдений, содержащихся во временном ряду; О статистическая изменчивость ряда, которая приводит к тому, что прошлые зна чения ряда устаревают и обесцениваются с точки зрения выявления текущих закономерностей и возможности проrнозирования, Детерминированная и Olучайная составляющая BpeMeHHoro ряда Любой бизнес процесс разрабатывается и направляется осмысленно в COOTBeT ствии с теми или иными целями, поэтому в ero поведении ДОЛЖНЫ присутствовать определенные закономерности. Некоторые процессы протекают равномерно, не отклоняясь от намеченных показателей. Например, завод должен производить ровно столько изделий, сколько требуется заказчикам, поэтому, если спрос CTa бильный, то и ПРОИЗВОДСТВО необходимо поддерживать на одном уровне. Увели чивать или снижать ero нет смысла, поскольку в первом случае будет иметь место
rлава 10. Анализ и проrнозирование временных рядов 519 работа «на склад», а во втором упущенная прибыль и потерянные заказчики. Если спрос устойчиво возрастает с течением времени, то и производство должно наращиваться пропорционально, Если спрос характеризуется периодичностью, вызванной сезонными колебаниями, то и производство должно подстраиваться под них, Возьмем пиво и шипованные автопокрышки: первое лучше продается в теплое время, а вторые в зимнее. Попытка пойти против данной закономер ноСТИ вряд ли будет способствовать коммерческому успеху. Таким образом, в любом бизнес процессе присутствует определенная законо мерносТЬ, способствующая достижению ero целей, Она прослеживается и в COOTBeт ствующих временных рядах, Но любой бизнес сталкивается с воздействием различ ных случайных факторов, Диапазон таких факторов очень широк ОТ стихийных бедствий и пожаров до банальноrо Хищения на складе rотовой продукции. При этом случайные факторы MOryт как препятствовать, так и способствовать бизнесу Напри мер, аномально холодная зима будет способствовать взлету продаж отопительных приборов, а аномально теIUlая испортит бизнес продавцам зимних автопокрышек Общим свойством всех случайных факторов является то, что они не поддаются проrнозированию и вносят во временные ряды изменения, не соответствующие их основным закономерностям, Можно выделить две составляющие BpeMeHHoro ряда закономерную (дeтep минированную) и случайную (стохастическую). ОПРЕДЕЛЕНИЕ Закономерная (детерминированная) составляющая BpeMeHHoro ряда последователь- ность значений, элементы которой MOryт быть вычислены в соответствии с определенной функцией. Закономерная составляющая BpeMeHHoro ряда отражает действие известных факторов и величин. Зная функцию, описывающую закономерность, в соответствии с которой раз вивается исследуемый процесс, мы можем вычислить значение детерминированной составляющей в любой момент времени. Например, если спрос на товары и услуrи фирмы имеет устойчивую тенденцию к росту по линейному закону, то ero можно приближенно описать функцией d(t) == а + Ь. t, rде а и Ь константы. Подставляя в эту формулу время, для KOToporo требуется определить значение процесса, мы можем вычислить нужное значение, Конечно, это упрощенная ситуация и обычно реальные процессы описываются более сложными законами. ОПРЕДЕЛЕНИЕ Случайная (стохастическая) составляющая BpeMeHHoro ряда последовательность зна- чений, которая является результатом воздействия на исследуемый процесс случайных факторов. Случайная составляющая и ее влияние на временной ряд MOryт быть оценены только с помощью статистических методов. При мер соотношения детерминированной и случайной составляющих пред Ставлен на рис. 10.3. Здесь детерминированная составляющая изображена плавной темной линией, а случайная быстро изменяющейся светлой линией.
520 Часть 1. Теория бизнес анализа З5 ЗО 25 QJ :s: 20 :I: QJ :т ro 15 :I: М 10 5 О 2 5 10 б Время 7 8 з 4 9 Рис. 10.3. Детерминированная и случайная составляющие Вообще rоворя, случайная составляющая не существует отдельно от детерми нированной. Она проявляется только как результат воздействия набора случайных факторов на исследуемый процесс и обычно выражается в повышенной измен чивости BpeMeHHoro ряда, а также в отклонении значений детерминированной составляющей. Проще roворя, результирующее значение BpeMeHHoro ряда это результат взаимодействия детерминированной и случайной составляющих. Про стейшим видом TaKoro взаимодействия является случай, коrда каждое значение BpeMeHHoro ряда можно рассматривать как сумму (разность) двух значений, одно из которых обусловлено детерминированной составляющей, а друrое случай ной, то есть Х; == d j + Pi. rрафически это иллюстрируется на рис. 10.4, rде нижняя часть каждоrо столбика (светлая) обусловлена детерминированной составляющей, а верхняя (темная) случайной составляющей. Значение 45 40 З5 ЗО 25 20 15 10 5 О 2 з Время 4 5 Рис. 10.4. Аддитивное вэаимодействие детермИfШРОВанной и случайной составляющих
rлава 10. Анализ и проrнозирование временных рядов 521 Модели временных рядов Итак, наблюдаемые значения BpeMeHHoro ряда представляют собой результат взаимодействия детерминированной и случайной составляющих, Различают два вида TaKoro взаимодействия: О аддитивное значения BpeMeHHoro ряда получаются как результат сложения детерминированной и случайной составляющих; О мультипли'/(атИ6ное значения BpeMeHHoro ряда получаются как результат умножения детерминированной и случайной составляющих. Соответственно модели временных рядов также бывают аддитивные и муль типликативные. Аддитивная модель имеет вид: Х; == d j + РjИЛИ х== D + Р, rде i == 1.,. п номер BpeMeHHoro отсчета, Мультипликативная модель имеет вид: Х j == d j . Р j или Х == D . Р. Очень важно знать характер взаимодействия детерминированной и случайной составляющих, поскольку методика анализа временных рядов зависит от исполь зуемой модели, Компоненты BpeMeHHoro ряда Количество разнообразных процессов в экономике, управлении, бизнесе, социаль ной и rосударственной сфере весьма велико, и поведение временных рядов, опи сывающих эти процессы, может существенно различаться. Поэтому для описания поведения временных рядов были введены три компоненты, cBoero рода типовые структуры, которые можно выделить во временном ряду, тренд, сезонная KOM понента и циклическая компонента. С учетом указанных компонент детерминированная составляющая ряда может быть записана в виде: d i == t j + S j + с j, rде t j тренд; S j сезонная компонента; с j циклическая компонента; i == 1.,. п номер BpeMeHHoro отсчета, Тренд Тренд наиболее важная компонента BpeMeHHoro ряда. Именно с выделения тренда чаще Bcero и начинается анализ BpeMeHHoro ряда,
522 Часть 1. Теория бизнес анализа ОПРЕДЕЛЕНИЕ Тренд медленно меняющаяся компонента BpeMeHHoro ряда, которая описывает влияние на временной ряд долrовременно действующих факторов, вызывающих плавные и дли тельные изменения ряда. Действительно, среди всех факторов, влияющих на экономические и бизнес процессы, выделяются быстродействующие и медленнодействующие. Быстродей ствующие факторы, такие как стихийное бедствие, «обвал» фондовоrо рынка и т, Д., MOryT изменить ситуацию в течение нескольких дней или даже часов. Медленнодей ствующие факторы MOryT изменять ситуацию в течение нескольких месяцев и даже лет, Так, если наблюдается постепенный отток рабочей силы из реrиона, то она CTa новится дефицитной и, чтобы привлечь квалифицированные кадры, работодатели вынуждены повышать заработную плату, что отражается на цене товаров и услуr. Однако этот процесс может длиться rоды, И хотя на протяжении отдельных интер валов времени эти показатели MOryT колебаться (например, под действием друrих факторов), в целом теНденция будет сохраняться, Именно такие закономерности в рядах данных и позволяет выявить тренд, Чтобы представить характер тренда, обычно бывает достаточно взrлянуть на rpафик BpeMeHHoro ряда. Для описания тренда используются различные модели, наиболее популярными из которых являются следующие. О Простая линейная модель: t; == а + Ь. i, rде i == 1... п номер отсчета времени (элемента ряда), Пример линейноrо тренда представлен на рис. 10,5, 18 16 14 Q) 12 :s: а5 1 О :т 8 C'J 6 4 2 О 2 з 4 5 6 7 8 9 10 Время Рис. 10.5. Линейный тренд Несмотря на свою простоту, линейная модель тренда часто оказывается полез ной при решении реальных задач анализа, поскольку мноrие бизнес процессы линейны по своей природе. О Полиномиальная модель: t; == а + Ь ! , i + Ь 2 . i 2 + ... + Ь" . i n . В большинстве реаль ных задач степень полинома не превышает 5,
rлава 10. Анализ и проrнозирование временных рядов 523 о Экспоненциальная модель: t i == ехр(а + Ь . i). Используется в случаях, коrда про цесс характери уется равномерным увеличением темпов роста. П ример экспо ненциальноrо тренда представлен на рис. 10.6 (сплошная линия). 40 З5 ЗО 25 20 45 10 5 О Q) :s: :I: Q) :т CtI :I: (') 2 З 4 5 6 7 8 9 10 11 Время Рис. 10.6. Экспоненциальный тренд о ЛОlисmическая модель: t i == aj(1 + Ь. e ki ), [де k константа, управляющая KPy тизной лоrистической функции (рис. 10.7). 1,0 0,8 0,6 0,4 0,2 0,0 1 О 8 6 4 2 О 2 4 6 8 10 Рис. 10.7. Лоrистическая функция (сиrмоида) TaKoro типа кривые, имеющие S образную форму, часто называют CUlмоида.ми. Они хорошо описывают процессы с непостоянными темпами роста. Сезонная компонента Мноrим процессам свойственна повторяемость во времени, причем периодичность таких повторений может изменяться в очень широком диапазоне. Например, для Экономики стран и реrионов характерны подъемы и спады, которые MorYT длиться десятилетиями. В супермаркете продажи ежедневно увеличиваются в вечернее время, коrда люди идут с работы. На бензоколонке, расположенной на выезде из [o рода, пик продаж топлива наблюдается в выходные дни, Коrда [ородское население Выезжает на дачи. Объемы продаж товаров для школьников резко увеличиваются в aBrycTe, в преддверии HOBoro учебноrо [ода. Спрос на туристические путевки,
524 Часть 1. Теория бизнес анализа авиа и железнодорожные билеты существенно возрастает в сезон отпусков. ПО добных примеров можно привести множество. Очевидно, что для описания таких периодических изменений, присутствующих во временных рядах, тренд неприrоден. Поэтому вводится еще одна компонента, называемая сезонностью, или сезонной компонентой. ОПРЕДЕЛЕНИЕ Сезонная компонента составляющая BpeMeHHoro ряда, описывающая реryлярные изме нения ero значений в пределах HeKoToporo периода и представляющая собой последова тельность почти повторяющихся циклов. Сезонная компонента может быть при вязана к определенному календарному временному интервалу: дню, неделе, кварталу, месяцу или rоду либо к KaKOMY нибудь событию, которое прямо не соотносится с конкретными календарными интервалами. ПРИМЕР Ажиотажный спрос на цветы перед 8 Марта всеrда связан с определенной датой и неза- висимо от поrоды и друrих факторов наблюдается в одно и то же время. В данном случае имеет место rодовая периодичность. Резкий рост спроса на услуrи пунктов шиномонтажа наблюдается дважды в rод при ухудшении дорожных условий из-за выпадения cHera и rололеда, коrда водители меняют летние шины на зимние, и весной, коrда дороrи очищаются от cHera и льда. Изменение спроса связано не с конкретной датой (все бросились менять резину 1 декабря), а с ре- альными поrодными условиями. Например, условия, которые сделают необходимым переход на зимние покрышки, Moryт сложиться и в конце октября, и в начале января. Очиститься ото льда и cHera дороrи MOryт уже в начале марта, а Moryт и в конце апре ля. Следовательно, в данном случае имеет место сезонная компонента с переменным периодом. Сезонную компоненту с изменяющимся периодом иноrда называют «плава ющей». Утверждать, что сезонная компонента описывается периодической функци ей, было бы неверно. Понятно, что реryлярно повторяющиеся всплески продаж, образующие сезонную компоненту, не будут воспроизводиться абсолютно точно (как, например, значения функций синуса или косинуса). Тем не менее сезон ная компонента обычно хорошо прослеживается на rрафике BpeMeHHoro ряда (рис. 10.8). Представленный временной ряд содержит наблюдения за числом автомобилей, заправляющихся на бензоколонке. Он включает наблюдения за 3 недели. На rpa фике видно, что в рабочие дни количество заправляющихся автомобилей почти в два раза меньше, чем в выходные. Рост числа клиентов начинается с пятницы, коrда жители rорода выезжают на дачу, и завершается в воскресенье, коrда они возвращаются назад. Таким образом, имеется сезонная компонента с недельной периодичностью.
rлава 10. Анализ и проrнозирование временных рядов 525 250 200 150 100 50 f------ f------ f------ it f------ о >< >< f!i L.. CtI Q) >< >< f!i L.. CtI Q) >< >< CtI L.. CtI Q) :s: :s: Q. r-- .tI :s: :s: Q. r-- .tI :s: :s: <:1 Q. r-- .tI :I: :I: Q) Q) :s: о :I: :I: :I: Q) Q) :s: о :I: :I: :I: Q) Q) :s: о :I: .tI Q. Q. al :I: о Q) .tI Q. Q. al :I: о Q) .tI Q. а. al :I: о Q) с:; о () r-- r-- о u с:; о () r-- r-- о u с:; о () r-- r-- о u Q) r-- Q) 1;<: >- Q) r-- Q) 1;<: >- Q) Q) r-- Q) 1;<: >- Q) <:1 са с () Q. са с () Q. <:1 са с () Q. Q) >< Q) >< Q) >< :I: U :I: U :I: U О о о о о о с са с са с са Рис. 10.8. Сезонная компонента BpeMeHHoro ряда Циклическая компонента Часто временные ряды содержат изменения, слишком плавные и заметные для слу чайной составляющей. В то же время такие изменения нельзя отнести ни к тренду, поскольку они не являются достаточно протяженными, ни к сезонной компоненте, поскольку они не являются реryлярными. Подобные изменения называются ЦИК лической компонентой BpeMeHHoro ряда. Она занимает промежуточное положение между детерминированной и случайной составляющими BpeMeHHoro ряда. ОПРЕДЕЛЕНИЕ Циклическая компонента BpeMeHHoro ряда интервалы подъема или спада, которые имеют различную протяженность, а также различную амплитуду расположенных в них значений. Наличие в рядах данных циклических компонент связано с тем, что в пределах интервалов более rлобальных изменений (например, сезонных) MoryT наблюдаться не имеющие периодичности временные подъемы и спады, которые, в отличие от случайной компоненты, не вызваны действием случайных факторов, а являются особенностями бизнеса и обусловлены общеэкономической ситуацией. На rpафике циклическая компонента выrлядит как плавные волнообразные флуктуации BOKpyr тренда. На рис. 10.9 пред ставлен временной ряд с ярко выраженным возрастающим трендом и циклической компонентой. Выделить во временных рядах циклическую компоненту формальными MeTO дами довольно сложно. Обычно для этоrо используют информацию из друrих Bpe менных рядов, которые связаны с исследуемым. Например, объяснить колебания ряда в пределах сезонных интервалов можно инфляцией, изменениями на рынке трудовых ресурсов и т. д. Но для этоrо необходимо привлечь соответствующую информацию.
526 Часть 1. Теория БИзнес анализа 25 20 cl) 15 :s: :I: cl) "' '" :I: 10 с') 5 Циклическая составляющая о 2 з Время 4 5 Рис. 10.9. Циклическая компонента Изучение циклической компоненты часто оказывается полезным для проrно зирования, особенно краткосрочноrо. Таким образом, временной ряд можно представить как композицию, состоящую из двух составляющих случайной и детерминированной. Детерминированная составляющая, в свою очередь, содержит три компоненты тренд, сезонную и ци клическую. Структура BpeMeHHoro ряда поясняется на рис. 10.10. Тренд Сеэонная компонента Циклическая компонента Рис. 10.10. Композиционная структура BpeMeHHoro ряда Исследование временных рядов и автокорреляция Цель анализа BpeMeHHoro ряда построение ero математической модели, с помо щью которой можно обнаружить закономерности поведения ряда, а также постро ить проrноз ero дальнейшеrо развития.
rлава 10. Анализ и проrнозирование временных рядов 527 [лавной проблемой при построении таких моделей является нестационарность ряда. Временной ряд называется стационарным, если ero статистические свой ства (математическое ожидание и дисперсия) одинаковы на всем протяжении ряда. Если статистические свойства для различных интервалов ряда существенно различаются, то такой ряд называется нестационарным. Применение к нестацио нарнЫМ рядам различных методов анализа, в том числе статистических, затруд нено. Поэтому, прежде чем приступать к построению модели ряда, ero стараются свести к стационарному. В верхней части рис. 10.11 представлен стационарный ряд, а в нижней нестационарный. Стационарный ряд 50 000 40 000 ЗО 000 20 000 10000 О 9 17 25 ЗЗ 41 49 57 65 7З 81 89 97 105 11З 121 129 1З7 145 Нестационарный ряд 50 000 1 О 000 11 21 З1 41 51 61 71 81 91 101 111 121 1З1 141 40 000 зо 000 20 000 Рис. 10.11. Визуальная оценка стационарности BpeMeHHoro ряда При исследовании BpeMeHHoro ряда, как правило, ищут ответы на несколько вопросов. О Является ли ряд данных случайным? О Содержит ли временной ряд тренд и сезонную компоненту? О Является ли временной ряд стационарным?
528 Часть 1. Теория бизнес анализа Для ответа используется аппарат корреляционноrо анализа, Корреляция это понятие математической статистики, которое характеризует степень статисти ческой взаимосвязи между элементами данных. Если взаимосвязь между эле ментами данных присутствует, то такие данные называются коррелированными, в противном случае некоррелированныиu (корреляционный анализ paCCMaT ривался в rлаве 5). Если определяется корреляция между двумя временными рядами, то rоворят о взаимной корреляции. Коrда устанавливается степень статистической зависи мости между значениями одноrо BpeMeHHoro ряда, имеет место автокорреляция. В этом случае вычисляется корреляция между временным рядом и ero копией, сдвинутой на один или несколько временных отсчетов. Смысл корреляционноrо анализа заключается в следующем. Детерминиро ванная составляющая BpeMeHHoro ряда, которая описывает закономерности, присущие связанному с ним процессу, характеризуется плавными изменениями значений ряда. То есть соседние значения ряда не должны сильно отличаться, и, следовательно, между ними присутствует взаимная зависимость (элементы ряда коррелированы между собой). Если значения ряда в большей степени обусловлены случайной составляющей и соседние значения MorYT существенно отличаться друr от друrа, то степень их взаимозависимости и, следовательно, корреляция будут меньше, Рассмотрим понятие автокорреляции на следующем примере. Пусть дан ряд, который содержит последовательность ежемесячных наблюдений за продажами (табл.10.1). Таблица 10.1. Продажи по месяцам Месяц Продажи Январь 125 Февраль 130 Март 140 Апрель 132 Май 145 Июнь 150 Июль 148 ABryCT 155 Сентябрь 157 Октябрь 160 Ноябрь 158 Декабрь 165 [рафик ряда пред ставлен на рис. 10.12. Для Toro чтобы вычислить автокорреляцию ряда, будем использовать ero KO пию, сдвинутую В сторону запаздывания на определенное количество отсчетов (табл. 10.2).
rлава 10. Анализ и проrнозирование временных рядов 529 1ВО 160 140 120 Q) :s: 100 :I: Q) :т со ВО :I: с') 60 40 20 О 2 з 4 5 6 7 в 9 10 11 12 Время Рис. 10.12. [рафик продаж ПО месяцам Таблица 10.2. Данные для расчета автокорреляционной функции (АКФ) Х 125 130 140 132 145 150 148 155 157 160 158 165 X/ 1 125 130 140 132 145 150 148 155 157 160 158 X/ 2 125 130 140 132 145 150 148 155 157 160 ... X/ n 125 Тоrда ряд Х i 1 будет представлять собой копию исходноrо ряда, сдвинутую на один временной отсчет, Х i, 2 на два временных отсчета и т. д. Для определения степени взаимной зависимости элементов ряда используется величина, называ емая коэффициентом автокорреляции rk, rде k количество отсчетов, на которое был сдвинут временной ряд при вычислении данноrо коэффициента. Коэффици ент автокорреляции вычисляется в соответствии с формулой п Е (х; X)(Xi k X) ; k+1 rk == п Е(Х; X) ;==1 rДе Х; значение l ro отсчета; Х; k наблюдение Х; со сдвиrом на k временных отсчетов; Х среднее значение ряда. Коэффициент корреляции изменяется в диапазоне [ 1; 1], rде rk == 1 указывает На полную корреляцию. Если рассчитать коэффициенты автокорреляции для каждоrо сдвиrа, то получим последовательность коэффициентов, называемую автокорреляционной функцией (АК Ф).
530 Часть 1. Теория бизнес анализа Результат расчета АКФ дЛЯ ряда Х представлен в табл, 10.3. Таблица 10.3. Результаты расчета АКФ дЛЯ ряда Х Соответствующий rpафик пред ставлен на рис, 10.13. (. 0,8 0,6 О 0,4 0,2 2 з 4 5 6 7 8 9 k 0,2 Рис. 10.13. Автокорреляционная функция BpeMeHHoro ряда Значение коэффициента автокорреляции при нулевом сдвиrе ro равно 1, по скольку определяется автокорреляция двух одинаковых копий BpeMeHHoro ряда, а ряд полностью коррелирован сам с собой, Также наблюдается высокая степень корреляции п > 0,8 при сдвиrе менее чем на 4 временных отсчета и умеренная при п, изменяющемся на 5 7 отсчетов, При сдвиrе более чем на 7 отсчетов коэффициент корреляции быстро падает. Такой результат вполне объясним. Значения ряда, pac положенные близко друr к друry, имеют высокую степень взаимной зависимости, что обеспечивает высокий коэффициент автокорреляции при малом сдвиrе (в пре делах 4 отсчетов). По мере удаления значений степень их взаимной зависимости падает, что приводит к уменьшению коэффициента автокорреляции при сдвиrе бо лее чем на 5 отсчетов. и наконец, при сдвиrе более чем на 7 отсчетов коэффициент автокорреляции устремляется к нулю, что rоворит о резком уменьшении взаимноЙ зависимости точек, отстоящих друr от друrа более чем на 7 отсчетов. Для ряда на рис. 10.12 на основе АКФ, представленной на рис. 10.13, можно cдe лать вывод, что в нем наблюдается высокая степень взаимной зависимости между соседними значениями. Данный вывод подтверждается визуальным исследованием ряда: в нем присутствует небольшой линейный положительный тренд, отсутствует сезонная компонента, а достаточно высокая rладкость позволяет выдвинуть пред положение о малой величине случайной составляющей. Все это хорошо соrласуется с выводами, сделанными на основе корреляционноrо анализа. Кроме Toro, корреляционный анализ позволяет прийти к следующим заключе ниям о поведении BpeMeHHoro ряда.
rлава 10. Анализ и проrнозирование временных рядов 531 о Если ряд содержит тренд, то степень взаимной зависимости между последова тельными значениями ряда и корреляция между ними очень высоки, При этом коэффициент автокорреляции значителен для первых нескольких сдвиrов ряда, а в дальнейшем убывает до нуля. Данная ситуация иллюстрируется на рис. 10.12 и 10.13. О Если действие случайной компоненты велико, то коэффициенты автокорреля ции для любоrо значения сдвиrа будут близки к нулю. Высокая изменчивость ряда, являющаяся следствием воздействия случайной компоненты, приводит к уменьшению взаимной связи между последовательными значениями ряда и, соответственно, к уменьшению коэффициента автокорреляции. Данная си туация поясняется на рис. 10.14. Сверху представлен rpафик BpeMeHHoro ряда, который обладает большей изменчивостью, чем ряд на рис. 10.12. Снизу приведе на ero автокорреляционная функция. Видим, что коэффициент автокорреляции равен 1 только при нулевом сдвиrе, коrда ряд коррелирован сам с собой. Даже при сдвиrе на 1 отсчет коэффициент автокорреляции равен почти О. в данном ряду превалирует случайная компонента, что приводит к низкой степени взаим ной зависимости последовательных значений ряда. 80,0 70,0 60,0 Q) 50,0 :s: :I: Q) 40,0 :т CtI :I: (') ЗО,О 20,0 10,0 0,0 2 З 4 5 6 7 8 9 10 11 12 1З 14 15 16 17 18 19 Время (. 1,0 0,8 0,6 0,4 0,2 0,0 2 З 4 5 6 7 8 9 10 11 12 1З 14 1516 17 18 k 0,2 Рис. 10.14. Случайный ряд и ero АКФ
532 Часть 1. Теория БИзнес анализа о Если ряд содержит сезонную компоненту, то коэффициент авто корреляции будет большим для значений сдвиrа, равных периоду сезонной состаВЛЯЮщей или кратных ему. Данная ситуация проиллюстрирована на рис, 10.15, [де сверху представлен ряд с ярко выраженной сезонностью, а снизу ero АКФ. 160 140 Q) 120 s :I: 100 Q) "' CtI 80 :I: (') 60 40 20 О 1 2 З 4 5 6 7 8 9 10 11 12 Время (. 1,0 0,5 0,0 0,5 1,0 k Рис. 10.15. Ряд с сезонной компонентой и ero АКФ Таким образом, корреляционный анализ один из важнейших инструментов исследования временных рядов. Он позволяет выявлять в ряду тренд и сезонную компоненту, а также определять, насколько поведение ряда обусловлено случайной компонентой. Знание данных свойств BpeMeHHoro ряда помоrает строить более адекватные модели и выбирать методы проrнозирования. 10.3. Модели проrнозирования в современной бизнес аналитике rлавным инструментом проrнозирования яВЛЯ ются проrностические модели. От Toro, насколько модель проrноза адекватна усло виям, в которых работает компания, насколько полно в ней учитываются внешние и внутренние факторы, воздействующие на те или иные бизнес процессы, зависиТ точность и достоверность проrноза.
rлава 10. Анализ и проrнозирование временных рядов 5ЗЗ Обобщенная модель проrноза Структура проrностической модели похожа на структуры моделей, используемых для решения друrих задач анализа, например распознавания, идентификации и т. д. Модель проrноза отличается только характером используемых данных и алrоритмами их обработки. Обобщенная структура проrностической модели представлена на рис. 10.16. Здесь набор входных перемеННЫХХj (i == 1... п), образу юших вектор Х, исходные данные для проrноза. Набор ............... у = '(Х) выходных переменных yj (j == 1... т), образующих вектор результата У, есть набор проrнозируемых величин. Коrда решается задача проrнозирования значений BpeMeHHoro ряда, описывающеrо динамику изменения Рис. 10.16. Обобщенная HeKoToporo бизнес процесса, входные значения наблю модель проrноэа дения за развитием процесса в прошлом, а выходные проrнозируемые значения процесса в будущем. При этом временные интервалы прошлых наблюдений и временные интервалы, по которым требуется получить проrноз, должны соответствовать дpyr друту. Например, требуется получить проrноз по продажам на будущую неделю. Наблюдения, на основе которых будет строиться проrноз, также должны быть взятыI за неделю. Если в базе данных история продаж представлена по дням, то получить данные по неделям можно с помощью COOTBeT ствующеrо аrpеrирования. Обучающая выборка строится путем преобразования BpeMeHHoro ряда с помощью скользящеrо окна. Кроме TOro, количество наблюдений за историей развития процесса в прошлом, на основе KOToporo строится проrноз, должно быть больше, чем число проrнозиру емых интервалов, то есть п > т. Иначе rоворя, если мы хотим получить проrноз на неделю, то для этоrо должны взять наблюдения за несколько прошедших недель. Рассмотрим основные модели проrнозирования. ............... ............... «Наивная» модель проrнозирования «Наивная модель предполarает, что последний период проrнозируемоrо BpeMeH Horo ряда лучше Bcero описывает будущее этоro ряда. В таких моделях проrноз, как правило, является довольно простой функцией от наблюдений проrнозируемой величины в недалеком прошлом. Простейшая модель описывается выражением: y(t + 1) == y(t), rДе y(t) последнее наблюдаемое значение; у( t + 1) проrноз. В основу этой модели заложен принцип: <iЗавтра будет как сеrодня . Ждать от такой примитивной модели точноrо проrноза не стоит. Она не Только не учитывает закономерности проrнозируемоrо процесса (что в той или Иной степени свойственно мноrим статистическим методам проrнозирования), но
534 Часть 1. Теория бизнес анализа и не защищена от случайныlx изменений в данных, а также не отражает сеЗОННЬJ:Q колебания и тренды. Чтобы модель учитывала наличие возможных трендов, ее можно несколько усложнить, например преобразовав к виду y(t + 1) := y(t) + [y(t) y(t 1)] ИЛ1l: y(t+ 1) :=y(t). [y(t)/y(t 1)]. При необходимости учета сезонных колебаний «наивная", модель модифици руется следующим образом: y(t + 1) := y(t s), rдe s показатель, учитывающий сезонные изменения проrнозируемоrо BpeMeH Horo ряда. Экстраполяция Экстраполяция представляет собой попытку распространить закономерность поведения некоторой функции из интервала, в котором известны ее значения, за ero пределы. Иными словами, если значения функцииf(х) известны внекотором интервале [хо; х n ], то целью экстраполяции является определение наиболее Bepo ятноrо значения в точке х п т 1. На рис. 10.17 представлен возможный результат экстраполяции устойчивой тенденции роста в первом полуrодии на первые два месяца BToporo полуrодия (последние два столбца). зо 25 20 15 10 5 О " Январь Февраль Март Апрвль Май Июнь Июль AвryCT Рис. 10.17. Экстраполяция эначений BpeMeHHoro ряда Экстраполяция применима только в тех случаях, Korдa функцияf(х) (aCOOT ветственно, и описываемый с ее помощью временной ряд) достаточно стабильна и не подвержена резким изменениям. Если это требование не выполняется, скорее Bcero, поведение функции в различных интервалах будет подчиняться разным закономерностям. К существенным факторам, определяющим эффективность применения метода экстраполяции, относится надежность данных, лежащих в основе анализа. Экстраполяция тендеlЩИЙ получила широкое применение в нормативном про rнозировании. В частности, с помощью этоrо метода устанавливается, можно ли,
rлава 10. Анализ и проrнозирование временных рядов 535 используя сушествующие технолоrии, достичь заданных производственных или друrих бизнес показателей. Наиболее популярным методом экстраполяции в настоящее время является эксnонеНЦUaJlыюе СlЛажuванuе. Основной ero принцип заключается в том, чтобы учесть в проrнозе все наблюдения, но с экспоненциально убывающими весами. Метод позволяет принять во внимание сезонные колебания ряда и предсказать поведение трендовой составляющей. Проrнозирование методом CpeдHero и скользящеrо среднеrо Наиболее простая модель этой rpуппы обычное усреднение набора наблюдений проrнозируемоrо ряда: ( ) (y(t)+y(t 1)+y(t 2)+'",+y(1)) yt+1== , t Принцип модели простоrо среднеrо: «Завтра будет как в среднем за последнее время>. Преимущество TaKoro подхода по сравнению с «наивной> моделью оче видно: при усреднении crлаживаются резкие изменения и выбросы данных, что делает результаты проrноза более устойчивыми к изменчивости ряда. Но в целом эта модель проrноза столь же примитивна, как и «наивная>, и ей присущи те же недостатки. В формуле проrноза на основе среднеrо предполаraется, что ряд усредняется по достаточно длительному интервалу времени (в пределе по всем наблюдениям). С точки зрения проrноза это не вполне корректно, так как старые значения Bpe MeHHoro ряда моrли формироваться на основе иных закономерностей и утратить актуальность. Поэтому свежие наблюдения из недалекоrо прошлоrо лучше описы вают проrноз, чем более старые значения Toro же ряда, Чтобы повысить точность проrноза, можно использовать скользящее среднее: ( ) (y(t)+y(t 1)+y(t 2)+",.+y(t T)) yt+1 Т+1 . Смысл данноrо метода заключается в том, что модель «видит> только ближай Шее прошлое на Т отсчетов по времени и проrноз строится только на этих наблю дениях. Например, при скользящем среднем за три месяца проrнозом на май будет Среднее значение показателей за февраль, март и апрель, а при скользящем cpek нем за четыре месяца майский показатель можно оценить как среднее значение Показателей за январь, февраль, март и апрель (рис. 10.18). Метод скользящеrо среднеrо весьма прост, и ero результаты довольно точно Отражают изменения основных показателей предыдущеrо периода. Иноrда он Оказывается даже эффективнее, чем методы, основанные на долrовременных Ha блюдениях.
536 Часть 1. Теория бизнес анализа 20 15 5 10 о Январь Февраль Март Апрель Май Рис. 10.18. Проrноэ по скользящему среднему Допустим, требуется составить проrноз объема продаж продукции предприяти ем, если средний показатель объема продаж за последние несколько лет 1000 ед. При этом проrноз должен учитывать IUIанируемое сокращение дилерской сети, что, очевидно, повлечет за собой временное снижение объемов продаж. Если для проrнозирования объема продаж в следующем месяце воспользовать ся средним значением этоrо показателя за четыре последних месяца, то, скорее Bcero, полученный результат окажется несколько завышенным по сравнению с фактическим. Но если проrноз будет составлен на основании данных за ДВа последних месяца, то он более точно отразит последствия сокращения штата TOp rOBbIx areHTOB. В этом случае проrноз будет отставать по времени от фактических результатов Bcero на один два месяца. И так, чем меньшее количество наблюдений используется для вычисления скользящеrо среднеrо, тем точнее будут отражены изменения показателей, на oc нове которых строится проrноз. Однако, если для проrнозируемоrо скользящеrо среднеrо используется только одно или два наблюдения, такой проrноз может быть слишком упрощенным. Чтобы определить, сколько наблюдений желательно включить в скользящее среднее, нужно исходить из предыдущеrо опыта и име ющейся информации о наборе данных. Необходимо соблюдать равновесие между повышенным откликом скользящеrо среднеrо на несколько самых поздних наблю дений и большой изменчивостью скользящеrо среднеrо. Одно отклонение в наборе данных для трехкомпонентноrо среднеrо может исказить весь проrноз. Более хороших результатов удается добиться при использовании метода э'Кcnо l-te'НЦИШlЪНЪLX средних. Соответствующая модель записывается с помощью формулы: y(t + 1) == а . y(t) + (1 а) . y'(t), rде y(t + 1) проrнозируемое значение; у( t) текущее наблюдаемое значение; y'(t) прошлый проrноз текущеrо значения; а параметр crлаживания (О $ а $ 1). Параметр а позволяет определять степень участия прошлых значений ряда в формировании проrноза. Видно, что с удалением значений ряда от текущеrо момента в прошлое их вклад в проrноЗ экспоненциально убывает, а скорость этоrо убывания реryлируется параме
rлава 10. Анализ и проrнозирование временных рядов 537 тром а. В пределе. Korдa а == 1, мы получим обычный «наивный>? проrноз, а при а == О проrнозируемая величина всеrда будет равна предыдущему проrнозу. Метод экспоненциальных средних можно пояснить с помощью диarраммы, представленной на рис. 10.19. 0,8 0,7 0,6 0,5 0,4 О,З 0,2 0,1 О D . . а=О,7 а=О,З а=О,8 t 1 t 2 t З t 4 t 5 Рис. 10.19. Проrноэирование методом экспоненциальных средних Как видно на рисунке, при больших а увеличивается вклад самых свежих значе ний ряда, а с удалением в прошлое вклад значений резко уменьшается. При малых значениях а вклад значений ряда в результат проrнозирования распределяется более равномерно. Обычно при использовании модели экспоненциальноrо сrлаживания строятся проrнозы на некотором тестовом наборе при а == {0,01; 0,02... 0,98; 0,99}. Затем определяется, при каком а обеспечивается наиболее высокая точность проrнози рования, и это значение применяется в дальнейшем. Описанные выше модели ( «наивный>? метод, методы, основанные на средних, скользящих средних и метод экспоненциальноrо crлаживания) используются при решении несложных задач проrнозирования, например при проrнозировании продаж на устоявшихся рынках. Но ввиду примитивности этих моделей следует очень осторожно подходить к их использованию на практике. Реrрессионные модели к числу наиболее мощных, развитых и универсальных моделей проrнозирования Относятся реlреССИОllllые модели. Реrрессия это технолоrия статистическоrо анализа, целью которой является определение лучшей модели, устанавливающей Взаимосвязь между выходной (зависимой) переменной и набором входных (неза висимых) переменных (в Data Мiпiпg реrpессией называют класс задач). Применение реrрессионных моделей оказывается особенно полезным в сле Дующих случаях. а Входные переменные задачи известны или леrко поддаются измерению, а BЫ ходные нет. а Значения входных переменных известны из начально, и на их основе требуется предсказать значения выходных переменных.
538 Часть 1. Теория бизнес анализа о Требуется установить причинно следственные связи между входными и BbIXOk ными переменными, а также силу этих связей. В технолоrиях проrнозирования наиболее широко используется такой вид реrpессионной модели, как обобщенная линейная модель. Ее популярность вызвана тем, что мноrие процессы в управлении, экономике и бизнесе линейны по Своей природе. Кроме Toro, существуют методы, которые позволяют привести нелиней ную модель к линейной с минимальными потерями точности. Обобщенная линейная модель реrрессии описывается уравнением: у == o + IXl + 2X2 + ""о + nXn, [де Xi значение i ro наблюдения; i коэффициент реrpессии. (10.1 ) Метод декомпозиции BpeMeHHoro ряда Одним из методов проrнозирования временных рядов является определение факторов, которые влияют на каждое значение BpeMeHHoro ряда, Для этоrо BЫ деляется каждая компонента BpeMeHHoro ряда, вычисляется ее вклад в общую составляющую, а затем на ero основе проrнозируются будущие значения BpeMeH Horo ряда. Данный метод получил название декомпозиции временною ряда. Термин «декомпозиция означает, что исходный временной ряд представляет ся как композиция компонент Тренда, сезонной и циклической. Для построения проrноза выполняется выделение этих компонент из ряда, то есть декомпозиция, или разложение ряда по компонентам. Методы декомпозиции MOryT использовать ся для построения как краткосрочных, так и долrосрочных проrнозов. Фактически декомпозиция это выделение компонент BpeMeHHoro ряда и их проекция на будущее с последующtй комбинацией для получения проrноза. Метод был разработан довольно давно, однако сейчас ero использует все реже и реже из за присущих ему оrpаничений. Проблема заключается в том, что обеспечить достаточ но высокую точность проrноза для отдельных компонент очень затруднительно. Рассмотрим проrнозирование методом декомпозиции с помощью тренда (рис. 10.20). Если тренд линейный, что типично для мноrих реальных временных рядов, то он представляет собой прямую линию, описываемую уравнением: y==a+b.t, [де у значение ряда; а и Ь коэффициенты, определяющие расположение и наклон линии тренда; t время. Если уравнение линии тренда известно, с ero помощью можно рассчитать зна чения тренда в любой, в том числе будущий, момент времени. Достаточно восполь зоваться уравнением: Yl+k == а + Ь. (t' + k), [де t' начало проrноза; k rоризонт проrноза.
rлава 10. Анализ и проrнозирование временных рядов 539 25 20 Q) 15 :s; :I: Q) "7 C'CI :I: с') 10 5 О I I I р ................ ..... I I I I I I Проrноэ I I I I I I I I 2 з 4 5 Время б 7 8 9 Рис. 10.20. Проrнозирование с помощью тренда При использовании сезонности для проrнозирования методом декомпозиции сначала из BpeMeHHoro ряда убирается тренд и crлаживается возможная цикли ческая компонента. Тоrда можно считать, что оставшиеся данные будут обусло влены в основном сезонными колебаниями. На основе этих данных вычисляются так называемые сезонные индексы, которые характеризуют изменения BpeMeHHoro ряда во времени. Например, временной ряд содержит наблюдения по месяцам в Te чение rода. Сезонный индекс, равный 1, будет установлен для месяца, ожидаемое значение в котором составляет 1/12 от общей суммы по всем месяцам. Если для HeKoToporo месяца устанавливается индекс 1,2, то ожидаемое значение для этоrо месяца составляет 1/12 + 20 %, а если 0,8 то 1/12 20 % и т. д. Ясно, что сумма месячных сезонных индексов за rод должна равняться 12 (табл. 10.4). Таблица 10.4. Сезонные индексы Интервал Значение Сезонный индекс Январь 230 0,6281 Февраль 231 0,6308 Март 567 1,5484 Апрель 215 0,5871 Май 245 0,6691 ИЮНЬ 675 1,8434 Июль 247 0,6745 ABryCT 198 0,5407 Сентябрь 640 1,7478 Октябрь 235 0,6417 Ноябрь 221 0,6035 Декабрь 690 1,8843
::t&loU часть 1. Теория бизнес анализа Диаrpамма сезонных индексов представлена на рис. 10.21. S. 1,8 1,6 1,4 1,2 1 0,8 0,6 0,4 0,2 О r---- r---- ... .. f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- f---------- r---------- ... I I I ..о ..о .... ..о ':!;; ..о ..о .... ..о ..о ..о ..о Q. :а Q. <:; (j :J: <:; U Q. Q. Q. Q. (j (j (J) ::Е Q Q t' Q Q Q Q '" Q. ::Е Q. :s: :s: '" о: о: о: (j :J: '" с: <1: .... !;< о >< о:: (J) <1: :J: ::r: (J) е (J) о 1:::[ u Рис. 10.21. Диаrpамма сезонных индексов Диаrpамма сезонных индексов позволяет оценить вероятный относительный вклад месяцев будущеrо [ода в общеrодовой показатель на основе сезонной компо ненты. Использовать сезонность для проrнозирования можно TOrдa, коrда сезонные колебания имеют хорошую повторяемость. 10.4. Проrнозирование в торrовле и лоrистике Проrнозирование очень востребовано в оптовой и розничной торrовле, а также в управлении материальными запасами. При этом проrнозирование позволяет улучшить бизнес процессы как у конечных продавцов, так и у производителей. В розничной торrовле проrнозирование способствует оптимизации товарных запа сов, а в производстве позволяет соответствующим образом распределять мощности, планировать ассортимент и количество выпускаемой продукции. Особенно актуально внедрение систем проrнозирования для предприятий, pa ботающих в динамично развивающейся экономической среде. В условиях, коrда рынки формируются, польза проrнозирования измеряется не только деньrамИ. Те компании, которые внедряют ero в процессы управления и планирования бизне са раньше, чем их конкуренты, получают дополнительные cerмeHTЫ рынка и такиМ образом закладывают фундамент на будущее. Еще одним важным аспектом деятельности ToproBbIx предприятий являетСЯ управление материальными запасами и потоками. Невозможно планировать за пасы без проrнозирования сбыта, а цена вопроса очень высока. Неоптимальное распределение товарных запасов может привести к их отсутствию там, [де в них
rлава 10. Анализ и проrнозирование временных рядов 541 возникает острая необходимость, или к переполнению складов в противоположной ситуации. Расходы, связанные с перемещением и хранением товара, MOryT <iсъесть>? львиную долю прибыли. В идеальном случае товар должен поступать именно туда и именно тоrда, коrда в нем есть необходимость. Только проrнозирование спроса и сбыта позволит отделу лоrистики спланировать процесс управления запасами таК, чтобы минимизировать связанные с ним затраты. Отказ от ручной работы и использование специализированных инструментов для оптимизации складских запасов актуален в следующих случаях: [J большой ассортимент (от 1000 позиций и более), частое обновление HOMeHK латуры; [J сложный аЛlоритм планирования, учитывающий проrнозы спроса, способы доставки, планы выпуска продукции; [J большая трудоемкость влияние множества факторов. необходимость обмена данными с различными системами, малое количество менеджеров по закупкам. Оптимизация складских запасов начинается с проrнозирования. Продажи и пе ремещения товаров являются процессами, распределенными во времени, поэтому здесь применимы все рассмотренные выше методы анализа временных рядов. Но решение этой задачи не сводится к построению моделей временных рядов: часто это сложная мноrоступенчатая процедура, включающая предварительные этапы консолидации, очистки и предобработки данных (рис. 10.22). В процессе очистки и предобработки выполняются действия, которые MoryT существенно повлиять на качество проrноза и расчета требуемых запасов, такие как редактирование aHOMa лий, заполнение про пусков, сrлаживание и пр. Например, аномальные всплески продаж либо их провалы, связанные с техническими проблемами или отсутствием товара на складе, серьезно искажают объективную картину и не позволяют точно рассчитать потребность в товарах. ИСТОЧНИК данных Очистка данных (аномалии, противоречия...) rруппировка данных Расчет потребности Проrноэ поэиционный Проrноэ по rруппе Расчет по биэнес правилам Проверка оrраничений Рис. 10.22. Типовая схема оптимиэации товарных запасов
542 Часть 1. Теория бизнес аналиэа Сам по себе анализ врр-менных рядов при решении бизнес задач в торrовле и лоrистике при меняется редко. В [отовом аналитическом решении ИСПОЛЬЗУЮтся мноrие технолоrии бизнес аналитики: хранилища данных, очистка и трансформа- ция данных, rруппировка и разrpуппировка, АВС ХУZ анализ, OLAP и, конечно, методы проrнозирования временных рядов, а также элементы лоrnстики. Подроб- нее это показывается в rлавах 14 и 18.
Ансамбли u моделеи 11.1. Введение в ансамбли моделей При создании алrоритмов машинноrо обучения разработчики сталкиваются с такими проблемами, как вычислительные затраты на реализацию алrоритма, прозрачность построенных моделей для пользователя, а также точность резуль татов. Большинство исследователей сосредотачиваются на повышении точности классификации и предсказания, поэтому производительность новых систем часто рассматривается именно с этой точки зрения. И это леrко понять: точность иrpает решающую роль во всех приложениях машинноrо обучения и может быть леrко оценена, в то время как прозрачность для пользователя субъективна. Что касается вычислительных затрат, то с проrpессом вычислительной техники они во мноrих случаях вообще отошли на задний план. В последние несколько лет значительно возрос интерес к вопросу увеличения точности моделей Data Mining, основанных на обучении, за счет создания и ar реrирования набора классификаторов. В результате появились новые подходы 1< анализу на базе ансамблей классификаторов, которые применимы к широкому I<pyry систем машинноrо обучения и основаны на теоретическом исследовании Поведения составных классификаторов. Комбинирование решений Принимая важное решение, опытный руководитель не только полаrается на соб Ственные знания и интуицию, но и старается привлечь экспертов в конкретных Предметных областях. Считается. что выводы экспертов, полученные на основе анализа данных, связанных с решаемой задачей, позволят сделать оптимальный выбор.
544 Часть 1. Теория бизнес анализа Например, коrда предприятие планирует выпуск HOBoro продукта, взвеШива- ются все «за!> и «против!>, привлекаются специалисты в сферах экономики, мар- кетинrа, производства, рекламы и т. д., И каждый из них высказывает свое мнение. Выслушав всех, руководитель приходит к окончательному решению. Однако выводы, сделанные разными экспертами, MOryT противоречить друr дру_ ry, Поэтому неизбежно встает вопрос: как скомбинировать несколько экспертных оценок, чтобы на их основе принять правильное решение? В простейших случаях руководитель может, не прибеrая к формальным методам, просто воспользоваться своими опытом и интуицией, Существуют методы, которые позволяют принять более обоснованное решение, Допустим, в качестве оценки определенноrо решения эксперт указывает число бал лов: 100 баллов соответствуют положительному решению ( «выпускать продукт» ), О баллов отрицательному ( «не выпускать продукт!». Указывая промежуточные значения, эксперты оценивают вероятность успеха или провала проекта. Получен- ные оценки суммируется, и если сумма пр евы сит заданный пороr, то решение будет положительным, а если нет отрицательным. При желании можно произвести усреднение оценок, то есть разделить сумму баллов на число экспертов. Хорошие результаты часто дает взвешивание оценок: в зависимости от важно сти предметной области, профессиональноrо уровня эксперта и т. д. экспертной оценке присваивается определенный вес. Чем опытнее эксперт и важнее оценка, тем больше ее вес. Наконец, самым простым, хотя и не Bcerдa эффективным методом является rолосование: выбирается решение, принятое большинством rолосов, Остановимся еще на одном важном моменте доверии к эксперту, Действитель но, эксперты отличаются уровнем подrотовки, опытом и т. д. В этой связи их можно разделить на сильных и слабых. Например, слабым может считаться эксперт, который участвовал в 1 О проектах, причем в 7 случаях ero мнение оказалось ошибочным. Используются два варианта экспертных оценок: параллельные и дополняющие, В первом случае каждый эксперт высказывает мнение по всему спектру проблем, связанных с решаемой задачей. Во втором каждый эксперт дает заключение только по одному аспекту задачи. Тоrда выводы экспертов дополняют друr друrа, вместе покрывая весь спектр проблем. Таким образом, выбирая методы извлечения экспертных оценок и комбинируя полученные результаты, можно найти наилучшее решение, Аналоrичная ситуация складывается при использовании моделей, основанныХ на машинном обучении, деревьев решений, нейронных сетей и т, д, Эти модели фактически иrpают роль экспертов и в явном или неявном виде предоставляют информацию, необходимую для обоснованноrо принятия решений, Можно оrраничиться результатами, полученными единственной моделью. Но, так же как и эксперты, модели бывают слабыми и сильными. Если обученной модели хорошо удается разделить классы и она допускает мало ошибок класси- фикации, то такая модель может рассматриваться как сильная. Слабая модель, напротив, не позволяет надежно разделять классы или давать точные предсказа- ния, допускает в работе большое количество ошибок
rлава 11. Ансамбли моделей 545 Если в результате обучения мы получили слабую модель, то ее необходимо усовершенствовать, подбирая тип классификатора, алrоритмы и параметры обу чения. Но часто встречаются сиryации, коrда все возможности совершенствования единственной модели исчерпаны, а качество ее работы по прежнему неудовлетво рительно. Это может быть связано со сложностью решаемой задачи и искомых закономерностей, с низким качеством обучающих данных и друrnми факторами. Пример такой сиryации представлен на рис. 11.1. D 1 D D ОО D . . .r:J D О D D D D О О D . D D . . . . . о о . . . . . D . D I . . . . . а D 1 D D D ОО . . .r:J D D D D D D О D D . D . . . . . D О . . . . . D D . . . . . . б Рис. 11.1. Иллюстрация сложной раэделимости классов На рис. 11.1, а изображено множество объектов, содержащее два класса Kpy rи и квадраты. В результате обучения построена модель, разделившая классы по линии 1. Поскольку классы пересекаются, они являются трудноразделимыми, из за чеrо значительное количество квадратов оказалось распознано как круrи. Ожидать от такой модели хорошей работы с новыми данными не следует, при этом ее возможности уже исчерпаны: как бы мы ни провели линию 1, всеrда будет присутствовать значительная ошибка классификации. Неизбежно возникает вопрос: как усилить слабую модель, что сделать для по вышения эффективности классификации? Вполне лоrnчным выходом из сиryации является попытка применить к неудачным результатам работы первой модели еще одну модель, задача которой классифицировать те примеры, что остались Hepac познанными. Результаты работы второй модели представлены на рис. 11.1, б. Как ВИДно, ей удалось почти полностью разделить круrn и KBaдpaТbI. Если и после этоrо результаты неудовлетворительны, можно применить третью модель и так далее до тех пор, пока не будет получено достаточно точное решение, Таким образом, для решения одной задачи классификации или реrpессии мы Применили несколько моделей, при этом нас интересует не результат работы каждой отдельной модели, а результат, который дает весь набор моделей. Такие совокуп ности моделей называются ансамблями моделей.
546 Часть 1. Теория БИзНес анализа ОПРЕДЕЛЕНИЕ Набор моделей, применяемых совместно для решения единственной задачи, называется ансамблем (комитетом) моделей. Цель объединения моделей очевидна улучшить (усилить) решение, которое дает отдельная модель. При этом предполаrается, что единственная модель никоrда не сможет достичь той эффективности, которую обеспечит ансамбль. Использование ансамблей вместо отдельной модели в большинстве случаев по зволяет повысить качество решений, однако такой подход связан с рядом проблем, основными из которых являются: О увеличение временных и вычислительных затрат на обучение нескольких MO делей; О сложность интерпретации результатов; О неоднозначный выбор методов комбинирования результатов, выдаваемых OT дельными моделями. Перечисленные проблемы аналоrичны тем, что возникают при работе несколь ких людей экспертов. Действительно, приходится собирать rруппу экспертов, предоставлять им необходимую информацию, обсуждать задачу и т. д. все это отнимает HaMHoro больше времени, чем принятие решения одним человеком. Сложность интерпретации результатов экспертных оценок также имеет место, ведь каждый эксперт оперирует терминами своей предметной области, форму лирует выводы на уровне cBoero понимания проблемы. И наконец, выбор метода обобщения отдельных заключений экспертов, позволяющеrо получить наилучшие результаты, не является однозначным. Виды ансамблей в последнее десятилетие ансамбли моделей стали областью очень активных исследований в машинном обучении, что привело к разработке большоrо числа разнообразных методов формирования ансамблей. Первым вопросом при формировании ансамбля ЩlЛяется выбор базовой модели (base model). Ансамбль в целом может рассматриваться как сложная, составная модель (multiple model), состоящая из отдельных (базовых) моделей. Здесь воз можны два случая. 1. Ансамбль состоит из базовых моделей одноro типа, например только из дepeBЬ ев решений, только из нейронных сетей и т. д. (рис. 11.2). 2. Ансамбль состоит из моделей различноrо типа нейронных сетей, деревьев решений, реrpессионных моделей и т. д. (рис. 11.3). Дерево решений 1 Дерево решений 2 Дерево решений Т Рис. 11.2. Однородный ансамбль
rлава 11. Ансамбли моделей 547 Обучающее множество Дерево решений Нейронная сеть Лоrистическая реrрессия Рис. 11.3. Ансамбль, состоящий из моделей раэличноrо типа Каждый подход имеет свои преимущества и недостатки. Использование MO делей различных типов дает классификатору дополнительную rибкость. Но, по скольку выход одной модели применяется для формирования обучающеrо множе ства для друrой, возможно, потребуются дополнительные преобразования, чтобы соrласовать входы и выходы моделей. Второй вопрос: как использовать обучающее множество при построении aH самбля? Здесь также существуют два подхода. 1. Перевыборка (resampling). Из исходноrо обучающеrо множества извлекается несколько подвыборок, каждая из которых используется для обучения одной из моделей ансамбля. Данный подход иллюстрируется с помощью рис. 11.4. Если ансамбль строится на основе моделей различных типов, то для каждоrо типа будет свой алrоритм обучения. Выборка 1 Модель 1 Ансамбль моделей Выборка 2 Модель 2 Выборка 3 Модель 3 Рис. 11.4. Перевыборка 2. Использование одною обучающею множества для обучения всех моделей а1tCа.мб ля (рис. 11.5). Модель А Ансамбль моделей Модель В Рис. 11.5. Испольэование одноrо обучающеrо множества для всех моделей ансамбля
548 Часть 1. Теория бизнес анализа и наконец, третий вопрос касается метода комбинирования результатов, BЫ данных отдельными моделями: что будет считаться выходом ансамбля при опреде ленных состояниях выходов моделей? Обычно используются следующие способы комбинирования, 1. Fолосование. Применяется в задачах классификации, то есть для катеrориаль ной целевой переменной. Выбирается тот класс, который был выдан простым большинством моделей ансамбля, Пусть, например, решается задача бинарной классификации с целевыми переменными Да и Неm, для чеrо используется ансамбль, состоящий из трех моделей. Если две модели выдали выход Нет и только одна Да, то общий выход ансамбля будет Нет. 2, Взвешенное lOлосование. В ансамбле одни модели MOryT работать лучше, а дpy rие хуже, Соответственно, к результатам одних моделей доверия больше, а к результатам друrих меньше. Чтобы учесть уровень достоверности резуль татов, для моделей ансамбля MOryT быть назначены веса (баллы), Например, в случае, рассмотренном в предыдущем пункте, для моделей, выдавших резуль тат Нет, установлены веса 30 и 40, указывающие на невысокую достоверность этих результатов, В то же время единственная модель, которая выдала Да, имеет вес 90. Torдa rолосование будет производиться с учетом весов моделей: 30 (Нет) + 40 (Нет) == 70 (Нет) ::; 90 (Да). Таким образом, модель с выходом Да перевесила обе модели с выходом Нет и общий выход ансамбля будет Да, 3. Усреднение (взвешенное или невзвешенное). Если с помощью ансамбля решается за дача реrpессии, то выходы еro моделей будут числовыми. Выход всето ансамбля MO жет определяться как простое среднее значение выходов всех моделей. Например, если в ансамбле три модели и их выходы равны Уl, У2 И Уз, то выход ансамбля будет у == (У! + У2 + уз) /3 (для произвольноrо числа моделей У == (Уl + У2 + ... + Ук) / К, rдe К число моделей в ансамбле), Если производится взвешенное усреднение, то выходы моделей умножаются на соответствующие веса. Исследования ансамблей моделей в Data Mining стали проводиться относитель но недавно. Тем не менее к настоящему времени разработано множество различных методов и алrоритмов формирования ансамблей, Среди них наибольшее распро странение получили такие методы, как бэrrинr, бустинr и стэкинr, Рассмотрим их подробнее, 11.2. Бэrrинr Наряду с бустинrом бэrrинr является одним из самых современных методов по вышения эффективности моделей, Бэrrинr формирует набор классификаторов, которые комбинируются путем rолосования или усреднения. Термин «бэrrинr» (bagging) происходит от анrлийскоrо словосочетания bootstrap aggregating, которое можно перевести как «улучшающее объединение». В основе работы БЭIТИнrа лежит технолоrия, получившая название «возмущение и комбинирование» (perturb and combine).
rлава 11. Ансамбли моделей 549 «Возмущение И комбинирование» модели, которые в процессе обучения адаптируют свое состояние в соответствии с обучающим множеством, такие как деревья решений и нейронные сети, неустой чивы: даже небольшие изменения в обучающем множестве (замена или удаление одноrо примера) MOryт привести к существенным изменениям в состоянии модели в структуре дерева решений или в распределении весов нейронной сети. Иными сло ваМИ, внося даже незначительные изменения в обучающие данные, мы всеrда будем получать друryю модель. Но исходная и измененная модели будут функционировать примерно одинаково и со сравнимой точностью: незначительные изменения в обуча ЮЩИХ данных не приведут к изменению основных закономерностей, которые должны быть обнаружены моделью. Сказанное можно пояснить с помощью рис. 11.6. о . 06''' .. о .. .. о .. .0 . .. . . . . . . о . о . . ./ .. . . . . . о . . ..0 · · о . . о о о 00 . · о . . . .0. . .00 . . .. о . .00 о о 00 .. .. о о 00 ... 00 о o о о о о о . о . о. . о. о . о . Точность Точность 81 % 80% Рис. 11.6. Иэменение одноrо примера отражается на конечной модели Слева представлено разбиение объектов двух классов (светлых и темных точек) с помощью дерева решений. Изменение Bcero лишь одной точки (помеченной стрелкой) приведет к совершенно друrому разбиению и друrой структуре дерева решений, но в целом точность модели останется примерно на том же уровне. He устойчивость деревьев решений во MHoroM обусловлена конкурирующими узлами, то есть узлами, работающими примерно одинаково. Поэтому даже небольшое из менение в данных может привести к тому, что процесс обучения пойдет по друroму узлу и будет построено друrое дерево решений. Неустойчивость моделей, особенно деревьев решений, используется для созда Ния ансамблей моделей с помощью технолоrии возмущения и комбинирования . Под возмущением понимается внесение некоторых изменений, часто случайноrо характера, в обучающие данные и построение нескольких альтернативных моделей На измененных данных с последующим комбинированием результатов. Для возму Щения используются следующие приемы: Q извлечение выборок из обучающеro множества. в этом случае путем сэмплин ra из исходноrо обучающеrо множества извлекается несколько выборок, и на каждой из них обучается отдельная модель;
550 Часть 1. Теория БИэнес аналиэа о выборка из выборок, формирование внутри выборок подrpупп; о добавление шума; о адаптивное взвешивание; О случайный выбор между конкурирующими узлами (разбиениями). Добавление в процесс обучения элемента случайности часто называют paидo JЧuзацuей (randomization). Основная идея Идея бэпинrа проста. Сначала на основе исходноrо множества данных путем случайноrо отбора формируется несколько выборок. Они содержат такое же KO личество примеров, что и исходное множество. Но, поскольку отбор производится случайно, набор примеров в этих выборках будет различным: одни примеры MOryт быть отобраны по нескольку раз, а друrие ни разу. Затем на основе каждой BЫ борки строится классификатор и выходы всех классификаторов комбинируются (аrреrируются) путем rолосования или простоrо усреднения. Ожидается, что полученный результат будет HaMHoro точнее любой одиночной модели, построен ной на основе исходноrо набора данных. Обобщенная схема процедуры бэrmнrа представлена на рис. 11.7 (на примере дерева решений). Выборка 2 У, - У2 Ут Усреднение у Выборка 1 Выборка Т Рис. 11.7. Схема процедуры бэrrинrа Таким образом, БЭIТинr включает следующие шаrи. 1. Из обучающеro множества извлекается заданное количество выборок одинако Boro размера. 2. На основе каждой выборки строится модель. 3. Определяется общий результат путем rолосования или усреднения выходов моделей. Предположим, что задан набор из N обучающих примеров, каждый из которых относится к одному из k == k, k 2 ... К классов, а также алrоритм обучения, CTpO ящий классификаторы. БэrrиНl' представляет собой итерационную процедуру,
rлава 11. Ансамбли моделей 551 rде количество итераций (испытаний) Т задается как константа (хотя иноrда для автоматическоrо определения числа итераций рекомендуется использовать Te стовое множество, чтобы избежать переобучения). Классификатор, полученный на итерации t, обозначим С', а итоrовый классификатор, полученный с помощью бэrrинrа, С', ДЛЯ каждоrо примерах С'(х) и с'(х) являются классами, предска занными классификаторами С' и С' соответственно. Пусть на каждой итерации t == t 1 , t 2 .", Т из исходноrо обучающеrо множества производится выборка, состоящая из N примеров, Она имеет тот же размер, что и исходное множество, но некоторые примеры MOryT в нее не попасть, а некоторые попадут несколько раз, Система обучения создает классификаторы С' из выборок, а конечный классификатор с' создается путем аrреrирования Тклассификаторов. При К}Iaссификации примера х rолоса для класса k записываются каждым класси фикатором, для KOToporo С'(х) == k, и затем для с' (х) назначается класс, получивший больШИНСТВО rолосов, Схема бэrrинrа, представленная на рис. 11.7, применяется и к реrрессионным моделям. В этом случае результат среднее значение, рассчитанное по выходам всех моделей ансамбля. Остановка процедуры бэrrинrа производится на основе следующих критериев, О На некоторой итерации t ошибка Е' классификатора С ! становится равной О или больше либо равной 0,5. В этом случае процедура бэrrинrа останавливается, а последний классификатор удаляется: Т == t 1, Таким образом, бэпинr не пускает в ансамбль «плохие» классификаторы. О Число итераций достиrло заданноrо пользователем предела Т. Как и для боль шинства друrих итеративных алrоритмов Data Mining, однозначноrо ответа на вопрос, каково достаточное число итераций, не существует, Оно подбирается эмпирическим путем. О Бэrrинr, хотя и в меньшей степени, чем отдельные модели, склонен к переобуче нию. Поэтому критерием для остановки процедуры может служить возрастание ошибки на тестовом множестве. Почему бэrrинr работает? Результаты бэrrинrа часто удивляют аналитиков: точность предсказания по строенных с ero помощью комбинированных классификаторов оказывается зна Чительно выше, чем точность отдельных моделей. Причины этоrо неочевидны, Действительно, если все выборки извлечены из одноrо обучающеrо множества, то можно ожидать, что построенные на их основе модели будут практически Идентичными, Однако данное предположение ошибочно. Причина заключается все в той же неустойчивости моделей, особенно деревьев решений: даже неболь Шие изменения в обучающих данных леrко MOryT привести к выбору различных атрибутов в определенном узле дерева, что вызовет существенные изменения при дальнейшем ветвлении. В результате одни и те же тестовые примеры будут распо знаваться различными деревьями по разному,
:):) Часть 1. Теория бизнес анализа В основе эффективности методов комбинирования моделей, в том числе бэпинrа, лежит идея декомпозиции ошибки ансамбля на смещение и дисперсию, Предположим, что имеется бесконечное число независимых обучающих множеств одинаковоrо размера, которые используются для построения бесконечноrо числа классификаторов, Обучающие примеры обрабатываются всеми классификатора ми, и их общий выход определяется большинством rолосов, В данной ситуации ошибки все еще имеют место, поскольку идеальных обучающих процедур не cy ществует. Значение ошибки зависит от Toro, насколько хорошо метод машинноrо обучения соответствует решаемой задаче, а также от качества самих данных. Допустим, ожидаемая ошибка оценивается как средняя ошибка комбиниро BaHHoro классификатора на бесконечном числе независимо выбранных тестовых примеров, Значение ошибки KOHKpemHOlO обучающеrо алrоритма называется CMe щением (систематической ошибкой) Еь, Смещение есть мера стабильности ошибки данноrо алrоритма обучения, которая не может быть исключена даже применением бесконечноrо числа обучающих множеств, Конечно, на практике такая ошибка не может быть вычислена точно, а только оценивается приблизительно, Вторым источником ошибки при обучении модели является то, что обучающее множество используется частично оно всеrда конечно и, следовательно, не полностью представляет реальную популяцию наблюдений. Ожидаемое значение этоrо компонента ошибки по всем возможным обучающим наборам заданноrо раз мера и всем возможным тестовым наборам называется дисперсией метода обучения для этой задачи ED. Таким образом, общая ожидаемая ошибка классификатора состоит из суммы дисперсии и смещения: Е == Е ь + Е D. В этом И заключается смысл декомпозиции ошибки на дисперсию и смещение. Комбинирование нескольких классификаторов позволяет уменьшить ошибку за счет дисперсии. При этом чем больше классифи каторов используется, тем меньше дисперсия. Смещение определяется как среднеквадратическая ошибка, ожидаемая при усреднении по моделям, построенным на основе всех обучающих множеств одноrо размера, а дисперсия это компонент ожидаемой ошибки отдельной модели, KOTO рая была построена с помощью отдельноrо обучающеrо множества. Теоретически можно показать, что усреднение по множеству моделей, построенных на основе независимых обучающих множеств, всеrда уменьшает ожидаемое значение cpeд неквадратической ошибки. На практике возникает проблема: [де взять большое количество обучающих множеств. Бэrrинr решает эту задачу, используя единственное обучающее множе ство, а именно <пасуен ero, как колоду карт (рис. 11.8). Разница между бэпинrом и идеальной процедурой, описанной выше, заклЮ чается в способе формирования обучающих множеств. Вместо получения незави симых множеств из предметной области бэпинr просто производит пере выборку исходноrо множества данных. Такие множества отличаются друr от друrа, но не являются независимыми, поскольку все они основаны на одном и том же множе стве, Тем не менее бэrrинr позволяет создавать комбинированные модели, которые, как правило, работают значительно лучше, чем отдельная модель,
rлава 11. Ансамбли моделей 553 Пример Б Пример Б Jlример С Пример А Пример Е Пример А Пример & Пример с Пример Д Пример Е Пример А Пример Б Пример А Пример Д Пример Е Пример Е Пример Б Пример С Пример С Пример А Рис. 11.8. Отбор примеров с эаменой, испольэуемый в бэrrинrе 11.3. Бустинr По сравнению с бэrrинrом бустинr (boosting) несколько более сложная процедура, но во мноrих случаях работает эффективнее. Как и бэrrинr, бустинr использует неустойчивость алrоритмов обучения и начинает создание ансамбля на основе един CTBeHHoro исходноrо множества. Но если в бэrrnнrе модели строятся параллельно инезависимо друr от друrа, то в бустинrе каждая новая модель строится на основе результатов ранее построенных моделей, то есть модели создаются последовательно. Бустинr создает новые модели таким образом, чтобы они дополняли ранее постро еlПIые, выполняли ry работу, которую друrие модели сделать не смоrли на предыду щих шаrах. И наконец, последнее отличие бустинrа от бэrrинra заключается в том, что всем построенным моделям в зависимости от их точности присваиваются веса (бэrrинr, напомним, использует взвешенное roлосование или усреднение). В настоящее время разработано большое количество различных модификаций бустинrа. Рассмотрим один из наиболее популярных алrоритмов AdaBoost.M1, который предназначен для решения задач классификации. Будем использовать обозначения, ранее введенные для бэrrинrа. Вместо извлечения выборок из ИСХОДноrо множества данных бустинr в качестве возмущающеrо фактора применяет взвешивание примеров. Вес каждоrо приме ра устанавливается в соответствии с ero влиянием на обучение классификатора. На каждой итерации вектор весов подстраивается таким образом, чтобы отражать эффективность данноrо классификатора. В результате вес неправильно классифи цированных примеров увеличивается. И тоrовый классификатор также аrpеrирует обученные классификаторы путем rолосования, но теперь roлос классификатора Является функцией ero точности.
554 Часть 1. Теория бизнес анализа Обозначим вес примера х на итерации t как ш;, при этом вес на первой ИТерации задается как tel с= 1/ N для каждоrо х (N число примеров). На каждой итерации t с= 1,2... Тклассификатор С' конструируется из данных примеров в Соответствии с распределением их весов ш' (то есть как будто вес ш . отражает вероятность по явления примерах). Ошибка Е' классификатора tтакже измеряется ОТносительно весов и представляет собой сумму весов примеров, которые были классифици рованы неправильно. Коrда Е' становится больше 0,5, ИТерации прекращаются последний классификатор удаляется и Т изменяется на t 1. Наоборот, есл Е 1 с= О (классификатор С ' правильно классифицировал все примеры), итерации останавливаются и Т с= t. В остальных случаях вектор весов w 1 т 1 для следуЮщей итерации rенерируется путем умножения текущих весов примеров, которые были правильно распознаны классификатором С', на коэффициент I с= Е'/(1 Е'), а за тем нормируется так, чтобы L)e) +1 с= 1. Torдa: х 1 WI+lc=W" (1 EI)' (11.1) Итоrовый классификатор с' получается путем суммирования rолосов классифи каторов С t, с 2 ... с Т , rде rолос классификатора С' определяется как log (1 / 1) единиц. Было показано, что если ошибка отдельноrо классификатора Е' всеrда MeHЬ ше 0,5, То значение ошибки итоrовоrо классификатора с' экспоненциально cтpe мится к О с увеличением числа итераций t. Последовательность слабых классифи каторов Ct, с 2 ... С Т может быть усилена до классификатора С., который обычно получается более точным, чем отдельные классификаторы, Конечно, при этом нельзя rарантировать высокую обобщающую способность с', Процедура бустинrа включает следующие шаr11:. 1. Для всех примеров ИСХОДноrо множества данных устанавливаются равные Ha чальные веса шо, 2. На основе взвешенноrо набора примеров строится классификатор C t , вычисля ется и запоминается выходная ошибка данноrо классификатора Е'. З. Рассчитывается коррекция весов примеров обучающеrо множества, и веса KOp ректируются по формуле (11,1), 4, Если ошибка Е' с= О или Е' 0,5, то классификатор С' удаляется и процедура бустинrа останавливается. 5. В противном случае осуществляется переход на шаr 2 и начинается следующая итерация. Процедура поясняется с помощью блок схемы на рис. 11.9. Таким образом, параметрами, настраиваемыми на каждой итерации, являются веса примеров, При этом чем больше раз пример был неправильно распознан пре дыдущими моделями, тем выше ero вес. Вес можно рассматривать как вероятносТЬ попадания примера на следующую итерацию. В построении первой модели будут участвовать все примеры, в построении второй только те, которые были неправильно распознаны первой, в построении
rлава 11. Ансамбли моделей 555 третьей примеры, неправильно распознанные двумя предыдущими моделями, и т. д. Модели будут дополнять друr друrа работать с теми примерами, от KOTO pbIX «отказались» друrие модели. Из теории машинноrо обучения известно, что именно трудные для распознавания примеры толкают процесс обучения вперед, заставляя Модель классифицировать их, в то время как простые примеры распозна IOтся быстро и для дальнейшей тренировки бесполезны. Веса примеров увеличиваются или уменьшаются в зависимости от выхода каждоrо HOBoro классификатора. В результате некоторые трудные примеры MoryT стать еще ТРУДНее, а леrкие еще леrче, После каждой итерации веса отражают, насколько часто тот или иной пример классифицировался неправильно. Установить всем обучающим примерам равные веса w,= I/N Установка счетчика итераций t = 1,...,Т Применить алrоритм обучения к взвешенному множеству даннык и сохранить полученную модель Вычислить и сохранить ошибку Е'модели на взвешенном множестве да Удалить последний классификатор Т= t 1 Рис. 11.9. Блок схема алrоритма AdaBoost.Ml
556 Часть 1. Теория биэнес аналиэа r енерация классификаторов Теперь рассмотрим, как процедура бустинrа rенерирует последовательность клас сификаторов. Выход ансамбля комбинируется процедурой взвешенноrо rолосования. При опре делении весов классификатор, который хорошо работает на обучающей выборке, должен получить больший вес. Классификатор, который работает хуже (ошибка ближе к 0,5), получает более низкий вес. Формальная запись имеет вид: w t == log ( ) . 1 E! В данном случае как W t мы обозначили вес классификатора, построенноrо на итерации t, который будет использоваться при взвешенном rолосовании. Вес это положительное число в интервале от нуля до бесконечности. Кроме Toro, формула объясняет, почему классификаторы с нулевой ошибкой должны быть удалены: при Е' == о выражение для весов окажется неопределенным из за Toro, что aprYMeHT лоrарифма равен 1. При комбинировании выходов ансамбля веса всех классификаторов, которые <.rолосуют за определенный класс (то есть имеют этот класс на выходе), суммируются и выбирается класс, набравший наибольшую сумму rолосов. Иными словами, определяющую роль иrpают не столько выходы моделей, сколько их веса. Последовательность rенерации моделей в бустинrе и их участие в комбиниро вании результатов методом rолосования представлены на рис. 11.10. Модель 1 W" класс А Взвешивание примеров Модель 2 W 2 . класс В Вэвешивание примеров Модель З W., класс С Выбирается класс, для KOToporo W, больше Рис. 11.10. Схема 6устинrа Недостатки бустинrа Основным недостатком бустинrа является то, что примеры с низкими весами не попадают на следующую итерацию, поэтому часть информации, полезной для обучения, может быть потеряна. Кроме Toro, в процессе бустинrа из участия в обучении постепенно исключаются самые простые примеры, что приводит к так называемому вырождению обучающих выборок, на основе которых строятся по следние модели. В первую очередь распознаются наиболее типичные примеры, хорошо отражающие предметную область. Образцы, трудные для распознавания,
rлава 11. Ансамбли моделей 557 частО являются нетипичными, аноМальными и пр, Обучение классификаторов на поздних итерациях может почти полностью вестись на таких примерах, что в KO нечнОМ итоrе приводит к переобучению. В силу вышесказанноrо бустинr более склонен к переобучению, чем бэrrинr. Чтобы избежать переобучения, количество итераций Т должно быть настолько малым, насколько это возможно без потери точности. Алrоритм останавливается, котда на некотором С' ошибка приближается к О, невзирая на то что с' может распознать все обучающие примеры, а C l нет, Дальнейшие итерации в даННQЙ ситуации, скорее всето, не приведут к приросту точности. Вместо этоrо увеличится сложность С', но ето эффективность не повысится, Наконец, общей проблемой бустинrа и бэпинrа является низкая прозрачность модели для аналитика и сложность интерпретации результатов, что в целом xapaK терно для всех ансамблей моделей. 11.4. Альтернативные методы построения ансамблей Применение ансамблей моделей к решению различных задач анализа открывает широкие возможности для повышения эффективности моделей Data Mining. Поэтому в последние несколько лет в данной области проводятся активные ис следования, в результате чеrо появилось большое количество методов, Не все методы работают одинаково хорошо в разных ситуациях, а возмож ность выбора позволяет аналитику добиться наилучших результатов, Например, бустинr и бэrrинr изначально возникли как методы повышения эффективности классификационных моделей, особенно деревьев решений, и не моrли напрямую использоваться для реrрессионных моделей. Поэтому для решения задач peTpec сии были разработаны варианты бустинrа, получившие название аддитивной реrрессии, в частности алrоритм LogitBoost, Распространены и такие методы комбинирования моделей, как деревья выбора и стэкинr. Рассмотрим основы их работы. итивная реrрессия Появление бустинrа вызвало большой интерес в Data Mining, поскольку он по Зволяет обеспечить очень высокую эффективность моделей. Одним из вариантов бустинrа стало построение так называемых аддитивных реzрессионных м'оделей. Понятие <iаддитивная реrpессия относится к любым методам предсказания, OCHO ванным на комбинировании (суммировании) вкладов от нескольких реrpессионных моделей. В основе идеи аддитивной реrрессии лежит прямое ступенчатое аддитивное моделирование (forward stagewise additive modeling), алrоритм которorо содержит следующие шаrи,
558 Часть 1. Теория бизнес анализа 1. Сначала строится обычная реrрессионная модель, например реrреССИОННое дерево решений. 2. Вычисляются ошибки, полученные на обучающем множестве, как разность между желаемым и наблюдаемым значениями. Эти ошибки называются ocтaт '/(GМи (residuals), З. Производится минимизация остатков с помощью второй модели (друrоrо дe рева решений), которая пытается предсказать наблюдаемые остатки. Для этоrо исходные целевые значения заменяются соответствующими остатками перед обучением второй модели. 4, Поскольку и вторая модель не является идеалЬНОЙ, она также даст остатки на некоторых примерах. Поэтому процесс продолжится: строится третья Модель, которая обучается предсказывать остатки от остатков, и т. д. Если каждая модель минимизирует квадратическую ошибку предсказания, как делает обычная линейная реrpессионная модель, то алrоритм прямоrо ступенчатоrо моделирования минимизирует ошибку ансамбля в целом. Фактически при исполь зовании обычной линейнОЙ реrрессии как базовой модели для адцитивной perpec сии сумма линейных реrpессионных моделей также будет линейной реrpессионной моделью и реrpессионный алrоритм сам минимизирует квадратическую ошибку. Для удобства создание ступенчатой аддитивной реrpессии обычно начинается с построения модели нулевorо уровня, которая просто предсказывает среднее зна чение выхода на обучающем множестве, а каждая следующая модель подстраивает остатки. Аддитивная реrрессия подвержена переобучению, поскольку каждая модель, добавленная в ансамбль, делает ero настройку все более точной. Чтобы определить момент остановки, используется ошибка на тестовом множестве и выбирается то число итераций, которое ее минимизирует, Аддитивная лоrистическая реrрессия Аддитивная реrpессия может применяться для решения задач бинарной классифи кации. Но поскольку для этоrо больше подходит лоrистиче,Ская реrpессия, адцитив ная модель должна быть соответствующим образом модифицирована. С помощью лоrит преобразования производится оценка вероятности каждоrо класса, а затем задача реrpессии решается с использованием ансамбля моделей, например perpec Сионных деревьев, так же, как и в случае адцитивной реrpессии. На каждом шarе добавляется модель, которая максимизирует вероятность одноrо из классов. Предположим, что jj j я реrpессионная модель в ансамбле, а jj (а) ее пред сказание для примера а. Рассмотрим задачу бинарной классификации, используЯ аддитивную модель LJi (а) для получения оценки вероятности первorо класса: i 1 Р(1Iа)== . 1 + сх р [ Ji (а))
rлава 11. Ансамбли 1Оделей 559 Алrоритм бустинrа, который использует в качестве базовой модели лоrисти ческую реrpессию, получил название LogitBoost. Процесс rенерации моделей этим алrоритмом можно представить в виде блок схемы (рис. 11.11). Здесь у i == 1 для примеров, относящихся к классу 1, и У; == О для примеров, относящихся к классу 2. На каждой итерации алrоритм подстраивает реrpессионную модель jj по взвешен ной версии исходноrо множества данных. Установка счетчика итераций j 1... t Установка целевоrо эначения у, P(1la,) z , P(1la,).(1 P(1la,)) Установка веса примера а, ТiJ, P(1la,)(1 P(1la,)) Соэдать реrрессионную модель Ц с весами примеров W} Нет Рис. 11.11. БЛОК схема алroритма LogitВoost Изначально алrоритм LogitBoost предназначен для решения задачи бинарной классификации, но при необходимости может быть обобщен для случая с несколь ким и классами. Деревья выбора к недостаткам ансамблей моделей как сложных составных структур относится трудность интерпретации результатов, Решить эту проблему можно, сделав пред
560 Часть 1. Теория бизнес анализа ставление ансамбля более компактным. Одним из вариантов является ИсПоль зование структур, называемых деревьями выбора (option tree), Они оТличаются от обычных деревьев решений тем, что содержат два типа узлов: узлы решений и узлы выбора. Простой пример TaKoro дерева с одним узлом выбора представлен на рис. 11.12. В узел решений, как и в обычном дереве решений, входит только ОДНа ветвь, а в узел выбора две. Таким образом, в узел выбора поступают решения из двух предьщущих узлов. Torдa выход узла выбора это комбинация Поступивших в Hero решений. Выбор может быть сделан обычным rолосованием. Класс Класс Рис. 11.12. Дерево выбора Коrда узел выбора содержит два входа и более, результат будет зависеть от Toro, являются ли они катеrориальными или числовыми. Если входы катеrори альные, то используется rолосование, а если числовьiе полученные различ ными способами вероятностные оценки, взвешенное среднее или байесовский подход, Деревья выбора можно создавать с помощью модификации обычных деревьев решений путем встраивания в них узлов выбора, Друrая возможность построить дерево выбора 'пошаrово добавлять в Hero узлы. При этом используется алrоритм бустинrа, Полученное дерево называет ся зн.акоперемен.н.ым деревом, узлы решений узлами разветвителями, а узлы выбора узлами предсказан.uя, Узлы предсказания являются листьями, если из них больше не выходят узлы разветвители. Обычные знакопеременные деревья применяются при решении задач бинарной классификации, и с каждым узлом предсказания ассоциировано положительное или отрицательное числовое значе ние, Чтобы предсказать класс определенноrо примера, ero пропускают через все Возможные ветви, после чеrо значения, полученные на выходах всех узлов пред сказания, суммируются, Класс выбирается в зависимости от Toro, положительной или отрицательной оказалась сумма, Схема знакопеременноrо дерева представлена на рис. 11.13, rде положитель ное значение соответствует классу Иzрать == Да, а отрицательное классу Иz рать == Нет, Пример {Облачн.ость == Солн.ечн.о, Температура == Жарко, ВлаЖ
rлава 11. Ансамбли моделей 561 ность == Нормальная, Ветер == Нет}, проходя по соответствующим листьям, получает значения O,255, 0,213, 0,430 и O,331, После их сложения сумма поло жительная, значит, результат Иzрать ==Да. Облачность = = Солнечно Температура = = Жарко Влажность = = Нормальная Ветер = Нет 0,255 0,ЗЗ1 Иrрать = Да Рис. 11.13. Знакопеременное дерево Дерево на рис, 11.13 содержит четыре узла разветвителя и один узел предска зания. Знакопеременное дерево растет с использованием алrоритма бустинrа, напри мер LogitBoost. Предположим, что базовая модель создает отдельное правило на каждой итерации бустинrа. После этоrо знакопеременное дерево может быть CTe нерировано путем простоrо добавления каждоrо правила в дерево, Стэкинr и метаобучение Поуровневое обобщение (stacked generalization), или просто сmэкинz (stacking), один из способов создания составных моделей. Хотя метод был разработан He сколько лет назад, он все еще менее известен, чем бэпинr и бустинr. Отчасти это связано со сложностью теоретическоrо анализа, а отчасти с тем, что общая KOH цепция использования данното метода пока отсутствует основная идея может применяться в самых разнообразных вариантах, В отличие от бэпинrа и бустинrа стэкинr обычно не используется для комби нирования моделей одното и тото же типа, например набора деревьев решений. Вместо этоrо он применяется к моделям, построенным с помощью различных алrоритмов обучения, Предположим, мы имеем три модели дерево решений, байесовский классификатор и нейронную сеть, на основе которых нужно постро ить классификатор для определенноrо набора данных. Обычная процедура заклю чается в оценке ошибки каждоrо алrоритма и выборе лучшеrо из них, который и будет использоваться для классификации новых данных. Но действительно ли
562 Часть 1. Теория биэнес аналиэа этот способ лучший? Если доступны три модели, то нельзя ли их все применять для классификации, комбинируя выходы? Одной из техник комбинирования выходов является rолосование (та же Meтo дика, что и в бэпинrе). Но оно имеет смысл только тоrда, коrда обучающие схемы работают сравнительно хорошо. Если два из трех классификаторов работают плохо, то ожидать хороших результатов от Bcero ансамбля не приходится. Вместо этоrо стэкинr вводит концепцию м.етаобуче1tuя, которая заменяет процедуру rолосования. Проблема rолосования заключается в том, что неясно, какому клас сификатору следует доверять. Стэкинr пытается обучить каждый классификатор, используя алrоритм метаобучения, который позволяет обнаружить лучшую KOM бинацию выходов базовых моделей (рис. 11.14). Уровень о: баэовые классификаторы ё ;а ОДЕ!ЛЬ ' Дерево решений ..Q М Класс ::1: ф Ф Ш Ш О О а. а. » » Нейронная сеть Байесовский классифкатор Рис.Н.14. Стэкинr Базовые модели образуют уровень О. На вход метамодели, которая также Ha зывается моделью уровня 1, подаются результаты с выходов базовых моделей. Пример уровня 1 имеет столько атрибутов, сколь{(о существует моделей уровня О, а сами значения атрибутов выходы моделей нулевоrо уровня. Затем на основе результатов, полученных моделью уровня 1, строится модель уровня 2 и т. д., пока не будет выполнено какое либо из условий остановки обучения.
Сравнение u моделеи 12.1. Оценка эффективности u и сравнение моделеи Бизнес аналитические проекты с применением технолоrий Data Mining в боль шинстве своем дороroстоящи и трудоемки. Поэтому предприятия и орrанизации, выступающие в качестве заказчиков таких проектов, ожидают получить от них соответствующую отдачу. По этой причине аналитики, которые ведут проект, CTpe мятся «выжать из находящихся в их распоряжении данных максимум пользы. Это и само по себе непросто, поскольку данных может быть недостаточно, они MOI)'T иметь низкое качество, плохо отражать предметную область и т. д. Так что же делать аналитику, чтобы не разочаровать заказчика и не нанести вред ero бизнесу из за использования некорректных моделей? Ответить на этот вопрос позволяет специальный раздел Data Mining, который объединяет в себе методы оценивания эффективности и сравнения различных моделей. Действительно, после тoro, как модель построена, естественным образом воз никают два вопроса. О Насколько построенная модель полезна, эффективна и точна? О Нельзя ли построить модель, которая будет работать лучше имеющейся? Ясно, что модель нельзя применять на пракrn:ке до тех пор, пока не будут прове рены ее эффективность и точность, поэтому на завершающем этапе ее построения эти показатели всеrда оцениваются. Что касается BTOpOro вопроса, часто строят несколько моделей, затем оценивают эффективность каждой из них и выбирают лучшую, для чеrо требуется решить задачу сравнения моделей. Мы затронули два ключевых понятия эффективность и точность. Но как их соотнести? Интуитивно понятно, что модель, обладающая низкой точностью, не может быть эффективной. Если вероятность Toro, что модель даст неправильные
564 Часть 1. Теория бизнес анализа результаты, велика, скорее Bcero, мы откажемся от нее и попытаемся построить HO вую, более точную модель или изменим параметры существующей таким образом, чтобы повысить ее точность. Но увеличение точности модели, как правило, ведет к тому, что она усложняется и ее прозрачность для пользователя снижается. В итоrе мы можем получить очень точную модель, которая окажется неэффективной из за своей сложности и плохой интерпретируем ости. Проведем аналоrию. Докладчик выступает с научно популярной лекцией. Он может точно описать предметную область, используя при этом специальные термины, но тоrда слушатели ничеrо не поймут. Можно удариться в друryю край ность объяснить все «на пальцах», но в этом случае информация окажется He полной и недостоверной и желаемый результат снова не будет достиrнут. Хороший докладчик всеrда найдет компромисс между сложностью и точностью изложения материала и приведет их в соответствие с уровнем аудитории. Эффективная MO дель также получается на основе компромисса между такими показателями, как точность, сложность и интерпретируем ость. Если мы построили несколько моделей и хотим выбрать наиболее эффектив ную, то сначала придется оценить эффективность каждой из них, а затем сравнить полученные результаты, При этом возможны два варианта. О В первом случае все сравниваемые модели однотипны, например три дерева решений, построенные с различными параметрами на одном и том же наборе данных. Здесь может оказаться достаточным выбрать ту модель, которая дает меньшую ошибку при заданном уровне сложности модели. О Во втором случае требуется оценить эффективность моделей различных типов, например реrpессионной модели, нейронной сети и дерева решений, и сделать между ними выбор. Данная задача сопряжена с серьезными проблемами, rлав ная из которых различные меры точности моделей. Действительно, точность дерева решений определяется на основе числа правильно и неправильно клас сифицированных примеров, реrpессионной модели на основе среднеквадрати ческой ошибки. Кроме Toro, мерой точности может быть вероятность правильной или неправильной классификации. Использование различных мер для оценки точности моделей требует применения специальных методов сравнения, ПРИМЕР Сферой, в которой воаребованы оценка зффективноаи и сравнение моделей, является директ-маркетинr прямая почтовая рассылка рекламы. rлавная задача здесь миними зация количеава рассылок клиентам, которые не откликаются на рекламу. Если про водить рассылку без предварительноrо анализа клиентской базы, то затраты на такую рассылку MOryт оказаться выше прибыли, полученной от продажи рекламируемых товаров. Обычно фирмы, занимающиеся директ-маркетинrом, имеют так называемый список контактов, то есть список клиентов, которым уже производил ась рекламная рассылка. Некоторые из клиентов реаrировали активно, откликаясь, скажем, на 7 рассылок из 10, друrие менее активно (2 З отклика), а третьи вообще никак. Желание человека приобреаи тот или иной товар зависит от множеава признаков, описы- вающих ero как потенциальноro клиента. Ими MOryт быть возраст, пол, доход, семейное по ложение, количеаво детей, наличие или отсутавие собавенноrо дома и автомобиля, кли-
rлава 12. Сравнение моделей 565 мат местности проживания и др. Действительно, никому не придет в rолову рекламировать теплую одежду жителям тропических районов или предлаrать банковские карты обитателям бедных кварталов. Но если известно, что потенциальный клиент имеет собственный дом, то можно попробовать предложить ему средства для ухода за садом (rазонокосилку и др.). а если у потенциальноrо клиента есть автомобиль, то вполне возможно, что он откликнется на рекламу автохимии (полироли. автошампуни, масло для двиrателя и др.). Аналитик может выделить набор таких признаков для каждоro вида товаров и построить модель, которая будет определять. стоит ли включать в список рекламной рассылки кли- ента, имеющеrо определенный набор значений признаков. с точки зрения оценки эффективности можно выделить два типа моделей Data Mining, основанных на обучении. о К первому типу относятся модели, для описания точности которых можно использовать количественные меры: ошибку, среднеквадратическую ошибку, показатель ошибки и др. Это классификационные (предсказательные) и perpec сионные ( оценочные) модели. О Оценка точности моделей BToporo типа трудно поддается формализации, по скольку они не имеют выходов как таковых (в том смысле, в каком их имеют классификационные и реrpессионные модели). Такие модели называются дeC1C риптивными (описательными), и к ним относятся, например, ассоциативные пра вила. С помощью ассоциативных правил можно выделить rpуппы товаров, часто продаваемых вместе. Так, может оказаться, что большинство клиентов, которые ранее приобрели полироль и шампунь для автомобиля, с высокой вероятностью откликнутся на рекламу HOBoro MOTopHoro масла. Классификационные модели позволяют, например, определить катеroрию получа теля рассьшки в директ маркетинre высокоактивный получатель, низкоакТИВНЫй и неактивный. После разделения получателей на катеrории можно принять решение о том, что рассьшку следует про изводить только первым двум катеrориям клиентов, а от работы с третьей катеroрией отказаться. Одной из важнейших задач Data Mining, наиболее востребованной в бизнесе, экономике, маркетинrе, медицине и технике, является бинарная классификация, коrда нужно определить принадлежность объекта к одному из двух классов. В Me дицине это может быть наличие или отсутствие заболевания, в директ маркетин re наличие или отсутствие отклика респондента, в военной технике наличие или отсутствие цели. Бинарную классификацию часто называют вероятностной (probability classification): в такой постановке удобно определять не сам класс, а вероятность Toro, что данное наблюдение относится к этому классу. Тоrда на выходе модели будет числовое значение в диапазоне от О до 1. Для решения задачи вероятностной классификации используются модели лоrистической реrрессии. Чтобы оценить их эффективность и сравнить, широко применяются такие методы, как Lift и Рrоfit кривые, RОС анализ, матрицы классификаций. Реrpессионные модели по определению имеют непрерывную выходную пере менную. В контексте задачи директ маркетинrа модель должна определять Bepo ятность Toro, что клиент откликнется на рекламную рассылку. В качестве меры
566 Часть 1. Теория бизнес анализа точности модели используется среднеквадратическая ошибка между наблюдаемыми и предсказанными значениями для каждоrо примера. Также MOryT использоваться относительные и абсолютные ошибки и коэффициент корреляции между входными и выходными переменными. Поскольку дескриптивные модели не выполняют классификацию, реrpессию или оценивание, методика оценки их эффективности и сравнения трудно формализуема и основана скорее на здравом смысле. ЭффективнOCIЪ дескриптивных моделей опреде ляется их простотой и понятностью для пользователя. Если есть две модели, имеющие одинаковую точность и эффективность, но разный уровень сложности, то при прочих равных условиях следует отдавать предпочтение более простой из них. Данный прllli цип известен как «бритва Оккама» (Occam's razor). Он заключается в том, что лучшей будет модель, которая обладает достаточным уровнем объясняющей способности, но при этом является наиболее простой. Вспомним слова А. Эйнштейна: «Все должно делаться настолько просто, насколько это возможно, но не проще . В качестве количественной меры оценки дескриптивных моделей можно при менить принцип м.ИНlI.Мум.а длины описания (rninirnurn descriptive length, MDL). Соrласно ему лучшим представлением (описанием) будет то, которое минимизи рует информацию (в битах), требуемую для кодирования модели. Методы сравнения дескриптивных моделей выходят за рамки нашеrо pac смотрения. В дальнейшем мы сосредоточимся на методах оценки эффективности и точности классификационных и реrpессионных моделей, а также на методах их сравнения (рис. 12.1). Классификационные (предскаэательные) Покаэатель ошибки Lift диаrраммы Рrofit кривые RОС кривые Реrрессионные (оценочные) Дескриптивные (описательные) Среднеквадратическая ошибка «Бритва Оккама» Средняя абсолютная ошибка Принцип MDL Относительная квадратическая ошибка Диаrрамма рассеяния Рис. 12.1. Подходы к сравнению моделей
rлава 12. Сравнение моделей 567 12.2. Оценка ошибки модели Процесс построения модели не оrpаничивается ее обучением, Прежде чем исполь зовать модель на практике, необходимо оценить ее эффективность и способность к работе с новыми данными. В чем заключается задача оценки эффективности? На первый взrляд, ДOCTa точно взять обучающее множество и посмотреть, насколько отличается работа на нем различных моделей. Однако эффективность модели на обучающем множестве определенно не отражает результативность ее работы с новыми данными. Для KOp ректной оценки модели необходимо использовать методы, которые не зависят от происхождения данных. Если данных для построения модели достаточно, можно проверить ее на боль шом тестовом множестве. Но проблема кроется в друrом: хотя задачи Data Mining обычно связаны с оrpомными объемами данных, особенно в маркетинrе, торrовле и работе с клиентами, часто оказывается, что качество данных низкое. Поэтому оценка эффективности моделей представляет интерес прежде Bcero в контексте оrpаниченноrо объема доступных данных. Ниже мы рассмотрим несколько MeTO дов, которые наиболее часто используются при оценке моделей в таких условиях: пере'/(рестную провер'/(у (cross validation), бутстрэп оцен'/(у (bootstrap) и иск.люче ние по одному примеру (leave one out). Сравнение эффективности различных моделей непростая процедура. Даже если модели показывают разную эффективность, возникает два вопроса. О Не является ли это следствием воздействия на работу моделей случайных факторов? О Достаточно ли значимы различия, чтобы сделать вывод о превосходстве одной модели над друrой? Чтобы быть уверенными в том, что различия не являются результатом влияния случайных факторов, необходимо использовать статистические тесты. Необходимо также рассмотреть вопрос издержек ( cost) классификации. В боль шинстве ситуаций издержки неправильной классификации зависят от типа ошиб ки. Например, при отборе получателей рекламной рассылки в директ маркетинrе положительным считается пример, в котором имеет место отклик клиента, а отри цательным тот, в котором реакция клиента отсутствует (возможно и наоборот). Тоrда издержками неправильной классификации положительноrо примера станет отказ от рассылки клиенту, который на самом деле откликнулся бы с высокой долей вероятности. В одном случае издержками являются затраты на рассылку, в друrом упущенная прибыль от потери потенциальноrо клиента. При оценива нии эффективности используемых моделей необходимо обязательно учитывать такие издержки. Обучение и тестирование Эффективность модели, предназначенной для решения задачи классификации, обычно оценивается с помощью коэффициента ошибки (епот rate). Классификатор
568 Часть 1. Теория бизнес анализа должен пред сказать класс каждоrо наблюдения. Если это сделано правильно, то имеет место успех, в противном случае ошибка. Коэффициент ошибки это количество ошибок, допущенных на всем множест ве, отнесенное к общему числу наблюдений. Он показывает общую эффективность классификатора. Конечно, в первую очередь представляет интерес эффективность работы модели на новых данных. Поскольку классы обучающих примеров известны заранее, их можно использовать для вычисления ошибки обучения. Но, как упоминал ось pa нее, она не отражает эффективность работы модели на новых данных. Потребуется определить величину ошибки на множестве данных, которое не использовалось для обучения, то есть ошибку обобщения. Для этоrо применяется тестовое множество. Очень важно, чтобы тестовые данные никак не использовались при построении классификатора. Например, некоторые методы обучения включают два этапа: сначала создается первое приближение модели, а потом ее параметры оптимизиру ются. Для каждоrо из этих этапов MOryT потребоваться отдельные наборы данных. Существует и друrой подход: на обучающих данных строятся различные модели, затем они оцениваются на тестовом множестве и выбирается та, которая работает лучше. В этом случае часто rоворят о трех множествах данных: обучающем, валИдаци онном и тестовом (рис. 12.2). Обучающее множество используется для создания ok ной модели или более, валидационное для оптимизации их параметров, а тecтo вые данные для определения ошибки конечной, оптимизированной модели. Все три множества выбираются независимо друr от друrа. Валидационное множество должно быть отличным от обучающеrо для эффективной ОПТИмизациИ. Тестовое множество должно отличаться от двух друrих, чтобы с ero помощью можно было получить достоверную оценку ошибки модели. 8алидационное множество Рис. 12.2. Разбиение исходноrо множества данных на обучающее, валидационное и тестовое После Toro как ошибка обобщения на тестовом множестве будет определена, примеры из Hero MorYT быть добавлены в обучающее множество, чтобы создатЬ новый классификатор. Аналоrично поступают и с валидационными данными.
rлава 12. Сравнение моделей 569 В общем случае чем больше объем обучающеrо множества, тем лучше будет работать классификатор. Чем больше тестовое множество, тем точнее оценка ошибки обобщения. Нередки случаи, котда достаточноrо количества данных нет. Оrpаничение KO личества данных, которые MOryT использоваться для обучения, валидации и Tec тирования, ставит вопрос: как создать необходимые множества из оrpаниченноrо набора данных? Возникает дилемма: для построения лучшеrо классификатора нужно использовать как можно больше обучающих данных, для получения более точной оценки ошибки тестовых. Перекрестная проверка Ч то делать, котда количество данных для обучающеro и тестовorо множеств оrpани ченно? Можно использовать тот или иной метод сэмплинrа при отборе данных для тестовото множества и, возможно, для валидации, а остальные данные применять для обучения. Обычно одна треть данных отбирается для тестовото множества, а две трети для обучающеrо. Но выборка, используемая для обучения или тестирования, может оказаться нерепрезентативной, то есть не все классы в ней будут представлены в достаточном объеме. Здесь существует одно простое правило: все классы исходноrо множества данных должны быть представлены в обучающем и тестовом множествах примерно в одинаковой пропорции. Если в худшем случае все примеры определенноrо класса отсутствовали в обучающем множестве (были отобраны в тестовое множество), то с примерами этоrо класса классификатор будет работать плохо. Ситуация, скорее всето, усуryбится тем, что в тестовом множестве этот класс окажется представлен слишком сильно. Наиболее общим способом уменьшить перекосы, вызванные неудачным сэм плинrом, является повторение всето процесса обучения и тестирования несколько раз при различных случайных выборках. На каждой итерации определенная доля данных (например, 2/3) случайно отбирается для обучения, а оставшиеся исполь зуются для тестирования. Ошибки, полученные на различных итерациях, ycpeд няются, и определяется общая ошибка. Этот метод оценивания ошибки получил название «nовторяющuйся захват» (repeated holdout). При одиночном захвате обучающее и тестовое множество меняются ролями: обучение ведется на данных, которые использовались ранее как тестовые, и наобо рот. Затем полученные результаты усредняются. Это позволяет снизить влияние неравномерното представления классов в обучающем и тестовом множествах. К сожалению, такой способ приемлем только при разбиении данных на обучающие и тестовые в равной пропорции (50: 50), что, вообще rоворя, не является удачным решением, поскольку обучающее множество должно быть больше TecToBoro. Существует простой и эффективный способ формирования этих множеств в условиях недостаточности данных, который называется пере 'Крестной nровер'Кой, или 'Кросс валuдацuей. Выбирается фиксированное число слоев (folds) или блоков (partitions) данных, например 3. Затем данные разбиваются на три приблизительно .'
570 Часть 1. Теория бизнес анализа равных блока, и каждый из них по очереди при меняется для тестирования, а OCTa вшиеся для обучения (используется разбиение 2: 3 для обучения и 1 : 3 для тестирования). Процедура повторяется трижды так, чтобы каждое наблюдение хотя бы один раз использовалось для тестирования. В данном случае имеет место трехблочная перекрестная проверка (рис. 12.3). 1 й ПРОХОД 0 0 2 й ПРОХОД Ш З й ПРОХОД 0 0 Рис. 12.3. Трехблочная перекрестная проверка (О обучающая выборка, Т тестовая) Для определения ошибки принято делать десятuблочную nере'Крестную npoвep 'Ку (tenfold cross validation). Данные случайным образом разделяются на 10 блоков, в каждом из которых классы пред ставлены приблизительно так же, как и в исходном множестве. Затем модель обучается на 9/10 данных и тестируется на оставшейся 1/10 части. Полученные 10 значений ошибки усредняются, и результат рассматри вается как общая ошибка модели. Следует отметить, что перекрестная проверка не требует точноrо разделения на 1 О равных блоков оно может быть приблизительным. [лавное, чтобы классы в блоках представлялись примерно в равных пропорциях. Почему рекомендуется использовать именно 10 блоков? Экспериментальные исследования, проведенные на различных множествах данных при различных Me тодах обучения, показали, что 10 то число блоков, которое позволяет получить наилучшую оценку ошибки. Существуют и некоторые теоретические доказатель ства в пользу этоrо. Впрочем, эти apryMeHTbI отнюдь не являются определяющими (окончательными): среди исследователей продолжаются споры относительно оп тимальноrо числа блоков для перекрестной проверки. Тем не менее десятиблочная схема стала стандартом де факто в практических приложениях. В то же время 1 О блоков может оказаться недостаточно для получения ДOCTO верной оценки ошибки. Эксперименты по десятиблочной перекрестной проверке для одних и тех же множеств данных и методов обучения часто дают различные результаты из за случайноrо отбора блоков. Поэтому, коrда требуется получить более точную ошибку, используется десятикратная перекрестная проверка, то есть 10 раз по 10 блоков с последующим усреднением результатов. Полученная мера эффективности модели является очень хорошей, но затратной в вычислительном плане.
rлава 12. Сравнение моделей 571 Пере крестная проверка с исключением Альтернативой десятиблочной перекрестной проверке является метод nepe'Кpecт НОЙ nровер'Ки с исключением 000020 npuмepa (leave one out cross validation). В целом это обычная n блочная перекрестная проверка, тде n число наблюдений в наборе данных. На каждом из проходов по очереди исключается один пример, и обучение производится на оставшихся n 1 примерах, а тестирование на исключенном. Если при тестировании результат, выданный моделью, совпадает с фактическим (целевым) значением этоrо примера, то имеет место успех и данному проходу присваивается значение 1, в противном случае О. Затем результаты, полученные при тестировании на всех n примерах, усредняются и это значение рассматривается как ошибка модели. Процедура привлекательна по двум причинам. Во первых, для обучения ис пользуется наибольшее количество данных, что повышает точность модели. Bo вторых, процедура полностью детерминирована отсутствует случайный отбор. Поэтому ее не нужно повторять несколько раз: результаты для одното и тото же метода обучения и одното и тото же множества данных всетда будут одинаковыми ( если в самом алrоритме обучения отсутствует случайность, например случайная инициализация начальных весов нейронной сети). Недостаток подхода BЫCO кие вычислительные затраты, что делает еТО неприrодным для использования на больших множествах данных. Тем не менее на небольших множествах метод эффективен и дает хорошую оценку ошибки. Бутстрэп оценки (самонастройка) Получение бутстрэп оценок основано на процедуре сэмплинrа, называемой сэм плИНlOм с замещением. В обычном сэмплинrе каждая запись исходноrо множества данных отбирается только один раз. Это похоже на отбор иrpоков для футбольноrо матча: нельзя включить в команду одното и тото же иrpока дважды. Сэмплинr с за мещением позволяет выбирать одни и те же наблюдения несколько раз. В основе идеИ бутстрэп оценок лежит выборка с замещением набора данных для обучающеrо множества. Рассмотрим частный случай, который называется О,632 бутстрэnом. Множество данных из n наблюдений выбирается с замещением, чтобы сформировать друтое множество данных, также состоящее из n наблюдений. Поскольку некоторые элементы во втором множестве будут повторяться, а исход ное и полученное множества содержат одинаковое число примеров, то окажется, что некоторые примеры не будут отобраны во второе множество. Они и будут ис пользоваться как тестовые. Какова вероятность тото, что некоторое наблюдение не будет включено в обу чающее множество? Вероятность выбора наблюдения равна 1/n. Соответственно вероятность тото, что наблюдение не будет выбрано, 1 1/n. Умножив эти Be роятности друт на друта n раз, получим (1 1 /n)" е 1 == 0,368. Это дает оценку вероятности тото, что определенное наблюдение вообще не будет выбрано. Таким образом, если исходное множество данных достаточно большое, тестовое множество
572 Часть 1. Теория бизнес анализа будет содержать примерно 36,8 % наблюдений, а обучающее оставшиеся 63,2 %. Некоторые при меры в обучающем множестве будут повторяться, блаrодаря чему результирующее множество будет равно исходному. Результаты, полученные в процессе обучения модели на обучающем множеСТВе и вычисления ошибки на тестовом, дадут пессимистическую оценку, поскольку обу чающее множество, хотя и имеет размер п, содержит только 63 % наблюдений, что немното по сравнению, например, с 90 %, которые используются в десяти блочной перекрестной проверке, Чтобы компенсировать это, можно комбинировать ошибку на тестовом множестве Etest С ошибкой обучения Etт;n. С помощью бутстрэпирования получаем итоrовую ошибку Е: Е == 0,632 . E 1esl + 0,368. Etтin. Затем процедура бутстрэпа повторяется несколько раз при различных выборках с замещением, и полученные ошибки усредняются. 12.3. Издержки ошибочной классификации Ошибки, допускаемые моделью при ее практическом применении к новым данным, MoryT приводить к ложным выводам, что влечет за собой материальные и, следо вательно, финансовые потери от неправильно принятых решений. Такие потери в Data Mining часто называются издержками ошибки классификации (classification cost error, misclassification cost). Действительно, при разработке модели кредитноrо скоринrа ставится цель разделить всех клиентов на добросовестных и недобросо вестных. Закономерен вопрос: <i Ч то лучше принять добросовестноrо клиента за недобросовестноrо или наоборот?» Ответ на нето очевиден даже неспециалисту: в первом случае мы теряем только про центы по кредиту, который не был выдан, а во втором всю сумму, выданную недобросовестному заемщику. То есть издерж ки ошибок второто вида больше. При построении модели необходимо минимизи ровать вероятность появления ошибок, которые вызывают наибольшие издержКИ классификации. Такая методика называется классификацией с учетом издержек (cost sensitive classification). Приведем еще типичные примеры ситуаций, котда издержки для разных типов ошибок различны: о директ маркетинr издержки отправки тематической почты клиентам, которые не отвечают на нее, существенно меньше, чем потери из за про пуска потенцИ альных клиентов; О поиск очаrов нефтяноrо заrpязнения издержки пропуска реальноrо нефтя ното пятна существенно выше, чем издержки ложной тревоrи; О техническая диаrностика издержки неправильной идентификации проблемы существенно меньше, чем издержки пропуска проблемы. Вообще, трудно найти область, в которой издержки различных типов ошибок были бы одинаковыми,
rлава 12. Сравнение моделей 573 В бинарной классификации каждое отдельное предсказание может иметь четыре исхода: О истинноположительный (true positive, ТР); О истинноотрицательный (true пеgаtivе, ТN); о ложноположительный (false positive, FP); О ложноотрицательный (false пеgаtivе, FN). Пусть в качестве положительноrо исхода выбрано значение Да, а в качестве отрицательноrо Нет. Истинноположительным исход будет, Коrда фактический класс данноrо примераДа и модель на выходе выдаст Да. Истинноотрицательным исход будет, Korдa фактический класс наблюдения Нет и модель выдаст Нет. Лож ноположительное значение имеет место, Коrда класс наблюдения Нет, а модель для Hero сформирует выход Да. При ложноотрицательном выходе целевая пере менная принимает значение Да, а на выходе модель выдаст Нет (рис. 12.4). Предсказанный класс ':5: Да Нет :5: :.= С)С) Да тр FN Фu '7 CtI :.= 111 Нет FP TN G Рис. 12.4. Матрица классификации (случай с двумя классами) Введем в рассмотрение два основных показателя, позволяющих оценить точ ность бинарной классификационной модели. Общий nоказатель успеха (overall success rate, OSR), или просто точ'Ность (accuracy), это число правильно классифицированных наблюдений, отнесенное к общему числу наблюдений: TP+TN OSR== TP+TN +FP+FN Иноrда данную величину называют точностью классификатора. Общий nсжазатель ошибки (overall error rate, OVR) составит: OVR== FP+FN TP+TN +FP+FN Для дальнейшеrо рассмотрения вопросов, связанных с оценкой эффективности и сравнением моделей бинарной классификации, введем еще два показателя чув ствителыюсть (sепsitivitу, Se) и сnеЦИфИЧ1IOсть (specificity, Sp). Чувствитель'Ность определяется как отношение числа истинноположительных наблюдений к числу фактически положительных наблюдений:
574 Часть 1. Теория бизнес анализа тр Se== TP+FN Специфич'Ность определяется как отношение числа истинноотрицательных наблюдений к числу фактически отрицательных наблюдений: TN Sp == TN + FP Классификация с учетом издержек При бинарной классификации два типа ошибок ложноположительные и ложно отрицательные будут иметь различные издержки, а два типа корректной КЛас сификации истинноположительный и истинноотрицательный будут давать различную прибыль (profit). В случае двух классов издержКИ ошибок MOryT быть сведены в таблицу разме ром 2 х 2, в которой диаrональные элементы представляют два типа правильной классификации, недиаrональные два типа ошибок Такие таблицы называются матрицами издержек (cost matrix). В случае нескольких классов матрица издержек будет представлять собой квадратную таблицу, размер которой по вертикали и ro ризонтали равен числу классов, а диаrональные элементы представляют издержки правильной классификации. Ниже представлены матрицы издержек для случая двух (рис. 12.5) и трех (рис. 12.6) классов. Издержки для всех типов ошибок приняты равными 1: то есть О издержки отсутствуют, 1 присутствуют. Если издержки известны, то в соответствующих ячейках MOryT напрямую указываться связанные с ними суммы. Классифицировано s :.= '7 S ё Да Нет Да о Нет о Рис. 12.5. Матрица иэдержек 2 х 2 Учет матриц издержек позволяет заменить показатель успеха классификации средними издержками (или, более позитивно, прибылями). Минимизировать издержки ошибок классификации можно с помощью выбора точки отсече'Ния (cut off point) пороrовоrо значения вероятности, разделяющеrо классы. Поднимая пороr (приближая ero к 1), мы увеличиваем вероятность лоЖ ноположительных исходов и уменьшаем вероятность ложноотрицательных. Сни жая пороr, мы, наоборот, уменьшаем вероятность ложноположительных исходов и увеличиваем вероятность ложноотрицательных. Если известно, какие из этих
rлава 12. Сравнение моделей 575 ошибок обходятся дороже, то можно подобрать пороr так, чтобы минимизировать связанные с ними издержки. Рис. 12.6. Матрица иэдержек 3 х 3 С помощью матрицы издержек и матрицы классификации можно вычислить издержки обученной модели на данном тестовом множестве. Для этоrо достаточ но перемножить соответствующие количества ошибочно классифицированных наблюдений, взятые из матрицы классификации, на значения связанных с ними издержек из матрицы издержек (рис. 12.7). Матрица издержек Матрица классификации ПОЛНЬlе издержки s: :.= с.> Ф '7 s: (u G о о о 2 4.6+ +2.4=32 Классифицировано 4 1 4 I 48 Рис. 12.7. Вычисление полных иэдержек ошибок классификации Одним из широко используемых методов оценивания оптимальноrо пороrа является правило Байеса. Пусть положительным исходом классификации является класс 1. Тоrда полные издержки Ссоtа/будут: с cota/ == (1 Р) . с FP. rде Р вероятность отнесения наблюдения к классу 1. Если положительным исходом классификации является класс О, то: С tota/ == р. с FN. Следовательно, оптимальное правило отнесет наблюдение к классу 1, если: (1 Р) . с FP < Р . с т- В противном случае наблюдение будет отнесено к классу О. Вероятность Р oцe нивается как отношение числа примеров соответствуюшеrо класса к обшему числу примеров.
576 Часть 1. Теория бизнес анализа На практике правило Байеса используется в следующем виде: если вероятность, определенная моделью для i ro наблюдения удовлетворяет неравенству 1 Р; > ( / ) ' 1+ С т С'!' то наблюдение относится к классу 1, в противном случае к классу О. Обратим внимание на то, что правило Байеса зависит только от отношения издержек, а не от их фактических значений, Значит, если издержки обоих типов ошибок равны, то правило Байеса даст пороr отсечения 0,5, Можно показать, что коrда отношение издержек равно 1, то ожидаемые издержки пропорциональны показателю ошибки. Если событие, связанное с положительным исходом классификации, является редким, то издержки ложно отрицательных ошибок обычно больше, чем ложнопо ложительных. Например, издержки от пропусков потенциальноrо клиента в директ маркетинrе больше, чем издержки от рассылки тем, кто не реаrирует нй нее. Из держки от проведения мошеннической транзакции по кредитной карте больше, чем издержки от невыполнения законной транзакции (хотя всеrда есть исключения). Для таких случаев пороr отсечения должен задаваться существенно ниже, чем 0,5, 12.4. Lift и Рrоfit кривые Lift кривые и диаrраммы Наличие издержек классификации делает актуальной задачу не только оценки эффективности модели, но и оптимизации ее с точки зрения издержек. Достаточ но часто издержки классификации точно не заданы, а известно только, какой тип ошибок ведет к большим издержкам, исходя из постановки задачи. Аналитику ничеrо не остается, кроме как рассмотреть все возможные варианты и выбрать оптимальный. Вернемся к примеру с директ маркетинrом. Пусть фирма производит paccbIk ку 1 миллиону потенциальных клиентов. Предположим, что обычно откликается 0,1 %, то есть 1000 человек. Таким образом, отклик можно рассматривать как редкое событие. Ранее rоворилось, что если положительный исход есть реДКое событие, то ложноотрицательные ошибки связаны с большими издержками, чем ложнополо жительные. Иными словами, про пуск вероятноrо клиента (ложноотрицательныЙ исход) ведет к большим потерям, чем рассылка респонденту, от KOToporo не после довало отклика (ложноположительная ошибка). Лоrика очевидна: один отклик нувшийся респондент способен принести прибыль, которая покроет издержки от тысячи «пустых» отправлений, С точки зрения оптимизации издержек имеет смысл отобрать подмножество из 100 тысяч респондентов, в котором число откликов больше, чем во всем множестве, например 0,4 %, или 400. Если оrpаничиться рассылкой только этим респондентам,
rлава 12. Сравнение моделей 577 то издержки на рассылку станут в 1 О раз меньше, в то время как количество откли ков уменьшится Bcero в 2,5 раза. Увеличение числа откликов относительно числа почтовых отправлений известно как лифт фактор, или коэффициент лифта, или просто лифт. В данном случае коэффициент лифта равен 4. Если известны издерж ки, то можно определить прибыль, полученную при данном значении лифта L. Обозначим исходное число рассылок N (в нашем примере N == 1 000000), а чис ло откликов п (п == 1000). Также обозначим размер выборки, для которой коли чество откликов ожидается более значительным, К (то есть К == 400 000), а число откликов в выборке k (k == 800). Тоrда прирост доли положительных исходов, то есть коэффициент лифта, составит: k / к 800/400000 0,002 L== n/N == 1000/1000000 0,001 ==2. Рассмотрим вариант с моделью, учитывающей рассылку 400 тысячам респон дентов, для которой про цент отклика 0,2 %, или 800 человек. Это соответствует коэффициенту лифта, равному 2. Что лучше: разослать рекламу 100 тысячам респондентов и получить 400 откликов или сделать рассылку 400 тысячам pec пондентов и получить 800 откликов? Повысив издержки в 4 раза, мы получаем увеличение числа откликов Bcero вдвое. Обобщим методику расчета лифта для произвольной модели бинарной класси фикации, Пусть имеется множество из N примеров, из которых п положительных, Для каждоrо примера модель выдает вероятность ero принадлежности к опреде ленному классу. Задача аналитика заключается в выборе подмножества примеров, которые имеют наибольшую вероятность положительноrо исхода. Для этоrо OT сортируем примеры в порядке уменьшения вероятности положительноrо исхода (табл. 12.1) и извлечем некоторое число наблюдений К из полученноrо списка, Ha чиная сверху. Тоrда, чтобы рассчитать коэффициент лифта, достаточно вычислить отношение доли положительных примеров в выборке k / к к доле положительных примеров в исходном множестве п / N. Таблица 12.1. Фраrмент набора данных, отсортированных по убыванию вероятности положительной классификации N!! п/п Предскаэанная вероятность Фактический класс 1 0,95 Да 2 0,93 Да 3 0,93 Нет 4 0,88 Да 5 0,86 Да 6 0,85 Да 7 0,82 Да 8 0,80 Да 9 0,80 Нет Продолжение ,р
578 Часть 1. Теория бизнес анализа Таблица 12.1 (продолжение) N2 nJn Предскаэанная вероятность Фактический класс 10 0,79 Да 11 0,77 Нет 12 0,76 Да 13 0,73 Да 14 0,65 Нет 15 0,63 Да 16 0,58 Нет 17 0,56 Да 18 0,49 Нет 19 0,48 Да ,., ... ... В табл, 12,1 представлен фраrмент набора данных, содержащеrо N == 150 Ha блюдений, из которых п == 50 являются положительными ( o,33), Наблюдения OT сортированы в порядке уменьшения вероятности положительной классификации, то есть класса Да. Модель правильно классифицировала наблюдения 1 и 2: они действительно положительны. Для наблюдения 3, скорее Bcero, была допущена ошибка, поскольку оно оказалось отрицательным. Теперь, если мы хотим найти подмножество из К == 10 наблюдений, которые с наибольшей вероятностью явля ются положительными, нужно взять 1 О первых наблюдений из упорядоченноrо списка. Восемь из них положительные (k == 8), поэтому их доля для выборки paB на 0,8. Тоrда коэффициент лифта составит L == 0,8/0,33 == 2,42. Таким образом, чтобы минимизировать издержки, или максимизировать при быль, достаточно, изменяя объем выборки, подобрать такое количество наблю дений из упорядоченноrо списка, которое обеспечит оптимальное соотношение числа рассылок (а соответственно, и затрат на нее) и числа откликов, Для решения данной задачи может быть построено несколько моделей, после чеrо потребуется проверить, какая из них более эффективна, Чтобы выбрать модель, которая позволяет найти оптимальное соотношение между издержками и прибылью, для каждой модели кандидата строится rpафик, называемый Lift 'КРuвой (Lift curve). Семейство Lift кривых образует Lift aualpa.м .му (Lift chart), Поведение Lift кривых и их взаимное расположение на диаrрамме позволяют сделать вывод о том, какая из моделей работает лучше, По rоризонтальной оси Lift диаrpаммы откладывается размер выборки в про центах от общеrо числа наблюдений в упорядоченном списке (в нашем случае это получатели рассылки), а по вертикальной число полученных откликов. Каждая точка Lift кривой показывает ожидаемое число откликов для выборки заданноrо размера. Точка с координатами (о; о) соответствует нулевому числу рассылок и, следовательно, откликов, Точка с координатами (100; 1000) соответствует максимальному числу наблюдений (рассылок) с откликом от 1000 респондентов (рис. 12.8).
rлава 12. Сравнение моделей 579 600 .....-- ......... ................. 1000 , ." / 2 800 0:1 О '" s: !;2 t-- О О 1::; о s: т , , , , , , , , , , , , " 3 400 , , , , , , , , 200 о о 20 40 60 80 100 Раэмер выборки, % Рис. 12.8. Lift диаrpамма с помощью Lift кривой можно определить размер выборки, который даст наи лучшее соотношение издержек (числа рассылок) и прибыли (числа полученных откликов), На рис. 12.8 помечены два частных случая, описанных выше: 1 О % рассылок, которые дают 400 откликов, и 40 % рассылок, которые дают 800 откликов. На прак тике следует оrраничиться размером выборки, в пределах которой Lift кривая имеет достаточно крутой подъем (в нашем случае примерно до 40 %), Тоrда увеличение числа рассылок и, соответственно, издержек приводит к хорошему росту числа откликов. Так, рост рассылок с 10 до 40 % позволяет поднять отклики вдвое: с 400 до 800. Но дальнейшее увеличение объема выборки приводит к сла бому росту числа откликов. Поэтому значение более 40 % непрактично: издержки растут быстрее, чем возможная ВЫrода. В частности, увеличив число рассылок вдвое, с 40 до 80 %, мы получим увеличение числа откликов примерно на 1 О %. Использование малых объемов выборки (менее 10 %) также не имеет смысла, Хотя Lift кривая на данном участке имеет наибольшую крутизну, само по себе малое число рассылок вряд ли принесет хорошую прибыль, Диаrональная линия на Lift диаrрамме отражает работу так называемоrо пpo извОЛЪНОlО (случайноlO) классификатора, который не способен обнаружить
580 Часть 1. Теория бизнес анализа подмножества, [де про цент откликов больше, чем в целом по выборке. Модель, которой соответствует диаrональная линия, бесполезна. Любая модель, Lift кривая которой проходит выше диаrональной ПРЯМой, дает прирост числа откликов относительно случайной модели и обеспечивает лифт. Классификатор, представленный на рис. 12.8 кривой 3, проходящей ниже диаrональной прямой, дает отрицательный лифт и будет хуже «бесполезноrо , поэтому применение таких моделей с точки зрения оптимизации издержек бес смысленно. Подытожим: чем выше проходит Lift кривая, тем эффективнее модель. При про чих равных условиях предпочтение следует отдать той модели, для которой Lift кривая проходит выше дрyrих или, что одно и то же, максимально приближается к точке с координатами (о; 1000). Рассмотрим два крайних случая (рис. 12.9). Слева по казана идеальная, но He вероятная ситуация, коrда количество откликов всеrда равно 100 % независимо от числа рассылок, даже если вообще ничеrо никому не отправлял ось. КРИЕая справа отображает наихудшую ситуацию: сколько бы рассылок мы ни отправляли, ни один респондент не откликнется. Рис. 12.9. rраничные случаи для Lift кривой Что касается промежуточных вариантов, СIЩвним линии 1 и 2 на рис. 12.8. Xo рощо видно, что при объеме выборки, равном 40 % обучающеrо множества, модель, которой соответствует линия 1, дает ожидаемое число откликов, равное 800. Mo дель, описываемая линией 2, для Toro же количества рассьmок дает 950 откликов. Действительно, чем точнее классификация и чем меньще ощибок допускает модель, тем быстрее и до больщеrо значения возрастет количество истинноположительныХ классификаций в табл. 12.1. Для сравнения эффективности моделей, описываемых Lift кривыми, частО используется площадь под ними (area uпdеr curve, AUC). Чем выще проходит rpафик, тем больше площадь под кривой. Этот числовой показатель удобен, коrда Lift кривые двух моделей проходят близко друr к друry и визуально оценить раз ницу между ними трудно. При оценивании эффективности моделей с помощью показателя AUC можно столкнуться со следующей проблемой: одна модель лучще работает в одном диа
rлава 12. Сравнение моделей 581 пазоне (например, при объемах выборки 70 100 %), а вторая в друrом (скажем, 0 50 %). Следствием этоrо будет пересечение кривых (рис. 12.10). 1000 200 2 800 0:1 О " 600 :s; ,.. 1 о о 1::; о :s; т 400 о о 20 40 60 80 100 Раэмер выборки, % Рис. 12.10. Lift кривые с одинаковыми показателями AUC На рисунке видно, что, хотя площади под Lift кривыми одинаковы, однозначно сказать, какая из моделей лучше, нельзя. Если планируется малый объем paccbIk ки, например 10 30 % общеrо количества респондентов, то лучших результатов можно добиться с помощью модели 1: в этом интервале ее Lift кривая проходит выше, чем кривая второй модели. Однако, запланировав большой объем рассылки (50 90 % общеrо числа респондентов), мы обнаружим, что большую эффектив ность показывает модель 2. Таким образом, эффективность моделей, оцениваемая с помощью Lift кривых, И выбор лучшей модели зависят от особенностей реша емой задачи. Иноrда по вертикальной оси Lift диаrpаммы откладывают не количество поло жительных наблюдений, а собственно значения лифта, Очевидно, что в этом случае Lift кривая будет убывать (рис. 12.11). Максимальный лифт будет при объеме вы борки, равном 1, поскольку для первоrо наблюдения вероятность положительной классификации самая большая. По мере увеличения объема выборки в нее начи нает попадать все больше отрицательных исходов и лифт уменьшается. В пределе, коrда размер выборки 100 %, лифт стремится к 1. Прямая L == 1, параллельная
582 Часть 1. Теория бизнес анализа з 3 4 ....J .: -е- s: i::; 2 " " .......... .... ..... ---- .... о о 20 40 60 80 100 Раэмер выборки, % Рис. 12.11. Альтернативный способ построения Lift кривой rоризонтальной оси, аналоrична диаrональной линии на рис. 12,10 и демонстрирует «бесполезную» модель. Принцип сравнения моделей с помощью данной разновидности Lift кривой тот же: чем выше идет кривая, тем эффективнее связанная с ней модель. Gаiп диаrраммы Еще одна разновидность Lift диаrрамм Gаiп диаrрамма (Gain chart), или KY мулятивная Lift диаrpамма (cumulative lift chart). По rоризонтальной оси Gain диаrpаммы также откладывается размер выборки, полученной из упорядоченноrо списка (см. табл. 12.1). Но по вертикальной оси фиксируется не количество (или процент) положительных наблюдений, попавших в выборку, а отношение числа истинноположителЬных наблюдений к числу всех наблюдений, классифициро ванных как положительные, то есть ТР/(ТР + FN). Ранее отмечалось, что данная величина называется чувствительностью (Se). Отметим, что чувствительность стремится к О, если имеется очень большое количество ложноотрицательных наблюдений, Верхний предел чувствительностИ равен 1 в случае, котда ложноотрицательные наблюдения отсутствуют (ошибок нет). Методика использования Gаiп диаrpаммы в целом похожа на методику ис пользования обычной Lift диаrpаммы, но ищется оптимальное соотношение между
rлава 12. Сравнение моделей 583 размером выборки и количеством ошибок классификатора, то есть числом случаев ложно отрицательной классификации. Увеличивая размер выборки (смещаясь по диаrpамме вправо), мы увеличиваем количество ложно положительных наблюдений, соответственно, риск ошибочной классификации растет, Уменьшая выборку (смещаясь по диarpамме влево), мы пони жаем число ошибок. Задача аналитика заключается в подборе размера выборки таким образом, чтобы чувствительность модели бьша на достаточно высоком уровне. Если использовать Gаiп диаrрамму для сравнения моделей, то лучшей также будет та из них, Gаiп кривая которой проходит выше. На диаrpамме на рис. 12,12 предпочтение следует отдать модели 1, поскольку, например, для выборки разме ром 20 % она обеспечивает чувствительность около 0,55, а модель 2 только 0,3. Jj .п .... u !Е 0,5 .1> с: Ф .... s: 0:1 .... U 0:1 >- -:r , , 2 ....! . . . , . . . l' . , ! , ! ... I ... . ... I ... i ......... ! о о 20 40 60 80 100 Раэмер выборки, % Рис. 12.12. Gаiп диаrраммы Если Gаiп кривые двух моделей пересекаются, это также означает, что для раз личных диапазонов эффективность моделей разная, Выбирать следует ту модель, кривая которой проходит выше в более актуальном диапазоне. Вообще, использовать Gаiп кривые для сравнения моделей удобнее, чем обыч ные Lift кривые, поскольку последние в большей степени применяются для опти мизации издержек ошибок классификации, а первые непосредственно указывают на точность модели. Рrоfit кривые Lift диаrраммы очень удобное средство сравнения моделей и их оптимизации с точки зрения издержек классификации, Однако они не дают ответа на важный вопрос: каковы будут издержки или выrоды от использования модели. Ясно, что
584 Часть 1. Теория бизнес анализа для этоrо необходимы числовые показатели, связанные с решаемой бизнес задачей. Например, в задаче кредитноrо скоринrа нужно знать, в какие суммы обойдутся необоснованный отказ добросовестному заемщику и ошибочно выданный кредит неплатежеспособному лицу. В задаче директ маркетинrа требуется информация о том, во сколько обходится одно почтовое отправление с рекламой и какая при быль ожидается от каждоrо потенциальноrо клиента. Чтобы точно узнать, прибыль или убытки принесет использование той или иной модели, недостаточно просто сравнить их эффективность необходимо Ис пользовать числовые значения издержек и прибыли. Для этих целей используется еще один rpафический метод, называемый Prоfit кривой (Profit curve), или кривой дохода. Про иллюстрируем ето на примере массовой рассылки, Введем следующие обозначения: о Р доход; О R выручка (от анrл. revenue <<прибыль!>, «выручка»); о С издержки (от анrл. cost «издержки», «затраты»); о NR общее число полученных откликов; О RR выручка с одното отклика (revenue per response); О CR издержки одното отклика (cost per response); О NM число отправлений (number mailed); О СМ издержки на одно отправление (cost per mailing); о PR прибыль с каждоrо отклика, равная разнице между затратами на продажу и прибылью от продажи, то есть PR == RR CR, Тотда доход будет определен следующим образом: Р == R C == NR, RR (NR.CR+NM .СМ), П усть рекламная рассылка производилась 1 О тысячам потенциальных клиентов (то есть NM == 10000), из которых откликнулись NR == 250, Предположим, что BЫ ручка, полученная от каждоrо откликнувшеrося.клиента, составляет RR == 100 ед., издержки на обслуживание клиента CR == 60 ед., а затраты на каждое отправле ние СМ == 2 ед. Общая выручка R определяется как произведение числа истинноположитель ных исходов (ТР == NR) и выручки, полученной от каждоrо откликнувшеrося клиента RR. Тотда полные издержки С будут равняться произведению издержек на одно отправление и числа положительных исходов, предсказанных моделью, то есть сумме истинноположительных и ложноположительных исходов, Следо вательно: Р == R C == (тр, 100) (TP, 60 +(тр + FP)' 2) == == (тр. 100) ТР, 60 + 2, тр + 2. FP == 42, тр + 2. FP. Введем в рассмотрение показателъ отклика (response rate) как про ценТ Истинноположительных исходов от общеrо числа положительных исходов
rлава 12. Сравнение моделей 585 (тр/(тр + FP)) . 100 %, иными словами, долю откликов от общеrо числа рассылок для каждой выборки, Пусть первая выборка составляет 10 %, или 1000 рассылок, а показатель отклика 5 %, Это значит, что из 1000 респондентов откликну лись 50 (тР), а 950 рассылок (FP) остались без ответа. Тоrда для первой выборки прибыль составит 42, 50 2 . 950 == 2100 1900 == 200. Таким образом, мы по лучили отрицательный доход, Проведем аналоrичные расчеты для 10 выборок с возрастанием каждой последующеЙ на 10 % (табл. 12.2). Таблица 12.2. Расчет прибыли Объем выборки, % Объем выборки, Покаэатепь Прибыль, ед. количество отклика, О/о О О О О 10 1000 5 42 . 50 2 . 950 == 200 20 2000 4,5 42. 90 2 .1100 == 1580 30 3000 4 42. 120 2.2880 == 720 40 4000 3,5 42. 140 2 . 3860 == 1840 50 5000 3 42. 150 2 . 4850 == 3400 60 6000 2,5 42. 150 2 . 5850 == 5400 70 7000 2 42, 140 2.6860 == 7840 80 8000 1,5 42, 120 2 ' 7880 == 10 720 90 9000 1 42. 90 2.8910 == 14 040 100 1 О 000 0,5 42. 50 2.9500 == 16 900 Наибольшая прибыль получается при объеме выборки 20 %. Однако поскольку с увеличением числа рассылок издержки растут быстрее, чем выручка, при даль нейшем увеличении размера выборки прибыль падает и даже становится отрица тельной. На основе данной таблицы леrко построить rpафик зависимости прибьши от объема выборки (рис, 12.13). 5000 О 5000 а. 1 О 000 15 000 20 000 12 00 NM Рис. 12.13. Зависимость маржи от объема выборки
586 Часть 1. Теория бизнес анализа 12.5. RОС"анализ Помимо Lift кривых, широко используемых в маркетинrе, кредитном СКОРинrе и друrих областях, rде применяется бинарная вероятностная классификация существует еще одна rpафическая методика оценивания эффективности моделей' которая называется RОС а1-tалuзом, ' Как отмечалось ранее, в задачах бинарной классификации, коrда модель пред сказывает вероятность Toro, что наблюдение относится к одному из двух классов очень важен выбор точки отсечения, то есть пороrа вероятности, раздеЛЯющеrо ДB класса, Точка отсечения показывает, после KaKoro значения вероятности на выходе модели один класс сменяется друrим. Например, в задаче кредитноrо скоринrа мы можем установить точку отсечения для положительноrо исхода 70 %. Если модель для HeKoToporo потенциальноrо заемщика выдаст значение вероятности ниже 0,7, то он будет признан некредитоспособным и ему откажут в выдаче займа, а если выше 0,7, то заемщик признается кредитоспособным и будет принято ПОЛОЖитель" ное решение о выдаче ему кредита, Выбирая точку отсечения, мы управляем вероятностью правильноrо распо знавания положительных и отрицательных примеров. При уменьшении пороrа отсечения увеличивается вероятность ошибочноrо распознавания положительных наблюдений (ложноположительных исходов), а при увеличении возрастает Bepo ятность неправильноrо распознавания отрицательных наблюдений (ложноотрица тельных исходов). Цель заключается в том, чтобы подобрать такое значение точки отсечения, которое дает наибольшую точность распознавания заданноrо класса, а KaKoro именно определяется постановкой задачи. Именно для этоrо используется RОС анализ. Методика была перенесена в Data Mining из области обработки сиrналов в радиолокации, а сама аббревиатура ROC расшифровывается как receiver operating characteristic, что переводится с анrлий cKoro как «рабочая характеристика приемноrо устройства», В радиотехническом приложении задача заключается в обнаружении с помощью приемноrо устройства (радиолокатора) некоторой цели (морской, воздушной и т, д,). При этом положи тельный исход цель обнаружена, отрицательный исход цель не обнаружена. В настоящее время RОС анализ широко применяется в экономике и бизнесе, медицине и биолоrии, научных исследованиях, Перед рассмотрением методики введем понятия ошибок 1 и II рода, Если би нарная классификационная модель строится на основе обучающей выборки, то все входящие в нее примеры соответствуют либо положительному, либо отрица тельному исходам, Тоrда в процессе работы модели MOryT возникнуть следующие ошибки. О Пример соответствует положительному исходу, но был распознан как отри цательный: заемщик кредитоспособен, но модель распознает ero как некреди тоспособноrо; пациент болен, но модель распознает ero как здоровоrо; радио локационная система не смоrла обнаружить цель по ее сиrналу, принятому локатором (пропуск цели), и т. д. Иными словами, интересующее событие ошибочно не обнаружено, Такие ошибки называются ошибками 1 рода.
rлава 12. Сравнение моделей 587 D Пример соответствует отрицательному исходу, но был распознан как поло жительный: заемщик некредитоспособен, но модель определяет ero как Kpe дитоспособноrо; пациент здоров, но модель определяет ero как больноrо; pa диолокационная цель отсутствует, но система определяет ее наличие (ложная TpeBora) и т. д. Иными словами, интересующее событие не произошло, но было обнаружено. Такие ошибки называются ошибками II рода. Ранее мы сказали, что для оценки качества любой бинарной классификацион ной модели можно использовать два показателя чувствительность (Se) и спе цифичность (Sp). Обратим внимание: если отсутствуют ложноотрицательные исходы, чувстви тельность равна 1; если отсутствуют ложноположительные исходы, специфичность равна 1. Модель, которая способна идеально точно классифицировать как поло жительные, так и отрицательные примеры, будет иметь 100 процентную чувстви тельность и специфичность, Чтобы минимизировать ошибки 1 рода, нужно использовать модель с высокой чувствительностью. Чтобы минимизировать ошибки 11 рода, нужно использовать модель с высокой специфичностью. Идеальных моделей не бывает, и на практике приходится искать компромисс между чувствительностью и специфичностью, Он достиrается за счет выбора пороrовоrо значения вероятности, или точки отсечения. Как следует из фор мулы расчета чувствительности, для ее повышения необходимо уменьшить количество ложно отрицательных исходов, а это достиrается путем снижения пороrа. Для увеличения специфичности нужно снизить число ложноположи тельных исходов (см. формулу расчета Sp). С этой целью увеличивается пороr отсечения так модели будет сложнее перепутать отрицательный исход с по ложительным. В общем случае задача RОС"анализа заключается в том, чтобы выбрать такую точку отсечения, которая обеспечит максимум чувствительности и спе цифичности. Но Всеrда ли нужна модель, которая одинаково хорошо распознает как положительные, так и отрицательные примеры? Если издержки обоих ти пов ошибок примерно одинаковы, то такая модель нас устроит, Но на практике подобных задач мало. Чаще встречаются ситуации, в которых издержки одноrо типа ошибок больше, чем издержки друrоrо (см, раздел 12.3), Так, издержки ложной тревоrи HaMHoro меньше, чем пропуска цели. Поэтому понятие «опти мальный пороr» относительно: все зависит от задачи, ПРИМЕР Одним из первых практических приложений RОС-анализа стал скрининr, KorAa на основе не- KOToporo оrраниченноrо набора медицинских показателей (возраст, состав крови, уровень холестерина, температура, кровяное давление и т. д.) определяется наличие или отсутствие заболевания у пациента. Задача сводится к бинарной классификации, причем положитель- ным исходом чаще Bcero выбирается наличие заболевания, а отрицательным ero отсут- ствие. Классификационная модель выдает вероятность отнесения каждоrо наблюдения
588 Часть 1. Теория бизнес анализа к одному из классов. При этом выход 1 указывает на стопроцентную вероятность наличия заболевания, а О на достоверное ero отсутствие. В простейшем случае, если издержки ошибок диаrностики безразличны, следует выбрать такую точку отсечения, чтобы максимизировать и чувствительность, и специфичность Но, к сожалению, задачи медицинской диаrностики чувствительны к издержкам ошибо классификации как никакие друrие. Сделав пороr слишком низким, мы рискуем ПОЛУЧИТЬ так называемую передиаrностику, KorAa модель допускает слишком MHOro ЛОЖНоположи- тельных ошибок. А ведь перестраховка может оказаться опасной: лечение пациента от несуществующеrо заболевания бывает связано снеобоснованным хирурrическим вме- шательством, применением болезненных методов и лекарств, вызывающих поБОчные эф- фекты, не rоворя уже о финансовых издержках. Однако, сделав nopor отсечения слишком высоким, мы рискуем пропустить заболевание. Тем не менее в скрининrе де-факто используется правило, смещающее диаrностическое решение в сторону снижения вероятности пропуска заболевания, то есть передиаrностики. В частности, во мноrих диаrностических тестах требуется, чтобы чувствительность была не менее 90 %: вовремя выявить болезнь важнее любых затрат. в основе RОС анализа лежат так называемые Roc KpuBы.. Чтобы построить RОС кривую, нужно изменять пороr отсечения в интервале от О до 1 с заданным шаrом At-, например 0,01. В результате при каждом значении пороrа будет меняться количество правильно и неправильно распознанных примеров, а соответственно, чувствительность и специфичность модели. Если рассчитать чувствительность и специфичность для каждоrо значения пороrа, а затем построить rpафик, по Bep тикальной оси KOToporo откладывается чувствительность, а по rоризонтальной величина S == 100 % Sp, это и будет RОС кривая. Типичный вид RОС кривой представлен на рис. 12.14. Увеличение значения по rоризонтальной оси соответствует уменьшению специфичности модеЛИ: точка х == О соответствует максимальной специфичности (Sp == 100 %), а точках == 100 мини мальной (Sp == о). Формы ROC и Lift кривых во MHoroM схожи, как и методики их анализа, И это не случайно, поскольку принцип их построения примерно один и тот же, Кривые обоих видов строятся на основе отсечения: в случае Lift-кривых отсече нию подверrается часТЬ выборки, оптимальнаЯ с позиции издержек ошибочной классификации, а в случае RОС кривой отсечению подверrается вероятностЬ принадлежности объекта к классу для обеспечения требуемоrо соотношения Se и Sp. Каждая точка RОС кривой соответствует определенному значению поро ra отсечения, При этом оптимальным будет значение, соответствующее точке RОС кривой с координатами, максимально близкими к (о; 100), для которой и чувствительность, и специфичность равны 100 %, то есть как положительные, так и отрицательные примеры распознаны правильно. Таким образом, если бы удалось построить модель, RОС-кривая которой проходила бы через точку с ко. ординатами (о; 100), мы получили бы идеальный классификатор (пунктирная линия на рис. 12.14). На практике модели допускают ошибки. Поэтому о качестве бинарной классИ фикационной модели можно судить по степени кривизны RОС-кривой, то есть по
rлава 12. Сравнение 1Оделей 589 100 80 60 Se,% 40 20 о о 20 40 60 80 100 100 Sp,% Рис. 12.14. RОС кривые тому, насколько близко к точке, соответствующей идеальному классификатору, она проходит. И здесь, как и в случае Lift кривой, диаrональная линия COOTBeT ствует <tбесполезному» классификатору. Площадь под кривой (AUC) rоворит о проrностической силе модели, причем АUС == 1 соответствует идеальному классификатору. Что же касается реальных случаев, то, если площадь под RОС кривой больше O,7 O,8, соответствующая модель демонстрирует достаточно высокую точность. С помощью выбора пороrа отсечения добиваются оптимальноrо соотношения между чувствительностью и специфичностью модели, Для этоrо применяются раз личные стратеrии. Например, часто пороr выбирают таким образом, чтобы сумма чувствительности и специфичности была максимальна (то есТЬ чтобы обеспечи валось максимальное количество как положительных, так и отрицательных пра вильно распознанных примеров). Иноrда пороr выбирают так, чтобы соблюдался баланс между чувствительностью и специфичностью, то есть Se == Sp. Чувствительность и специфичность представляют собой доли истинноположи тельных и истинно отрицательных исходов классификации. Обычно такие исходы распределяются неравномерно. В матрице классификации на один положительный исход может приходиться несколько отрицательных, и наоборот. Поэтому в реальности линия RОС кривой будет не rладкой, как показано на рис. 12.14, а изрезанной (рис. 12.15),
590 Часть 1. Теория бизнес анализа Se, % 100 80 60 40 20 о о 20 40 60 80 100 1 00 Sp, % Рис. 12.15. Ломаный характер RОС кривой На рисунке видно, что из начала координат кривая возрастает на два положи тельных наблюдения и одно отрицательное, затем на пять положительных и одно отрицательное и т. д, Изрезанность RОС кривой существеmю зависит от особенностей выборки данных. Эту зависимость можно уменьшить путем перекрестной проверки за счет усреднения по блокам, Хотя, как правило, идеальной степени сrлаживания достичь не удается. Диаrрамма «ТОЧНОСТЬ полнота» Понятия чувствительности и специфичности, применяемые в RОС анализе, приш ли из медицины и лабораторной диаrностики заболеваний. В Data Mining вместО них часто используют понятия точности и полноты. Пошита (recaH) классификатора есть не что иное, как ранее рассмотренная чувствительность: R == ТР/(ТР + rN). ТОЧ1-tостъ классификатора определяется как: P ТР ТР + FP Основное применение этих показателей оценка качества работы информа ционно поисковых систем, Рассмотрим, например, процесс поиска информации
rлава 12. Сравнение моделей 591 вИнтернете. Реаrируя на запрос, поисковая система дает список найденных дo кументов, предположительно важных с точки зрения запроса. Сравним систему, находящую 100 документов, 40 из которых являются важными, и систему, Haxo дящую 400 документов, 80 из которых являются важными, Какая из них лучше? Ответ очевиден: это зависит от относительных издержек ложноположительных исходов (числа документов, которые найдены, но не являются важными) и лож ноотрицательных исходов (числа документов, которые являются важными, но не обнаружены), Тотда информацию, извлеченную в процессе поиска, определяют два параметра: полнота и точность. В контексте решаемой задачи полнота определяется как отношение числа важных найденных документов N BH к общему числу важных документов N B : R == N BH / N B , Точность есть отношение числа важных найденных документов N BH к общему числу найденных документов N H : Р == N BH / N H . Например, если список найденных документов проранжировать по убыванию вероятности тото, что документ является важным, то полнота для первых 10 запи сей, 8 из которых истинноположительные, а две ложноположительные, будет (8/40), 100 % == 20 %, в то время как точность (8 /10).100 == 80 %. На основе этих двух показателей строят диаrpаммы «тОЧ1-tостъ пол1-tота» (Precision Recall curve). Как и в случаях с Lift и RОС кривыми, это делается для различноrо числа найденных документов, Продолжим пример. Пусть в результате выполнения запроса и классификации релевантности найденных документов было получено множество, представленное в табл. 12.1. Общее число важных документов равно 19, но из них правильно клас сифицировано только 13, Тотда по формулам рассчитаем данные табл. 12,3 и на ее основе построим две кривые (рис. 12,16). Таблица 12.3. Набор данных, отсортированный по убыванию вероятности положительной классификации текстовых документов N!! п/п Предскаэанная Фактический кпасс Точность Полнота вероятность 1 0,95 Да 1,00 0,05 2 0,93 Да 1,00 0,11 3 0,93 Нет 0,66 0,11 4 0,88 Да 0,75 0,16 5 0,86 Да 0,80 0,21 6 0,85 Да 0,83 0,26 7 0,82 Да 0,86 0,32 8 0,80 Да 0,87 0,37 9 0,80 Нет 0,77 0,37 10 0,79 Да 0,80 0,42 11 0,77 Нет 0,73 0,42 12 0,76 Да 0,75 0,47 Продолже1-tuе ,:р
592 Часть 1. Теория бизнес анализа Таблица 12.3 (продолжение) Ng п/п Предскаэанная Фактический класс Точность ПОЛНОТа вероятность 13 0,73 Да 0,77 0,52 14 0,65 Нет 0,71 0,52 15 0,63 Да 0,73 0,58 16 0,58 Нет 0,68 0,58 17 0,56 Да 0,71 0,63 18 0,49 Нет 0,66 0,63 19 0,48 Да 0,68 0,68 1,20 1,00 0,80 0,60 0,40 0,20 0,00 2 З 4 5 6 7 8 9 10 11 12 1З 14 15 16 17 18 19 Рис. 12.16. Диаrpамма <lТОЧН.ОСТЬ полнота Поведение кривых полноты и точности на рис. 12.16 хорошо объяснимо, По Me ре Toro как мы смещаем точку отсечения вправо, включая в рассмотрение все больше наблюдений, полнота как относительная доля обнаруженных релевантных документов увеличивается, причем тем быстрее, чем меньше ошибок Но посколь ку наблюдения упорядочены по убыванию вероятности класса, то увеличивается и число ложноположительных наблюдений и, соответственно, падает точность, Точность падает тем быстрее, чем больше число ошибок классификации и чем хуже работает модель. Итак, при прочих равных условиях лучшей будет модель, для которой кривые точности и полноты идут выше. В идеальном случае, коrда все наблюдения явля ются истинноположительными, rpафик точности будет представлять собой прямую линию на уровне 1, а rpафик полноты диаrональную линию, идущую из начала координат в правую верхнюю точку диаrраммы,
rлава 12. Сравнение моделей 593 12.6. Обучение в условиях несбалансированности классов Если при решении задачи кредитноrо скоринrа выбрать, например, дерево pe UlеНИЙ, то обнаружится, что итоrовая модель содержит очень мало правил, а то и совсем «пустое!> дерево (особенно если применялась процедура упрощения дерева). Причина в том, что в обучающей выборке присутствует llесбалаllсuроваll ность классов, то есть классы представлены неравномерно (imbalanced dataset). Например, в кредитных историях доля <1ПЛОХИХ!> заемщиков редко превышает 1S %, а в большинстве случаев и тorо меньше на уровне 3 6 %. В директ марке тинrе при массовой рассылке всем респондентам процент отклика также невысок и сопоставим с приведенными цифрами для скоринrа. В медицинском скрининrе больных людей значительно меньше, чем здоровых, если только мы не проводим обследование в какой то специально отобранной rруппе людей. И таких примеров MHoro, то есть на практике оказывается, что несбалансированность классов HOp мальное явление. Однако это оборачивается трудностями для аналитика. Классификаторы, построенные на основе выборки, в которой репрезентативность классов несба лансирована, в процессе практическоrо использования склонны с большей Be роятностью относить новые наблюдения к классам, представленным большим числом обучающих примеров. Для мноrих приложений, особенно применяемых при медицинской диаrностике, обнаружении мошенничеств и др., это совершенно неприемлемо, поскольку наименее представленный класс является самым интерес ным. При этом издержки ошибок неправильной классификации для Hero больше, чем для доминирующих классов. Например, в задаче обнаружения мошенничеств «честные» транзакции не представляют никакоrо интереса, хотя их HaMHoro боль ше, чем «мошеннических!>. Действительно, если рассмотреть тысячу транзакций, то «мошенническими» MorYT оказаться только несколько из них. Построенный на таких данных классификатор будет <10птимистическим», то есть станет с большей вероятностью относить любые представленные ему транзакции к <1честным!>. Основная причина здесь в том, что в процессе обучения модели не было доступно достаточно информации об обоих классах. 3АМЕЧАНИЕ Для крапюсти класс (оrраничимся случаем с двумя классами), представленный в обуча ющих данных меньшим числом примеров, будем называть миноритарным (от анrл. miпоr ity «меньшинство»), а представленный большим числом примеров мажорuтарным (от анrл. majority «большинство»). Кроме несбалансированности классов, большой проблемой при построении и практическом использовании классификационных моделей являются издержки ошибок классификации, точнее, их неодинаковость для различных классов, Обычно издержки ошибок классификации для миноритарноrо класса существенно выше, чем для мажоритарноrо. Действительно, ошибочный пропуск факта мошенничества
594 Часть 1. Теория бизнес анализа приведет к большим издержкам, чем ложный сиrнал тревоrи для «честной» транз- акции. В этих случаях важно минимизировать общую ошибку классификатора. Существуют разнообразные подходы, позволяющие компенсировать влияние несбалансированности ЮIaССОВ и минимизировать издержки ошибок классиФИ{а ции в процессе использования алrоритмов машинноrо обучения. Мы рассмотрим два основных подхода специальные стратеrии сэмплинrа и модификацию алrо ритма обучения так, чтобы сделать ero чувствительным к издержкам (cost sensitive algorithm). Выше мы использовали понятие матрицы издержек, в которой показываются издержки, связанные со всеми четырьмя возможными исходами С ТР , C rp , C rN И С т . у (см. раздел 12,3). Коrда издержки в случае правильной классификации отсутству- ют, величины С ТР и С т полаrают равными О. Также в силу Toro, что миноритарный класс представляет больший интерес, C FP < С ш Если издержки ошибочной классификации известны, то лучшей оценкой эф фективности модели служат полные издержки: С t (FN . С 'Н ) + (FP . С 1-1' ). Издержки обычно выражаются в единицах, соответствующих области, в которой решается задача. Это MOryT быть денежные суммы, затраты времени, сырья и MaTe риалов и т. д. Отрицательные издержки интерпретируются как прибыль, выrода. [оворя о двух новых подходах, напомним, что ранее мы уже упоминали метод oцe нивания оптимальноrо пороrа при помощи правила Байеса. К сожалению, ero при менение оrpаничено только алrоритмами классификации, которые выдают степень уверенности в своем решении, например лоrистическая реrpессия и простой байе совский классификатор. Поэтому альтернативные методы также востребованы. Изменение репрезентативности классов Данный подход использует сэмплинr для изменения распределения классов и Ha зывается воссmановлен.ием равновесия (rebalancing) с целью получения более сба лансированноrо обучающеrо множества. Здесь существует два специальных метода сэмплинrа: выборка с дублированием минориmарНОlО класса (oversampling) и выбор ка с удалением примеров мажориmарНОlО класса (undersampling), Предполаrается, что смещение, внесенное в обучающие данные, позволит алrоритму обучения получить модель, которая минимизирует издержки при классификации новых наблюдений. Для простоты рассмотрим задачу бинарной классификации со следующей матрицей издержек (в качестве положительноrо исхода предсказания выбрано значение 1) (рис. 12.17). Предположим, что правильная классификация не имеет издержек, то есть Соо и С 11 равны О. Издержки ложно отрицательных и ложно положительных классифи каций запишем как С 1о и С О1 соответственно, и пусть С 1О > > С О1 . Цель восстановле ния равновесия заключается в том, чтобы соотношение примеров, принадлежащих классам О и 1, в обучающем множестве было кaK TO связано с отношением С 1О / С О1 .
rлава 12. Сравнение моделей 595 Классифицировано :s: (J ф 7' :s: ti tII & о о 1 С,о С" С ОО Со. Рис. 12.17. Матрица издержек 2 х 2 Этоrо можно достичь путем дублирования примеров миноритарноrо класса либо удалением <iЛИШНИХ:!> примеров, относящихся к мажоритарному классу. В данном случае это означает, что нужно просто случайным образом продублировать He которое количество положительных примеров или удалить некоторое количество отрицательных. Возникает вопрос: на сколько конкретно нужно увеличивать число примеров миноритарноrо (редкоro) класса или сколько удалять из мажоритарноrо класса? Ответ на этот вопрос дает следующее утверждение, связывающее правило Байеса для определения оптимальноrо пороrа и число примеров обоих классов!. При использовании в 'Классификаторе порощ отсечения 0,5 и при условии, что С оо == Со == О, число примеров миноритаРНОlО 'Класса нужно увеличить в С!О / СО! раз. Данное утверждение позволяет понять, как нужно изменить соотношение при меров в обучающем множестве, чтобы это было равносильно изменению пороrа отсечения для принятия решения о принадлежности к классу. Можно пойти друrим путем уменьшить число записей мажоритарноro класса в С ю / СО! раз. ПРИМЕР Пусть имеется обучающее множество с кредитными историями заемщиков. в котором содержится 900 записей о хороших заемщиках и 100 о плохих (редкий класс). Пусть известно, что отношение издержек равно 5: 1. Тоrда по правилу Байеса оптимальным пороrом в лоrистической реrрессии будет величина р' > 1 / (1 + 5) == 0,167 при усло вии, что мы не изменяем баланс классов и за положительный исход принимаем плохоrо клиента. Если мы оставляем пороr, равный 0,5, то соrласно процедуре oversaтp/iпg необ- ходимо продублировать еще 400 записей, относящихся к плохим клиентам (общий объем выборки составит 1000 + 400 == 1400 примеров). а соrласно процедуре uпdersaтp/iпg уменьшить число хороших до 900/5 == 180 клиентов (общий объем выборки составит 180 + 100 == 280 примеров). Альтернативным подходом, используемым для манипуляции обучающими данными, является изменение весов примеров. Значение веса отражает влияние I Теоретическое обоснование этоrо утверждения изложено в работе: Elchaп Ch. The Foun dations of Cost Sensitive Learning / / In Proc. of the 17th International joint Conference оп Artificia! Intelligence, 2001. Р. 973 978.
596 Часть 1. Теория бизнес анализа ошибки классификации. Наблюдению назначается тем больший вес, чем ВЫШе связанные с ним ожидаемые издержки классификации. Метод восстановления равновесия классов применяется практически для Всех типов классификаторов, обучаемых на основе ошибок, а взвешивание примеров только для алrоритмов, в которых предусмотрена обработка весов примеров. [лавное преимущество СЭМIIЛинrа и взвешивания заключается в том, ЧТО они не требуют модификации алrориrма обучения, достаточно просты и MOryт применяться к любым типам классификаторов. Их использование позволяет строить модели, ОПТи" мальные с точки зрения издержек классификации. Но есть и недостатки. Так, выборка с удалением примеров мажориrарноrо класса может вызвать потерю потенциально По лезной информации, которая содержится в исключаемых примерах. А «КЛонирование» большоrо числа одинаковых примеров способно привести к переобучению модели. Несмотря на это, мноrие исследователи отдают предпочтение процедурам BOC становления равновесия, а не модифицированным алrоритмам обучения. Для этоrо есть несколько причин, Во первых, не для всех алrоритмов машиннorо обучения разработаны модифицированные варианты, учитывающие издержки ошибок классификации. BO BTOpЫX, число примеров с доминирующим классом часто даже избыточно, и тоrда выборка с удалением примеров мажоритарноrо класса кажется наи60лее привлекательной стратеrией. Кроме Toro, издержки ошибок классификации часто неизвестны, что затрудняет использование методов обучения, чувствительных к издержкам. Если информация об издержках отсутствует, то для оценки эффективности бинарноrо классификато ра можно использовать друrие методы, например rрафики «чувствительность специфичность», больше известные как RОС кривые. Модификация алrоритмов обучения Алrоритм построения классификатора можно модифицировать таким образом, чтобы он учитывал издержки ошибок классификации. В настоящее время такие модификации существуют для мноrих алrориrмо машиннorо обучения. Например, при построении дерева решений одним из наиболее популярных методов является использование информации об издержках неправильной классификации при BЫ боре атрибута ветвления в каждом узле строящеrося дерева. Кратко рассмотрим несколько вариантов модификации алrоритмов ID3 и С4.5 дЛЯ деревьев решений (EG2, CS ID3, IDX) и для мноrослойноrо персептрона (CSBP), учитывающих издержки классификации. Ашоритм EG2 использует для выбора атрибута комбинированный критерий, учитывающий как приращение информации, так и ошибки издержек классифика ции. Для этоrо вводится функция, несущая информацию об издержках классифи кации. Для k ro атрибута эта функция определяется как: ICF k ==(2 Ы> 1)/(Cy +1)", rде О а 1; bl k прирост информации, связанный с разбиением по k MY атрибуту;
rлава 12. Сравнение моделей 597 Су издержки, связанные с классами, примеры которых участвовали в разбие нии. Напомним, что уже известный нам алrоритм С4.5 максимизирует отношение приращения информации bl k . Таким образом, EG2 можно рассматривать как вари ант алrоритма С4.5, измененный для работы с несбалансированными классами. Параметр а позволяет варьировать степенью «стремления» алrоритма к BЫ бору атрибутов, с которыми связаны меньшие издержки. Если а == О, а 1 CF == 1, то издержки не учитываются. Если а == 1, то имеет место максимальное влияние издержек на процесс построения дерева. Pery лируя значение даННоrо параметра, аналитик добивается оптимальной чувствительности алrоритма к издержкам классификации. Алrоритм СS IDЗ. Как следует из названия, он представляет собой модифика цию алrоритма ID3. В нем в процесс е выбора атрибута разбиения минимизируется эвристическая функция: ICF k == Ml /Су. Ашоритм IDX также является разновидностью ID3 и использует минимизацию функции: ICP k ==Mk/Cij. Алrоритм CSBP. Исследования показали, что несбалансированность классов в обучающем множестве неrативно влияет и на качество обучения нейронных сетей. Причина этоrо достаточно очевидна: неравномерно представленные классы вносят различный «вклад» в выходную ошибку сети, на основе которой рассчиты вается корректировка весов нейронов на каждом шаrе обучения. Рассмотрим случай несбалансированности классов для мноrослойноrо персеп трона. Пусть в обучающей выборке, состоящей из N примеров, представлены т т классов, то есть N == LN;, rде N; число примеров, относящихся к i MY классу. j=:l Предположим, что доля выходной ошибки сети, определяемая каждым классом, может быть выражена формулой: 1 N, К 2 E;(W)== N LL(Yk' gk') , п 1 k 1 rде W матрица состояния весов нейронной сети; К число выходных нейронов сети; У; фактическое значение на выходе k ro нейрона для п ro примера. Тorда для случая бинарной классификации (т == 2) полную ошибку сети пред ставим в виде: E(W) == LE; (W) == Е I (W) + Е 2 (W). ПустьN I «N 2 ,тоrдаЕ 1 «Е 2 .Следовательно,можноyrверждать: У'Е I «У'Е 2 и У' Е;::::; У' Е 2. То есть ошибка будет минимизироваться с учетом информации об одном КЛассе, а информация о друrом будет практически иrнорироваться.
598 Часть 1. Теория бизнес анализа Чтобы исправить ситуаЩIЮ, в алrоритм обучения методом обратноrо распро странения ошибки вводятся величины a(l) и а(2): 1 E(W) == (a(l)E] (W) +a(2)Ez (W)). N Для случая двух классов а( 1) и а( 2) должны быть выбраны таким образом, чтобы a(l)V'E) (W) a(2)V'Ez (W). На практике используются различные виды функций, например: о a(l)== Nz/N) , a(2)==1; О a(l)==N/N), a(2)==N/N z ; О a(1)==V'E 2 (W)jV'E] (W), а(2)==1. Следует отметить, что, хотя проблемы несбалансированности классов в обу чающем множестве и неравенство издержек ошибочной классификации часто связаны между собой, их решение может представлять собой различные, вполне самостоятельные задачи. Выделим три случая. 1. Классы пред ставлены в обучающем множестве неравномерно, но издержки для различных типов ошибок классификации одинаковы или различаются несущественно, Здесь задача сводится только к балансировке множества таким образом, чтобы все классы в нем были представлены примерно одинаковым числом примеров. 2. Множество несбалансированно и издержки ошибок классификации неодина ковы. Тоrда изменение равновесия должно про изводиться так, чтобы миними зировать издержки ошибок классификации. При этом увеличивают число при меров класса, ошибка определения KOToporo rpозит наибольшими издержками, чтобы классификатор «научился» лучше распознавать именно данный класс. Альтернативным способом является введение в алrоритм обучения параметров, учитывающих издержки. 3. Множество сбалансировано, но издержки ОIiIИбок классификации неодинако вы. В этом случае также требуется изменить равновесие в множестве с учетом издержек либо учитывать их в алrоритме обучения. Таким образом, изменение репрезентативности классов и классификация с уче том издержек являются независимыми приемами, но иноrда их совместное приме нение позволяет добиться лучших результатов. Использование этих приемов при решении бизнес задач показывается во второй части кНиrи.
11 Часть БизНес....аНализ в Deductor
Аналитическая платформа Deductor Развитие и назначение Deductor Deductor это аналитическая платформа, основа для создания законченных прикладных решений в области анализа данных. Реализованные в Deductor Tex нолоrии позволяют на базе единой архитектуры пройти все этапы построения аналитической системы: от консолидации данных до построения моделей и ви зуализации полученных результатов. До появления аналитических платформ анализ данных осуществлялся в oc новном В статистических пакетах. Их применение требовало от пользователя BЫ сокой квалификации. Большинство алrоритмов, реализованных в статистических пакетах, не позволяло эффективно обрабатывать большие объемы информации. Для автоматизации рутинных операций приходилось использовать встроенные языки проrраммирования. В конце 80 x п. произошел стремительный рост объемов информации, накап ливаемой на машинных носителях, и увеличились потребности бизнеса в приме нении анализа данных. Ответом стало появление новых парадиrм в анализе, таких как хранилища данных, машинное обучение, Data Mining, Knowlegde Discovery in Databases. Это позволило популяризировать анализ данных, поставить ero на промышленную основу и решить orpoMHoe число бизнес задач с большим эконо мическим эффектом. Венцом развития анализа данных стали специализированные проrpаммные системы аналитические платформы, которые полностью автоматизировали все этапы анализа от консолидации данных до эксплуатации моделей и интерпретац= результатов.
rлава 13. Аналитическая платформа Deductor 601 Первая версия Deductor увидела свет в 2000 Т., и с тех пор идет непрерывное развитие платформы. В 2007 т. выпущена пятая по счету версия системы (5.0 и 5.1), в 2009 Т. версия 5.2. Разработчик компания BaseGroup Labs (Россия). Сеrодня Deductor яркий представитель как настольной, так и корпоративной системы анализа данных последнеrо поколения. Общие сведения о Deductor Аналитическая платформа Deductor состоит из пяти частей: О Warehouse хранилище данных, консолидирующее информацию из разных источников; О Studio приложение, позволяющее пройти все этапы построения прикладноrо решения, рабочее место аналитика; О Viewer рабочее место конечноrо пользователя, одно из средств тиражирова ния знаний (то есть построенные аналитиком модели применяют пользователи, не владеющие технолоrиями анализа данных); О Server служба, обеспечивающая удаленную аналитическую обработку дaH ных; О Client клиент доступа к Deductor Server. Обеспечивает доступ к серверу и управление ето работой из сторонних приложений. Существует три варианта поставки платформы Deductor: О Enterprise; О Professional; О Academic. В зависимости от типа поставки набор доступных компонентов может разли чаться. Версия Enterprise предназначена для корпоративноrо использования. В ней присутствуют: О серверные компоненты Deductor Server и Deductor Client; о интерфейс доступа к Deductor через механизм OLE Automation; О традиционное хранилище данных Deductor Warehouse на основе трех СУБД: Firebird, SQL, Oracle; о виртуальное хранилище данных Deductor Virtual Warehouse. Версия Professional предназначена для небольших компаний и однопользова тельской работы. В ней отсутствуют серверные компоненты, поддержка OLE, вир туальное хранилище, а традиционное хранилище данных можно создавать только на базе СУБД FireBird. Автоматизация выполнения сценариев обработки данных осуществляется только через пакетный режим. Версии Professional и Enterprise требуют установки драйверов Guardant для работы с лицензионным ключом.
602 Часть 11. Бизнес анализ в Deductor Версия Academic (бесплатно распространяемая) предназначена для образо вательных и обучающих целей, С точки зрения функций она аналоrична версии Professional за исключением тото, что: О отсутствует пакетный запуск сценариев, то есть работа в проrрамме может Be стись только в интерактивном режиме; О отсутствует импорт из промышленных источников данных: 1 С, СУБД, файлы Excel (имеется возможность импорта только из текстовых файлов и Deductor Warehouse на базе Firebird); О отсутствуют некоторые друrие возможности. Катеrории пользователей Deductor в процесс е развертывания и использования аналитической платформы с ней взаи модействуют различные типы пользователей. Можно выделить четыре основные катеrории: О аналитик; О пользователь; О администратор; о прorраммист. Функции аналитика: о создание в Deductor сценария последовательности шаrов, которую необхо димо осуществить для получения нужноrо результата; О построение, оценка и интерпретация моделей; О настройка панели отчетов Deductor Viewer для пользователей; О настройка сценария на пакетную обработку новых данных. Функции пользователя: просмотр отчетов в Deductor Viewer. Функции администратора: о установка компонентов Deductor на рабочих местах и сервера ключей Guardant при необходимости; о развертывание традиционноrо хранилища данных на сервере; О контроль процедур реryлярноrо пополнения хранилища данных; О конфиrурирование сервера Deductor Server; О настройка пакетной и/или серверной обработки сценариев Deductor; О оптимизация доступа к источникам данных, в том числе к хранилищу даннЫХ. Функции пpozpa..ммucma: о интеrрация Deductor с источниками и приемниками данных; О вызов Deductor из внешних проrрамм различными способами, в том числе взаимодействие с Deductor Server. Такая работа, как проектирование и наполнение хранилища данных, часто BЫ полняется коллективно аналитиком, администратором и проrpаммистом. Аналитик проектирует семантический слой хранилища данных, то есть определяет, какие
rлава 13. Аналитическая платформа Deductor 603 данные необходимо иметь в хранилище. Администратор создает хранилище данных и наполняет ero данными. Проrpаммист при необходимости создает проrраммные модули, выполняющие выrpузку информации из учетных систем в промежуточные источники (так называемые транспортные таблицы). Аналитические технолоrии, реализованные в Deductor в Deductor реализовано большинство аналитических технолоrий от ETL и xpa нилищ данных до алrоритмов Data Mining. В качестве языка визуальноrо Moдe лирования используются структуры в виде деревьев. В табл, 13.1 перечислены возможности Deductor 5.2 в порядке следования теоретических rлав первой части настоящей книrи. Таблица 13.1. Технолоrии, реализованные в Deductor 5.1 (5.2) Аналитическиеэадачи Deductor Консолидация данных Реляционное хранилище данных ROLAP (схемы звезда!> и снежинка»), виртуальное хранилище данных Трансформация данных Фильтрация, rpуппировка, разrpуппировка и замена данных, скользящее окно, KBaHTOBa ние, слияние, расчетные поля, нормализация, свертка столбцов. Разнообразные схемы коди рования: уникальными значениями и битовой маской Визуализация данных ОLАР кубы, диаrраммы, rpафики, rистоrраммы, статистика, правила, деревья, тепловые карты, матрицы классификации, диаrpаммы рассеяния, статистика, ретропроrноз, профили кластеров Очистка и предобработка данных Фильтр Калмана, вейвлеты, равномерный случайный сэмплинr, заполнение пропусков средним значением, корреляционный анализ, метод rлавных компонент Data Mining: задача ассоциации Алrоритм Apriori Data Mining: кластеризация Сети и карты Кохонена, алrоритмы k means и G means Data Mining: классификация Линейная и лоrистическая реrpессия, дерево и реrpессия решений (алrоритм С4.5), мноrослойный пер септрон (алrоритмы BProp и RProp) Анализ и проrнозирование временных Наивные!> и базовые эконометрические MO рядов дели, пользовательские модели, расчет АФК, выделение тренда, реrpессионные и нейросете вые модели Ансамбли моделей Сценарный подход, поддерживающий создание однородных ансамблей и ансамблей на основе различных типов моделей, стэкинr и бэrrинr Сравнение моделей RОС анализ, Lift кривые
604 Часть 11. Бизнес анализ в Deductor Вся работа в Deductor Studio построена на создании сценариев обработки д ных при помощи трех мастеров импорта, обработки и экспорта. Для HaCтpO:f подключений к разнообразным источникам данных (от СУБД дО специализи ванных учетных систем и веб серверов) используется мастер подключений. На рис. 13.1 представлено rлавное окно Deductor Studio: слева располож« область построения сценариев, а справа область отображения визуализаторе D .g@il[g. " .. rJDeduct:or 5t.udio Academlc (D:U5ERDeductorCaseS.1 Сценарии.ded) Файл f'paeкB Вид И3бранное Сервис О<:но ., В0> н It. i( , !? g),Йш::l?) iI Сuенарии Х':8 lli bI х . 6. 4'.'t' ) E:J Продажи.1: данные за ПОСЛедние 5 месяцее (расчет LJ Продажи.1: все данные (анализ рsша) :". LJ Продажи.1: все данные (построение МQAелей) ;;а Ь Настройка набора данных (Дата. Кол' о. Сумма) S т СРильтр ([Дата] не последний месяц от имеюl.L SG!] Преобразовён.едаты [Дата: r + Месяц] ? (';: r а[Измерения:Д а(rQA+МЕ Gi Сортировка" Д [rQA + Месяц) 6i IEI Парциальная npедо6ра6отка (Ано,.,.. < .;ю АвтокорреЛS:ЩИR данных Сумма Е' т СРильтр ПДата (r QA + Месяц)) не е [;] Преобразо ание даты [Дата ij- { r рУППl<1роека (ИзмepetИJ е "'liJ Скользящее окно (Кол- ! !iI Кi!lЛЬК!:JЛЯТОР. ПРI-lРО' liI {iI r ру"",,>о...IИ.. . Ь Настройка Hat: fiJ Скользящее окно (C!I'<IMa [ 12'O] L?t:::> Нейросеть [3)( З)( 1] , s@npornoэ(ЩI<ЭOН1"::!I 6i т Фильтр ([Шаr npоrноза k) iI Кальк лятор: Д аП e.15 Рaэrpp1 poeкat ii iI Калькулятор: ( 6i СЛI-IRНI-Ie IXJ s!il Калы<,IjЛ т . и:ь ...... IП План з.аКУПDК на следующ й месяц с учетом остатков В013 1 ;1:1 х l ! К уб ,1Iil . 1h!I(it '! l 1m . v FII. . I.c .. ' . ; ; II ' [ ' I :! ' K: Im.оэ. L Код ....rpon... 1 1: Ocr'''''к,шr I I'I , eiiJ, 2Ji5, 1 I 3061' 37508.10 2.41 1 : jЭ063 2,,733.26< 3.13: 1, I ,43'J7 В 244.93< 2.36 1 '1530 3 1 ДП 2.02 1 1531 5036.87 2.00 1 '71 15565.50, 2.31 1 101701'0: 160193.00'" ... 16.18' 7 фl1porнo> ("""""",, ДиаrрамМа Х I т еблиu.a Х .. :!I !d' е.. ... t,s . ",JьJJ..!'J Q ,' . 1 250000 200000 " 1S0000 u 100 000 5й 000 0'11>1.2001 01 08.2001 01.08 2002 01.10.2002 О1.DS.2IJOЗ 0112.2003 Дета (roд + Мe..clЦ) r . А Рис. 13.1. Deductor Studio рабочее место аналитика Установка Deductor Установка может быть произведена на компьютер с операционной система Windows 2000 и выше. Системные требования к компьютеру изложены в спр. вочном разделе Deductor. Для установки Deductor запустите файл инсталлятора и следуйте инстрУI циям. На странице Выбор компонентов проrраммы установки можно выбраТJ какой набор компонентов пакета Deductor необходимо установить на компьютеl В выпадающем списке выберите предопределенные конфиrурации установк платформы. и проrрамма установки сама предложит соответствующий набо компонентов.
rлава 13. Аналитическая платформа Deductor 60S После установки версий Professional и Enterprise дополнительно потребуется настроить работу с электронным ключом защиты от копирования. Установку и под соединение электронноrо ключа осуществляет администратор. На прилаrаемом к книrе компакт диске находится дистрибутив Deductor Studio Academic 5.2 (ero и последнюю версию Deductor Academic также можно заrрузить с веб ресурса http://www.basegroup.ru/download/deductor; проrрамма pac пространяется бесплатно). Установите ero на компьютер и скопируйте файлы с демопримерами на локальный диск (они по надобятся при изучении дальней шеrо материала). Deductor имеет интуитивно понятный дружественный пользовательский интерфейс. Тем не менее для быстроrо освоения основных принципов работы в Deductor Studio (импорт файлов, создание проекта, операции со сценариями, простые манипуляции с набором данных, настройка среды) рекомендуется изу чить занятия практикума «Базовые навыки работы в Deductor Studio>.>, который расположен на прилаrаемом компакт диске, а также просмотреть демонстраци онные Видеоролики. В следующих rлавах мы покажем, как решаются конкретные бизнес задачи с использованием аналитических технолоrий, рассмотренных в первой части. При этом мы прибеrаем к двум упрощениям. Во первых, в реальности анали тический проект может включать мноrоступенчатую процедуру, в ходе которой применяется несколько аналитических технолоrий от консолидации до моделей Data Mining, мы же рассматриваем отдельные случаи. BO BTOpЫX, поскольку для демонстрации примеров используется Deductor Academic, в качестве источника данных выступает текстовый файл с разделителями, тоrда как на практике б6ль шая часть информации хранится в учетных системах и базах данных.
Консолидация данных и аналитическая , отчетность u аптечнои сети Описание бизнес"задачи Постановка задачи. Компания, владеющая небольшой аптечной сетью, занимается розничной продажей лекарственных препаратов. Руководство компании приняло решение о внедрении системы аналитической ОLАР отчетности, в которой ero интересует информация о динамике продаж, заrруженности ToproBbIx точек, ca мых продаваемых товарах в различных разрезах. Так как существующая учетная система испытывает наrрузки (компания постоянно расширяет свою сеть), было решено создать единый консолидированный источник хранилище данных, KO торое послужит базой для ОLАР отчетности. Предварительно проrраммисты компании создали процедуру выrpузки даннЫХ из учетной системы в структурированные текстовые файлы (в качестве пробы сформирована пачка>? данных за несколько месяцев). Требуется: О спроектировать структуру реляционноrо хранилища данных (ХД); О наполнить ХД первичной информацией; О разработать процедуры пополнения ХД и контроль непротиворечивости coдep жащихся в нем данных; О предложить набор ОLАР отчетов.
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 607 Исходные данные. Представлены в четырех файлах: rруппы товаров. txt, TOBapbI.txt, ОтдеЛЫ.tхt, Продажи. txt. Покажем последовательность решения задачи в аналитической платформе Deductor. Deductor Warehouse Хранилище данных Deductor Warehouse это специально орrанизованная база данных, ориентированная на решение задач анализа данных и поддержки принятия решений, обеспечивающая максимально быстрый и удобный доступ к информации. ХД Deductor Warehouse соответствует модели ROLAP (схема «снежинка») и MO жет быть развернуто на одной из следующих СУБД: Firebird, SQL Server, Oracle (в версии Academic только на Firebird). С Deductor Warehouse на базе Firebird имеется возможность работать локально при помощи динамической библиотеки fbclient. dll (поставляется вместе с Deductor), Хранилище данных Deductor Warehouse включает в себя потоки данных, посту пающие из различных источников, и специальный семантический слой, содержа щий так называемые метаданные (данные о данных). Семантический слой и сами данные хранятся в одной СУБД. Запрос к хранилищу осуществляется непосредственно сквозь семантический слой, который через внутреннюю систему команд (скрытую от пользователя и aHa литика) подбирает запрашиваемую информацию из мноrообразия хранимых дaH ных. Работу семантическоrо слоя можно сравнить с деятельностью библиотекаря, который по просьбе читателя достает с разрозненных полок книrи и раскрывает их на нужных страницах. Все данные в Deductor Warehouse хранятся в структурах типа снежинка», [де в центре расположены таблицы фактов, а лучами» являются измерения, причем каждое измерение может ссылаться на друrое измерение. Именно эта схема чаще Bcero встречается в реляционных хранилищах данных (рис. 14.1). Измерения Процесс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .I Рис. 14.1. Структура Deductor Warehouse
608 Часть 11. Бизнес анализ в Deductor В Deductor Warehouse имеются следующие типы объектов. Измерение последовательность значений одното из анализируемых парамет ров. Например, для параметра Время это последовательность календарных дней, для параметра Реzион список roродов. Каждое значение измерения может быть представлено координатой в мнотомерном пространстве процесса, например ювар, Клиент, Дата. Атрибут свойство измерения (то есть точки в пространстве). Атрибут как бы скрыт внутри друтото измерения и помоrает пользователю полнее описать исследуемое измерение. Атрибутами измерения ювар мотут выступать Цвет, Вес, юбариты. Факт значение, соответствующее измерению. Факты это данные, OTpa жающие сущность события. Как правило, фактами являются численные значения, например сумма и количество отrpуженноrо товара, скидка. Ссьика на измерение установленная связь между двумя и более измерениями. Дело в том, что некоторые бизнес понятия (соответствующие измерениям в xpa нилище данных) мотут образовывать иерархии, например, ювары мотут включать Продукты питания и Лекарственные nрenараты, которые, в свою очередь, подраз деляются на rруппы продуктов и лекарств и т. д. В этом случае первое измерение содержит ссылку на второе, второе на третье и т. д. Працесс совокупность измерений, фактов и атрибутов. По сути, процесс и есть куб>?, снежинка>? Процесс описывает определенное действие, например продажи товара, отrpузки, поступления денежных средств и пр. Атрибут працесса свойство процесса. Атрибут процесса, в отличие от измере ния, не определяет координату в мнотомерном пространстве. Это справочное значе ние, относящееся к процессу, например N2 накладной, Валюта документа и т. д. 3Ha чение атрибута процесса, в отличие от измерения, не всетда может быть определено. В Deductor Warehouse может одновременно храниться множество процессов ( «звезд>? или «снежинок>?), имеющих общие измерения, например измерение ювар, фиryрирующее в процессах Поступления и Отzрузка. Все заrpужаемые в ХД данные обязательно должны быть определены как изме рение, атрибут либо факт (рис. 14.2). ,. - . . . . . . - - - - - . - - . . . . . . . . . . . . - - . . . . . . . . - . ."": I I I Отrрузка КоIlИЧeCТlio JConлaте 'Н8цен,,&:' Процесс I _ . - , - ,- - - - , , . . . _ , I Процесс I Факты Рис. 14.2. Проектирование структуры хранилища
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 609 Информация о Принадлежности данных к тому или иному типу (измерение, ссылка на измерение, атрибут или факт) содержится в семантическом слое храни лища. Обратим внимание на то, что: О таблицы измерений содержат только справочную информацию (коды, наимено вания и т. п.) и ссылки на друrие измерения при необходимости; о таблица nроцесса содержит только факты и коды измерений (без их атрибутов). Проектирование хранилища «Фармация» Первая подзадача спроектировать структуру хранилища нашей аптечной сети. Все данные представлены в четырех таблицах. Их фраrменты приведены ниже (табл. 14.1 14.4). Таблица 14.1. [руппы товаров (фраrмент) Код rpynnьa Наименование rpynnьa 33 Иммуномоду ляторы 48 Общетонизирующие средства и адаптоrены 50 Местные анестетики 108 МИКро и макроэлементы 198 Витамины и витаминоподобные средства 223 Желчеrонные средства и препараты желчи ... '" Таблица 14.2. Товары (фраrмент) Код товара Наименование товара Код rpynnьa 774 Альмаrель 1 810 Иммунорм 33 824 Ревит 198 898 Настойка пустырника 48 '" ... ... Таблица 14.3. Отделы Код отдела Наименование отдела 1 Аптека 1 2 Аптека 2 3 Аптека 3 Таблица 14.4. Продажи (фраrмент) Дата Код отдела Код товара Час покупки Копичество Сумма 01.01.2009 1 3382 15 1 293,92 01.01.2009 1 18346 17 1 22,15 Продолжение rP
610 Часть П. Бизнес анализ в Deductor Т блица 14.4 (продолжение) Дата Код отдела Код товара Час покупки Количество Сумма 01.01.2009 2 85600 16 1 32,16 01.01.2009 3 62535 14 4 202,72 01.01.2009 2 40315 15 3 47,52 ... ... ... .., ,.. ... Покажем, какие данные являются измерениями, какие атрибутами, а Ka кие фактами и что представляет собой процесс. В табл. 14.1 Код lpynnы является измерением, а Наименование lpynnы ero атрибутом. В табл. 14.2 Код товара является измерением, Наименование товара ero aT рибутом, а Код lpynnы ссылкой на одноименное измерение. В табл. 14.3 Код отдела является измерением, а Наименование отдела ero атрибутом. В табл. 14.4 Дата является измерением, Код отдела и Код товара, как было CKa зано ВЫШе, измерения, Час nокуnки измерение, Количество и Сумма факты. То есть табл. 14.4 представляет собой описание процесса продаж в трех аптеках, При такой структуре ХД мы предполarаем, что уникальность точки в простран стве определяется совокупностью измерений Дата + Товар + Код отдела + Час nокуnки. То есть если в одной и той же аптеке в один и тот же день и час будет совершено несколько покупок, скажем, препарата «анальrин», то в хранилище данных будет отражена только одна запись. Взаимоотношение измерений, атрибутов и фактов внутри процесса продаж в трех аптеках показано на рис. 14.3 (см. выделенную строку в табл. 14.4). В силу Toro, что визуально можно представить только трехмерное пространство, на ри сунке показано взаимодействие трех измерений (Дата, Код отдела и Код товара). В рассмотренном при мере измерений rораздо больше. Каждое новое может быть представлено новой осью. Код товара Факты: сумма (202,72); количество (4) 625З5 Дата 01.01.2009 з Продажи Код отдела Рис. 14.3. Измерения, атрибуты и факты внутри процесса продаж
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 611 Создание хранилища Запустите прorрамму Deductor Studio Academic. Для создания новото пустоrо хранилища данных или подключения к существующему перейдите на вкладку Подключения меню Вид, щелкните правой кнопкой мыши и запустите Мастер под ключений (рис. 14.4). rош сц ;;,и х @ П лючения х' 11' .. 1t . I )(;:1 ft. @ """""0 . , О, III'ЬП'ь ctrl H'lIk"f I "",. * . Мастер ПОДI< I1ЮЧffiИИ. .. I 'х " 'ii. Сохранить tiaCТjJ(JЙl<и подключений Рис. 14.4. Создание (подключение) хранилища данных На первом шarе мастера следует выбрать тип источника (приемника) Deductor Warehouse (рис. 14.5). !') Мастер IIОДКЯЮЧений I!llitfЗ Мастер подключений . - .", ''''. ,'iiJ .. : О." Нeэf3at1Иe Оl1ИCQНAe 'f ХраНИf1ища данны:-: LJ оeducIof Warehou... Deductor W..ehouse ft<pOCC-ПIlaТ<рорме" i J I Дые> i " Отмена '1 Рис. 14.5. Окно выбора типа подключения
612 Часть 11. Бизнес анализ в Deductor На следующем шаrе из единственно доступноrо в списке типа базы данны); выберите Firebird. Задайте параметры базы данных, в которой будет создана ф8 зическая и лоrическая структура хранилища данных (рис. 14.6): О база данных D:Vaппa.gdb (или любой друroй путь); О лоrин sysdba, пароль тasterkey; О установите флажок Сохранять пароль. rJ Мастер подключений Deductor Warehouse (3 из 7) IlllliIfЗ Параметры базы данных Укажите параметры базы aaHHbIl< ;.m8888P" т и1 базы данныlo: ci) F.ebId БазадаННЫI< I D:la,ma.gdb I SY«ЬaI'"" ..... I NDNE .:::J .:::J Лоrин!Пароль Кодировка Параметры .:J r Спрашивать лоrин/пароль при ПQЦключении ', ,=а таБЛkЦbl I W Обрамлять имена таблиц т еСТ ПQIIКI1IQ'I<!Н- Проверкrь llO,fJ,I<JI()'< к базе дажы>< < H I lla11ee > Отмена Рис. 14.6. Установка параметров базы данных На следующей вкладке выберите последнюю версию для работы с хд Deductor Warehouse 6 (предыдущие версии необходимы для совместимости с предыдущими хранилищами). Нажмите кнопку Создать файл базы данных с необходимой структурой метаданных 1:1. и по указанному ранее пути будет создан файл farma. gdb (появит ся сообщение о ero успешном создании). Это и есть пустое хранилище данных. Осталось выбрать визуализатор для подключения (здесь это Сведения и MeTa данные) и задать имя. метку и описание новоrо.хранилища (рис. 14.7). Мастер подключений Deductor Warehouse (7 1013 7) "1iI D Успешное зaвepшet80le Все rOТOBO .аля работы r.. , " Хранилише .аанных с ИНФормацией о npодаЖd)( аптечной сети < Н8311д Ir. .. r ';;:000 : I Отмена I Рис. 14.7. Настройка семантики имен для узла подключения
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 613 Имя хранилища может быть введено только ла тинскими буквами. После нажатия кнопки rOTOBO на дереве узлов ПОk ключений появится метка хранилища (рис. 14.8). Для проверки доступа к новому хранилищу дaH ных воспользуйтесь кнопкой Тестирование соедине ния 11 . Если спустя некоторое время появится соо6ще ние «Тестирование соединения прошло успешно , то хранилище rOToBo к работе. Сохраните настройки подключений, нажав соответствующую кнопку t. . Если соединение по какой JПIбо причине установить не удалось, то будет выдано сообщение об ошибке. В этом случае нужно проверить параметры подключения хранилища данных и при необходимости внести в них изменения (используйте для этоro кнопку Настроить подключение d'). Таким образом, создано пустое хранилище, в котором нет ни одноro объекта (процесса, измерения, факта). Ранее мы спроектировали структуру хранилища данных аптечной сети. Осталось отразить ее в храНИJПIще. Для этоro предназначен редактор, который вызывается нажатием кнопки Открыть редактор метаданных... ,'"' на вкладке Подключения. Для перехода в режим внесения изменений в структуру хранилища нажмите кнопку Разрешить редактировать . Появится диалоrовое окно с предупреждением о том, что это не6езопасная операция. Выберите узел Измерения, шелкните правой кнопкой мыши, затем нажмите кнопку Добавить и создайте первое измерение Код rруппы со следующими параметрами: О имя GRjD; О метка !jJуппа.код; о тип данных целый. Метка это семантическое название объекта хранилища данных, которое уви дит пользователь, работающий с ХД. Проделайте аналоrичные действия для создания всех остальных измерений, взяв параметры из табл. 14.5. Зафиксируйте изменение структуры хд, нажав кнопку Принять изменения <:j?_ Таблица 14.5. Параметры измерений IIJ Сuен"рии Х @ ПОДКЛIO'Iения Х "":,I<'! lfIJ I)(I GiI @ЛОДКJ1IOчения а LJ Хранилища данны>: LJ СРармаuия Рис. 14.8. Хранилище данных (Фармация Иэмерение Имя Метка Тип данных Код rpуппы GR ID fруппа.Код Целый КОД товара ТУ ID Товар. Код Целый Код отдела PART ID Отдел.Код Целый Дата S DATE Дата Дата/время Час покупки S HOUR Час Целый В результате структура метаданных хранилища будет содержать пять измере ний (рис. 14.9).
614 Часть 11. Бизнес анализ в Deductor ', Редактор метаданнын [Фармация] ' H ?< , Объект J 1'1 Процессы а IJ;] Измерения .. t::: rР!jПпаКод , Iij;} i!lJ Атрмб!/l'Ы IJ;] Измерения Щ t::: Т о"ар.код .. t::: Отдел.код t$i t::: Дата w t::: Час Т2 GR ID 1 Т2 ТYJD Т2 РААТ ID 111 S DATE Т2 S HOUR Рис. 14.9. Структура метаданных хранилища К каждому измерению, кроме Дата и Час, добавьте текстовый атрибут (это также делается нажатием кнопки Добавить). Для измерения IjJyппa.Koд это будет IjJуппа.Наименование, для измерения Товар.код Товар.Наименование, для изме рения Отдел.Код Отдел.Наименование. Старайтесь не делать имя измерения зарезервированным ключевым словом языка SQL. Каждое измерение может ссылаться на друrое измерение, реализуя тем самым иерархию измерений. В нашем случае измерение Товар.Код ссылается на IjJyппa. Код. Эту ссылку и установите путем простоrо добавления (ссылка на измерение отображается значком ), а имя ссылки задайте GR ID 1. Результат работы ил люстрирует рис. 14.10. } РеАактор мeT.aдaнtlы)( [Фарt..ация] IIIDfЗ О:>; -:;: <> 'Х, ;.. ,. . "" ") .. Объект ..:И . Им. IGRJD 1 (j <Рармauи. FARМA Meткa I r руппа.Код (!т к,бы О"""""'" ПрОll.ессы - . .. - т иnдat1Ныи 'uелый .=f IJ;] Измерения I B"",,",on'i I.. ;3 t::: r р ппа.Код Т2 GRJO Вио. данны'..: д..;..p"""";; '" . , , ffi (!f] Атрмб!/l'Ы l4аэначеtlие ' реже . . . . . ..IJ;] Измерения . I[G R I,?!r t::: Т овер.код Т2 TV JD ..(!f]Атрмб!/l'Ы Т авар.Наименование a TV NAМE 8 1J;] Измерения liI!I!D!! 12 GRJD 1 ' t::: Отдел.код 12 РААТ JD . t::: Дата 111 S DA ТЕ 'i1't::: Час a S HOUR Рис. 14.10. Формирование ссылки на иэмерение После Toro как все измерения и ссылки на измерения созданы, приступайте к формированию процесса ( «снежинки>.'> ). Назовите ero Продажи и добавьте в Hero ссылки на четыре существующих измерения: Дата, Отдел.Код, Товар.Код, Час (кнопка с::> ). Кроме них, в процессе участвуют два факта: Количество и Сумма, причем первый целочисленный, а второй вещественный (рис. 14.11).
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 615 редактор меТдДдН"ЫИ [Фарt..ация] 1!III[iJ1З О:; -:Ё; + )( im.). I ,. ? 'M ., ") .z ..ёi.: . - , , . ... - (n,ект ИМЯ J: I! i F CJJLINТ м LJ С:Рармаu ия FARMA Метка C1"ВO (iij]Кgбы I-----..'' , , м, Описание .' .... '" (iij] Про"ессы ТJ>!Л Дi!ННbD< Щеt1l,!Й G/"IЫ Продажи SAlES 1"- fu;;М : (!f] Атриб ы t" M .... О м Б;i ,{Ш Измерения f----'.. I Вца. д.анныи He ..... 111 SMDATEMl I ." ..,............., .. Д1!Т. ! 'O' H I)I j _CPaк Отдел,Код 12 РААТ ID м l ,, м т овар,Код Т2 TVJD M 1 Час аЬ SMHOURM 1 & ШJ"',,,ты t 1ПI111111111 Т2 F MCOUNТ 1m Сумма 9.0 FMSUM i hi {Ш Измерения w. t:: rpynna,Koд 12 GR м ID W t:: т овар"Код Т2 TV JD Ю t:: Отдел,Код Т2 РАЯТмlD I fiO,t:: Дата 111 SMDATE I W t:: Час аЬ SMHOUR Рис. 14.11. Создание метаданных процесса На этом проектирование структуры и метаданных ХД закончено. Наполнение хранилища данных После создания структуры хранилища данных оно представляет с собой пустой файл с настроенным семантическим слоем. В таком виде хд rOToBo к заrpузке в Hero данных из внешних структурированных источников. Для этоro необходимо написать соответствующий сценарий в Deductor Studio. Он должен выполнять следующие функции: О импорт данных в Deductor Studio из базы данных, учетной системы или предо пределенных файлов; О опциональную предобработку данных, например очистку или преобразование формата; О заrpузку данных в измерения и процессы хранилища Deductor Warehouse. В нашем примере исходными данными дЛЯ ХД служат четыре текстовых фай м ла:rруппы TOBapOB.txt, TOBapbl.txt, Отделы.tхt, Продажи.tхt. Поэтому сценарий зarpузки должен быть настроен на использование этих файлов в качестве источников данных (рис. 14.12). При создании сценария необходимо cтporo придерживаться следующих правил. О Первыми зarpужаются все измерения, имеющие атрибуты. Только после зarpузм ки всех измерений заrружаются данные в процесс( мы). О Измерения нужно зarpужать, начиная с caMoro Bepxнero уровня иерархии и спус каясь ниже. Это крайне важно: в противном случае иерархия не будет создана.
616 Часть 11. Бизнес анализ в Deductor TOBapbI.txt )о ',Сценарий заrpyзки данных Ioad.ded Отделы.txt Продажи.txt Рис. 14.12. Схема сценария заrpузки о Допускается не зarpужать отдельно измерения, не имеющие атрибутов и не со- стоящие в иерархии измерений. Значения таких измерений можно создавать во время заrpузки в процесс с помощью специальной опции. Поясним второе правило (рис. 14.13). Измерение IjJyппa находится в иерархии выше измерения Товар, поэтому последовательность заrрузки измерений будет следующая: IjJyппa, 1Ьвар. I Товары I I Антисептики I I . rексорал ,. Каметон , :иммуноt./lодуляторыl Виферон Арбидол rpynna Товар Рис. 14.13. Иерархия измерений Импортируйте все четыре текстовых файла в Deductor в том порядке, как это показано на рис. 14.14. Для этоrо перейдите на вкладку Сценарии и из KOHTeKcTHoro меню или нажатием клавиши F6 вызовите Мастер импорта, выберите 1Ип источни ка текстовый файл и настройте параметры импорта. Последовательность созданИЯ узлов импорта должна быть такой, чтобы первыми следовали узлы импорта из фай" лов с таблицами измерений, и только в конце таблица процесса Продажи. txt. Менять порядок веток сценария можно при помощи кнопок CТRL + i и CТRL + .l.. Покажем последовательность заrpузки данных в измерение на примере первоrо измерения IjJуппа.Код. Встав на первом узле, вызовите Мастер экспорта (контекстное меню или клавиша F8). Из списка 1Ипа приемников выберите Deductor Warehouse (рис. 14.15).
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 617 D .IiiI; . ', .. ' W С.енории Х 1 @ П""КЛJOчения Х = , r:5 81 J;I,'4:'''': ');( ь'ШI Сценарии t <!>.йл(rWJ'lbl"""""",,WI ;. (IO т екcrоеый файл (Т о арbI.t:-:tJ , rю Текстовый файл (Отделы.t>:t) (IO т еКСТОI5ЫЙ файл (Продажи.t>:t) Мастер зкспорт а :,j] ::='. . ' ./ ,g 'l1li '" пф '!ОС. @ "'!2, 8 IIJ ' l'J. !:i) т' ... ш . НОМ ;I. !Ч?,, . !"1м нодепрес: анrы 38 СекретОI1ИТИКI-1 и СТИМ ЛЯТОРЫ 39 Противокашлеl5ые средства 4 'с.тимуляrоры ды>:аНИА 46 . Пси>:ости ЛЯТОрЬJ и НООТ ОПЫ Рис. 14.14. Сценарий в Deductor "I!iIО МlI.стер ЭКСПОРТII. Назеание Оnиc.....е I G Хранилища данных tjOeductotWarehouse "" /",.",... е OeductorW.""'"""e 13 <:Райлы ]) т ext Т еКСТО80Й Ф Л с р.ездеl1итеl1ЯМИ ,1 ..............." """"""'" IC'J) .) ::..J Отмена I Рис. 14.15. Экспорт в хранилище данных На следующей вкладке из списка доступных хранилищ выберите нужное под названием «Фармация>.'>. Далее требуется указать, в какое именно измерение будет заrружаться информация. Это !jJуппа.Код (рис. 14.16). r21MacTep экспорта Deductot Warehouse (3 из 10) 1lllll1iIf3 Список достgпнЫХ объектов в хранилище данных Определите 06Ьект )Iр нилища AtlHHbI)(, с которым lSyQ,eтe раlSотмь ;J1 О",,",,-т LJ'€pармвuия .. Б fiiiJПрочессы 11111 Пр""ажи [ji 'ШJ Измерения . rp!ll'1п.r."" т о.ар,К"" Отдел К"" Дат. ' Час I Оnиcaннe Продажи в аrпекаи ПО дням <, .'''; , < НаЗ.....,' I t Дв,;.ё):'J! orмe.ia Рис. 14.16. Выбор объекта для экспорта
618 Часть 11. Бизнес анализ в Deductor Осталось установить соответствие элементов объекта в хранилище данных с полями входноrо источника данных (то есть таблицы rруппы товаров. txt). В случае, коrда имена полей и (или) метки в семантическом слое хранилища дaH ных совпадают, делать ничеrо не нужно (рис. 14.17). rJMaCTep 3IKCnopTa Deductot Warehouse (4 1'1з10) IllJlI!iilD 3аrР!lэка данных в хранилище Уcrановиrь соответствие элементов объекта I",pClнилища с полями B>lOДHOrO I-1СТОЧНИК данных &n 06ъeк:r I)!!л' _",, данны.. LJq,Clр мациs:l Б t:: r рупп..код 12"rP.ima-Код r" То.арн" rpynn.Xoд а @]Атрибуты аЬ r руппа.Наименование Т оварная rр Ппа { Н"""" .д.""".» I Отмон. Рис. 14.17. Настройка соответствия полей Нажатие кнопки Пуск на следующем шаrе зarpузит в измерение данные. При этом старые данные, если они были. обновятся. Проделав аналоrичные действия еще для двух измерений Отдел.Код, Товар. Код, получим следующий сценарий (рис. 14.18). dWt"""""", s @ т екcrовый файл (r р ппы TO apDB.t>:tJ CJ ЗаrР!:J3кад.анны!( в Хранилишеданны!( . FARMA: GRJD S iE т е.....стоВый файл (т o apbI.t",tJ , 'CJ Заrр экад.анны)( в Хранилище данных FARMA: ТУ ID е @ т ексто ый файл (Отделы txtJ LJ ЗаrР!llзка данных в Хранилище данных' FARMA : РААТ ID T екстоеый файл (ПРОД8жи.tхt) Рис. 14.18. Незаконченный сценарий заrpузки данных в хд 3arpузка измерений на этом заканчивается, несмотря на то что остались еше два измерения Дата и Час. Но они не имеют атрибутов и не участвуют в иерархии, поэтому их значения можно заrpузить на этапе экспорта в процесс. 3аrpузите данные в процесс Продажи. В отличие от зarpузки измерений, в Мас- тере экспорта появляются ДВа специфических шаrа. На одном из них нужно задать параметры контроля непротиворечивости дан- ных в хранилище указать измерения, по которым следует удалять данные из хранилища (рис. 14.19). Выбирается действие, выполняемое в ситуации, коrда в процесс заrpужается информация, которая совпадает по значениям из нескольких измерений. Может быть два варианта: удалить старые данные и заrpузить новые или запретить уда- ление и оставить то, что было заrpужено ранее.
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 619 Macтep зкспорта Oeductor Warehouse (4 И3 9) III!IОЕ! Заrрgзка да""ых 8 хрattидище Укажите измерения.. по которым неоfllo:ОДИМО алиrь Азнные из J<ранилища m Объект LJ <t>армация i;j 11m Продажи GI (Щ Измерения р' IZ! Дм.. r 12 Отдел.код r 12 Тоеар,Код r аЬ Час . ';::I'e : I Сnocoб удаления . .....,!cnиcке 1[, <':i JI ДQЛее> Отмена 1 Рис. 14.19. Параметры для контроля непротиворечивости информации Поясним операцию удаления на примере (рис. 14.20). Допустим, в хранилище имеется процесс с двумя измерениями: Клиент и Дата. Необходимо заrрузить в хранилище данные о продажах за последние ДВа дня. Если в наборе данных, KO торый мы заrpужаем, имеются все сведения о продажах за эти два ДНЯ, то можно указать: Удалять данные по измерению и выбрать таким измерением Дaтa . Проrрамма определит, что по измерению Дата в исходных данных Bcero два зна чения, а потом удалит из хранилища в процессе Продажи всю информацию за эти два ДНЯ и заrрузит новую. Исходное состояние данных После удаления данных за 2 дня Новое состояние данных Клиенты Клиенты Клиенты I , , I , , о: .. 9 , , .: , , , , , , о о i , d о о СО О , , , , Ь: о о: d , , d : , q , , о о СО О Дата Дата Дата Информация эа эти 2 дня есть в новых данных Данные о продажах эа последние 2 дня Заrрузка новых данных эа 2 дня Рис. 14.20. Иллюстрация контроля непротиворечивости
620 Часть 11. Бизнес анализ в Deductor Подобный способ зarpузки удобен еще и тем, что позволяет избежать коллизий , например, Коrда в хранилище имеются некорректные данные за какой то период. В таком случае лучше все данные за этот период удалить, а после заrpузить новые корректные сведения. На последней странице Мастера экспорта лучше оставить настройки по УМОЛЧа нию (рис. 14.21). MaCTep зкспорта Oeductor Warehouse (5 из 9) "Dfз 3аrрgзк-а данных в хранилище Определите параметры заrрузки naHHbIlo.: в ранилище m р r P!lПnиpoв.iПb данные перед змрgзк-оА в храltИllИще данНых Еспи Вы выставили иэмереии , ПО которым !UВЛЯIOТСЯ данные из )фё!ltiИ!1Ища данных и устаноеW1И "r ппировать.l, ТО заrрузка в lфанилище 6!:JAeт npo){oдиrь без проверок.. что может ycKq»<rb npoцесс зarруэки. 'r.; д...томатИЧ'!CI<И Аоб....яиrЬ ............... ""мер,,'" При arсутcrвии значений измерения добаеляrь их БО время заr aвrомarичecкя. r.; Собрать статистикg ПOClle sarруэки ДaННI>D! q;>бр!l1'Ь СТВnЮТИl<g. это оозеолит YCf<.q»<rb f'!XЩeCC изЫ1eЩlНИЯ из aAaННbIK r.; 06иО......Ь кgliы w ОТКJ80ЧИТЬ orраничettИЯ и Hl1дeKCЫ <H Далее> I Отмена I Рис. 14.21. Дополнительные параметры заrрузки в процесс Флажок Автоматически добавлять значениЯ измерений позволяет «на лету>.'> дo бавлять новые значения в существующие измерения. Но пользоваться опцией нужно с осторожностью. В случае бездумноrо ее применения можно очень быстро засорить хранилище данных, так как любое значение измерения, даже неверное, будет занесено как реально существующее. Флажок rруnnировать данные перед заrрузкой в хранилище данных полезен в сле дующей ситуации: вы до конца не уверены, что совокупность измерений процесса обеспечит уникальность точки в MHoroMepHoM пространстве, и одновременно тa кой уровень детализации вас устраивает. В нашей задаче, если в таблице продаж встретятся две записи с одинаковыми значениями измерений (табл. 14.6), то при отсутствии установленноrо флажка rруnnировать данные... в хранилище попадет только вторая запись (последняя встретившаяся). Получится, что одна запись фактически потеряется, хотя нужно просуммировать значения полей Количество и Сумма. Таблица 14.6. Случай. при котором совокупность измерений не дает уникальности Дата Код отдела Код товара Час покупки Количество Сумма 16.12.2008 1 3381 18 2 196,0 16.12.2008 1 3381 18 1 98,0
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 621 В Мастере экспорта можно задать любой вариант аrpеrации данных (рис. 14.22). за....рgаlta данных в хранилище Определите варианты аrреrации атрибутов и факто!!; Illlfi1D R!l 1 II!!J r;t Мастер экспорта Deductor Warehouse (1 И3 10) A :15;......... 06beк1Ъi LJ фщ,маци. , !iI lШ1 Продажи S ffiJ "'a ы 12 Количество 9.0 C MMa Спoc(lб arperauии I: C MMa I: I Среднее C MMa Количество Минимум Максим м .:.1 Медиана Первый Последний ( НаЗ<Vl I Далее > I Отмена I Рис. 14.22. Дополнительные параметры заrpуэки в процесс При заrрузке с установленным флажком Обновить кубы «пересчитаются» все кубы, построенные в хранилище на основе данноrо процесса (кубы «обсчитывают ся» заранее и хранятся в отдельных таблицах, поэтому операция импорта из куба выполняется значительно быстрее, чем непосредственно из процесса). Включенный флажок Отключить оrраничения и индексы полезен в случае экспор та в процесс больших объемов данных (например, при первичной заrpузке). Тоrда во время выполнения этоrо действия при добавлении каждой новой строки данных не будет тратиться время на дополнительные процедуры, связанные с перестройкой индексов и проверкой оrpаничений. Окончательный сценарий зarpузки приведен на рис. 14.23. "" w Сценарии е iE т екcroвый файл (r руппы товаров.tи1) EJ 3аrруэка данны)( 8 Хранилище данны( - FARMA : GA ID е iE т екcrовый файл (1oBapbI.t>et) LJ 3аrруэка данны)< в Хранилише .аанны)( - FARMA : TV JD е iE т еКСТО8ЫЙ файл (Отделы.М) , LJ 3аrруэка данных е Хранилище д.aHНbIX FARMA : РААТ JD ra ri) т еКСТО8ЫЙ файл (Продажи. txtJ (jI ЗаrРУЗКd данных в Хранилище данных. FARMA: SALES Рис. 14.23. Окончательный сценарий эаrрузки В результате всех вышеописанных действий будет: о создано и наполнено хранилище данных; О написан сценарий заrpузки (пополнения) информации из источников в ХД; о продуман контроль непротиворечивости данных в ХД. Заметим, что сценарий заrpузки привязан не к данным непосредственно, а к их структуре, то есть в нем смоделирована последовательность действий, которые
622 Часть 11. Бизнес анализ в Deductor нужно выполнить для заrpузки информации в ХД: имена файлов источников, co ответствие полей и т. д. Один раз созданный сценарий впоследствии применяется для пополнения хранилища данных. Как правило, эти процедуры ПРОВОдятся по реrламенту в нерабочее время (например, ночью) с использованием пакетноrо или cepBepHoro режима. Срезы из хранилища данных и ОLAР кубы Процесс получения данных из хранилища осуществляется при помощи Мастера им порта (контекстное меню или клавиша Fб). Построим отчет, отражающий динамику сумм продаж по месяцам rода в разрезе rpупп товаров и аптек Для этоrо выполните следующие действия. 1. С помощью Мастера импорта выберите тип источника данных Deductor Warehouse, на следующем шаrе хранилище Фармация, а затем процесс Продажи. Далее задайте, какие измерения и атрибуты необходимо импор тировать (рис. 14.24). Заметим, что блаrодаря иерархии внутри измерения Товар.Код появилась возможность доступа к измерению rpyппa.Koa. Импорт данных из храни.яища Определиre какие Факты измерения и атрибуты бyQ.yr импортироваться IlllIiJEJ 111 !'2IМапер импорта Deductor Warehouse (4 из 9) 06bet<:r 8 17 : Продажи (7) G 17 ШJ Измерения (5) r.;.. Д"fа Iii 17 Отдел Код (1) , r 0: Отдел,Код р ... . Отпел. Наименование Iii 17 r овар Код (2) : r 0: Товар,Код . P' , т овар.Наименование Iii 17 rpynna.Koд (1] r 0: r руппа,Код .. r;7 .. . rруппа.НаимвНQвание 17 t::'. Час Описание Продажи в аптеках по ДНЯМ , ... ...... ..:J ( Наэад I ! . -> j l Отм6На I Рис. 14.24. Выбор импортируемых измерений и атрибутов В этом же окне задайте импортируемые факты и виды их аrpеrац= (рис. 14.25). В большинстве случаев требуется аrреrация в виде суммы. 2. Определите срезы для выбранных измерений. Это целесообразно делать прИ большом КОJШчестве значений измерения, так как позволяет зarpужать с сервера, на котором расположено ХД, только интересуюшие значения измерений и тем самым экономить время зarpузки данных. Установим срез по измерению Дата: «Все продажи за последние 4 месяца от имеющихся даННЫХi> (рис. 14.26).
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 623 r:.tMaCTep ИМПОрТа Deductor Warehouse (4 И3 9) "1iI fЗ I 1Jт,""T ОпйеОI'';е Импорт данных из кранмпИlЦ.а Определиrе какие факты. измерения и атрибуты б yr импортироваться ... tiJ руппа, р' 1<:', Час 13.. р' m:J СРакты (2) 13 р' Количество (1) р' 1: Сумма r 181 Количестео r 1 Минимум r Т Максимум r t Среднее S р' CYMMa(l) , р' 1: Сумма r 181 Количество ,r 1 Минимум Сумма (Количество] Количество [Количество) Минимум (Количестео) Максимум (Количество) Среднее (Количество] J Сумма (Сумма) Количество (Сумма) Минимум (Сумма) <Н""atI Отмена I Рис. 14.25. Выбор импортируемых фактов Импорт данных из кранмпИlЦ.а Определите срезы ДЛFl еыбранны>: измерений и атрибутов "DIЗ DJ] r'jMacтep импорта Deductor Warehouse (5 из 9) 1J6beкт [J срщ,маllИЯ l.iiI lillJ Продажи е rш Измерения '.. 1:: Дата iZf '1<:', Отел. Код l!,. Отдел Наименование аЬ "" 1<:', т овар.код l!,. т авар. Наименование .Ь S 'k: r руппа,Код , r руппа,Наименовани' аЬ 1<:', Час 12 T n УсМ5'е I ,З,.аче.-I IZI последний 4 месяца от имеющиJo:Сs:I данны>: .. -;;---.",: т J<n фильтра I Пользовательский фильтр < Назсд 1 c: . ).:.1 .:.J Отмена I Рис. 14.26. Выбор срезов 3. В этом же окне внизу выберите тип фильтра Пользовательский фильтр. Это означает, что при каждом выполнении узла импорта будет выводиться окно, aHa лоrичное окну настройки среза, в котором он сможет указать требуемые разрезы по этому измерению. Опция позволяет строить динамические отчеты, в которых пользователю предоставляется только интересующая ero информация, а KOH кретные условия фильтрации он выбирает в момент импорта данных.
624 Часть 11. Бизнес анализ в Deductor Нажмите кнопку Пуск, дождитесь импорта данных и выберите визуализатор Таблица. В вашем распоряжении имеется только измерение Дата, а для построения ОLАР отчета требуются отдельные измерения Месяц и юд. Их можно извлечь из даты, применив к узлу импорта из хранилища обработчик Дата и время (он выбирается в Мастере обработки, который можно вызвать из KOHTeKcTHoro меню или нажатием клавиши F7). Суть этоrо обработчика заключается в том, что на основе столбца с информацией о дате/времени формируются один или несколько столбцов, в которых указывается, к какому заданному интервалу времени принадлежит строка данных. Тип интервала задается на единственной вкладке настроек узла в зависимости от Toro, что вы хотите выделить из даты (рис. 14.27). Преобразование даты и времени Прео6разование даты и времени rJMatTep обработки Д Ta и время (2 И3 4) 4.-1" "'" ./дara ОЧ_с С Отдел.Наименование С т овар.Наименование О r Р ПП_ С Количество О Сумм_ fЗ "" .. И столбца- DS ОАТЕ1 1 '" Используемое .::.1 Н............... Разбиен"" , ...., T....tiIННbI1C J .. I'ZI Дar",J 12 ЧI<CЛO 'abCТI'?"".l :' llet<b j J о о .' I = A ' .E.J H , 'Ь о д;.; J о о ):1"", квaнтal'<' 1 0..0 ll"", ,,' "l П r O(jpa6arыear. даты по 150 8601 < Назад I Далее> отмен;' Рис. 14.27. Иэвлечение иэ даты месяца и rода в результате в выходном наборе будет создано два новых строковых столбца с метками Дата (юд) и Дата (Месяц). 4. Для результирующеrо набора данных определите способ ero отображения куб и настройте назначения полей куба. то есть укажите измерения и факты (рис. 14.28). Для нашеrо отчета измерениями будут измерения Дата (МесЯ1l,), Дата (юд), Отдел.Rаu.мен.ован.uе и ТpyппaBau.мeн.oвaн.иe, а фактами Колu чество и Сумма проданных товаров (с аrpеrацией «CYMMa ). При построении куба информационное поле Дата не будет отображаться, но будет доступно в детализации. 5. На следующем шаrе нужно задать размещение измерений по строкам/столбцам (рис. 14.29). 6. На последнем шаrе определите, какие факты нужно отображать в кубе на пере сечении измерений, и их аrpеrацию (рис. 14.30).
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 625 ПреобраЗОВёIIние даты и времени Преобразоеание даты и времени r'1 Мастер обработки Дата... вреt.fЯ (2 И3 4) II1II0131 "'1 ь-' .,/Д",. О ОтдеЛ.На",менование C::>To..p.H . О r ппа.Наименование С::>Ч.с О Количество с::> СММ. .... Имя 1 $ ОАТЕ1 I ИСПОЛЬЭ!jемое .:J H Разбиение T д . .. ...... !ZI Д",. I 12 чисм , .Ь СТjЮI<O , r .! lieнb -:' , [] L.: r.<!L О K"".21: ..... О U M.!'.!? О '.' ..Н",!""Я.. О С ,"""'......... О r:' .!j""......opr.,., О n l1ett, меcяu. С'] .:J r Dброб",,,,,,,,,,, М1Ъ ' по 150 ВSOl < 1-1"""", [.....:n >:]1 0t>10НII Рис. 14.28. Настройка назначений полей куба НастроАка измерениА Н8СТРОЙК размещения &.1змерений Мастер обработки Дата 101 вреt.tя (5 из 1) !- !ZI Д",. аЬ Т авар Наименование аЬ rp a IllllIiID Вы юм t ;3 iii Колонки аЬ Отдел Наименование ::ъ lfJ!! аillDС'Т""'Й .Ь Д",. (r ",,) аЬ Дата (Месяц) « < Н..... 1 [" D, ;;e" > J 0t>10НII Рис. 14.29. Настройка размещения полей куба !'2 Манер обработки Дата и epet.tA (Б из 7) IllllIiID НастроАка ....ТОВ Выбор отображаеМЬ!1< фактов. arpеr8t1ии и еериаНТQ8 101)( arображениs=l l' :- ILiI Ф тыи8вt>М8Н'Ibl t$IМ БН7 9.0 i<.oлNecrБo R1: r Isl КОflolчестео r f Среднее r 1 Миним м r т М'ксим м r t CTal1A PТHOe откл. r 1:2 С9мма K8anpaтoB . r 11211 Кол-во npопуеКО8 р' 9.0 Сумма r 12 КоЛl<1чество !' 1'''.01 Bвrмaнrы ния р Е 3НCNeНие r Z Проuент по I"оризонrали r '%1 Проuенr по вертик J'IoI ! . ' "...... 1 <Н.... : , .),' ,; о,.,..".., Рис. 14.30. Настройка отображения фактов
626 Часть 11. Бизнес анализ в Deductor Таким образом, наш сценарий будет включать два узла (рис. 14.31). Рис. 14.31. Фраrмент сценария в результате получим следующий мноrомерный отчет (рис. 14.32). Иэмерения в строках Скрытые иэмерения Иэмерения в столбцах Значения фактов к б f'I Oii. r @.. " '2 & .!- . ) : :Lo! . I ToaapJla' ...' .. ",'Н' "',' ,.с',,' у...",-.., ", с' OTAeQ.H" м' "8,,'..е . ' . Аптека N91 Arrt&кa N92 ' l !imllI!m ' l f.IEll ;>":lIId :Е Кол,во 1 1; сумма , ';Е Кол-во, I (::'.7 :Е Кол во ! :Е Сумма 1 3 767 689581.6' 13 767'6эЭ58iБ, i 15167 707004,4 15829' 786158.6: 200 7156,4 311961 500 321:4' 44 9I3 :?11:19 ,O' 2008 12 Дещь IIIТОС,,: 6847 6847, 7157 7510 200 14867 21714, , 319547,4 319547-4 312459.4 340 901 ,5 69 ' ,,3700342, 6920 370 0342 8010 394544.9 , <. . 8 319L.. 445 257: ' 01 Янe<IPb 02 ФеВРаЛЬ ОЭМерт IIIтoro: 660 519.4 980 066.7 :;J ....J IIIт"со: '/'" ,.... ,. '1/'................... . I .." Н I ; 'S . у' ,....'.:.. { 3/83 Дата Т овар.Наименование 01.03.2009, Б оя"ышника настойка настойка фл, 100 мл Росбио 01.03.2009 Талазо....н капли наз. 0,1 % фЛ, 10 млWаrszаwskiеZаklа< !} та6.i ло . фя. Щ!, р. 1 GФIiЩer ' 01,03,2009 , !,j, ля , !И, Р9 ,!оrо таблетки 025 r табл. 025 r П: ко, 01,03.2009 Боярышника настойка настойка фл. 1 00 мл осбио ..;Jj Рис. 14.32. ОLАР-отчет о продажах в разрезе месяца, rода и аптеки Фильтрация данных в кубе может производиться двумя способами: о по значениям фактов; О по значениям измерений. Для фильтрации данных в кубе необходимо во всплывающем меню или на па нели инструментов нажать кнопку Селектор... т , после чеrо откроется диалоrовое окно (рис. 14.33). Пусть нужно определить товарные rpуппы, приносящие 80 % выручки. Выбери те измерение IjJyппa, условие Доля от общею, значение 80 и наСтройте в кубе
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 627 одно активное измерение, добавив вывод относительных долей и отсортировав по убыванию (рис. 14.34). . Селектор Из...е " факты М '1'aкtb, 14 Дата (rqn) 14 Дата (Месяц) ОтдеЛ.Наименование т авар. Наименование 14 r p nna 2из2 4из4 3из3 1114из1114 69 из 69 ....... .... Измерение ' .Ь r p nna I!IDFЗ .:J aцIAИ (o'L 8 9.0 C MMa r L C MMa Условие I Доля ar общеrо Значение ' 1 80 .:J I l '0'<' '.. .. Отмена Н-1 11J I.П'!IID! Дата IМеся,,1 .,. ОТII;8Л.." -, Рис. 14.33. Окно селектора .;. .H. rpgnna АнтиконrествНТЬf f3.1:n' "I1 ""еит JI , ,с: ердеч!:">,е rлнкозJ1дЫ .I'I неrЛНКО3J1дные карднотон Антl1Cеn111l<И н де3l1НфНЦ'1)УЮЩие cpeдc:тsa : СПЗ3МОЛИТИКИ миотрonные r'"" ". ";. ,;C" ' I СекреТOJII1Т11КН И стир!уляторы МОТфНа1 Ф'жцни дыха' Деfuкcнцирующне средства j ,ПротивореоТНblе средства ' oro: 1: Кол во 1:. Сумма .,. 1: '" . о/ fiPЩент r;Q 5 epl}1кал 1: зtiаЧВНlff I 1 % 24 Л 2070ar:." ......J 4.17%. 2э2 471.4' 17715' -=............... 3565% 2820М.6 .... А .. 2937 С::=::::;] 5.91%: 275730.3 7765 .......................... 15.63%: 210812.5 3020, &.08% 198 707.8 5277 10.62% 25649.5 J72S!1C """":j 3..48%' 14482.9 49695 '. 111 10000% 159)341 О Рис. 14.34. Куб с rpуппами препаратов, дающих 80 % выручки Такую выборку можно получить по любому факту. В данном примере это сумма. Если выбрать измерение 1Ьвар и отфильтровать по количеству, то получим лекар"" ственные препараты, пользующиеся наибольшим спросом. Одновременно с кубом Bcerдa строится кросс""диarpамма. Ее отличие от обыч"" ной диаrpаммы в том, что она однозначно соответствует текущему состоянию куба и при любых ero изменениях (транспонировании, вращении) тоже модифицируется. Например, построим отчет и кросс""диаrpамму заrpуженности аптек (по количеству проданных единиц товаров) за последние 7 дней (рис. 14.35).
628 Часть 11. Бизнес анализ в Deductor НI Заrруженность аптек по ДНЯМ !lD х 1 "'; 1.1:)), ] tIiIi .I '<f' I 1m . @ . ". 'iij;ib .ii .; . d:!J !J.Q О .. Ii... . Ы ' H: o : ! 1 i fl ::. 1;2Ii ; i ; I S:I ., ' : ' 1 Пе>недеJlbНИК , 800' ' 1 6 9 1 ". ' ., 2BT Bli' ! 700 ' I з Среда 7Б3 (; 600 . < 4 Чereеpr 837 g 500 I . ; = . . . ] :. p ; .. I 4365' О IIG ' Итorо: !!! 1!' :I: :I: .. о- :i3 1:1 о r: Дата (День еJlиJ . 1 1 " {1 .. 1i 1'1. " .. .. ! ! :8 ij u " ., ,.. " "., :;1" r: u е- ... '" со " .g .... Дета (День недели) Рис. 14.35. 3аrруженность аптек по дням недели АВС ХУZ анализ в аналитической отчетности очень полезным часто оказывается ABC XYZ aHa лиз распределение объектов, например товаров, клиентов, поставщиков, по стабильности продаж и доходности (это уже упоминал ось в разделе 10.4). Если в качестве объекта анализа взять лекарственные препараты, а в качестве критерия анализа объем продаж, то в результате получим: .0 при АВС анализе продаж наиболее и наименее пользующиеся спросом TO вары; О при ХУZ анализе продаж rруппировку товарных позиций в зависимости от стабильности продаж (количество проданных единиц) Результатом АВС анализа является rруппировка объектов по трем KaTero риям: О катеrория А наиболее ценные объекты, сумма долей с накопите льны м итоrом которых составляет первые 75 % общей суммы параметров; О катеrория В промежуточные объекты, следующие за rpуппой А, сумма дo лей снакопительным итоrом которых составляет от 75 до 90 % общей суммы параметров; О катеrория С оставшиеся наименее ценные объекты, сумма долей с накопи. тельным итоrом которых составляет от 90 до 100 % обшей суммы парамет. ров. Существуют и дрyrие варианты процентноrо распределения объектов внутри катеrорий АВ С, например: А 80 %, В 15 %, С 5 % или А 50 %, В 30 %, С 20 %.
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 629 Алrоритм АВС анализа состоит из следующих шаrов. 1, Определить объект анализа: клиент, поставщик, товарная rруппа, товарная позиция. Для АВС анализа продаж это, как правило, товарная позиция, 2. Определить параметр анализа: объем продаж, доход, количество проданных единиц, частота покупок товара, количество заказов, средний товарный запас и т. д, Для АВС анализа продаж это, как правило, объем продаж в денежном выражении, 3, Определить период, за который будет проводиться АВС анализ, и подrотовить аrреrированные данные по продажам за этот период. Так, если период равен кварталу, то нужно для каждой товарной позиции получить сумму квартШlЬНЫХ продаж. 4. Отсортировать объекты анализа в порядке убывания значения параметра. 5. Чтобы определить принадлежность выбранноrо объекта к rруппам А, В и С, необходимо: рассчитать долю параметра от общей суммы параметров выбранных объек тов; рассчитать эту долю снакопительным итоrом; присвоить значения rрупп выбранным объектам. АВС анализ рекомендуется проводить периодически, особенно если в ассорти менте есть товарные позиции со значительными сезонными перепадами продаж, Периодичность анализа определяется экспертным путем и зависит от бизнес процессов орrанизации. Оптимальные периоды про ведения АВС анализа: rод, полуrодие, сезон (квартал), помесячно в течение rода. Периодическое проведение АВС анализа позволяет отследить перемещение товарных позиций из rруппы в rруппу (например, HOBoro товара из rруппы А в rpуппу С, а также контролировать жизненный цикл товара). Результат ХУZ анализа rруппировка ресурсов по трем катеrориям на основе предварительно рассчитанноrо коэффициента вариации: О катеrория Х объекты, коэффициент вариации которых не превышает 10 %. Характеризуются стабильной величиной потребления; о катеrория У объекты, коэффициент вариации которых составляет 10 25 %, Потребность в них зависит от известных тенденций, например от сезонных колебаний; о катеrория Z объекты, коэффициент вариации которых превышает 25 %, По требление ресурсов Hepery лярное, какие либо тенденции отсутствуют. Существуют и друrие варианты процентноrо распределения объектов внутри катеrорий XYZ (например, 15 50 %). Коэффициент вариации рассчитывается по формуле: п 2)X; XY ;==1 v== п х .100%,
630 Часть 11. Бизнес анализ в Deductor rде X j значение параметра по оцениваемому объекту за i й период; х среднее значение параметра по оцениваемому объекту анализа; п число периодов. Прибеrать к данному методу анализа имеет смысл, если количество анализи руемых периодов больше трех. Чем больше количество периодов, тем более пока зательными будут результаты. При этом сам период должен быть не меньше, чем rоризонт планирования, принятый в компании, иначе велика вероятность Toro, что все товары попадут в катеrорию Z. Алrоритм ХУZ анализа также состоит из нескольких шаrов. 1, Определить объект анализа: клиент, поставщик, товарная rруппа, товарная позиция. Для ХУZ анализа продаж это, как правило, товарная позиция, 2, Определить параметр анализа: объем продаж, доход, количество проданных единиц, частота покупок товара, количество заказов, средний товарный запас и т.д. Для ХУZ анализа продаж это, как правило, количество проданнь:х единиц товара или частота покупок. 3, Определить период, за который будет проводиться ХУZ анализ, и подrотовить аrpеrированные данные по продажам за этот период. 4. Рассчитать коэффициент вариации. 5. Отсортировать объекты анализа по возрастанию значения коэффициента Ba риации. 6. Определить rpуппы Х, у и Z. Результаты ABC и ХУZ анализа обычно представляются в виде матрицы, co стоящей из трех строк и трех столбцов (табл. 14.7), и позволяют дать практически полную характеристику эффективности ассортиментной политики. Таблица 14.7. АВС ХУZ матрица Катеrория Х у Z А АХ АУ AZ В ВХ ВУ BZ С СХ СУ CZ Проrнозирование по rруппам такой ассортиментной матрицы позволит диф ференцировать усилия: одни позиции проrнозировать, друrие планировать, чему то уделять максимум внимания, а что то рассчитывать по жестким методикам (рис. 14.36), Поэтому для ToproBbIx компаний матрица ABC XYZ является эффек тивным инструментом при подборе стратеrий управления товарными запасами. Товарам rpупп АХ, АУ и ВХ следует уделять повышенное внимание, поскольку отсутствие этих товаров может привести к серьезным убыткам, У rpуппы АХ самая высокая степень надежности проrноза, поэтому здесь приrодны сложные моделИ временных рядов с учетом сезонности, реrрессионные и нейросетевые модели. Вследствие стабильности потребления ПОПозиционные проrнозы будут обеспе чивать хорошее качество. Остальные rpуппы АУ и ВХ возможно, следует про rнозировать по товарным rpуппам,
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 631 Q) 3 .Q с; О LO ая а льная х у z Особое внимание, Повышенное Качественный желательно внимание, проrноэ невозможен, се про водить желатеJ1ЬНО желательно назна попоэиционный проrноэировать чить персональноro проrноэ по rpynnaM менеджера Повышенное Качественный внимание, Проrноэировать проrноз невозможен, 111 проrнозировать рассчитывать по rруппам по rруппам потребность или по позициям по «жестким,) правилам Рассчитывать Рассчитывать Хаотичные продажи по биэнес правилам, по бизнес правилам, и маленькая маржа, (.) контролировать предлаrать приобретать товары наличие товары эаменители только при нулевом минимальноrо эапаса количестве на складе Хаотичн Динамика продаж Ст би .11 1- U О :z: 1:1: о )ос о C:I Q) 3 .Q :r: Q) :i!: Рис. 14.36. Проrнозирование по rpуппам в АВС ХУZ аналиэе Товары rpупп СХ и СУ характеризуются низкой потребительской стоимостью и средней надежностью проrноза. Здесь хорошо подходят несложные расчетные модели, например скользящее среднее с контролем cтpaxoBoro запаса. Вообще, для товаров rpуппы СХ можно построить качественный проrноз, однако ввиду низкой потребительской стоимости тратить дополнительное время на Hero не нужно. Наименьшее внимание уделяют позициям, попавшим в rpуппы BZ и CZ. Если в этих товарах нет острой необходимости, от них можно вообще отказаться. Поэто му здесь rоворить о каких либо моделях временных рядов не имеет смысла в ход идут простые «жесткие правила. Товары rруппы CZ стоит при обретать по мере необходимости. Сценарий АВС анализа продаж для хранилища данных Фармация изображен на рис. 14.37. В качестве периода взяты последние 3 месяца; параметром выбрана сумма продаж в денежном выражении. Доли снакопительным итоrом рассчиты вались в узле Калькулятор с использованием функции CumulativeSumO. i? Фармация: Продажи (последние 3 мeC$lua дляАВСj ; Бi--"I'" ФWlbТР ([дот.] н. noc"едний месяц от имеющи:<ся ДaНO-ObI><) S /j? АВС.ана"из 8-- r Р!,П'Ц)ООКа (C!JМ'''' продаж nOTo.apaM) S Coprиpoeкa: C!jММ<I еВ Кмьку"ятор: До"я от общей суммы S В К01IbКулятор: Доля с ..,,<оnиreI1bНbIМ иrоrом d В Кальку"ятор: rрулnаАВС Рис. 14.37. Сценарий АВС аналиэа продаж для хд «Фармация>.> Результат АВС анализа в виде отчета с ОLAР кубом представлен на рис. 14.38.
632 Часть П. Бизнес анализ в Deductor , х l ШiJ. t:; IЩ: V . IQI lIi!i . \i.! .1=11 .' .:':1 [ь . 1Ii. IШ. IQI м ' liКол1ЧеСТ I 'А ' '"' ,6 'с I И-тоrо: 195 735 1122 L Jj].v н .. 1111 92 . ., I 650 600 750 700 650 g600 ... "550 i500 :s! 450, g 400 ... "350' ЗОО '" :S!25O 200 150 100 50 О 117,11 % .117,38 % J 65,5 % . т """р.Код т овар.Наименование ..1 БОs:lрышника на;;'ойка настоЙ Фл....;.оО мл Р био , I т ерпинкод табл. П.КОIi1' рн,яч, 1 О Ай Си Эн Т омск.и, :АрБI«ОЛ'ЛЭНС табл ",О, 0.1 r бл, 1 О кор. 1 Даль.имФ, Jrекс рал аэроз,нар жн, 0.2 % бал,аэроз. 40 мл [с нас . . . J т ераСР лю от rриппа и простуцы пор д/р--р-а для прие i Но.шпа табл. 40 Mr KOIi1'. 100 кор, 1 Chinoin !" ill g' д в I"pyrnw с Рис. 14.38. Результат АВС анализа в ОLАР кубе Сценарий ХУZ анализа продаж для хранилища данных Фармация изображен на рис. 14.39. " LJ Фармация: Продажи за последние З месяца (,цляХ"r'Z) 6 V Фильтр ((Дата] не последний месяц от имеющи.сяданны.1 а m Преобразование даты (Дата: r од . Месяц) iij (g rр!lf1ПИPOВ1<а по nepиoд (месяц) :3 /jP XYZ анализ 8 (g rPJjпnиpовка(Измерения: Тоеар.Код;Факты: Количество lIiiiI Кальк IКIТОР: Х среднее 811- ВН!jТрежее coenжeнив (Кальк!jЛЯТОР: Х среднее) G lIiiiI Кальк!jЛЯТОР: [X.XcpJA2 8' (g r a: суммируем [ХХср)А2 811iii1 К"льк лятор: БариаLIИЯ З . Сoprировка: Вариация Капы< . XYZ r Рис. 14.39. Сценарий ХУZ анализа продаж для хд «Фармация» ЗАМЕЧАНИЕ Значение квадратноro корня в формуле для расчета v есть не что иное, как стандаprnое arклонение. Ero (как и среднее количество продаж товара за рассматриваемые периоды) Можно было бы рассчитать, взяв функции Среднее и Стандартное отклонение у аrреrаций факта в узле rpynnupoBKa. Но данный способ приrоден только в случае. Коrда каждый товар продавался хотя бы один раз в каждый период. В реальности зтоro может не быть. Позтому в сценарии предварительно рассчитывается х так. чтобы количество проданных единиЦ всеrда делилось на п == 3. Затем оно внутренним соединением (<прикрепляется» к каждому товару и рассчитываются суммы квадратов отклонений от среднеrо (х х). Дальше по формуле вычисляются козффициент вариации и rруппы XYZ. Если изменяется период анализа п, то нужно подправить формулы расчета в соответcrnующих узлах.
rлава 14. Консолидация данных и аналитическая отчетность аптечной сети 633 Результат ХУZ анализа в виде отчета с ОLАР кубом представлен на рис. 14.40. r.1'7 . 1IiI. t..: [N]. т ! _ . !*1 . ff ,. :.1 Ib . 1iI. [N]. !J] о 'ih h.L . , ' :I ' r] ' ' ! "" :" "." .." t;,.': rlllro r !z [:0: J!ijI.T lt КОличестБ . о 132 936 1121 ' ".. ..... м .... 7/53 .. IМ ":1 l Това рНа именование ..::J "1 :3иprек капли для прием"ВН!/1'РЬ 1,9 М"/мл фл, 10 ',.,j I , 'Климен драже 6л, 21 кор, 1 Schering SA дочернее r , ПИВ.52та6л фл. 100 кор. 1 Himalaya i[Л tпоееаяк -1С . аТдбllп.о.11 ,.MarHe 8 6та6л.п.о. 6л. 10 кор. 5 Sanofi-Winthrop In. > Смесь ДЛЯ инrалЯЦ,ий ЖИДК. фл. 40 мл Московская :...... Спазмоцистенал р.р ДЛЯ приема внутрь фл. -кап.теl ";дj ..!J ШШ >< 1000 18З,5% . 800 о 700 !Jf i!! 600 :ii! 500 u Q) !!: 400 ЗОО 900' 200 100 О х у XYZ 'Руп z Рис. 14.40. Реэультат ХУZ аналиэа в ОLАР кубе Теперь, чтобы получить АВС ХУZ матрицу, осталось добавить узел Слияние 1 для соединения ABC и ХУZ rpупп и настроить ОLАР куб (рис. 14.41). D IJ)J. 'k: IW . т ! [QItm. 1m . t=II .Ъ . . 11 ИТОI"О: 102 192 10 43 142 195 11 31 692' 734 ИТОI"О: 531 132 9з6 1121 ш, JВ. т МI 04 IМ . Toeap,KO,iJ' Товар,Наименование . . . .. ...... - .' . . 16534 Боярышника настойка настойка фл. 100 мл Рос6ио I 21269 rексорал аэроз,нар жн. 02 % 6ал,аэроз. 40 мл [с нас.1 кор. 1 Parke.Oavi. ' 1 83436 Отриеин спрей наз. 0-1 % фл. 'кап, 1 О мл кор, 1 Novarli. Con.umer Health SA 36259 !(;омпливит та6лл-о, 6ан.полимерн. 60 паЧ.каprон. 1 Уфа8ит" j 3381 Но'шпата6л. 40мr6л. 10 кор, 2Chinoin 84190 Седальrин-Неота6л. П.конr рН.яч. 10 8аlkапрhаrmа-ОuрпilzаАО ::1: j 'I :Д.J Рис. 14.41. АВС ХУZ матрица в ОLАР кубе I См. раздел 3.4 и ",Руководство аналитика в поставке Deductor.
в процессе работы специалист аналитик выполняет множество операций над aHa лизируемыми данными. Результаты ero работы MOryT быть интересны широкому KPYry лиц так называемым конечным пользователям, которым не обязательно вникать в последовательность действий аналитика, знать особенности математи ческоrо аппарата и методов, применяемых при анализе данных. Чтобы представить результаты анализа конечным пользователям, можно использовать аналитическую отчетность. Аналитическая отчетность (отчеты) это одно из средств визуализации и KOH солидации результатов анализа данных для конечноrо пользователя. Аналити ческая отчетность обеспечивает быстрый доступ к результатам анализа, не требуя от пользователя навыков анализа данных и работы в пакете Deductor. При работе с отчетами пользователь не видит сценария анализа данных, ему доступны только конечные результаты (выдержки) из работы аналитика. Для создания аналитической отчетности в меню Вид выберите пункт Отчеты или нажмите соответствующую кнопку на панели инструментов. В рабочей части зкрана появится панель Отчеты. Отчеты строятся в виде древовидноrо иерархическоrо СIШска, каждым узлом KO тороro является отдельный отчет или папка. Каждый узел дерева отчетности связан со своим узлом в дереве сценария. Для каждоrо отчета настраивается свой способ отображения (таблица, rистоrpамма, куб, кросс диаrpамма и т. п.). Это удобно, так как несколько отчетов MOryT быть связаны с одним узлом дерева сценария. Для создания HOBoro отчета необходимо выбрать команду Добавить узел из всплывающеrо меню или нажать COOTBeT ствующую кнопку на панели инструментов. В результате откроется окно Выбор узла, в котором следует выделить узел дерева сценария, rде содержится нужная выборка данных, и щелкнуть на кнопке Выбрать. В результате выполнения перечислен ных операций получим дерево отчетов (рис. 14.42). На прилаraемом к книrе компакт диске вы найдете исходные файлы для наполне Ю1Я хранилища данных, rOToBoe хранилище данных «Фармация» (farma. gdb), а также сценарии Deductor для заrpузки и отобра жения отчетов load. ded и reports . ded соответственно. 634 Часть 11. Бизнес анализ в Deductor Настройка отчетов mв сценарии х . отчеты х1 . 8/i(,):Jfj]!:X Е'.о . Отчеты , Продажи по месяцам и аптекам rр ппы npeпаратое, дающие 80% npи6ыl1 ; Препараты, дающие 80% приБЫIl1 ; i)3аrруженнocrь аптек по дням 1 . 20 самых npoдaeaer 1bIX товаров , 3аrр женнocrь отделов по часам e'L:I АВС,XYZ'анализ (период: 3 мес) АВС.анаIlИЗ XYZ'анаllИЗ АВС,XYZ,матрица Рис. 14.42. I1анель отчетов
Ассоциативные правила в стимулировании розничных продаж Описание бизнес..задачи Постановка задачи. Розничная сеть по продаже товаров бытовой химии по ставила задачу анализа покупательских корзин для оптимизации размещения товаров на витринах и проведения кросс продаж. Отдел маркетинrа представил 5000 чеков, в которых отражены покупки, сделанные клиентами маrазинов. Требуется: О предсказать, какие товары покупатели MOryт выбрать в зависимости от Toro, что уже есть в их корзинах; О выявить наиболее популярные товарные наборы, состоящие из более чем OДHO [о предмета. Исходные данные. Представлены в файле Чеки. txt двумя полями Номер mранзакции и Товар. Поскольку номенклатура товаров бытовой химии очень разнообразна, решено оrраничиться представлением товаров в обобщенной форме без ToproBbIx марок: порошки, моющие средства и т. д. (Bcero 37 наиме нований). Используя алrоритм Apriori, извлечем ассоциативные правила и проинтерпре тируем их.
636 Часть 11. Бизнес анализ в Deductor Выявление ассоциаций в Deductor Studio для решения задач ассоциации используется обработчик Acco циативные правила, в котором реализован алrоритм Apriori. Узел требует, чтобы на входе было два поля: идентификатор транзакции и элемент транзакции. Например, идентификатор транзакции это номер чека или код клиента, а элемент это наименование товара в чеке или услуrа, заказанная клиентом. ЗАМЕЧАНИЕ Оба поля (идентификатор и элемент транзакции) должны быть дискретноrо вида. в новом проекте в Deductor Studio импортируйте данные из TeKCTOBoro файла Чеки. txt. К узлу импорта добавьте обработчик Ассоциативные правила. Поле ID сделайте идентификатором транзакции, а IТEM ее элементом (рис. 15.1). r::Ii Мапер обработки Ассоциативные правида (2 из б) I!llIiI х .... НастроАка СТОllбll.ОВ 3.ацайте нaзнaчeкtЯ ИСХОДНЫХ столбцов ,аанных ;i ," ',! :i" . ЮID ..'LITEM Имя ст.олбца "IТEM Типд.в....ы,: I СтРОКOВbIЙ Э еменr I Диcкperный .:J нaзн<!'IetИO . BJ1Q, ДаннЬl1< ниkаf]Ы"lЫе значения Кол'"60 !IНI'IKo11bHЫX :жачeJiИЙ 37 M Мыло жицкое Мыло K CKOBoe Освежитель воздуха Отбеливатель Пена/сольдля ванн Перчатки реЗИНОВЫе ....J .=J (fj Зitt I [ i.iё :> 1 Отмена I Рис. 15.1. Настройка назначения входных полей для решения задачи ассоциации На следующем шаrе настройте параметры алrоритма Apriori (рис. 15.2). Здесь доступны следующие опции. Минимальная и максимальная поддержка, % оrpаничивают пространство поиска часто встречающихся предметных наборов. Эти rpаницы определяют множествО популярных наборов, или частых предметных наборов, из которых и будут созда ваться ассоциативные правила. Минимальная и максимальная достоверность, % в результирующий набор по падут только те ассоциативные правила, которые удовлетворяют условиям мини мальной и максимальной достоверности. Максимальная мощность искомых часто встречающихся множеств параметр orpa ничивает длину k предметноrо набора. Например, при установке значения 4 шаr rенерации частых наборов будет остановлен после получения множества 4 пред
rлава 15. Ассоциативные правила в стимулировании розничных продаж 637 метных наборов. В конечном итоrе это позволяет избежать появления длинных ассоциативных правил, которые трудно интерпретируются. Все настройки оставьте предлаrаемыми по умолчанию. Нажатие кнопки Пуск запустит работу алrоритма поиска ассоциативных правил, по окончании которой справа в полях появится следующая информация (рис. 15.3): О Кол во множеств число частых наборов, удовлетворяющих заданным условиям минимальной поддержки и достоверности (93 набора); о Кол во правил число сrенерированных ассоциативных правил (найдено 18 правил). Мастер обработки Ассоциативные правила (3 foo13 б) HacтpO Ka параметров построения ассоlI.Иативныи правид Укажиrе значенИs:l параметров построения acc правил Часто встречающиеся множества М"""'''''''''''''' ПQдI"'I'ЖI<a. % [1 МакcимaJ1Ы1aЯП<)OjЩ)жка.% r Mak-CИМdJ1bНaЯ J'vIOЩнoc:rh ИСКОМЫХ -часто естречающw<cя множеств ' ] ";. , Acct:щиarивные npaвиII3 < МинималЬНая дoCr<>ВepНQCfb. % МаксимаJl дoc:roвepнoc:ть; <; <Н"''''' I L "",,} :' I Рис. 15.2. Параметры алrоритма Apriori Мастер обрjl/IO.тки " АссоциаТИ8ные правипа (3 из 5) Построение ассоlI.Иативныи праВИII 3ап ск процесса построениs:l ассоциативны).: правил ' [LI 40 " 1:.. .. . 10 < , О, 1 2 3 МоЩiOCТЬ """то "СТpeчetoIЦl4XCА l>IIi()Ж6CТе т e1<JIW"" СОСТOЯНl<e npoцecca l1OC'1'jЮeНИ<! праеил JcпewIjOe эавершение Проце", i!ЫI1OЛ>1eНИЯТе1<JlWefO nPOЦeccl) 100 < Нa3aOI Да""е }« I Рис. 15.3. Процесс выявления ассоциаций IlllIiJD <II< ; ......., -=.L:::i Е;.. 1 90 Отмена ! IlllIiJD </ (,., k . 1 ' Ком", мнo"'ecte 931 Ко"""" ma""" HJ: Время paбatы I 00:0000 1 I " ПУСК Отмена
638 Часть 11. Биэнес аналиэ в Deductor Далее выбираете все доступные специализированные визуализаторы и визуа лизатор Таблица (рис. 15.4). r') Мастер обработки Ассоциативные правида (4 И3 5) RDIЗ Опредепение способов отображения Выберите способ отображения даННЫ;l< , .:.II На,вание О/1lAсание ,3 Р Dala Idinin!l " р ПОП!jлярные наборы Отображение текста часто встречающи)Сся МНожеств р Дерево правил Дерево правил сrруппltlРОВdННЫ;l< либо по УСЛОВИЮ. либо по еле... р Что-если Анализ правил по принципу "что.-если" r т абпичные данные r Таблица Отображает данные в ВИДе таблицы r Статистмка Отображает статистические данные выборки эr rраФИl<И r Диаrрамма Отображает данные в ВИДе диаrраммы r r иcrorРdММd Отображает данные в BJ1Q,e rистоrраммы r Мноrомернаядиаr... Отображает данные в виде tvliоrомернойдиаrраммы r llиаrDамма оазме... ДиаrDамма Dазмешения объектов в ПDОСТDdНСТБе ..!:.I (Наз I Далее > I Отмена Рис. 15.4. Доступные виэуалиэаторы Все эти визуализаторы, кроме Что если. отображают результаты работы aлrо ритма в различных формах. Часто встречающиеся наборы в Deductor называются популярными. На вклад ке Популярные наборы, как следует из названия, в виде списка отображается множество найденных популярных предметных наборов. которые можно OT фильтровать и отсортировать. Например, задав в фильтре минимальное значение поддержки 6 % и отсортировав записи по ее убыванию, получим следующие 16 популярных наборов (рис. 15.5). Два из них имеют мощность 2, то есть co держат по 2 элемента. На вкладке Дерево правил предлаraется еще один удобный способ отображения множества ассоциативных правил. При построении дерева по условию на первом (верхнем) уровне находятся узлы с условиями, а на втором узлы со следствием. В дереве, построенном по следствию, наоборот, на первом уровне располаrаютсЯ узлы со следствием. Справа от дерева расположен список правил, построенный по выбранному узлу дерева (рис. 15.6). Для каждоrо правила отображаются поддержка, достоверность и лифт. Если дерево построено по условию, то вверху списка находится условие правила, а спи сок состоит из ето следствий. Тотда правила отвечают на вопрос: что будет при таком условии? Если же дерево построено по следствию, то вверху списка отображается след ствие правила, а список состоит из ето условий. Эти правила отвечают на вопро
rлава 15. Ассоциативные правила в стимулировании розничных продаж 639 сы: что нужно для Toro, чтобы получилось заданное следствие, или какие товары нужно продать для Toro, чтобы продать товар из следствия? .i1-И.т(!j. fМНO 16 w;.93 :т "j } 1 10 I'IIblnO I(VCII;Oвoe Z зs ч..:mцoo1 f1>POIIЮI<)Жеерс ct'ильтр.. МИНИММЬНo!I:Я nqмepжка..-Б.ffI э 4 S б ЗубнаА mcTd 3 reдb 11М туалетов f=i 392 29z 288 221, 20В 200 199 195 А] 1 ''''''' i 19,17 14 26 14,ОВ D l' 1, .: l' с1, l' 11 1 1 1; l' .1..1 . I npавид Рис. 15.5. Популярные наборы с поддержкой более 6 % n 1 в 11 Освежитель воздуха 9 МЫт жидкое. 12 , отбеl1l1lSатель 32 СТI1paЛbНbi1 щ.poL1JOК: pj'чhoй Мыло JЮ1Aкое 60 .. 10!81. 10117 9,78 9,73 9,5'4 167 8,17 9 Мыло кусковое 10 11 12 13 14 ?6 Сре-АСПЮ для ухода 3в m6eлью 164 152 146 144 7,53 7.1-3 7,1'1 7,04 б,50 24 Средство ,дЛЯ мытья ПОСУILЫ 19 ель 34 СТ..-paлblib й порошок аВТоМаТ ,.. -- "_,, -- .". 21 CoAi>. 15 Мыло кусковое 6В' Средство ДПR MblTbs=l пQсуlLы lЭЗ 131 6.11 2; 29 Cp 80 д.hЯ ЧИСТКИ rt1lИТ 129 6,31 L :2] ' :t> .. . 2*.. т % "fbl' 1!t" r::.. Ассоциarивные правила (по СЛ€... r JJ'р ИЛQ :1. С!1 СТБиеJ :tыло 11Q. i+ {ро Осввжитель B03д "a (10.17 ' !dсf1OБИe , t> Мыло Ж'l<1"ое [9..78%; 200) {t:P Картрl-ШЖ с ЖИ.Q.КИМ МЫ, {t:o Мыло K CKOBoe (В..17%; 1 {t:o '-:: {t:P Стиральный ПОрОШОК 3ВТОМ {t:a Кондиционер ДЛЯ беЛЫ;:j ['" t> Коt1l1иционер дл" бель" (4.5 -m:- Стиральный порошок-ав ь IP' Мылок сковое(19,17%;39< I Мыло Ж'l<1кое (8.17%; 16 t eд o . : :: : ...tJ, Мыло кусковое И Отбе . I Мыло K CKOBoe I Отбеливатель . ! ... , ,ПCIIЩ ржка... , ДocтoBepНOOlЪ, % I ЛИФТ! LКОЛ--БО -) % 25 167 26 Ц2. 8..1.7 1.27 46-ЗО t; 42}Ю 3 13..10 )1 4.734 .4.356 1.336 Рис. 15.6. Дерево ассоциативных правил Интерпретация ассоциативных правил Теперь остаНОБИМСЯ на наиболее важном этапе интерпретации ассоциативных правил. Дело в том, что ассоциативные правила сами по себе, как результат работы HeKoToporo алrоритма, еще не rOToBbI к использованию. Их нужно проинтерпре тировать, то есть понять, какие из ассоциативных правил представляют интерес, действительно ли правила отражают закономерности или, наоборот, являются
640 Часть 11. Бизнес анализ в Deductor артефактом. Это требует от аналитика тщательной работы и понимания предмет ной области, в которой решается задача ассоциации. Все множество ассоциативных правил можно разделить на три вида, О Полезные правша содержат действительную информацию, которая ранее была неизвестна, но имеет лоrичное объяснение. Такие правила MOryT быть исполь зованы для принятия решений, при носящих выrоду. О Тривиальные правила содержат действительную и леrко объяснимую ин формацию, которая уже известна, Такие правила, хотя и объяснимы, но не MOryT принести какой либо пользы, так как отражают или известные законы в исследуемой области, или результаты прошлой деятельности. При аналИзе рыночных корзин в правилах с самой высокой поддержкой и достоверностью окажутся товары лидеры продаж. Практическая ценность таких правил крайне низка. О НепО1lЯmные правша содержат информацию, которая не может быть объяснена. Такие правила получаются на основе или аномальных значений, или rлубоко скрытых знаний. Напрямую эти правила нельзя использовать для принятия решений, так как их необъяснимость может привести к непредсказуемым pe зультатам, Для лучшеrо понимания требуется дополнительный анализ, Варьируя верхний и нижний пределы поддержки и достоверности, можно из бавиться от очевидных и неинтересных закономерностей. Как следствие, правила, rенерируемые алroритмом, принимают приближенный к реальности вид, Значения BepxHero и нижнеrо пределов сильно зависят от предметной области, поэтому не существует четкorо алrоритма их выбора. Но есть ряд общих рекомендаций, о Большая величина максимальной поддержки означает, что алrоритм будет находить правила, хорошо известные или же настолько очевидные, что в них нет никакоrо смысла. Поэтому ставить пороr максимальной поддержки очень высоким (более 20 %) не рекомендуется. О Большинство интересных правил находится именно при низком значении поро ra поддержки, хотя слишком низкое значение ведет к rенерации статистически необоснованных правил, Поэтому правила, которые кажутся интересными, но имеют низкую поддержку, нужно дополнительно анализировать, рассчитывая для них лифт. О Уменьшение пороrа достоверности приводит к увеличению количества правил, Значение минимальной достоверности не должно быть слишком низким, так как ценность правила с достоверностью 5 % чаще Bcero настолько мала, что это и правилом считать нельзя. О Правило с очень большой достоверностью (> 85 90 %) практической ценности в контексте решаемой задачи не имеет, так как товары, входящие в следствие, покупатель, скорее Bcero, уже приобрел, Вернемся к задаче. Снова обратимся к вкладке Правила, rде, помимо самиХ ассоциативных правил, приводятся их расчетные характеристики: поддержка, дo стоверность и лифт (рис. 15.7).
rлава 15. Ассоциативные правила в стимулировании розничных продаж 641 Правила Е1 У.Н. ..,.' . r Правил. 17 иэ 17 'Фильтр: 6ез ФИльтрации I 1 1 Jli noддержк N9 !:::Номе ' !}.условие ;!; . ' . ;:'Следст....е i:;:::::-::::T ih, Достов.. Лиф .. L...... s !:... lК.Ол ВОlOjо ._<. . L 1 Стиральный порошо : , ! ':Т . Кондиционер для белья 79 3,В6 54,В6, 12,064 2 3 Кондиционер для я 'С'rиралЬНЫЙЛОрошОК aIm 79: 3,86 84,95 12,064 3 2 Запасной баллон для освеЖИТЕ' Освежитель воздуха 53 2,59 59,55 5,855 ( 1 j 161 i 4 5 ... 1 1 Бyмarа тУалетная Освежитель воздуха 9 Сода кальцинированная Чистящий порошок униве Зубная паСТа ЧИСТЯЩИЙ порошок уннвеr 14 Сода кальцинированная rель ДЛЯ туалетов Чистящий порошок униве 13 Сода кальцинированная 11 . Средство от накипи ЧИСТЯЩИЙ noрошок ужвВI' 15 Мыло кусковое Мыло жидкое Отбеливатель 6 Салфетки бумажные Освежитель воздуха 7 Средство для мытья посуды Мыло кусковое 12:ref1b АЛя туалетов МoIno кусковое МЫЛО Жидкое Средство дЛЯ МЫТЬЯ посуды lv'IblЛО кусковое 17 53 2,59 96 4,69 28 1,37 З4 1,66 76 3,п 25 1,22 50 2,44 131 6,41 56 2,74 37 1,81 167 8,17 167 В,17 29 1,42 42 2,05 58,69 72,18 5,790. 5'0551 5,028 6 7 8 9 10 11 Средство ДЛЯ чистки пл...,т 6 Мыло кусковое МЫЛО ЖИдкое 5 Мыло жидкое Мыло кусковое 16 "Мы.ло жидкое МoIло кускоеое СтирелbН>lЙ f10рошок pyчнoiI 1 О Средство для чистки кафеля ЧИСТЯЩИЙ порошок унивеr 71,79 70,83 4,961 69,п 4,В63' 46,30 4,734 47,17 В6,18 4,638 4,496 84,85 4,426' В4,09 4,387 42,60 В3,50 4,356 4,356 76,32 3,981, 48,28 3,381 Рис. 15.7. Ассоциативные правила, отсортированные по убыванию лифта Например, правило N 3 кондиционер для белья стирШlЪНЫЙ порошок автомат имеет S == 3,86 %; С == 84,95 % и L == 12,06. Это означает следующее. О Ожидаемая вероятность покупки набора кондиционер для белья + стирШlЪНЫЙ порошок автомат равна 3,86 %. О Если клиент положил в корзину кондиционер для белья, то с вероятностью 84,95 % он купит и стиральный порошок автомат. О Клиент, купивший кондиционер для белья, в 12,06 раза чаще выберет стираль ный порошок автомат, нежели любой друrой товар. Анализ правил позволяет прийти к выводу, что мноrие из них тривиальны, так как это лидеры продаж маrазина (см. популярные наборы, рис. 15.5), хотя есть и интересные правила (например, средство от накипи чистящий порошок уни версШlЪНЫЙ). И тот факт, что при достоверности 42 43 % встречаются тривиальные ассоциативные правила (например, МЪUlо куС'Ковое МЪUlо жидкое), rоворит о том, что можно найти интересные правила при меньших значениях достоверности.
642 Часть 11. Бизнес анализ в Deductor Сделаем следующее: О запустим алrоритм Apriori с интервалом допустимой достоверности от 25 до 40 %; о не будем рассматривать правила с лидерами продаж: это снова будут тривиаль ные правила. В итоrе получим как вариант следующие дополнительные правила (рис. 15.8). Как видно, все эти правила можно назвать полезными: они неочевидны, но понятны и имеют высокий лифт. 110. D v . K . "1' I!Я. 'пр"""л: 7 из 4i; ::= I ,N9 j};; tюме l &<,"vсJJOВИe Н r "'2! [ 4. , 51 , I 6. 11 Фильтр: !dсловие содержит [Запасной баллон для освежителя Пена!соль-длs: I С !СТ6ие .. ;M д ержк DBell v Л>rj) ] I 1<0 "-60:% j, ".: 14 Пена!сольдляванн Эамснс,йбаМОНдJ1яоtве>fИТ 28 1,37' 31,82 7,311 13 Заnaснойt;аллон для ос Пена!соль для ванн 28 1,37 31,4б 7,311 29 Салфетки бумажные Средство для ЧI1СТКИ плит 38 1,86 35,85 5,683 , :3,822 i 2,886 [ 1 2,47з1 2,077 Средспю для нытья пщуды 25 1,22 28,41 41 2,00 28,08 31 1,52 34,83: 31 1,52 29,25 28 ПeнajСОЛЬ ДЛЯ еанн 27 Пятновывод...,тель Отбеливатель 11 Запаснойбалl10НДЛЯОС Зубная паста 16 Салфетки бумажные Зубная паста Рис. 15.8. Полеэные правила с достоверностью меньше 40 % Как компания может применять на практике результаты ассоциативноrо aнa лиза? Перечислим лишь некоторые варианты: О осуществление кросс-продаж; О рациональное размещение совместно по купаемых товаров на полках; О применение ассоциативных правил совместно с АВ С-анализом для выявления наиболее доходных товарных позиций.
Сеrментация клиентов u телекоммуникационнои компании Описание бизнес задачи в такой высокотехнолоrичной отрасли, как телекоммуникации, методы и подходы Data Mining получили широкое применение. Решаемые задачи прежде Bcero свя заны с проrраммами лояльности и удержанием существующей клиентской базы, а также с привлечением новых потребителей услуr. В биллинrовых системах телекоммуникационных компаний накапливаются большие объемы данных. В первую очередь это информация об абонентах и стати стика использованных услуr. Анализ такой информации ручными и полуручными методами малоэффективен. Постановка задачи. Руководство филиала реrиональной телекоммуникаци онной компании, предоставляющей услуrи мобильной связи, поставило задачу сеrментации абонентской базы. Ее целями являются: О построение профилей абонентов путем выявления их схожеrо поведения в пла не частоты, длительности и времени звонков, а также ежемесячных расходов; О оценка наиболее и наименее доходных cerMeHToB. Эта информация может в дальнейшем использоваться для: О разработки маркетинrовых акций, направленных на определенные rруппы клиентов; О разработки новых тарифных планов;
644 Часть П. Бизнес анализ в Deductor о оптимизации расходов на адресную SМS рассылку о новых услуrах и тарифах; О предотвращения оттока клиентов в друrие компании. Данные за последние несколько месяцев, взятые из биллинrовой системы представляют собой таблицу со следующими полями (табл. 16,1), ' Таблица 16.1. Данные по абонентам из биллинrовой системы N!! Попе Описание Тип 1 Возраст Возраст клиента Целый 2 Среднемесячный расход Сколько в среднем денеr в Me Вещественный сяц тратит абонент на мобиль ную связь 3 Средняя продолжитель Сколько в среднем минут Вещественный ность разrовора на исходящие звонки тратит абонент за месяц 4 Звонков днем за месяц Количество исходящих звонков Целый в утреннее и дневное время 5 Звонков вечером за месяц Количество исходящих звонков Целый в вечернее время 6 Звонков ночью за месяц Количество исходящих звонков Целый в ночное время 7 Звонки в друrие rорода Количество исходящих звонков Целый в друrие rорода 8 Звонки в друrие страны Число исходящих междунаРОk Целый ных звонков 9 Доля звонков на стацио Вещественный нарные телефоны 10 Количество SMS Число исходящих SМS сооб Целый щений в месяц исходныIe данныI.. Были отобраны только активные абоненты, которые реryляр но ПОЛЬ30Вались услуrами сотовой связи в течение последних нескольких месяцев. Данные находятся на прилаrаемом к книrе компакт диске в файле mobile. txt, Решение задачи Покажем последовательность решения бизнес задачи сеrментации абонентов с помощью подхода, который основан на алrоритме Кохонена. Решение состоит из двух шаrов: О кластеризации объектов алrоритмом Кохонена; О построения и интерпретации карты Кохонена. В проrpамме Deductor сети и карты Кохонена реализованы в обработчике Kap та Кохонена, [де содержатся сам алrоритм Кохонена и специальный визуализатор Карта Кохонена,
rлава 16. Сеrментация клиентов телекоммуникационной компании 645 в Deductor канонический алrоритм Кохонена дополнен рядом возможностей. О Алrоритм Кохонена применяется к сети Кохонена, состоящей из ячеек, упоря доченных на плоскости. По умолчанию размер карты равен 16 х 12, что COOTBeT ствует 192 ячейкам. В выходном наборе данных алrоритм Кохонена формирует поля Номер ячейки и Расстояние до центра ячейки. О Ячейки карты с помощью специальной дополнительной процедуры объединя ются в кластеры. Эта процедура алrоритмы k means и G means. В результате в выходном наборе данных формируются поля Номер кластера и Расстояние до центра кластера. О Каждый входной признак может иметь весовой коэффициент от О до 100 %, который влияет на расчет евклидова расстояния между векторами. Импортируйте в Deductor набор данных из файла mobile. txt. Запустите Мастер обработки и выберите узел Карта Кохонена. Установите все поля, кроме Код, входными (рис. 16.1). !':i Мапер обработки Карта Ко><онена (1 из 8) ..... ......... НастроАка назнаqениА стопбllОВ Задайте назначения исходных столбцов данных I!lIiI Ei "".;-, v о "од .- Возраст Среднемесячный расход , Средняя продолжительноcrь Ра.. Звонков днем за месяц Звонков еечером за месяц Звонков ночью за месs:щ Звонки в др rие ropoдa Звонки в др rие страны Доля ЗВОНКОВ На стационарные... Количество SMS за месяц ИМ C'roябца COL1 Тип даННЬIИ Вещественный ' 0 ИнФормационное .... 1 jНеП ; IЙ . Назначение .Виа. даННЬI:>С СтатИСТИК9 МиЖ'o1!lМ о МакCИМ!IМ 4590 Среднее 2294.63067675868 H a ноРМatlизации... СТднtlф'Т"lOe откл. . 132522445133818 I [i1 ee > ..' I Отмена 1 Рис. 16.1. Установка входных полей в алrоритме Кохонена На этой же вкладке при нажатии кнопки Настройка нормализации откроется окно, тде можно задать значимость каждоrо входното поля. Оставьте значимость всех полей без изменений. Поскольку любой метод кластеризации, в том числе алrоритм Кохонена, субъ ективен, смысл в выделении отдельноrо тестовото множества, как правило, OTCYT ствует. Оставьте в обучающем множестве 100 % записей (рис. 16.2). На третьей вкладке задаются размер и форма карты Кохонена (рис. 16.3). Увеличьте размер карты до 24 х 18 (соотношение рекомендуется делать KpaT ным 4 : 3).
646 Часть п. Бизнес анализ в Deductor Jl]мacT"I> o6pa(ioТЮI .. Карт.. KOI<OtIeH" (2 м3 8) 111 2tl Разбиение ИСИОАноr-о набора данных на ПOJl.мно_ества Настройте разбиение исходноro множества Данны;.с На обучающее и тестовое множества ,.>-. Способ разделения ИCXQДtЮrо множества Д8Hнt;:;c.: I Случайно ..:J Множество , ПОРЯilО1< соprиро"",,'" .......", ... .. в 'JIOIeнra!L 'в строках .. .. . .... ....... " 100.00 I ..... ,.4 92,ПО..В<:>зраСТанию [] T CТ Boe .. (),()(), о По воэ р астанию TOr{): 100 00 # ,.. Количество CТjX>!< (ВCBro) 449:2 < Назan llanee Отмена Рис. 16.2. Разбиение набора данных на обучающее и тестовое множества !')Мастер обработки.. Карта Коконена (3 и3 8) 1iiIЕ1 НастроАка параметров карты к.оионена Укажите значения параМетров карты Кохонена ,fiIIjt! , ,) Параметры KaprbI I'аэмерпо осиХ 1 24 Размер по ОСИ У 1 18 Кол во <о<еек 432 i1 . 8И/1мр1Ъ1 i ' "'''' ''C '''"=''' : . ! 1" tpOPMёI ячеек I Шестиуrольные .! ... < Наз1Ш Дате> Отмена Рис. 16.3. Параметры будущей карты Кохонена На следующем шаrе оставьте все без изменений (рис. 16.4). Наконец, на последнем шаrе, предшествующем обучению, настраиваются пара метры обучения алrоритма Кохонена (рис. 16.5). Здесь задаются следующие опции. Способ начальной инициализации карты определяет, как будут установлены Ha чальные веса нейронов карты. Удачно выбранный способ инициализации может
/!1Мастер обработки Карта Коконена (4 из 8) rлава 16. Сerментация клиентов телекоммуникационной компании 647 >4f:f , l из 06 чающеrо множества .3 Настройка параметров останоВКИ обучения Укажите условия прекращения обучения. Обучение 6yцвr остановлено при выполнении OДHoro из условий. С....пвть rpимер распознанным.. еСЛИ ошибка Меньше 1°.05 1 500 р" Ощчающее множ6creo r Сr>eAI"'Я owибка меньше 1 I k , r MaкCllМaJ1bliaS< 0UJИ6t«I Ме!1ЬШе r Рac.noзнaнo примеров {%] Тестовое множество r Средняя ou.o<бкa меньше r МаксимaJ1bН<lS< 'owибка .teI<bWe I I 1 <: r Распознано примеров {%] < На3$. Далее' Рис. 16.4. Параметры остановки алrоритма Кохонена !'jjMacтep обработки. Карта Коконена (5 '" 8) НастроАка параметРО8 обgчения карты Коконена Укажите значения параметров обучения карты КШ:ОНена Способ начальной ЖИИ<IJ1И3Oц и карты w "Количество эпох... через которое неоБХОДИМО neремешИ6QТЬ строки Скоростъ 069Чения" !'jначале 069Чени<> Р/ШИ9С об9чения" В начале М9Чения .':J i .':J ; I 1 0.3 1 0.005 в конце 069'1еНИЯ в конце об9чения I Ступенчатая Ф9Н1<ЦИЯ COt>eДcтвa .. Кластеризация р Aвroмarичесш onpeдеl1ИТb коJlИЧeCТflO КJ1aC1'eP06 Уровень и. % l ' ..:J < Наз/Ш Далее> 111. х I / ""' " .:;I Отмена IlllIiI FЗ : 1 20 1 6 1 0.1 ..:.1 ; 1 < Отмена Рис. 16.5. Параметры обучения сети Кохонена существенно ускорить обучение и привести к получению более качественных pe зультатов. Доступны три варианта. О Случайными значениями начальные веса нейронов будут инициированы слу чайными значениями. О Из обучающеrо множества в качестве начальных весов будут использоваться случайные при меры из обучающеrо множества.
648 Часть П. Бизнес анализ в Deductor о Из собственных векторов начальные веса нейронов карты будут Проинициали зированы значениями подмножества rиперплоскости, через которую ПРОходят два rлавных собственных вектора матрицы ко вариации входных значений обучающей выборки, При выборе способа начальной инициализации нужно руководствоваться сле дующей информацией: О объемом обучающей выборки; о количеством эпох, отведенных для обучения; о размером карты. Между указанными параметрами и способом начальной инициализации суще ствует MHoro зависимостей, Выделим несколько rлавных, О Если объем обучающей выборки значительно (в 100 раз и более) превышает число ячеек карты и время обучения не иrpает первоочередной роли, то лучше выбрать инициализацию случайными значениями. О Если объем обучающей выборки не очень велик, время обучения оrраничен но или если необходимо уменьшить вероятность появления после обучения пустых ячеек, в которые не попало ни одноrо экземпляра обучающей BЫ борки, то следует использовать инициализацию примерами из обучающеrо множества, о Инициализацию из собственных векторов можно использовать при любом стечении обстоятельств, Именно этот способ лучше выбирать при первом озна комлении с данными, Единственное замечание: вероятность появления пустых ячеек после обучения выше, чем при инициализации примерами из обучающеrо множества, Скорость обучения задается скорость обучения в начале и в конце обу чения сети Кохонена. Рекомендуемые значения: O,1 0,3 в начале обучения и 0,05 0,005 в конце, Радиус обучения задается радиус обучения в начале и в конце обучения сети Кохонена, а также тип функции соседства. Вначале радиус обучения должен быть достаточно большим примерно половина размера карты (максимальное линейное расстояние от любоrо нейрона до друrоrо любоrо нейрона) или MeHЬ ше, а в конце достаточно малым, 1 или меньше, Начальный радиус в Deductor подбирается автоматически в зависимости от размера карты. В этом же блоке задается вид функции соседства: [ауссова или ступенчатая. Если функция соседства ступенчатая, то «соседями» нейрона победителя будут считаться все нейроны, линейное расстояние до которых не больше текущеrо радиуса обучения. Если применяется [ауссова функция соседства, то «соседями» нейрона победителя будут считаться все нейроны карты, но в разной степени, При использовании rауссовой функции соседства обучение проходит более плавно и равномерно, так как одновременно изменяются веса всех нейронов, что может дать HeMHoro лучший результат, чем если бы использовалась ступенчатая функ
rлава 16. Сеrментация клиентов телекоммуникационной компании 649 ция. Однако и времени на обучение требуется больше, поскольку в каждой эпохе корректируются все нейроны. Кластеризация в этой области указываются пара метры алrоритма k means, который запускается после алrоритма Кохонена для кластеризации ячеек KapTbl. Здесь нужно либо позволить алrоритму автоматически определить число класте ров, либо сразу зафиксировать ero. Следует знать, что автоматически подбираемое число кластеров не всеrда приводит к желаемому результату: оно может быть слишком большим, поэтому рассчитывать на эту опцию можно только на этапе исследования данных. Нажмите кнопку Пуск в следующем окне можно будет увидеть динамику про цесса обучения сети Кохонена (рис. 16.6). По умолчанию алrоритм делает 500 ите раций (эпох). Если предварительно установить флажок Рестарт, то веса нейронов будут про инициализированы соrласно выбранному на предыдущем шаrе способу инициализации, иначе обучение начнется с текущих весовых коэффициентов (это справедливо только при повторной настройке узла). IlJI';1acreP oбpomoтки KapT" Кoиotteffa (1)19 6} 1,1 15.I Построение карты Коконена Запуск nроцесса ПОСТJ)Oения карты Кохонена , jJ Обучающы- мнoжecттIO l т J естоsoе множество' 8Р Макс,оши6ка I (I!i':;Oi Br: аР Средн. оши6ка ,... ЗЯ 1Н)1 1 8r: Рacnoзнat<O [%) 01,14 1 1 ,ООЕ+02 3nо.а 21 01 Время обучения 00.00:46 1 1 '. 1 ,оОЕ+Оl r I .: j 1.00Е+ОО' "':"' :>; : '<" ' "O':f",,=.."т: :"' i _:: : ::.::t" __" _, _ : р , 11 т '"'О>. I rr n I . .стоп I н l о 20 40 60 80 100 120 140 100 180 200 J Рис. 16.6. Обучение сети Кохонена Для обученной сети Кохонена предлаrается специализированный визуали затор Карта Кохонена. Параметры ее отображения задаются на одноименной вкладке мастера (рис. 16.7). Область Список допустимых отображений карты содержит три rpуппы Входные столбцы, Выходные столбцы и Специальные. Последние не связаны с каким либо полем набора данных, а служат для анализа всей KapTbI. О Матрица расстояний применяется для визуализации структуры кластеров. полученных в результате обучения карты. Большое значение rоворит о том,
650 Часть 11. Бизнес анализ в Deductor Мастер обработки . I a Коконена (8 И3 9) llll1ii1 FЗ н астроАка отобра_еttИfI карты Коконена Выберете необходимые отображения карты Кохонена и настройте и)с параметры {Х ,. ' Список АОП!lСТИМЫХ отображений ""РТы ftj I!J Входные столбцы О Выходные столбцы В f!:l Специальные D Матрица расстояний ra Матрица ошибок квантования . f!:l Матрица плотности попаа,ания , О Кластеры О Проекция Саммона Способ раскраW>EaНИ<11Nee1 ' E'!I rрanация ceporo р ;C;: : ёrC! ap;: 1 .:::J r r ранИцы ячеек r r р.ницы кластеров Размер ячеЙ КИ ПО умолчанию (пикс,j 1 14 Далее> Отмена I < Наз..д Рис. 16.7. Параметры карты Кохонена что данный нейрон сильно отличается от окружающих и относится к друrому классу. О Матрица ошибок квантования отображает среднее расстояние от расположения примеров до центра ячейки. Расстояние считается как евклидово. Матрица ошибок квантования показывает, насколько хорошо обучена сеть Кохонена. Чем меньше среднее расстояние до центра ячейки, тем ближе к ней располо жены примеры и тем лучше модель. О Матрица плотности попадания отображает количество объектов, попавших в ячейку. О Кластеры ячейки карты Кохонена, объединенные в кластеры алrоритмом k means. . о Проекция Саммона матрица, являющаяся результатом проецирования MHO rомерных данных на плоскость. При этом данные, расположенные рядом в исходной мноrомерной выборке, будут расположены рядом и на плоско сти. Дополнительно справа имеется еще ряд настроек О Способ раскрашивания ячеек цветная палитра или rрадация ceporo. Цветная палитра наrляднее, однако если потребуется встраивать карту Кохонена в отчет с последующей распечаткой на бумажном носителе, то лучше выбрать серую цветовую схему. О Сrлаживание цветов карты цвета на картах будут сrлажены, то есть будет обеспечен более плавный переход цветов. Это поможет устранить случайные выбросы.
rлава 16. Сеrментация клиентов телекоммуникационной компании 651 о rраницы ячеек установка данноrо флажка позволит включить отображение rраниц ячеек на карте. О rраницы кластеров установка данноrо флажка позволит включить отображе ние rpаниц кластеров на всех картах. Этот режим удобен для анализа CТPYK туры кластеров. О Размер ячейки по умолчанию указывается размер ячейки на карте в пикселах (по умолчанию 16). Текущая ячейка отображается на карте маленькой окружностью черноrо цвета. Изменить текущую ячейку просто: щелкнуть кнопкой мыши на нужном участке карты. Внизу каждой карты на rpадиентной шкале в желтом прямоутольнике отобра жается числовое значение признака, соответствующее цвету ячейки. На рис. 16.8 приведены получившиеся карты Кохонена. По матрице плотности попадания видно, что в одной ячейке сосредоточил ось 259 объектов. Эта ячейка выделяется белым цветом. Можно при ступать к интерпретации результатов кла стеризации. у.:......... , Q>e fIЧIIbli1 f)<>C>«)A "i} 1'/POд0JlЖl'Т .э......ш ов ДtIe>I эаJ4el3Щ..... .\t - ... ;.. .. _ 7" 19 . . 70 6mJ 5142. в' 1.6004 10. "n' , 3lIмесяЦ "JU ЗIIooIwalЮчьюэаО,.,.е,:щ 3DotI(И8дРУ r " о .. . 20 71317 250.50" 500 ..!i.I ..!i.I 8 дjivrиe страны ';О; .' .. _ :rt r 62326 00.5"""'"'"'160' о 025237 55 110 44 ' si ' '"", 1 2 ДОfl:1" ...а iJ еоSМs- мmщ ' 'oQIИ&Ж- UiI.rЩ!lli!," .1111 . 1I.;[ . :. I! ' jl!";' j f:1.i.9 . . .... , ,' . .. '..'.'. ' :..... ' ", м. .... :;. ".. , ... .. "';'''''. , .. " .. ...у..с, .... , ".:'>с :J..' i' о 0913ЗZ за 60 1 9['з22 89.5 179 О 100.эz 2.1З5б 4.2712 256 Рис. 16.8. Карты Кохонена для сеrментации абонентов сети сотовой связи Попробуем выделить на карте изолированные области самостоятельно (без использования BCTpoeHHoro метода rpуппировки ячеек алrоритмом k means). Анализируя карту Возраст (рис. 16.9), видим, что четко выделяются три возраст ные rpуппы: молодежь, люди среднеrо возраста и люди старше 45 лет. Остановимся подробнее на молодежи. Она неоднородна здесь можно Bыдe лить несколько кластеров. Первый расположен в правом нижнем уrлу (рис. 16.10). Абоненты этой условной зоны активно и продолжительно разrоваривают по
652 Часть 11. Бизнес анализ в Deductor ,.- . . 44.5 Рис. 16.9. Деление по воэрастным rpуппам д:;н 3ёI месяц """'2:>1 3вонков tIOЧЫ:O 3а месяц '1170.296 I MHoro ночных раэrО80рОВ ; 'I . """ ,:', . ! ' I 5 00' Ц59Б1 55 11 0' : '1 n CpeдЮuI прьд JIbНOCt.!:!.1 i f(ОJlloNt:!спю sмs 3а месяц MHoro SMS i!.I' 3вot!кoв вечерщ3а мec ,JU . "" :. , . 0/ '*tt " 250.5 " 1liO 2!J (ре' немеСRЧНЫЙ расход ,;' i't.. ". . i .:! 1i.!!ИJ, 2573 5142,8 0 .1 14.72541 10 : 05 zOo ' ,' в9 ,5 , 179 Рис. 16.10. Кластер «Активная молодежь!> телефону вечером и ночью, отправляют MHoro SМS сообщений, соответственно, и тратят на разrоворы больше денеr, чем друrие представители возрастной rpуппы. Обратите внимание, что в этот кластер попала львиная доля тех, кто увлекается ночными разrоворами. Можно предположить, что это студенты и молодежь, часто проводящие вечера вне дома. Вверху (рис. 16.11) сосредоточилась небольшая по числу ячеек rpуппа молоде жи, которая не отличается активностью разrоворов и пользования SМS услуrами ни днем, ни вечером, ни тем более ночью, и, как следствие, ежемесячные расходы на связь у представителей этоrо кластера невелики. Остальные люди в этой возрастной rруппе ничем особенным не выделяютсЯ: умеренные расходы на связь и преимущественно вечерние разrоворы. Можно
I лава 16. Сеrментация клиентов телекоммуникационной компании б53 предположить, что сюда попала наибольшая часть молодежи. Таким образом, в молодежной возрастной rруппе мы обнаружили три кластера. .. .:.. . . . :,<. ; tl", "oI-.h .. .. .. .. .. . .... ".:t1 :.1; :. "6:'. ,:;:t.. 2!.1 3IIOНК()В I>eЧ!'PОМ за МОЩ'Ц, " ! oЫ' : ';' ':"".: .q"... , -. ЗВОНКОВ дне.. за месяц EJ 3вotIкoB ttOЧbtQ;Н мео;яц 55 ; 'l4ало paзrоворов вечеfS'oм .;;I!< t :', . D sdmт ." о ;q>' '1>... , 250.5 50 0 IIШШ.IO 1 , 110 1 СредНЯЯflPOдо= eмeoIЧНЫЙ С I_ . 2!.1 КoIIичес'l'ВО SМ5 3а мео1Ц ! ф. .t :: лf.!f!:,j:-: !: , 160 .J!.I , 4. I , " , ,. ....... '. ;" " WJ:IO 5142 .8' 1 0126.4391 I , I , , 0.1 15.21971 10.05 20 2573 89.5 179 Рис. 16.11. Кластер молодежи с пониженным потреблением услуr свяэи Продолжим интерпретацию карты Кохонена и теперь остановимся на людях зрелоrо и пенсионноrо возраста. Обратим внимание На ярко выраженный cry сток в нижней'области, в котором практически по всем признакам, кроме SMS, наблюдаются высокие значения, в том числе по звонкам в друrие rорОДа и CTpa ны (рис. 16.12). Это так называемые VIР клиенты: бизнесмены, руководители, топ менеджеры. Они преимущественно зрелоrо возраста, очень MHoro разrова ривают днем и вечером (скорее Bcero, по работе) и практически не пользуются SМS услуrами. Месячные расходы на связь у этой катеrории абонентов самые высокие. раоюд 1IiI1III2:!J Средняя fIPOAtUl)l(lOfrellbtlOt:l2:d . Самые 8ысокие Продолжительные раСХОДЫ,разrО80рЫ I /' звонки в дpyr-иe t:ТpВНb1 2:!J Частые международные эвонки "'IjI .... {.:. " . ,1 . ,JI ". . D З .18 25 3344.91 5142. 8 0 .1 2fi 'о ЗВОНКОВ днем за ..есяц EJ 38otII<OO"iie.iepoм 3ci' мea.ц.2!J звонки в дР1/rие rOPOAa 4t. ... MHQrO разrоворов ,v.. В..рабоче "i8ре- я I , 12 '.i.I ," . , I . -.. .... ..' . .... "'''i;t.. '1 I 1 D 25 0 .5 1347791 II 500 1 D I I I 80.5 1119311 160 о . .. 131.5221 4 4 , 88 Рис. 16.12. Кластер VIР клиенты»
654 Часть 11. Бизнес анализ в Deductor Чуть выше в небольшом кластере наблюдается противоположная картина: люди практически не пользуются услуrами сотовой сети (рис. 16.13). Вероятнее Bcero, это пенсионеры, которым мобильная связь нужна преимущественно для приема входящих звонков, сами же они почти не звонят. Их расходы на СВязь самые низкие, возможно, Из за Toro, что единственным их доходом является пенсия. Изучим статистические характеристики этой rруппы людей. Нажмите кнопку Показать/скрыть окно данных "'Ь ,затем кнопку Изменить способ фильтрации и установите Фильтр по выделенному ;r. . Там же переключитесь в режим статистики (кнопка Способ отображения). Колонка Среднее даст следующие вычисленные значения (таблО' 16.2). Остальных людей в возрастной rруппе «Зрелый и пенсионный возраст объ единяет то, что они в основном звонят вечером и не используют SМS сервис. С большой долей вероятности можно утверждать, что сюда входят работающие пенсионеры, дачники, родители совершеннолетних детей. 80З" т п Среднемесящ..ыи раtюjд .....l!.i СредНЯЯПрОДI).I1ЖИ ЫЮ ":"..!' ". () 'с ; . * )< .(;амм.стаРШ8Я зрастi-Iая rpynna , .. .. .. ".' о 1 9 4 4 .5 J 2573 5142. 8' З8ottI.ов AHet 38. t есЯЦ. ,..жt З80ttков B ..38 мet:яц .жt % 1 j ' 1005 1 20 .!1J. Зrю,,08 НОЧЬЮ за мet:яц "O' ',t;." :. "r Редкие;ЗВ fiКИ i "" А так и веч", ом . r I 500 '., Шмu .. . ..' '>.;..< 1 250.5 м- >;. " 160 1 2.9992[.171 1 , I 55 1 110 80.5 Рис. 16.13. Пенсионеры, практически не делающие исходящих эвонков Таблица 16.2. Статистические характеристики кластера 5 Н!! Признак Среднее значение 1 Воэраст 64,5 2 Среднемесячный расход 49,7 3 Средняя продолжительность раэrоворов, мин 2,1 4 Звонков днем эа месяц 13,4 5 Звонков вечером за месяц 7,4 6 Звонков ночью за месяц 0,3 7 Звонки в друrие ПJрода 0,5
rлава 16. Сеrментация клиентов телекоммуникационной компании 655 Н!! Признак Среднее значение 8 Звонки в друrие страны 0,05 9 Доля эвонков на стационарные телефоны, % 5,7 10 Количество SMS в месяц 1,6 Осталась последНЯЯ, средневозрастная rруппа. Это кластер работающих лю дей. В нем можно отметить rpуппу тех, кто совершает мало звонков вечером. Теперь включите автоматическую rруппировку ячеек в кластеры: Настроить отображения Кластеры. При установленном флажке Автоматически определить KO личество клаcrеров (с уровнем значимости 1,00) будет работать алrоритм G means и получится 11 кластеров (рис. 16.14, а). Это очень MHoro, поэтому следует при нудительно установить, скажем, 6 кластеров (рис. 16.14, б). ..... Кпастеры ( { .,,,!, < ."::""' ' >.>: ..JIIO'""П.. """ ' .' KJ!8cтepbI' . . ..iI ... , } ':1' . I I I I О 1 2 3 о i "j'; D <. ......... 1 1 1 I , [ill 1 о ' 1 Ш 1 1 1 4 5 6 7 8 О 2 3 4 а б '. , 5 Рис. 16.14. Варианты rруппировки ячеек: а алrоритм G means; б алrоритм k means Видно, что алrоритм k means при 6 кластерах выделил целиком кластер «Зре лый и пенсионный возраст , раздробились rpуппы «Молодежь и «Люди среднеrо возраста . Не были явно выделены кластеры 2. 4 и 5 из табл. 16.3. Тем не менее автоматическая rpуппировка ячеек в Deductor имеет одно важное преимущество: в наборе данныХ появляется столбец Клаcrер с номером, который можно исполь зовать в дальнейшем, в частности «проrонять новые объекты и получать для них номер кластера. Кроме Toro, через визуализатор Профили клаcrеров можно изучить статистиче ские характеристики кластеров: мощность (число записей, попавших в кластер), среднее и др. (рис. 16.15). Это очень полезно, так как карты Кохонена не позволяют увидеть все детали. Кластерам можно дать краткие названия. В этом ВИЗУaJШзаторе особый интерес представляют две характеристики зна чимость и доверительный интервал. Значимость выражается в процентах, и для непрерывных полей используется t критерий Стьюдента. 95% ный доверительный интервал представляется в виде rpафическоrо изображения для среднеrо значения кластера.
656 Часть 11. Бизнес анализ в Deductor кластеРО8 + "iI" . Gli . , "5 {}if' , . Кnастеры Мо1lOдежь 1 I I МолодеЖЬ 2 1 11[ . : r.:ro)I(""JI 8 9.0 Количе,тво l ЗиaчимocTh ,.- 5М5за месяц иц ,.{ 100J)% i I ДоееРИ'teJ1t>1'IbIН интервал rq;;,AHee Hдa !H. OT_ b. 1 craHAaPTr, 0WI1б. 8 9.0 Cpe H""'ec. 3нач...,ость чныи расход 123.98 20.562 1.8692 100.0% 1 ... -v- - - - - - ....- I Доверительный интервал д ee , c , Т ,, " Hдap . T . T"H дapT H. ошиб. 8 '.0 Возраст 3нaЧI1МOCТb ДоеерИ'te/1bНbl" интервал 93925 645,64 58,694 , 100.0% I " ...... C peД H ! . ..?ТК1I. .<::;андар тн. ошиб. ,.tI9.0 3еонков Зночl1МOCТb ' 28.777 5.5745 0,50677 '100.0%1 : D r ., Зрелый и пеНсt10ННblЙ . .. П "'''' ''' ' " U I чlOО.о% 11,- , 81274 9.698 0,70357 ( 99,6%' : 1 0,057624 1 9.5% ' . 636.73 . 508.23 1, 612,67 729,9. 44,448 14.523, , I IOO.O%, :''' 100.0 ; i ' " " "H " I ---- 26,811 6.3858 0,46328 ,; 52.5% 50 252 9,7149 0.1933 60,3% Рис. 16.15. Профили кластеров На прилаrаемом к книrе компакт диске данный сценарий в Deductor для cer ментации абонентов соответствует файлу som. ded.
Скоринrовые модели для оценки кредитоспособности заемщиков Описание бизнес..задачи Технолоrии кредитноrо скоринrа автоматической оценке кредитоспособности физическоrо лица в банковской среде традиционно уделяется повышенное ВНИмание. Сеrодня можно сказать, что экспертные методы уходят в прошлое, и все чаще при разработке скоринroвых моделей обращаются к алrоритмам Data Mining. Классическую скоринrовую карту можно построить при помощи лоrистической реrрессии на основе накопленной кредитной истории, применив к ней ROC aHa лиз для управления рисками. Кроме Toro, хорошие и леrко интерпретируемые модели можно получить, используя деревья решений. Постановка задачи. В коммерческом банке имеется продукт «Нецелевой потребительский кредит : кредиты предоставляются на любые цели с принятием решения в течение нескольких часов. 3а это время проверяются минимальные сведения о клиенте, в основном такие, как отсутствие криминальноrо прошлоrо и кредитная история в друrих банках. в банке Накоплена статистическая информация о заемщиках и качестве об служивания ими долrа за несколько месяцев. Руководство банка, понимая, что отсутствие адекватных математических инструментов, позволяющих оптими зировать риски, не способствует расширению розничноrо бизнеса в области потребительскоrо кредитования, поставило перед отделом розничных рисков
658 Часть П. Бизнес анализ в Deductor задачу разработать скоринrовые модели с различными стратеrиями креДИТова ния, которые позволили бы управлять рисками, настраивая уровень одобрений, и минимизировать число «безнадеЖНЫХ1> заемщиков. Исходные данные. Вообще roворя, =формация о заемщиках физических лицах и кредиПlЫХ доrоворах хранится в банковской информационной системе. Там же co держатся rpафики и даты поrашений кредита, сведения о просрочках, об их суммах, о процентах и т. д. Получить для построения скоринrовой модели таблицу с параме тра.'1и заемщиков и информацию о наличии просрочек отдельная задача. Будем считать, что она уже выполнена и результат пред ставлен в виде TeKcToBoro файла. Важным также является вопрос о том, что понимать под параметрами заемщика. Здесь уместно обратиться к rлаве 1, rде рассматривались методические аспекты подrотовки и сбора данных для анализа, и вспомнить, что на зтом зтапе требуется активное взаимодействие с экспертами: они с высоты cBoero опыта оrpаничат Kpyr входных переменных, которые потенциально MOryT влиять на кредитоспособность будущеrо заемщика. Кроме Toro, следует учитывать аспектыI бизнеса и технические вопросы (например, сложно проверить в короткий срок достоверность признака «Сфера деятельности компанию), а потому полаrаться на Hero не стоит). Скоринrовые модели часто строятся на катеrориальных переменных, и для этоrо непрерывные признаки квантуются при помощи ручноrо выбора точек разрыва (или полуручноrо, см., например, подраздел «Тест Чоу» В разделе 8.9). Скажем, переменная Стаж работы разбивается на три катеrории: «до 1 rода1> , «от 1 до 3 лет», «свыше 3 леТ1>. Такую модель леrче интерпретировать, но она Me нее rибкая при моделировании связей: rоризонтальные «ступеНИ1> дают плохую аппроксимацию при наличии частых крутых «склонов». В банковской практике перед скоринrом заемщик, как правило, проходит процедуру андеррайтинrа проверку на удовлетворение жестким требованиям: соответствие возрасту, отсутствие криминальноrо прошлоrо и, конечно, наличие определенноrо дохода. При этом выдвиrаются требования к минимальному ypOB ню дохода и рассчитывается возможный лимит кредита. При ero расчете участвует один из двух коэффициентов П/Д либо О/Д. Коэффициент Ллатеж/Доход» (П/Д) отношение ежемесячных платежей по кредиту заемщика к ero доходу за тот же период. Считается, что значительная величина этоrо коэффициента (свыше 40 %) свидетельствует о повышенном риске как для кредитора, так и для заемщика. Коэффициент «Обязательства/Доход» (О/Д) отношение ежемесячных обязательств заемщика к ero доходу за тот же период с учетом удержаний налоrов. В обязательства включаются расходы, связанные с выплатой планируемоrо Kpe дита, а также имеющиеся друrие долrосрочные обязательства (выплаты по иным кредитам, на содержание иждивенцев, семьи, алиментов, обязательные налоrовые платежи и пр.). Считается, что размер ежемесячных обязательств заемщика не должен превышать 50 60 % ero совокупноrо чистоrо дохода. Заявки клиентов, не прошедшие андеррайrnнr, получат отказ и даже не попадут на скоринr. Поэтому на вход скоринrовой процедуры выrоднее подавать не доход клиента, а отношение О/Д или П/Д.
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 659 в нашей задаче представлено 2709 кредитов (файл loans. txt) с известными исходами lUIатежей на протяжении нескольких месяцев после выдачи кредита. Ha бор данных уже разбит на два множеСтва обучающее (80 %) и тестовое (20 %) при помощи процедуры стратифицированноro СЭМlUIинrа так, чтобы в каждом MHO жестве доля плохих кредитов была примерно одинаковой. В табл. 17.1 отображены структура и описание полей TeKCTOBoro файла с кредитными историями. Таблица 17.1. Данные по заемщикам и качеству обслуживания ими долrа N2 Попе Описание Тип 1 Код Служебный код заявки Целый 2 Дата Дата выдачи кредита Дата/время 3 О/Д, % Коэффициент О/Д (<<Обязательства/До Вещественный ход!> ) в % 4 Возраст Возраст заемщика (полных лет) на момент Целый принятия решения о выдаче кредита 5 П роживание Основание для проживания: собственник; Строковый муниципальное жилье; аренда 6 Срок проживания Менее 1 rода; от 1 rода до 5 лет; свыше 5 лет Строковый в реrионе 7 Семейное положение Холост/не замужем; женат/замужем; разве Строковый ден ( a)/BДOBCTBO; друroе 8 Образование Среднее; среднее специальное; высшее Строковый 9 Стаж работы на по Менее 1 rода; от 1 rода до 3 лет; свыше 3 лет Строковый следнем месте 10 Уровень должности Сотрудник; руководитель cpeJIHero звена; Строковый руководитель высшеro звена 11 Кредитная история Информация берется из бюро кредитных Строковый историй. Если имеется неrативная инфор мация о клиенте (просрочки по прошлым кредитам), то ему присваивается катеroрия «отрицательная!> 12 Просрочки свыше Факт наличия просрочек свыше 60 дней: Целый 60 дней О отсутствовали, 1 имели место 13 Тестовое множество Служебный признак, отвечающий за то, к Ka Лоrический кому множеству относится запись. TRUE соответствует тестовому множеству Скоринrовая карта на основе u лоrистическои реrрессии Базовым статистическим алrоритмом, который строит аналоr традиционной балль ной скоринrовой карты, является лоrистическая реrрессия (см. rлаву 8), С нее и начнем решение задачи.
660 Часть 11. Бизнес анализ в Deductor Импортируйте файл с Кj)едитными историями в Deductor. Скоринr представляет собой задачу бинарной классификации, которая относит заемщика к одному из двух классов плохой:!> или «хороший:!>. Если заемщик «хороший:!> кредит выдается, если плохой:!> выносится отрицательное решение. Разделение заемщиков на «плохих:!> и «хороших:!> осуществляется на основе качества обслуживания ими дол [а, проще rоворя наличия просрочек. В банковском деле существуют различные шкалы перехода от числа просрочек к классу заемщика, и это тема для отдельноrо обсуждения. Примем следующее правило: если у клиента была хотя бы ОДНа про срочка свыше 60 дней, то он относится к классу неблаrонадежных. Запустите Мастер обработки, в катеrории Прочие выберите Калькулятор, запишите это условие, в реэуль тате чеro появится новое вычисляемое поле Класс заемщика (рис. 17.1). Мастер 06ра60ТКИ. КaJlbКуnятор (1 И] 3) I!!lliIfЗ Конструктор выра.ения Создайте eыpaжetl-iе. вычисляемое на основе столбцов данных, ИCf"ЮJЬЗyЯ арифметические операции, а также Бстроенные ФУНКЦИИ Ы" -, " Наэеание .Ь K1I<IOO эaeмщl<Ка t IF(C. ",.00 , "Ilлохой" ,"Хороший") <J> <>11 I? .:::J Им. CТOJ16Цa 9.0COL1 111 COL2 9.0 СОLЗ 9.0 COL4 аЬ. . Метка сто а Код Дат.& ОД % Возраст ("'''''- I Дам!е" Отмена Рис. 17.1. Соэдание HOBoro поля Класс эаемщика Далее с помощью визуализатора Статистика можно узнать, что имеется 500 запи сей с «плохими:!> кредитами, что составляет 18,5 % всех выданных кредитов. Это не так уж и мало: в практике кредитноrо скоринrа число записей миноритарноrо класса может быть и меньше, вплоть до 1 3 %. Поэтому задача классификации заемщиков всеrда решается в условиях сильной несбалансированности классов (см. раздел 12.6). Таким образом, выходная бинарная переменная Класс заемщика у нас уже имеется. В качестве входных имеет смысл оставить все, кроме Код иДата: очевид но, что они никак не влияют на кредитоспособность. Поля Возраст и О/Д, % оставьте непрерывными. Построим модель лоrистической реrрессии, которая рассчитает COOTBeTCTBY ющие коэффициенты реrpессии. Для этоrо в сценарий после узла квантования добавьте обработчик Лоrистическая реrрессия. Установите входные и выходные поля, как это показано на рис. 17.2.
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 661 MaCTep обработки Лоrис.тическая реrрес.сия (110'13 6) +'ЧF'- I!lIiI fЗ НастроАка назначениА столбцов ЗCVl.айте назначения ис одныx столбцов данны)( . J : т "ПдамнЬО< Н""начение I сои 'ВOIJI 1 0 Информационное oд.% Возраст Проживание Срок проживаНИА в репюне Семейное положение 06paзoвatИO Стаж рабаты на послеанем ме{ Уровень JlОЛЖНОСТИ Кредиrная история ')( Просрочки свыше 60 дн Класс заеМЩика . . А Имяcrопбца BWI,Jlatil'ibD! Croncr-кa ," МИНИМ!!М I н""""""",ный 1 M 27U9 среднее 1355 Нl)(;'tpt;Iйка Нфo!W1IISaIIЖ., 1 I Станаартное {J'fКJI, 7В2.1б5263В6БЭ15 I liaI'ee> I !h'мeж! Рис. 17.2. Задание ВХОДНЫХ и ВЫХОДНЫХ полей в этом же окне нажмите кнопку Настройка нормализации. Для выходноrо поля Класс заемщика порядок сортировки уникальных значений (которых в лоrисти ческой реrрессии всеrда два) определяется типом события: первое отрица тельное, второе положительное (рис. 17.3). В скоринrе принято, что чем выше рейтинr заемщика, тем выше кредитоспособность, поэтому значение «хороший будет положительным исходом события (второе по счету), а «плохой отри цательным (первое по счету). r;j Настройка норМализации Данным I!IDfЗ Метка croп6ца ....:..1:. !А-ин. 3 B)(QQH l e столбцы Lon.% Шi Возраст > .:ш:i Проживание :ш:i Срок npоживаНИR в... :ш:i Семейное положение , :ш:i Образование !Ш Стаж работы на пос... :ш:i Уровень JlОЛЖНОСТИ . .:ш:i Кредитная Io1стория ::} BblxOДHbte столбцы . .: к11are заемщика 11 Макс. Нормализатор ' }} Уникальные значения [ п 'у;:;.каl1bН';:;';' е... 55 'иtщeксы, (, Парамerpы нормализации I r ..cтorp.....a I ..Yн! !"! . t! ПЛОlo:оtt Хороший j ' Ко""",, "'1 f i r l' .а.' .... 1:; Параметры l1инet:1нorо преобразования п.,р""""ры JИ<eЖoro npеофoэoeae>iЯ не До .'. Ir::::jj _ :;! Отмена Рис. 17.3. Задание ТИПОВ событий выходноrо поля в следующем окне мастера будет предложено настроить обучающие и тестовые множества. Поскольку у нас есть специальное поле, в котором хранится информа ция о разбиении на множества, укажем ero, установив соответствующие настройки (рис. 17.4).
662 Чаcrь 11. Бизнес анализ в Deductor 1'1 Мастер 06pa60TK лоrист....чесКая рerрессия (2 из 6) II!IОfЗ Разбиенме ИСХОАноrо набора данных на ПQAмншкества Настройrе разбиение ИСXQЦноrо множества данных на обучаlOшее и теСТОВое множества / I ' Cnocоб разде.l1eНИЯ исходtЮrоNt10жества Д I)I Столбeu ,аля р8Э4елeнJ.iЯ ИC'lЮdНOf"о МffOЖeCТБ.3 I По столбцу .:..1' I т естовае множество ,,-1 _ Множecrso cE в tlf!01!f!I:Л';о< , ..8 строк,," !9. 21БТ 2001 . 0.00 2709 Поряц.ок сортировки iJ &!! Об чаЮLЦе т еСТО80е итоrо. ........,' По "оэраст"""" Пов анию t КotмчеСТВО(;fI>QК(ecero) 27Оз 'H I Далее I отмена Рис. 17.4. Настройка разбиения набора данных На третьем шаrе мастера предлarается изменить параметры алrоритма лоrисти ческой реrpессии (рис. 17.5). По умолчанию пороr классификации равен 0,5. Пока оставьте ero без изменений. ,p MaKt:...MaпbtIoe чисilO иrepаq.ий 1 500 .:.%J А.пrоритм расчета кооФФИциeНl'йtS зae:epwmся,кorда очередное 3Начеl1ие лorариФм"ческtJЙ Фytf<ЦИ< q>aБДOЛOДобия,2"Log(Liketюod) npeкparит изменЯfbСЯ в пределах зао.анна1 ТO'I-IOCТ.... Iочноеть ф!jНJЩИИ oцe 11 Е 7 Оценочной cpgнкциeЙ: яеJlЯelТ ЛQrllриФма ФУнRци ... npаедоподобия .2'1.og{1J1<ehood) Пороr отсечения 1 0,5 3-ц""" би....рнс,й КЛаС бyцer peweнa H основе З<Аaннoro пoporа ШIЯ nOля со значением рeйtин-а Считать пример распознанным.. есnи 1)IUибка меньше , ...." ,< ....,с J. ....... 1 °.05 Рис. 17.5. Настройки алrоритма л<?rистической реrрессии На последнем шаrе нажмите кнопку Пуск будет построена модель и мастер предложит выбрать визуализаторы узла. Укажите следующие: RОС анализ, Коэф фициенты реrрессии, Что если, Таблица сопряженноcrи, Таблица. В визуализаторе Таблица видно, что добавились две новые колонки: Класс заем щика Рейтинr и Класс заемщика ОUТ (рис. 17.6). Рейтинr представляет собой рассчи танное значение у по уравнеlШЮ лоrистической реrpессlШ, а второе поле определяет принадлежность к тому или иному классу в зависимости от пороrа окруrления. Визуализатор Коэффициенты реrpecсии наrлядно показывает рассчитанные коэф фициенты лоrистической реrрессии, которые являются прототипом скоринrовой карты, и соответствующие им отношения шансов (рис. 17.7). Проинтерпретируем отношение шансов для признака Стаж работы. Если стаж работы на последнем месте от 1 до 3 лет, то шансы стать блаrонадежным заемщи ком при фиксированных значениях друrих переменных в OR == 1,71 раза выше
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 663 по сравнению с тем, у Koro стаж менее 1 rода. А если стаж свыше 3 лет, то шансы увеличиваются в 2,67 раза. .' c:!i' S;J t:< "iI" '"ч'.., 22/2709 .., / f Кла.х З Плохой Хороший : Хороший r; ПJlO1o:0'Й ... < ХО/?ОШИЙ Clлохой Хоеоши . .. Хороший Хороший . Хороший I}лохой Хороший. Хороший Плохой Класо МЩИl"а OUТ .ПлQloЮЙ Хорош .. роший ,Х роший ,Хороший Пло>:ой ОJ:!ОWИ > Хороший ;Хороwий Хороший :;Пл ;' : .. ХОJ?ОШИЙ Хороший Х СШ й Класс Зёleмшика Peйn.к 0,3896 0,9976 0.9253 0.5858 ОJЗ516 0,4219 0.7В17 0.9160 0.9979 0.9222 .. 0.3101 0.9963 0.9806 0,9818 -ttТbI." '" Рис. 17.6. Выходные поля ' ] 1!Ii. Вь ол.ное no.пе: Класс аемщика I Amи'м- - э.(} <КDнctaнrb> '..ОД.% 9.0 Врзраст :1 b nрожа.еание щ,.,.... М!I'Иt«nаl!bНOE! )f(щы- , Co6crоежик : .;sb Срокпрожнвания _perиоме -1'i1'etIee1 rOй.e от1до5лет -С8Ь1We 5 лет --:. ,аЬ l"ЮIЮЖeНI1e д""..,., ж....../""""fII'"М --P aVВ4o cтeo XorocтlНe эам ем & .аЬ еание -'6Ь1CtUee сродное среднее I::neuиafibНQ8 ' .;sb __с1' Ж рабо,ы НQ HeM мecre 1TQ:I,b 'ml rОАаДО 3 лer С6Ь1UJe 3 лет ":. .аЬ__ УpoIЮНb DClII)k.ttQCТU й!Кa:!QIlI.iТeIЬ выcшero зеена Ctle4Нel"038eНa cor .;sb t(petJ.ИТна:Я ИС1"QpIoIЯ """"'"'" -.- J Козфф Отноweниe ЩЗНСQВ О 94342 -0,041506 095934 0.002304 1.0023 01 1.5517 4.7196 1.9J12 6,Э396 01 1,0084 27412 1.4721 4.3583 01 124993,4901 bI479 ОЯ99 0;1щ;13 2,0241 01 '1)JЗ17 016015 -0,86975 0.41906 01 0.54157 1.71 В7 0,98386 2.6748 01 J:Е1395 09Э48З 0.45748 0.63287 01 -1,9173 0147 VJ52 7 7836 Рис. 17.7. Коэффициенты лоrистической реrpессии Про интерпретируем теперь отношение шансов для поля ОД, %: OR == 0,96. Оно меньше единицы, значит, увеличение кредитной наrрузки снижает итоrовый скоринrовый балл клиента. Рассмотрим потенциальноrо заемщика А, у KOToporo доля выплат по кредиту в структуре дохода на 1 О % меньше, чем у заемщика Б.
664 Часть 11. Бизнес анализ в Deductor Torдa можно сказать, что снижение ежемесячных выплат на 10 % приводит К Тому, что вероятность стать хорошим заемщиком вырастает в ехр (10.0,041506):::: == 1,52 раза. Визуализатор RОС кривая выводит rрафик RОС кривой, на котором по умол чанию отображаются положение текущеrо пороrа отсечения, а также значения чувствительности и специфичности, показатель А U С и типы событий (рис. 17.8). Площадь под кривой равна 0,894 на обучающем множестве и 0,905 на TeCTO вом, что rоворит об очень хорошей предсказательной способности построенной модели. ., ,. :!11b .III' 1!11. -<::t-'8 1(11. 90 f во ] 70 60 f! 50 i 40 I!! 30 20 ;r 10 о 5 10 15 20 25 ЗО з5 40 45 50 55 60 65 70 75 Во 65 90 95 100 1 00 Cneцифи<.tiocть (Specifidly) ,% J:j . "'f' ... ... 79/101:::::==:; ..'. .., ""'Ji! . , I Оnrимальнвя точка 1 Пороt: ЧyвcтвиrелыюСть I Cneцt..+ФичнoCiЬ Ма ксимум' r Текущ ая ,. ...t.....:.. I 0.76 86.70 83.75 п r 0.77 85.51 84.75"" о! n .. 84.66 8625 в;: '" ... ..- I 0.79 83.76, 87.00 I 080' 8229' 88.00 " 0.81 8127 88.50, ill [ ; тр '. N , 1532 335 1511 339 1496 345 1480 348 1454 352 .....J 14З6 354 Рис. 17.8. [рафик RОС кривой скоринrовой модели Однако оптимальная точка для данной модели не равна 0,5. Максимальная суммарная чувствительность и специфичность достиrается в точке 0,78 (для pac чета и отображения оmимальной точки необходимо в меню кнопки Тип оптималь ной точки выбрать пункт Максимум). Для установки HOBoro пороrа отсечения, равноro 0,78, следует перенастроить узеkобработчик лоrистической реrрессии. В этой точке Se == 85 %, Sp == 86 %, что означает: 85 % блаrонадежных заемщиков будут выявлены классификатором, а 100 86 == 14 % недобросовестных заемщиков
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 665 получат кредит. На тестовом множестве наблюдается похожая картина: Se == 84 %, Sp == 86 %. В общем случае, проецируя определения чувствительности и специфичности на скоринr (и учитывая, что класс заемщика «хороший соответствует положи тельному исходу), можно заключить, что скоринrовая модель с высокой специ фичностью соответствует консерватИ61l0Й кредитной политике (чаще происходит отказ в выдаче кредита), а с высокой чувствительностью политике рискованных кредитов. В первом случае минимизируется кредитный риск, связанный с потерями ссуды и процентов и с дополнительными расходами на возвращение кредита, а во втором коммерческий риск, связанный с упущенной выrодой. Это хорошо иллю стрирует визуализатор Таблица сопряженности (рис. 17.9), которая есть не что иное, как матрица классификации (см. раздел 4.4). Та6JW1цаСI I 'жеttttости D 1 Класс заемщика ' 1m у IIШI у L Ь, Клас ПЛОХой , Хороший" ИТО[О L 431 ! 'о 500 .'.. 2209 п1 1938 2709 ер акПiЧесКJ.i Т.!; . сопр' Класс заемщика J I .':.. ..:J IW у I.S) у I: EI а: 1}I]Wi! Хороший TorO Классифицировано Плохой Хороший Итor".. 86' о;. 100 373 442 387 542 а б Рис. 17.9. Таблицы сопряженности: а рабочая выборка, б тестовая выборка Из таблицы видно, что на обучающем множестве модель чаще отказывала в выдаче кредита «хорошим заемщикам (271 ошибочный случай), чем выдавала кредит «плохим (см. рис. 17.9, а). Точность классификации составила 85 %. На Te стовом множестве наблюдается примерно та же картина (точность классификации 84,7 %), а уровень одобренных кредитов (Арртоуаl Rate, AR) здесь составляет AR == (387/542) . 100 % == 72 % при уровне дефолтных кредитов (Bad Rate, BR) равном BR == (14/387) . 100 % == 3,62 % (см. рис. 17.9, б). Если такая ситуация не устраивает, можно снизить пороr отсечения и добиться тото, чтобы модель чаще выдавала положительное решение. Процент отказов уменьшится, но возрастет и кредитный риск Поэтому выбор точки отсечения зависит от поставленных целей снизить долю «плохих кредитов или увеличить кредитный портфель, чаще вынося положительное решение по клиенту. Предположим, нам известны издержки ошибочной классификации (см. раз дел 12.3): CFl,/C FP == 1/4, то есть выдача кредита недобросовестному заемщику обходится в 4 раза дороже, чем отказ добросовестному. Тотда мы можем, используя правило Байеса, оценить оптимальный скоринrовый балл Р: 1 P> ==O 80. 1 +1/4 ' Визуализатор Что если позволяет увидеть, как будет вести себя построенная модель при подаче на ее вход тех или иных данных. Иначе rоворя, про водится
666 Часть 11. Бизнес анализ в Deductor эксперимент, в котором, изменяя значения входных полей лоrистической perpec сии, аналитик наблюдает за изменением значений на выходе. Возможность aнa лиза по принципу «Что, если особенно ценна, поскольку позволяет исследовать правильность работы системы, достоверность полученных результатов, а также ее устойчивость. Визуализатор Что если включает табличное и rрафическое представ ления, которые формируются одновременно (рис. 17.1 О). I!'i!; ... .. Поле ':'; B.oдныe -9.0 OlL;t 9.0 Воэраcr .Ь Про",ивание .Ь срок Лрож><ВаНИ" в ресоонв аЬ Семейное noпожение .Ь Образо........ .аЬ Стаж рабarы на nослРднем месте .Ь Ыpoeet'b Д011Jt<1'lOCТИ .аЬ Кредитная ИСТОрИs:l :i' 8f> вы><сщны. аЬ Класс эаемшика =::;.- Расчетные 9.0 Кпасс заемщика Рейrцнr ... ....,.Q: ;b:f..I!iI. ) 40 26 АреtЩа отlдо5пет np roe высшее от 1 roдa де. 3 tteT сcrrруа,ник Нет Данных Ппо,DЙ _.,-,.ж. :11 Ib ' . . ..' . ':8.t: .: . . 0,601205940112452 ;; О,е .10,75 0,7 !О,65 :; О,В !1 0,55 0,5 15 20 50 25 30 35 ОД,% 40 45 Рис. 17.10. ВИЗУ<llIизатор «Что если!> В верхней части табличноrо представления отображаются входные поля, а в нижней выходные и расчетные. Изменяя значения входных полей, аналитик дает команду выполнить расчет и наблюдает рассчитанные значения выходов лоrистической реrрессии. В rрафическом представлении визуализатора Что если по rоризонтальной оси диаrраммы откладывается весь диапазон значений текущеrо поля выборки, а по вертикальной значения соответствующих выходов модели. На диаrрамме Что если видно, при каком значении входа изменяется значение на соответствующем выходе. Если, например, во всем диапазоне входных значений выходное значение для данноro поля не изменялось, то диаrрамма будет представлять собой rоризон. тальную прямую линию. В нашем случае установлена rрафическая зависимость изменения кредитноrо рейтинrа KOHKpeTHoro клиента от коэффициента 01 д (все
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 667 остальные входы константы). Видно, что с увеличением О/Д рейтинr практи чески линейно падает. При желании от модели лоrистической реrрессии несложно перейти к скорин roвой карте, для чеrо нужно перевести коэффициенты лоrистической реrрессии в линейную шкалу. Итак, подбирая пороr отсечения, мы можем установить желаемое соотношение уровня одобрений AR и ожидаемой величины просроченной задолженности BR. Интересует вопрос, как сравнить несколько скоринrовых карт между собой. Для этоrо строят различные отчеты и rрафики. Например, подверrают анализу кривые распределения кумулятивных процентов для хороших и плохих кредитов. По оси ох откладывают диапазоны скоринrовоrо балла, а по оу накапливающую ся долю плохих (хороших) кредитов. Сформируем такой отчет в Deductor. Нам понадобятся несколько узлов из rруппы Трансформация данных: Квантование, rруппировка, Кросс таблица, Замена данных и Калькулятор (преобразования, выполняемые ими, описывались в rла ве 3)1, а также визуализатор Диаrрамма. На рис. 17.11 можно наблюдать rрафик, отражающий кумулятивный процент хороших и плохих кредитов нашей скорин rовой карты. IЗ Димраt.tма . r IЬ. lIi е. ш ,-. ь .. ' '._.' . A ' ., ,,<' ВО 75 70 65 60 55 50 45 40 35 эо 25 20 15 10 5 m re m i g q щ щq 0000000000000000000000000 Q О О О О О О Q Q Q Q О О О Q Q Q Q Q О О Q О Q C < , < !& i S II *I !e ;, O o :''''':. ..... ci N. N (") ('1'). ci V V t,() lJt c:i ut Щ. ...... t-- o Щ. Ш т т OOOO OOOO OOOO OOOO OOOO о о о r D о о о о Q О О О О О О О О О О О О О 0,0 Диапазон скоринro"оro балла Рис. 17.11. Распределения кумулятивных процентов в скоринrовой модели ......,... . . Видно, что кривая для плохих кредитов проходит выше и обладает более KPy тым подъемом, чем кривая для хороших, поскольку в области низких значений I См. также документ <!Руководство аналитика!> в составе Deductof.
668 Часть П. Бизнес анализ в Deductor сосредоточено больше плохих кредитов. Если скоринrовая карта неэффеКТивна эти кривые будут похожи, а в пределе налarаться друr на друrа. ' Окончательный сценарий будет иметь следуюший вид (рис. 17.12). Сцена I ..' . $," i ": '!: '1:0 'х W Сценарии "" @ Текстовый файл [loan'.I"I) ) {iI Кальк ляrор: Класс заеМЩИКа ::. ,.- Лоrистическая реrрессия [nopor 0.18) , Т <Рилыр [[Т естовое множество] ложь) 3111 КапЬК ЛЯТОD: Скоринrовый балл ;.;; == КРИВЫЕ РАСПРЕДЕЛЕНИЯ скоРинrовоrо БАЛЛА ( .I" Квантование [Класс заемщика Рейтинr] { rр ппировка [Измерения: Балл, класс; Cf'aKT: число кредИТОВ] "-. Кросс-таблица [Строки: балл; Колонки класс) [d .[B Замена значений :;:"1&1 Кальк лs:пор: % от общеrо числа :>, Настройка на60ра naHHbl)( . . Кальк л<пор: К м лятивные % ,.- Лоrистическая реrрессия [nopor 0.80) fЗ Рис. 17.12. Сценарий построения скоринrовой модели на основе лоrистической реrpeссии Скоринrовая модель на основе дерева решений Теперь воспользуемся друrим инструментом деревом решений (см. rлаву 9). Добавьте в сценарий одноименный узел через Мастер обработки (рис. 17.13). ;/' I О. I . I tT I!!IO D Мастер обработки , Iv I ОП1СаЖБ РУППИРОБКd nанны)( Создание СВОДНОЙ таблицы из плоской Созданиё плоской та6лицы ИЗ сводной Нaз8i!Нie р ппировка Кросс-таблица li!Zl Свертка столбцов Dala Mining 8 Проrнозирование Проrнозирование BpeMeHHoro РЯда .в- Автокорреляuия Расчет выборочной аетокорреляuии ст... .(211: Линейная реrрессия Построение линейной модели :. Лоrиcrическая реrш Построение бинарной лоrистической.. ::>- НеЙ,рОСеть Мноrослойная нейронная сеть .. Карта Ко"онена Ассоuиативные пр.. ЕI: Пользовательская.., ,. Кластеризация : ПРОlllее Самоорrанизующаяся карта Коионена Поиск ассоuиативныи зависимостей 3а<ание модели вр чн ю по форм лам Кластеризаuия алrоритмом k-means и... J Дере"", решении Построение дерем решении елrоpwм ..:.1 t"Т. ...т.....:-. Отмвна Рис. 17.13. Окно выбора HOBoro узла обработки
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 669 Следующие два шаrа мастера аналоrичны описанным ранее для узла Лоrи стическая реrрессия. На четвертом шаrе откроется окно выбора параметров алrо ритма С4.5 (рис. 17.14). Здесь не меняйте настройки, принятые по умолчанию, за исключением минимальноrо количества примеров в узле, при котором будет создаваться новый. Задайте этот параметр равным примерно 1 % от объема обу чающеrо множества; меньшее значение может привести к появлению HeДOCTOBep ных правил, большее к почти полному отсутствию таковых. !'1МасТер .., . , ,ТКИ. Де' - , , peweннИ(3 IIIIDfЗ Настройка параметров обgчеНИА дерева реwениА Укажите значениs:l параметров обучения nерева решений :r : .. '.' Параметры нн.й ОСТ"Н",""" Минимальное коllичество npимеров в узле при ктором б ет созо.ан НО8ЫЙ 120 :1 СтрOИfb дерево С более nocтоверными пpaвилava.t в ущtЮ6 tooМПaКТНОСТИ дерева Очередной узел 6!:J13,eт разбиватъ.ся на П0Щ:j3ЛЫ... если количество нераСП03нанных примеров в !;jзле больше значения параметра ''мн.tvIaлbнoe количества примеров в !jЗле' Паpaмerры отсечения r.; Oтcoкorъ узлы noр... Уровень доверия используемый при отсечении узлое дерева.. % Чем мeныue poeeHb доверия, тем больше у3ЛQ6 б!::lдет отсечено и тем компактнее будет дерево. j2O:D""3 < НаЗ&<l далее> I Отмена I Рис. 17.14. Настройка алrоритма дерева решений На следующем шаrе в качестве желаемоrо способа построения дерева OCTaBЬ те режим автоматическоrо построения это и есть алroритм С4.5. Запустив ero нажатием кнопки Пуск, пройдите по шаrам мастера дальше и выберите нужные визуализаторы, как показано на рис. 17.15. В результате работы алroритма было выявлено 18 правил; точность классифи кации на обучающем множестве составила 85 %, на тестовом 87 %. Визуализатор Дерево решений позволяет увидеть полученный набор правил в схематическом виде, а также выводит показатели достоверности и поддержки для каждоrо узла (рис. 17.16). Это и есть скоринrовая модель. Она менее привычна, поскольку здесь не начисляются баллы за характеристики заемщика, но тоже объясняет результат классификации Toro или иноrо заемшика. В принципе, достоверность каждоrо правила можно воспринимать как итоrовый скоринrовый балл с той оrоворкой, что для плохих заемщиков он равен величине, полученной вычитанием из 100% HOro значения достоверности. Теперь откройте таблицы сопряженности этоrо дерева решений (рис. 17.17). Оказывается, в сравнении с моделью на основе лоrистической реrрессии здесь совершенно дрyrая сmyация. Дерево решений значительно чаще одобряет неблаrона дежных заемщиков, потому что ero построение идет в условиях несбалансированности
670 Часть 11. Бизнес анализ в Deductor ,,' . тер ..бработки.. Дерево решении (6 и. 7) Определение способов отображения ВыберioПe способ отображениs:l nаЖЫ1< I!IDE1 ;п НаЗВоt-lие '7 17 Dala Mining .; 17 Правила 17 Значимость атриб!/l'ОВ р Что.если r Обучающий набор РТаблица сопряженности :; r;t т абпИ'lные данные РТаблица r Статистика -:;, r r раФИКИ r Диarрамма r r истоrDамма Оп..teaНие- Ото6ражеНlttе списка правил перева решенJ.iЙ Отображение значимости атрибутов АналJ.iЗ построенной модели по принципу что-если Обучающее и тестовое множества Результаты построения модели в Виде таблицы сапр.. Отображает naнiыe в ВI-Ше таблиuы Отображает стмистические Данные выборки Отображает данные в ВИQ.е диаrpаммы ОтоБDdжает аажыe е ВИйе rистоrD3ММЫ ..::.1 < н aэ<ItI Далее } .. . I :;; . lений Рис. 17.15. Выбор визуализаторов уэла -3 .3 ш ы, " ш?5 ш' Ъ Gif: , ш=шшшшшш'ш.' "ш Услооие 4, ЕСЛИ Кредитная история = нет Данных .:9' Проживаже = АреНда 'iiiiiiiiii!I' ОД. % < 15.5 1:1 1!!!i!!iJiii' ОД. %}= 15.5 ! Семейное положение = Llpyroe { Семейное положениь = Женат/замужем { . Срок проживания в рerионе = менее 1 roдa Срок прожиеания в рerионе = от 1 по 5 лет fiiiiiIiiii Срок проживания в реrионе = свыше 5 лет r Семейное положение = Развenен[а)/8довство .... ! Семейное положение = Холост/Не заму ем L...' од. % < 34.5 :.- ОД. %}= 34.5 Проживание = Муниципальное жилье liIRIiI Проживание = Собственник 8 ..1Ii1l,, J Кредитная история = отрицательная . :!iiiiiiiiIOОД.%<19.5 ..:, i8!!!i!!1 од. %}= 19.5 :.Iiiiii!! Семейное положение = Пруrое ---:'" Семейное положение == Женат/замужем ; ! Срок проживания в реrионе = менее 1 roдa l@IIIIIIIIIl Срок проживания в реrионе == от 1 по 5 лет 1_ Срок npoживания в реrионе == свыше 5 лет 1IiiiiijI ' Семейное положение == Разведенlа)/8довстео ... Семейное положение = Холост/Не замужем IIIIiiRiiRIJ Кредитная ИCfОр.1я = положительная Отмена -:. - :.- D Хороший ПЛШЮЙ ПЛШЮЙ Хороший Хороший ПЛШЮЙ Хороший ПЛОХОЙ Хороший Хороший Хороший Плохой ПЛШЮЙ Хороший Хороший ПЛШЮЙ ПЛОХОЙ Хороший If 1 C.::J 1(..........1 1'""" .. 11 ' l C.::J r:=J L ...J r:=J и::=J L ......J !:::'J II"""'"J !!!!!C J п::::::=J и::=J п::::::=J 11 ' l L...J L..::J r 'l ' ! r 'l 11 ' l I!!CJ 195 28 ,'7"1D:3!""" 167:""""""" 27 '.:::: '.. i 70 ',.. , 29 .1IIIIIIII 27 'IIIIIII8I1 ' 14 1', . 17 !!!!81 i 53 IJ!!!!!!!I........; 26 1!!f.... 27 llll!i!l!!!!..." 222 ,!!!"II!!.. ' 848 , '. 221 l" , 36 Ioii'WIIII : 185 , . 39 [.'Шi , 68 1.......'1 23L............. 28 riiiiiiif ! 17 !iiiidii 22 :1<, .. 56 1IIIIIIII 681 llIIIIII8I1ji ' Рис. 17.16. Скоринrовая модель дерево решений 98 25 94 22 42 17 19 11 12 32 14 20 180 730 111 29 103 23 40 15 19 13 19 33 648
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 671 -" . р .ктич.е. . Плохой , Хороший Итоr'2 '.1 400 1688 1767 240 1927 2167 а Та6щщ C<lIJPЯЖeнJfОСТl>! I Класс заеМЩИКа ..:J:IШ . с . ; 1: ilJ. I<ласР'<I>ИЦИРОВано ! .Л'!!?'<ol:l. " .1!;ор.ощ'!q Итоr" L 100 442 542 Р Т.!1ч q!<Ji. таблица СI '. Класс заеМщика I ТИ D . [gJ... . 1: ,'Ь : I оС КлаСС ИРО""tfо .. . ..I:J!'о>:ой <. _ 9.Р.!? 1.:i.й- ш ._ Итоrо --.< .ПJ1QЮЙ )::(ороший , Итоrо Q 67 424 475 б Рис. 17.17. Таблицы сопряженности: а рабочая выборка; 6 тестовая выборка классов. В результате доля дефолтных кредитов на тестовом множестве равна BR == == 51/475. 100 % == 10,7 %, что в 3 раза выше этоrо же показателя в лоrpеrpeсионной модели (правда, уровень одобрений вырастает до 87,6 %). Что делать, если такая си.. туация не устраивает? В лоrистической реrрессии для решения этой проблемы мы варьировали пороroм отсечения, а в дереве решений такой возможности нет. Нам помоryт специальные стратеrии СЭМIШинrа для уравновешивания обучающеrо множества, которые подробно изучались в разделе 12.6: выборка с дублированием миноритарноro класса (oversarnpling) и выборка с удалением примеров мажоритар" HOro класса (undersampling). Поскольку примеров не так MHoro (400 с плохими клиентами и 1767 с хорошими) и информация о каждом заемщике представляет ценность, имеет смысл использовать первый вариант с дублированием. Пусть отношение издержек ошибочной классификации останется прежним: 1 : 4. Тоrда, соrласно правилу, к обучающей выборке нужно добавить 3 . 400 == 1200 примеров, и общее число записей составит 3367, а доля плохих увеличится до 47 %. ЗАМЕЧАНИЕ Процедуру дублирования записей. при надлежащих к миноритарному классу, нужно осуще ствлять только на обучающем множестве. Для этой операции снова привлечем несколько узлов из rруппы 1jJансформацuя данных: Фильтр и Слияние данных (рис. 17.18, выделенный блок). Сценарии D jВ":: 153'. ..;' i ".;: "':: !Ь X I еОО .. е,@) Текстовый файл (Ioans,txt) е. Калькулятор: Класс заемщика . "Дерево решений (автоматическое) e,lJp == ПРОЦЕДУРА OVERSAMPLING == fcij'T <Рильтр .. обучающее множество т <Рильтр ([Класс заемщика] = 'Плохой') e, . ОБЬединение (<Рильтр ([Класс заемщика! = 'Плохой')) БJ . ОБЬединение (<Рильтр ([Класс заемщика] = 'Плохой')) Ei . 06Ьедиtfение (<Рильтр ([Класс заемщика] = 'Плохой')) Дерево решений (oversampling. фактор 4) Ii. ,т <Рильтр ([Тестовое множество] истина) l2 Скрит (26.26) : ("Дерево решений (oversampling. фактор 4)") Рис. 17.18. Сценарий построения скоринrовой модели на основе дерева решений
Построив дерево решений на сба лансированной выборке, убедитесь, что ситуация улучшилась: теперь на TeCTO вом множестве модель чаще отказывает в выдаче хорошим заемщикам, нежели одобряет плохих (рис. 17.19). Эти pe зультаты сравнимы с теми, которые BЫ дает модель лоrистической реrpессии. Таким образом, мы получили несколь ко скоринroвых моделей. Варьируя поро rами отсечения и применяя специальные приемы борьбы с несбалансированностью классов, можно подобрать ту модель, KOТO рая отвечает заданным потребностям кредитноrо учреждения по уровню одобрений заявок и ожидаемой доле просроченной задолженности. Проверять новых клиентов можно при помощи обработчика СКрИПТ. 672 Часть 11. Бизнес анализ в Deductor т аб' I а (оп I яженно[ти l'II,r; IIКr-I;;j I':' I11i . ..:J ,' [il]. ... 1&1 .... Е D ъ; 9' IЖИ 1111О><ОЙ . КI1aССИ СРЩl ,....1! . : : .и!QI'О 78 ': '? 100 J .. "" ..54 :44? ..... 166 376 542 Рис. 17.19. Таблица сопряженности для тестовой выборки (процедура oversampling) Интерактивное дерево решений До этоro мы получали дерево, которое строилось автоматическим способом, то есть алrоритм на каждом шаre выбирал атрибут для разбиения по заданному критерию. В rлаве 9 также rоворилось о том, что алrоритмы построения деревьев «жадные , поэтому не факт, что итоrовое дерево будет наилучшим. В то же время иноrда имеются экспертные знания, которые позволяют «вмешаться в процесс форми рования дерева и выбора атрибутов, а также пороrов для разбиения. Возможно, это и не повысит точность модели, но правила станут более лоrичными, с точки зрения экспертов. Кредитный скоринr представляет собой тот самый случай, коrда банковские аналитики имеют определенные знания и хотят, чтобы в модели ветвление по атрибутам осуществлялось в определенном порядке. Например, если имеются атрибуты Наличие квартиры и Стоимость квартиры, то разумно сразу после первоrо рассмотреть второй. Еще пример: после' суммы кредита сразу желательно проанализировать первоначальный взнос. В аналитической платформе Deductor имеется возможность построения интерактивных деревьев решений. Зададимся целью построить скоринrовую модель на прежней выборке, приняв во внимание следующие пожелания экс пертов. [] Первым атрибутом, по которому анализируют заемщика, должен быть атрибут Кредитная история. [] Далее необходимо рассмотреть коэффициент О/Д. Всех клиентов нужно разбить на три катеrории: заемщики с низким О/Д (до 20 %), с умеренным (от 20 до 40 %) и высоким (от 40 %). Добавьте в сценарий новый узел дерева решений и на пятом шarе мастера по ставьте переключатель в позицию Интерактивный режим (рис. 17.20).
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 673 Мастер обработки Дерево реwении (5 10'13 6) I!IDfЗ Способ построения Укажите желаемыС.. способ построения дерева решения " :.- ('" д....омати""""ое пocrроение Дерево решений eт построено aБrоО/'I1aТИЧeCКИ по нажатию на KHOnК 'П.9СК ' на следУlOЩ.ей странице '1l0строение-дерева решения" мастера oбpa6cm.и. J1J!п :i: .tlqi. IJJ И ДереВG.решений неоБJroдимо буа,er в ДdJ1bнeйUJем строить nOl1 автоматически с помощЫG злеменtoВ ynpавления еИ3gaJ'JИ3aТСфа "nерево реше 'I. наКQQ.ЯLЦеrосs:t в J..fнtЕфаta'М5НОМ режиме. После окончания построeнwt необкоо.имо ВЫЙТИ из инrеракn1Вtюrо режима. < Назan Далее > Отм..... Рис. 17.20. Выбор способа поcrроения дерева решений в результате открывшийся визуализатор Дерево решений не будет содержать ни одноrо узла. На панели инструментов нажмите кнопку Разбить текущий узел на подузлы..., откроется соответствующее окно (рис. 17.21). Разбиение узла Параметры разбиения I ИНфоРМация 00 разбиваемом узле I 't ") ! ..s- .; , 4;;' .ь : I!! . Распределение классов по ПOII9"лам Ат иб 80fЗ <> 9.0 ОД, % О аЬ Проживание С аЬ Образование c аЬ Срок npоживания в репюне () аЬ Стаж работы на последнем. '- b Семейное ПОJ10жение с' 9.0 Возраст b Уровень ДОЛЖНОСТИ 111 0.0262 0.0251 0.0229 ==:J 0.0151 ,III ' 0.0120 '111 I 0.0094 0.ОО7В 0.0014 f.ШИ I . Поддерж. . Плохой . . ХQ,OОШИЙ . 79[38 % нет данных отрицательная . 49,77% II:IИ . 50.23% ПОЛОЖl>1тельн&:я Изменение nopora Д,оcтynнотолько для нenpepblBНblX атрибутов о 500 1 000 1 500 А. 7. Ok Отмена I Рис. 17.21. Окно выбора атрибута для разбиения в интерактивном режиме: первый шаr
674 Часть 11. Бизнес анализ в Deductor Слева в списке выводятся все атрибуты вместе с рассчитанными значения ми прироста информации Gaiп Ratio (см. раздел 9.3), а справа диаrраммы распределения классов по подузлам. По умолчанию предлаrается атрибут с максимальным значением Gaiп Ratio, но ero можно переопределить. В дaH ном случае ничеrо делать не нужно, поскольку разбиение и так начнется по атрибуту Кредитная история. Нажатие кнопки Ок приведет к тому, ЧТО в дерево добавится три узла этоrо атрибута со значениями нет дaHHы,, отрицательная, положительная. Продолжим разбиение дальше, выбрав узел Кредиmnая история нет данных (рис. 17.22). P. , .. уз-. .. LI х I Параметры разбиения I Информация о разбиваемом узле I t ") :; ..,...... i4 'б ..1!1 . А . -. аЬ Проживание . q :'. аЬ Образование : аЬ Срок nроживания в perионе { ,. аЬ Стаж работы на последнем месте (...... 9.0 80?раст ) аЬ Семейное положение , ) аЬ Уровень должности ('" 41Ь Кредиrная история Распределение классов по noдуз.naм. [.... ..::...J 0,0343 ';ж 0.0281 [1 , 0.0221 !m i 0.0146 0.0142 r ' .. . .::] 0.0047 ] 0.0000 2O .23Щ% Пороr 10'0000 1 >=20 J . 76,3З'<1!. о ОД, % о 200 400 600 800 1 000 1 200 ; 1 20 iЫ :<t,.. Ok Отмена Рис. 17.22. Окно выбора атрибута для разбиения в интерактивном режиме: второй шаr Здесь в качестве оптимальноrо с точки зрения прироста информаuии пред лаrается атрибут Проживание. Переопределите ero на ОД, %, указав в нижней части окна пороr, равный 20. Затем для узла ОД, % 20 снова выберите раз биение по ОД, %, но уже с пороrом 40, после чеrо нажмите кнопку IQ Построить дерево, начиная с текущеrо узла. В результате ветвь дерева будет полностью rOToBa (рис. 17.23). Аналоrичным образом достраивается дерево для оставшихся узлов. Качество классификации, как и прежде, можно оценивать через таблицы сопряженности. Сценарии Deductor, рассмотренные в rлаве, называются scorecardl. ded и scorecard2. ded и находятся на прилаrаемом к книrе компакт диске.
rлава 17. Скоринrовые модели для оценки кредитоспособности заемщиков 675 . . ,' D -=.:: ! $>Q 1fQ х 1. .. (k . . Условие '..., ЕСЛИ ;;' iiIIIIIii:' Кредитная история = нет данных , OД, % < 20 1i!iIii88) ОД. % >= 20 ' .... ОД. %< 40 ,iiiiiiiii Проживание = Аренда iiiIiIiji; Срок проживания в реrионе = менее 1 roдa ) Срок проживания в реrионе = от 1 .по 5 лет Срок проживания в реrионе = свыше 5 лет "iiiIIIIii Проживание = Муниципальное жилье I ПРОЖи:!;dние = Собственник ,Iii!!!!!!!!' ОД. %>= 40 ..... Проживание = ApeНQ,a 1 Образование = высшее J!IIIiiiI!i] Образование = среднее Образование = среднее специальное Проживание = Муниципальное жилье Проживание = Собственник .__ Кредитная история = отрицательная Кредитная история = положительная Следствие Хороший Плохой Плохой Хорош Хороший Хороший Хорош ПЛОI<ОЙ Пло)(ой Хороший Хорош Хороший Хороший _.!.II Рис. t 7 .23. Дерево решений, построенное в интерактивном режиме
Проrнозирование продаж товаров v в оптовои компании Описание бизнес"задачи Постановка задачи. Оптовая компания занимается сбьпом СТРOlпельных материа лов. Ассортимент насчитывает несколько тысяч товарных позиций, объединенных в rpуппы (сухие смеси, rpYHToBKa, напольные покрытия, плитка и т. д.). Менедже рам отдела лоrистики постоянно приходится решать задачи проrнозирования спроса, но большой ассортимент продукции не позволяет уделять каждой позиции должное внимание. Руководство поставило цели: снизить лоrИС1Ические затраты, повысить стабильность запасов и оптимизировать их структуру. Более конкретно требования формулируются следующим образом: о автоматизировать ежемесячный расчет потоварноrо проrноза на следующие три периода; О обеспечить аналитикам компании доступ. к рассчитанным проrнозам для пла нирования запасов и формирования заказов. Для этоrо было принято решение о внедрении системы автоматическоrо расчета потребности в товарах. Исходные данные. В наполненном хранилище данных о продажах товаров (начиная с 2004 r.) имеется единственный процесс Продажи с измерениями Дата продажи, 1Овар, 1Оварllая zpyппa и фактами Количество и Сумма. Решение задачи Нужно сразу оrовориться, что задача проrнозирования спроса не имеет единой методики решения (см. раздел 10.4 и rлаву 14). Не существует надежноrо способа количественной оценки наиболее сушественных факторов, влияющих на спрос,
rлава 18. Проrнозирование продаж товаров в оптовой компании 677 что еще сильнее проявляется в условиях рыночных отношений. Хороший анали тик, проrнозирующий спрос, использует все имеющиеся факты количественные и качественные, а также интуицию, в основе которой лежит опьп работы на данном рынке. Но проблема заключается в том, что при большом ассортименте и частом обновлении спроса ручная обработка каждой товарной позиции не представля ется возможной. Необходимо максимально автоматизировать эти процедуры. Например, можно построить несколько проrнозных моделей временных рядов для каждой товарной rpуппы, выбрать из них оптимальную при помощи Kaкoro либо критерия качества и перейrn к позиционным проrнозам (рис. 18.1). Хранилище данных Продажи «Наивные», реrрессионные, эконометрические, нейросетевые, экспертные rруппировка (товарная rруппа) Временной ряд Модели проrнозирования Ретропроrнозы Критерий качества Выбор лучшей модели Проrноз по rруппе Раэrруппировка Попозиционный проrн03 Хранилище данных Рис. 18.1. Автоматизированный процесс получения проrноза спроса Это не единственный вариант: можно отказаться от rpуппировки и обрабаты вать каждую позицию по отдельности или сrpуппировать товары по ABC XYZ катеrориям и т. д. Описанный общий подход не обеспечивает идеальноrо результата и не rapaHrn рует высокую точность проrнозов: это невозможно в принципе. Но rарантируется, что будет получен лучший из возможных вариантов проrноза. А поддерживаемые аналитическими платформами механизмы очистки, rруппировки и подстройки
678 Часть 11. Бизнес анализ в Deductor под новые данные позволя.т постепенно повышать качество проrнозов, быстро дo бавлять или изменять проrностические модели. С помощью сценариев в Deductor несложно реализовать такую схему. По кажем этапы создания сценария на примере товарной rруппы rpYHToBKa . Построим несколько моделей временных рядов, затем выберем наилучшую и рассчитаем по ней проrноз, проделаем разrруппировку по товарным позици ям, а результат проrноза сохраним в хранилище данных. В качестве моделей проrноза выберем: о наивную» модель скользящею среднеrо за предыдущие три месяца; О линейную реrpессию с периодами: (1,2,3), (1, 2, 6) и (1, 2,12) месяцев. Соответствующий сценарий обработки данных приведен на рис. 18.2. <ii W Сценарии а EJ [1) Строймarериалы : Пр""ажи (1 .р ппа) БI Ь === Переименование столбцов === GlEEI [2) Преобразованиедаты (Дата: rсщ + Месяц) а (.. [3) r P!jппировка по месяцам ra "ш [4) Скол.зящее окно (Кол""о [-12:0]) 1jm.---МОДЕПы ::: ; 6} =1: [А 1]Модель "Скользящее среднее 3 мес" Iii @ [А2] Про,ноз [.оризо",: 3) Gi Ь [А3) Про,ноз по м""ели 1 1i;E " (А4] ОlSъединение (Проrноз по модели 2) G1' " [А5] Объединение (Проrноз по модели З) Iz .. [А6] Объединение (Проrноз по модели 4) ...1f. (А7] Выбор npоrноз.:l с МИН. ошибкой е 111 [А8) Кал.к ляrор: Дата проrноза а 1.. (АЭ] Разrр ппировка данн." (Т овар,К",,) EJ (А10] Заrр зка .ХД.. Проrноз &i {;; [В1)rр ппировка[<1'акты, Кол"ео ЕRR} 6i1iilll === МОДЕПЬ 2 === 1;,,0' (С1 J Линейная реrрессия (2 . 1) .. 0 [С2] Проrноз (rоризо",: 3) Ь [С3) Мсщел. 2 ",..{ (С4] rр ппировка [<1'акты: Кол'во ЕRR) , liIIII [С5] Кальк лRТОР: Оwибка модели 2 00 111 === МОДЕЛЬ 3 === ffi 111 ==0 МОДЕЛЬ 4... Рис. 18.2. Сценарий получения проrноза в Deductor в первом узле из хранилища импорrnруются данные о продажах, после чею они rpуппируются по месяцам и строится диаrpамма, представляющая собой временной ряд продаж позиций товарной rpуппы rpYHToBKa» (рис. 18.3). В узле под номером 4 ряд приводится К специальному виду для построения моделей при помощи скользящею окна (см. раздел 3.2). Дальше сценарий делlПСЯ на четыре практически идентичные ветви, в каждой из которых СТРОlПся та или иная модель BpeMeHHoro ряда. Для наивной» модели скользящеrо среднеrо используется обработчик Поль зовательская модель, для остальных Линейная реrрессия. После каждоrо TaKoro обработчика при помощи узла Проrнозирование (например, узлы А2, С 1) рассчиты вается проrноз на заданное число периодов.
rлава 18. Проrнозирование продаж товаров в оптовой компании 679 I11III013 rрynnировка (I'IЭt1ерения: Дата (rод + Месяц); Факты: Кол во) r т ;;б"и а х Диarр";:;"'а Х I .C I'Ib, .iIi. е... IЗ. '"Ь 1fWI. З50 000 300 000 250 000 с> 200 000 150 000 100 000 , 50 000 .... .... .... '" '" '" '" '" !s !s "- "- "- "- m 00 с> с) с) с> с> с> е> с> с> с> е> а <:> с) с) с> с> с> с> с> с> с> с> с> с> с> <:> с> а <:> а N N N N <'i N "f N '" N N N '" '" N '" '" "- cri N м '" '" '" м <D .,; N М <D .,; N <D N qq q q q ...., а q q q q q а Б - Б а а <:> Б Б Б Б Б Б Б Б с> с> <:> с> с> а Дата (rOA + МесяЦ) Рис. 18.3. Временной ряд продаж товаров из rруппы «rpYНTOBKa!> в качестве критерия качества выберем среднеквадратическую ошибку, рассчи.. тываемую на ретропроrнозе: 1 " 2 Е == L(p; Xi) , п ; 1 rде pl, Р2... р" значения ряда, предсказанные моделью; Х, Х2... Х" фактические значения. В специальной ветви сценария (рис. 18.4) сливаются в один набор данных ошиб ки для каждой из моделей (узлы В 1 BS) и среди них выбирается минимальная (В6 В7). G) {g [81] r р ппировка [<Рапы: KO"'Bo EAA) S liiII [82] Ка"ьк "яrор: ОшиlSка 51, . [83] ОБЬединение (Ка"ьк "яrор: Ошибка моде"И 2) @ . [84] ОБЬединение (Ка"ьк "яrор: ОшиБКа моде"и 3) G) 11. [85) ОБЬединение (Ка"ьк "яrор: Ошибка моде"и 4) 8 [86] Сортировка: Ошибка {[i: [87] r р ппировка [минима"ьная ошибка] Рис. 18.4. Ветвь сценария, сравнивающая проrностические модели в узлах А4 А6 все проrнозы объединяются в один набор данных, и на основе информации из узла В7 о номере модели с минимальной ошибкой выбирается оптимальный проrноз. В нашем случае таким оказался проrноз на основе линейной реrpессии с месяцами 1,2 и 12 (рис. 18.5).
680 Часть 11. Бизнес анализ в Deductor !II ЛИf1ей"ая ре'реССltя (3 к 1) RD fЗ I ФФициенr I.. еr с и Х ра яни Х I n:arpe х..; . с Il u,;; r:;;} . Iii: . I lШ1 . . 'I!iJ. 1: ОЩн6ка; 1 0,05 :;1 1, b I liWJ . 450 000 400000 350 000 300 000 250000 :юо 000 150 000 100 000 50 000 О ",О, .: - , ..- --,,-. ":-:. .: :{1 ,, ,; · ."'''.L L J I f5 i р! !1J.... rg 8 ! 13 !;1 8 * fJ. я fiЗ <D '" . КОЛ ВО ОUТ о КОЛ ВО Эталон Верхняя rpаница НИЖНЯЯ rpаница Рис. 18.5. Диаrpамма рассеяния для модели 4 " , , ., f;> !ц N. 16 После получения проrнозной цифры по rpуппе проrнозирования производится так называемая разrpуппировка. Наиболее простой способ распределения квот сде- лать предположение о том, что если продукция рассматриваемой проrнозной rpуппы товаров в определенный период продавалась в извес11iых пропорциях, то кaкoe TO Bpe мя данные товары будут продаваться в тех же пропорциях с поправкой на новый про пюз (этот период называется периодом актуальности). Для этой операц= в Deductor имеется rотовый обработчик Разrруппировка (рис. 18.6, см. также раздел 3.3). l':Ii Мастер обработки Рамрупnировка (lиз 4) Разrр nпировкада"нык Настройка параметров разrруппировки .naнHbIl< Имя столбца ТМПдажы>< "[ O"'BO )( КOII """JlB"" )( Шаr проrноза )( Дата (rOll + Месяц) )( КOII МOIIели+ )( ОшlAl5ка+ Дата проrноза COUNT l3ешecre й IIllI <Ракт I КОЛ ВО Назначе>о<е 11 , ИC!<Ol1lФlЙ столбец ВОСC'l'аНDОИТЬ 1 т овар.кOll "'"Оценка раcnpeделения AI!НIIbl><: со' По IlCeЙвыборке r по nOСлeдI+iМ I l ' н щ I Далее> I RIiI fЗ ."./ '" .::J .:J I .:.1 1 :;1 ' :J oтt> ""3 I Рис. 18.6. Раэrруппировка
rлава 18. Проrнозирование продаж товаров в оптовой компании 681 Рассчитанный проrноз необходимо сохранить. Для этоrо откроем Редактор Me таданных и создадим новый процесс Проl1tоз с измерениями Дата nрО11l0за и Товар. Код и единственным фактом Количество (рис. 18.7). Редактор метаданны:н: [Строиматериалы] () .. <> Х:. .. "т 1S DATE 2 'Jlara npOl'tt03<l Обьект f:t "1iiJ Пр оцессы iif '/ш Продажи s '/Ш Проrноз Дтриб'IТЫ S..ffiJ Измерения " ' Товар.код IIJ IIO:.II.IIII.;alllO'll: Бit..ШJ ер a,,'JЫ :. [ll] КОЛ-ВО q ffiJ Измереиия Ii!/ Д",.а Iii' Товар,Код iif r руппа товара 1-ltdi Имя М"",а Описание ,1 ш !.."!:JOl '" 8ио.имый И"""peI<ие . , Д",.а/8ремя .. :: [S DA ТЕ) Д",. .. ? SALES ? FORECAST аЬ GOODJD 2 IZI S DA TE 2 12 KOL IZI S DATE аЬ GOODJD аЬ GOOD GROUP Рис. 18.7. Добавление процесса <!Проrноэ в хранилище 50 fЗ I Если запусппь выполнение этою сценария в пакетном или серверном режиме для всех товарных rpупп, то мы получим проrноз, рассчитываемый автоматичесЮl без участия человека, который удобно просматривать в виде ОLАР куба (рис. 18.8). .. Строиttатериалы: оrноз; Таблица Х K 6 Х 1 'f!ijj' . ; @t ..,. 1 I 1m т 1m . rJt.. т ''ь ' . B 50 fЗ '. ' I r.1 1 TI..I I! IT',.' , r..t.. . I I . J. i[ . }o.r...... ОI,01,2009IОI,02.2009101,03,2009f о: 11 rpYНTOIIКa AlPINA Grunt-J<onzentrat, I л, .4003 5213 rpyнтo8I(aВEa<ERSМetal!prrnerGRAcep: 7013 8274 9 12, rpyнтoвкa ВE C1<ERS МetaIIPrinet GR" 5014 5916 6586 !:P..1' !,".!"' алк ая rФ"02 ТЕ<с;, YНl1 157 185 206 етная UPOFLOORLОС2085х1', 2В, 28 27 Доска naркетная UPOFLOOR Loc 2085Хl' 15 15' 15 rtaмжaт ТдRКЕТТЕthnlс JungleЗI ICЛ IZS! 10 10 9 НanoJЪНыепок I1&oиm'ТДRКЕТТSeled:ЗЗlCЛl292хl92>i 18 18 17 :::---:=i Ламинат ТдRКЕП 5elect зз кл 1292X 15 16 15 .. ТдRКЕпse; t ЗЗКЛ I292х1 ! 10 10 10 , ЛИНQл&ун IVC Leogф..р)eI'ba з.':'! !"'.:!:! , 13 14 13 Затирка для ШВ08Цем, CтE5rт СЕ зз 1'11, 2 2 2 Сухие смеси клей ueм. UTOKOL ква nлнтOЧНI>Iii, !Лас' 2, 2 ..2" Клен ueн, rлимс пJ'1И1'OЧНblЙ, 'I+1I'IJ 11 121 13' rpyнтreк" Рис. 18.8. Проrноэ в виде OLAP Ky6a 13365 24499 17516 548 ; : 'Ii 29:/ 5З'! : .:i 40 ,! 6: I Накомпакт диске сценарий проrнозаназывается forecast. ded, а хранилище данных materials. gdb.
Повышение эффективности v массовои рассылки клиентам Описание бизнес задачи В rлаве 12 мы познакомились с формулировкой бизнес задачи о прямой почтовой рассылке рекламы, rде rлавной целью ставилась минимизаuия рассьток клиентам, которые не откликаются на рекламу. Вместе с тем классификация с учетом издер жек в директ маркетинrе имеет свои особенности, на которые мы обратим особое внимание при разборе примера. Постановка задачи. Торrовая компания. осуществляющая продажу товаров, располaraет информацией о своих клиентах и их покупках. Компания провела peK ламную рассылку 13504 клиентам и получила отКлик в 14,5 % случаев. Необходи мо построить модели отклика и проанализировать результаты, чтобы предложить способы минимизации издержек на новые почтовые рассьтки. Исходные данные. Набор данных содержит информацию о 13 504 клиентах, включая известные отклики на рекламную рассылку и такие сведения, как пол; возраст; сколько лет данный человек является клиентом компании; суммарная стоимость всех заказов клиента; общее число покупок; фактыI обращений в службу поддержки и др. Bcero для анализа доступно 9 независимых и 1 зависимая пере менная. Имеется также следующая информация (будем использовать обозначения, аналоrичные принятым в разделе 12.4): О расходы на одну рассылку СМ == 1,0 ед.; О издержки на обслуживание клиента CR == 9,0 ед.; О ожидаемая выручка с 1 заказа R == 20,0 ед.
rлава 19. Повышение эффективности массовой рассылки клиентам 683 Решение задачи Сформулированная выше бизнес задача сводится к бинарной классификации. Но сначала разберемся в типах ошибок классификации применительно к массовой рассылке (табл. 19,1). Таблица 19.1. Доход издержки в массовой рассылке ИСХОД Предскаэано Фактически Доход, ед. Комментарий модel1ью ТN Нет отклика Нет отклика О Нет контакта, нет издержек тр Есть отклик Есть отклик (R СМ CR) == Ожидаемая выруч == 10,0 ка минус расходы на обслуживание и рассылку FN Нет отклика Есть отклик О Нет контакта, нет издержек FP Есть отклик Нет отклика СМ == 1,0 Печать, упаковка и доставка по почте рассылки Заметим, что в столбце «Доход, ед,» издержки записаны как отрицательный доход. Формула для расчета дохода будет иметь вид: Р == тр. (R СМ CR) FP, СМ Чтобы оценить проrностическую силу классификационной модели, необхо дим о с чем то сравнить эффективность ее работы в данном случае с моделью «разослать всем!>. То есть мы рассчитаем, какую прибыль получим, если проведем рассылку всем клиентам (при этом моделирования не потребуется). Более Toro, такой расчет нужно выполнять не на обучающем, а на тестовом множестве, Объем TecТOBoro множества обычно варьируется от 10 до 50 %; мы выберем 40 % (5402 за писи, из которых в 781 случае есть отклик, в 4621 отклик отсутствует), Torдa доход составит (781. 10,0 4621.1,0) == 3189 ед. Нам нужна модель, которая будет давать доход больше этой величины. Импортируем в Deductor два текстовых файла r е s р о n s е s 1 . t х t и responses2 . txt с обучающим и тестовым множествами соответственно, Открыв статистические характеристики, обнаружим, что доля клиентов с положительным откликом в обучающем множестве составляет 14,5 %. Иначе rоворя, распределение классов в выходной переменной неравномерное, В таких случаях нежелательно cтpo ить модель на всем доступном множестве примеров, а рекомендуется предварительно уравновесить их (см, раздел 12.6), В rлаве 17, рассматривая бизнес задачу о кредитном скоринrе, мы уже стал кивались с несбалансированностью классов, для борьбы с которой использовали правило Байеса для расчета пороrа в лоrистической реrpессии и процедуру отбора
684 Часть 11. Бизнес анализ в Deductor с дублированием миноритарноrо класса (oversaтpling) в дереве решений. В за даче о массовой рассылке мы построим предсказательные модели двумя MeToдa ми снова с помощью лоrистической реrpессии и нейронной сети (мноrослойный персептроН, алroритм BackProp ). Для этоrо в Deductor имеются соотвеТСТВующие узлы обработчики. Число примеров в нашем случае достаточное, так что для ней ронной сети уравновесим их с помощью процедуры удаления примеров мажори TapHoro класса (undersaтpling). Отметим еще раз, что при проверке модели ypaB новешивать тестовое множесТво ни в коем случае нельзя, поскольку мы смотрим, как будет вести себя модель в реальных условиях. Перед моделированием полезно оценить влияние входных переменных на BЫ ходную. Воспользуемся обработчиком Корреляционный анализ и откроем визуали затор Матрица корреляции (рис. 19.1). Там мы, в частности, видим, что количество покупок и потраченные суммы сильно влияют на отклик на рассылку и дeMOHCT рируют положительную связь. Мат_ aKI11..,.' ..,. f!I . Вжшные поп ...... Корреляuия с IlЫl<QI1НbIМИ полями J...._ QI.к/п'w" 1I 1 - N'",,: П ле .' 1.J Возраст 2 (КО"""О лет клиент Количество позицийтоваров 4 До>:од с клиеНТ8 1 Тыс. 5 06ц"" ЧИСIЮ nOК nOК 6 Обращений е CJIIjЖб nonnержки 7 3аа.ержки платежей В ДИo.oнrнaя карта 1 .0,005 1 "0.107 1 0,344 0,373 0.384, 1 0,003 l -0,002 , 1 :0.004 IIIIIII!I;[ '1'1 .'W......,.1118 1 1 1 1 1 Рис. 19.1. Корреляция с полем Отклик Приступим К построению моделей Data Mining. Импортируйте в сценарий текстовые файлы responses 1. txt и responses2 . txt и постройте модель лоrи стичсской реrpeссии на данных первоrо файла, эадав входные и выходное поля, как показано на рис. 19.2. Положительным исходом будет считаться наличие отклика. Из табл. 19.1 следует, что отношение издержек обоих nmов ошибок равно 10 : 1. Co rласно правилу Байеса пороr отсечения нужно установить равным 10 / 11 == 0,909. На следующем шаrе добавьте обработчик Скрипт к узлу импорта BToporo файла. Скрипт должен ссьmаться на модель лоrистической реrpeссии. В результате вы полу чите вероятности отклика для каждой записи из TecтoBoro множества (рис. 19.3). В задачах массовой рассьmки не обойтись без анализа Lift диаrpаммы (см. раз дел 12.4). Для ее построения необходимо отсортировать примеры в порядке уменьше ния вероятности положительноro исхода. Это леrко сделать, так как в выходном набо ре данных узла Лorистическая реrрессия присутствует поле Отклик Рейтинr. Для друrих алrоритмов машинноrо обучения вопрос, по какому полю сортировать, решается каждый раз отдельно. Построим Lift кривую, Korдa по оси оу откладывается кумуля тивный процент откликов. Фраrмент сценария, реализующий формирование лифт таблицы, состоит из пяти узлов (с учетом сортировки) и представлен на рис. 19.3.
rлава 19. Повышение эффективности массовой рассылки клиентам 685 r1I Мастер обработки Лоrистическая реrрессия (1 из 6) I!!ID EJ НастроАка назнаqеннА сто",бqов 3ацайте назначениs:l ИС)(CQ,НЫ)( столбцов данны)( о Код клиента Возраст Пол "" Сколько лет клиент Коm.1Чес:rво nСIЗИЦИИ товаров ""ДОIoCОД С клиеmа, тыс. ед. Общее qисло nOKynoK Обращений в службу поддержки "" 3ацержки платежей "" Дисконтная карта Х Дата отклика Отклик Настройка нормализации... , . (.', Имя столбuа Т иnдaннbU! COL5 Вещвств8ННЬП j Входное .:J Назна'leНИe БИI1.Данн,,", Статист""",, Н8J"1)eIЬlВНЫЙ Минимум Максимум 6 Среднее 1,813780548012836 Стаl1AajЛНое откл. .. .. 1.3294О3В331023В Дал...,> Отмена Рис. 19.2. Установка назначения столбцов в 111 Сценарии е@ Текстовый файл [responses1.lxl) : ..;11. ЛоrистИ"еская реrрессия (9; nqJor 1/11) , , Корреляционный анализ (устранение незнаqащик факторов) е @ Текстовый файл (responses2.1xt) S l! Скрит (159..159): ("Ла-истжеская реrрессия (9;nopor 1/11)"] а j, . ПОСТРОЕНИЕ LIFТ .КРИВОЙ . 61 Сортировка: Отклик Рейтинr е fIiI Калькулятор: Номер записи 8 fIiI Калькулятор: Размер выборки е { rруnnировка (Измерения: Размер выборки; <Ракты: Отклик) fIiI Калькулятор: % Отклиt<а; ЛИфТ,знаqение Формирование лифт таблицы Рис. 19.3. Сценарий к задаче о массовой рассылке На рис. 19.4 изображена получившаяся Lift кривая. Диаrональная линия OTpa жает работу бесполезноrо классификатора, то есть ситуацию, коrда списки полу чателей рассьmки формируются случайным образом. [рафик кривой, COOTBeтCTBY юшей нашей модели, проходит достаточно высоко, что roворит о хорошем качестве проrнозирования клиентскоrо отклика. Видим, что при объеме рассылки, равном 2S % от TecToBoro множества, мы получим около 7S % всех возможных откликов. Если бы мы проводили рассылку по принципу случайности, то для получения TaKoro же ОТК7IИка нам пришлось бы отправить письма 74 % клиентов. Разница в 49 % и есть эффект, который даст нам стратеrия рассьmки, с использованием MO дели лоrистической реrpессии, коrда в первую очередь письма будут отправляться респондентам с максимальными вероятностями отклика.
686 Часть 11. Биэнес анализ в Deductor д . '...а ", I '[1:"" Id. - .. t:i;. "Iз .- 70 100 90 во во- 50 40 30 20 10 о . 024 661013161922252831 3437404346495255586164671О7376796265В8919497 Размер выборки Рис. 19.4. Lift кривая для модели отклика на основе лоrистической реrрессии Теперь представьте, что компания ранее использовала правило, соrласно KOTO рому рассылка производилась в первую очередь тем клиентам, которые принесли наибольшие доходы. Отсортируем записи по убыванию значений поля Доход с 1<.ЛU енmа, повторим расчеты и построим Lift кривую (рис. 19.5). Она окажется rораздо хуже Lift кривой для лоrистической реrpессии, но при малых объемах рассылки (до 6 %) не уступит ей в эффективности, Диаr I а,,,ма ", I iii". -[;f. <а. - ti -' "Ь . . . х 100 90 80 70 60 50 40- 30 20 10 о 02468111418222629 ЗЗ З7 4144 48 52 5659 63 67 7174 78 828689 9397 Размер выборки Рис. 19.5. Lift кривая для случая рассылки по убыванию значений поля «Доход С клиента!>
rлава 19. Повышение эффективности массовой рассылки клиентам 687 Теперь построим модель нейронной сети. Процедура undersampling предпола [ает, что придется пожертвовать примерно 9/10 примеров с клиентами, от которых не было отклика. В сценарии Deductor это реализуется с помощью обработчиков Фильтр, Калькулятор и Слияние (рис. 19.6). '"'. ь . ПРОЦЕДУРА UNDERSAMPLING . '7' Т <Рильтр ([Отклик] = О) d 1IiiI Кальк лятор: СЛЧИС(J '" Ь Настройка набора данны. [СЛЧИС[]J т <Рильтр ([СЛЧИС[]] > 0.89) '''; Т <Рильтр ([Отклик] = 1) [ ; , . Об чающее множество [фактор 10] . , HeApoceтb [9.4.1] Рис. 19.6. Фрarмент сценария, выполняющий процедуру undersampling При настройке обработчика Нейросеть первые два шаrа аналоrичны шаrам узла Лоrистическая реrрессия. Третий шаr мастера отвечает за архитектуру мноroслой Horo персептрона и параметры активационной функции (рис. 19.7). r.i М!lcтep 06ра60ТКИ Нейросеть (З из 8} I!IDх CTp KT pa неilронной сети ,,,",' )1 . ,,-i.': Нейроны 11 С""". ВХОДНОМ' 'I'Aкrивацион"",я Ф!jнкция c=J]1 Тип фjНкции I Сиrмоиnа I 11 .:: 1 ....Iл.оfj ...J He . 1.. Кpyrизна 1 1.000 2i 1 .. I I '" ." '" '.' П'" 'Си ' "'" ,Н '.'" , '" I I I I l' СКРЬnЪllц::лоев ВbNOДНOM Ш :.: : . : , 11 1 -10 .-5 -5 -4 2 О 24 6 8 10' , НазiO. ! Далее> I От...."" I Рис. 19.7. Настройка структуры нейронной сети Для нашей задачи достаточно одноrо cKpbIToro слоя с четырьмя нейронами. Для обучения выберем алroритм BackProp, после обучения визуализатор rраф нейросети. Он позволяет rpaфически представить нейронную сеть со всеми ее ней ронами и синаптическими связями. При этом можно увидеТЬ не только структуру мноrослойноrо персептрона, но и значения весов, которые принимают те или иные нейроны. В зависимости от веса нейрона он отображается определенным цветом, а соответствующее значение можно определить по цветовой шкале, расположенной внизу окна (рис. 19.8).
688 Часть 11. Бизнес анализ в Deductor в Qзраст '''"--, ", " '-.." " ............. " ............................ J' .// / /// / / Отклик // Общее число ПОКУПО .,.. Обращений в служ'; ер2" i !l/ ' ЗaIJ,ержки плarеже Й / . ,/ ...... ..... I / t/: Дисконтнаs:l KaPТд 72,7043817701632 20,1496463995996 113,003674569362 Рис. 19.8. [раф нейросети в табл. 19.2 сведены воедино результаты классификации и издержки для двух моделей на тестовом множестве и для модели «разослать всем», Таблица 19.2. Результаты классификации Модель TN тр FN FP 06щая Доход, ед. ошибка Лоrистическая pe 3119 643 138 1502 30,3% 4928 rрессия (порor 0,909) Нейронная сеть 3295 744 37 1326 25,2% 6114 ( undersampling, 10: 1) <1Раэослать всем» О 781 О 4621 3189 Наши усилия привели к тому, что на тестовоМ множестве классификаторы чаще ошибаются в сторону ложноположительных случаев, и это хорошо, так как отношение издержек обоих типов ошибок большое, Из табл. 19,2 видно, что лучшей моделью для предсказания отклика клиента становится нейронная сеть, дающая доход 6114 ед. С ее помощью эффективность рассылки увеличивается в 6114 / 3189 == 1,92 раза, На компакт диске сценарий этой бизнес задачи называется responses. ded. Издержки классификации занесены в переменные проекта (Сервис Перемен ные Проект).
Заключение Аналитики нередко рассуждают о том, какой алrоритм лучше, а какой хуже, Oд нако, прочитав эту книry, вы поймете, что она не об алrоритмах. Наверное, в этом и заключается привлекательность бизнес аналитики: она позволяет сформировать целостный взrляд на анализ данных и моделирование, предлоЖИТЬ последователь ность действий для решения управленческих задач на основе накопленной в компа нии информации. И неважно, все алrоритмы Data Mining рассмотрены в книrе или нет, rлавное уметь собирать данные в едиНЫЙ источник, производить их очистку И предобработку, строить и сравнивать модели и интерпретировать результаты. Хотя почему мы постоянно rоворим о бизнесе? Подходы, изложенные в книrе, можно без каких либо oroBopoK применять и в медицине, и в технических науках, словом, в любых областях, rде требуется обработка данных, Как показывают мировые ТеНДеНЦИИ, рынок аналитических платформ будет сильно расти еще долrо. Но какие бы проrpаммные средства, облеrчающие труд аналитика, ни были разработаны, нужно еще знать, как их применить для решения той или иной задачи. Этому мы посвятили всю вторую часть книrи. Мы надеемся, что, прочитав и проработав материалы пособия, студенты и пре подаватели, опытные праКтикующие консультанты и читатели, только недавно столкнувшиеся с современными технолоrиями анализа данных, захотят испытать свои силы на ниве бизнес аналитики. Желаем вам больших успехов!
Литература Основная 1. Архипенков С. я., Толубев Д. В" Максименко О. Б, Хранилища данных. М,: Диалоr МИФИ, 2002. 2. Барсеzян А. А, и др, Технолоrии анализа данных: Data Mining, Visual Mining, Text Mining, OLAP. 2 e изд" перераб, и доп, СПб.: БХВ Петербурr, 2007. 3. Вшин В. н., Толовина Е. Ю., Зшорянская А. А. Достоверный и правдоподобный вывод в интеллектуальных системах, М,: Физматлит, 2004, 4, Кацко И. А" Паклин Н. Б. Практикум по анализу данных на компьютере, М.: КолосС, 2009. 5, Косоруков И. А. Методы количественноrо анализа в бизнесе: Учебник. М.: Инфра М, 2005. 6, Заzоруйко Н. r. Прикладные метоДЫ анализа данных и знаний. Новосибирск: Изд во Ин та математики, 1999, 7, Зиновьев А. ю. Визуализация мнотомерных данных. Красноярск: Изд во KfТY, 2000. 8. Писарева О, М, Методы проrнозирования раЗВI1ТИЯ социально экономических систем, М,: Высшая школа, 2007, 9, Прикладная информатика: справочник: Учеб. пособие / Под ред, В, Н, Волковой и В. Н, Юрьева. М.: Финансы и статистика; Инфра М, 2008. 10. Спирли Э, Корпоративные хранилища данных, ПлаНИРОDание, разработка и реализация, М.: Вильямс, 2001, Т. 1. 11. Вепу М]. А., Liпoff G. S, Data Mining Techniques for Marketing, Sales and Cus tomer Relationship Management, Wiley Publishing, Inc" 2004. 12, Hosтer D, W, Leтeshow S. Applied Logistic Regression (Second Edition), Wiley Publishing, Inc" 2000, 13, Iптoп W Н. Building the Data Warehouse, Wiley Publishing, Inc., 2005. 14. Larose D, Т. Discovering Knowledge in Data: Ап Introduction in Data Mining, Wiley Publishing, Inc., 2005,
Литература 691 15. Larose D. Т. Data Mining Methods and Models. Wiley Publishing, Inc" 2006. 16, Vercellis С. Business Intelligence: Data Mining and Optimization for Decision Mak ing. Wiley Publishing, Inc" 2009. 17. Waпg L., Fu Х. Data Mining with Computational Intelligence. Berlin; Heidelberg: Springer Verlag, 2005, Дополнительная 1. Круzлов В. В., Борисов В. В, Нейронные сети: теория и практика. М,: rорячая линия Телеком, 2001. 2, Руководство по кредитному скоринry / Под ред, Э, Мейз. Минск: [ревцов Паблишер, 2008, 3, ХаЙ'КU11 С. Нейронные сети: полный курс. 2 e, изд, / Пер, с анrл, М.: Вильямс, 2006, 4. Хан'КД Э., УичернД У, Райтс А,Дж, Бизнес проrнозирование. 7 e изд, / Пер, с анrл, М,: Вильямс, 2003. 5, Хъюз А Маркетинr на основе баз данных / Пер. с анrл. М,: Издательский дом rребенникова, 2008. 6, Abbass Н. А, Sarker R, А, Newtoп С. S, Data Mining: А Heuristic Approach. Uni versity ofNew South Wales, Australia, Idea Group Publishing, 2002, 7. Adamsoп С. Mastering Data Warehouse Aggregates: Solutions for Star Schema Performance. Wiley Publishing, Inc" 2006. 8, Agrawal R., Srikaпt R. Mining Sequential Patterns / / J ournal Intelligent Systems, 1997. Vol. 9. N21, Р. 33 56, 9, Agrawal R" Maппila н., Srikaпt R., Toivoпeп н., Verkamo А.], Fast Discovery of As sociations Rules / / Advances in Knowledge Discovery and Data Mining. Ameri сап Association for Artificial Intelligence, 1996. Р. 307 328, 1 О. Aпdersoп R, ТЬе Credit Scoring Toolkit / / Theory and Practice for Retail Credit Risk Management and Decision Automation. OXFORD University Press, 2007. 11, Berthold м., Haпd D.]. (Eds.) Intelligent Data Analysis. Berlin; Heidelberg: Springer Verlag, 2007, 12. Chiu S., Tavella D. Data Mining and Market Intelligence for Optimal Marketing Returns. Elsevier Inc., 2003, 13. Hamerly G" Elkaп С. Learning the к in K Means / / Neural Information Processing Systems. MIТ Press, 2003, 14. Нап]., КатЬет М. Data Mining: Concepts and Techniques. Elsevier Inc" 2006, 15. Data Mining for Business Applications / Edited Ьу L. Сао, Philip S, Уи, С. Zhang, Н, Zhang. Springer Science; Business Media, 2008.
692 Литература 16. Encyclopedia of Data Warehousing and Mining. Idea Group Inc" 2006, 17. Fabrice G., Haтiltoп Н]. (Eds.) Quality Measures in Data Mining. Berlin; Hei delberg: Springer Verlag, 2007. 18. Giudici Р. Applied Data Mining: Statistical Methods for Business and Industry, Wiley Publishing, Inc., 2003. 19, Kaпtardzic М Data Mining: Concepts, Models, Methods, and Algorithms, Wiley Publishing, Inc., 2003. 20, Kovalerchuk В,, Vityaev Е, Data Mining in Finance, Advances in Relational and Hybrid Methods. New York: Кluwer Academic Publishers, 2002. 21. Mitra S., Acharya Т. Data Mining: Multimedia Soft Computing, and Вioinformat ics. Wiley Publishing, Inc., 2003. 22. Olseп]. Е. Data Quality: The Accuracy Dimension. Morgan Каиfшапп Publishers, 2003. 23, Powers D, А., Xie 1'. Statistical Methods for Categorical Data Analysis. Academic Press, Inc" 1999. 24, Pyle D. Business Modeling and Data Mining, Morgan Kaufmann Publishers, 2003, 25, Siddiqi N Credit Risk Scorecards: Developing and Implementing Intelligent Credit Scoring. Wiley Publishing, Inc" 2006. 26. Soukup т., Davidsoп], Visual Data Mining: Techniques and Tools for Data Visualiza tion and Mining. Wiley Publishing, Inc" 2002, 27. The Handbook of Data Mining / Edited Ьу Nong Уе. Lawrence Erlbaum Associ ates, Inc., 2003, 28. The Тор Теп Algorithms in Data Mining / Edited Ьу Xindong Wu. Chap тап & НаН, 2009, 29, Weiss G. М, McCarthy к., Zabar В. Cost Sensitive Learning vs. Sampling: Which is Best for Handling Unbalanced Classes with Unequal Error Costs? / / Proc. of the 2007 International Conference оп Data Мiпiпg. CSREA Press, 2007. Р. 35 41. 30. Williaтs G.]., Siтoff S.]. (Eds.) Data Mining: Theory, Methodology, Techniques, and Applications. Berlin; Heidelberg: Springer Verlag, 2006, 31, Witteп], Н, Fraпk Е. Data Mining: Practical Machine Learning Tools and Tech niques, Elsevier Inc., 2005. 32. Zhao Hui Taпg, MacLeппaп]. Data Mining with SQL Server 2005, Wiley Publish ing, Inc., 2005.
Алфавитный указатель А AdaBoost, 553, 555 Affinity ana!ysis, 281 Antecedent, 282 Apriori, 287, 289, 292, 295, 299, 603, 635 636, 642 AprioriAll, 304 306 AprioriSome, 305 Artificia! пеша! network, 473 AUC, Area under Curve, 580, 589,664 в Backward elimination, 388 Bagging, 548 Base mode!, 546 Best subsets, 388 Boosting,553 Bootstrap, 567 с С4.5, 442, 444, 448 450, 452,596,603,669 С5.0, 442 CART, C!assification and Regression Tree, 459 461,464,470,471 CHAID, Chi square Automatic Interaction Detector, 443 City block distance, 314 C!assification cost error, 572 C!assification error rate, 464 C!eaning, 212 Competition,323 Confusion matrix, 193 Consequent, 282 Cooperation, 323 Cost, 567, 584 Cost matrix, 574 Cost sensitive a!gorithm, 594 Cost sensitive c!assification, 572 Cross va!idation, 567, 570, 571 Cut off point, 574 D Data mart, 88 Data Mining, 42 47 Decision trees, 428 Different function, 315 Divide and conquer, 435 Drill down, 190 Е Error backpropagation, 507 Error rate, 567 ETL, 64, 100 105, 107 113, 117 120, 140, 213 216, 224 227, 229, 248 F Fo!ds, 569 Forward se!ection, 388 Frequent itemset, 287 Fuzzy !ogic, 46, 95 Fuzzy queries, 94 Fuzzy sets, 95 G Gain chart, 582 Gain ratio. 439 Genera!ized ru!es, 293 Gini index, 439 G means, 320 321,340,603,645, 655 н Heat тар, 209 Hybrid OLAP, 76,86 1 Шз, Iterative Dihotomizer, 442, 444, 445, 448, 449,458,596,597 Imba!anced dataset, 593 Information gain, 439, 445 к KDD, Know!edge Discovery in Databases, 25, 40,41,42,45,46,47, 177 k means, 311 312, 314 316, 320 321, 338, 340 341, 603, 645, 649 651, 655 k mediods, 315 Kohonen c!astering network, 322
694 Апфавитный указатель L Leaf,432 Leave one out, 567, 571 Leverage,285 Lift, 565, 576, 578 583, 586, 588 589, 591, 603, 684 686 chart, 578, 582 curve, 578 Like!ihood function, 406 м Machine !earning, 45, 414 Manhattan distance, 314 Market basket ana!ysis 43,281 Maximum likelihood estimates, 407 Minimum descriptive !ength, 566 Misc!assification cost, 572 Mu!tidirnensiona! OLAp, 76 Mu!tileve! ru!es, 293 Mu!ti!ayer perceptron, 486 Mu!tip!e mode!, 546 N Naive Bayesian c!assifier, 424 Node, 432 о Occam's razor, 566 Odds ratio, 412 OLAp, On line Ana!ytica! Processing, 77 OLAp, On Line Transaction Processing, 65 Option tree, 560 Outlier detection, 309 Outlier va!ue, 240 Overall error rate, 573 Overall success rate, 573 Oversampling, 594, 595,671,684 р Partitions, 569 Perturb and сотЫпе, 548 Popu!ation, 275 Postpruning, 468 Precision Recall curve, 591 Predicted variable, 353 Prediction, 343, 353 Predictor variable, 353 Prepruning, 467, 468 Principa! component ana!ysis, 268 Profit curve, 584 Pruning, 466 Purity,433 R Randomization, 550 Reba!ancing, 594 Re!ationa! database, 82 Re!ationa! OLAp, 76,80 Repeated ho!dout, 569 Resampling, 547 ROC, Receiver Operating Characteristic, 565, 586,587,588,589,590,591,596, 603, 662, 664 Root node, 294, 432 s Samp!e,276 Sampling,276 Sca!able A!gorithm, 59 Se!f organizing тар, 330 Sensitivity, 573 Specificity, 573 Splitting attribute, 433 Stacking, 561 Stepwise se!ection, 388 Supervised !earning, 54 т Tenfo1d cross va!idation, 570 Time series data, 516 u Undersampling, 594, 595,671,684,687,688 А Автокорреляционная функция BpeMeHHoro ряда, 530 Аrломеративная кластеризация, 205 Аrpеrирование, 114, 118 Аддитивная реrpессия, 557 558 Активационная функция нейрона, 482 Алrоритм AdaBoost, 553, 555
Apriori, 287, 289, 292, 295, 299, 603, 635 636, 642 AprioriAll, 304 306 AprioriSome, 305 С4.5, 444, 451 452, 456, 458, 460, 513, 596 597, 603, 669 CART, 459 461, 464, 470 471 G means, 320 321,340,603,645,655 ШЗ, 280, 442, 444 445, 448 449, 458, 596 597 k means, 311 312, 314 316, 320 321, 338,340 341, 603, 645, 649 651, 655 k медиан, 315 масштабируемый, 59 60, 340 обратноrо распространения ошибки, 506 507, 509 51O, 512 513, 598 обучения, 24 25, 45 47, 51 60, 112, 137, 192 193, 196,201,238, 306, 322 329, 332 333, 337, 344 345,348,431,437, 439, 473 475, 477, 482 486, 490 504, 506 507, 511 513, 543, 545, 547, 549 553, 555 556, 561 562, 568 572, 593 594,596 598,646 649,684,687 Альтернативная rипотеза, 379 Анализ АВ С, 628 633, 677 Анализ XYZ, 628 633, 677 Анализ данных, 20 Аналитик,26, 131, 188, 195,241,250,260, 391,438,476,565,602 Аналитическая платформа, 48 49, 601 Аналитический подход, 21 22, 24 Аналитическое приложение, 140 Аномальные значения, 220, 226, 230, 245 246 корректировка, 52, 126, 131,201,241,507, 509,597 обнаружение, 42, 214, 223, 238, 241, 244, 286 287, 295, 304, 309 310,416 Ансамбль моделей, 16, 603 Антимонотонность, 287, 289, 290, 299,302 Апостериорная вероятность, 347, 423 425 Априорная вероятность, 427 Ассоциативные правила, 44, 281 283, 291 293,299,636,641 достоверность, 61,90,113,125,132,138, 144, 176, 215 217, 222, 226, 234, 240, 246 247, 250, 259, 273, 283 286, Алфавитный указатель 695 291 292,438 439,532,548,636,638, 640,658,666,669 значимость, 285 286 иерархические,203,292 294,340,431 непонятные, 131,640,695 поддержка,283,640 641 полезные, 14,242,299,640,642 следствие, 12,35, 64, 126, 197, 204, 235, 282 285, 291 292, 387, 638 640, 652 тривиальные,640 642 условие,233,282 283,428 частый предметный набор, 287 Ассоциация, 43 Атрибут,426,428,608 ветвления,348,432 433,439,596 Аффинитивный анализ, 281 Ацикличность деревьев решений, 435 Б База данных реляционная, 77, 82, 86, 88 89, 107 транзакционная, 299 Бизнес данные, 35 Бритва Оккама, 566 Бустинr, 553 Бутстрэп оценки, 571 Бэrrинr, 548, 550 552 в Визуализаторы, 177, 192,202 ОLАР куб, 80, 176, 186, 188,633 rpафические, 175 древовидные, 202 203, 431 карты, 27, 176, 192, 202, 208 210, 311, ЗЗО 336, 341, 565, 603, 644 646, 648 651, 653, 655 общеrо назначения, 176 177, 202 оценки качества моделей, 193, 196 связей, 206 208 табличные, 175 что если, 638, 662, 665 666 Визуализация, 173 175, 186,201,206,603 Виртуальное ХД, 92 Витрина данных, 89 Восстановление равновесия классов, 594 Временной отсчет, 516
696 Алфавитный указатель Временной ряд, 142 143, 145, 148,241,516, 527,532,679 дискретный, 33, 516 517 мноrомерный, 78 79, 176,517,626 непрерывной, 43,55, 162, 196,300,347, 403, 41O 411, 413, 420, 422, 437 439, 465,484 нестационарный, 527 стационарный, 527 Выборка, 41,145,276,371 исходная, 82, 120, 155, 158, 195, 276 277, 303,395,549 обучающая, 51 54, 56 57, 192,251,495, 497,533,570 тестовая, 570, 665, 671 r rетероскедастичность, 400 rибридное ХД, 87 rипотеза,25 альтернативная, 367, 369, 379, 389 нулевая, 367 369,379,389 rистоrpамма, 181 182, 253 rлубина поrpужения, 143 rоризонт проrноза, 143 144 rрадиентные методы обучения, 501 метод rрадиентноrо спуска, 502. 505 rруппировка данных, 151 д Данные arpеrированные, 42, 69, 73 74, 80, 86.115, 148, 152, 190,629 630 аномальные, 24, 54,61,63, 109, 138. 174, 197, 214 215, 219 220, 226, 230, 233, 240 243,245 246.315,541 вещественные, 117 дата/время, 32 ЗЗ, 122, 142 143, 218, 300,613,659 детализированные, 69, 73, 76, 86 87, 148, 190 дискретные, 33, 78, 162, 164, 170, 218, 516 избыточные, 231, 259, 270 исторические,67 68.93 94,515 катеroриальные, 32, 78, 170,265,315,339, 341,370,560 лоrические, 31, 96, 11O 111, 142,233, 339 неполные, 120 121, 125, 131, 145 146, 247 непрерывные, 33, 78, 178, 342 343, 420, 422,443,516,658 неструктурированные, зо 31, 108 ординальные, 32 пропущенные, 174,229,247.450 противоречивые, 107, 11O 111,214,397 слабоструктурированные, зо 31 строковые, 125, 128, 149,219, З39 структурированные, 30, 32, 62, 102, 107, 339,606 транзакционные, 34, 40,299 упорядоченные, 30, 32 33, 77, 143 целые, 117 числовые, 33, 63,74,78,117,125,128,149, 170,178,219.236,239,248,259,265, 339,464,495,516,560.584 Дерево решений, 203, 348, 669, 673, 675 интерактивное, 672 полное 122, 137, 159 160, 340, 438, 457 458,463,465,468 469,471 реrpессионное,464 465,558 Деревья выбора, 559 560 Диаrpамма рассеяния, 196 198,680 Диаrpамма связей, 206 207 Диаrpамма <!точность полнота», 591 Доверительный интервал, 410, 419 Достоверность, 61,90,113,125,132,138,144, 176, 215 217, 222, 226, 234, 240, 246 247, 250.259. 273, 283 286, 291 292, 438 439, 532,548,636,638,640,658,666,669 ассоциативноrо правила, 283, 286, 291 Дубликат, 230, 234 235, 2З7 239 ж <!Жадный!> алrоритм, 434 435, 672 3 Зависимая переменная, 428 Заrpузка данных, 101, 119, 123 из локальных источников, 91, 104, 123 мноrопоточная, 121 неполная, 120 Запрос, 187,607
аналитический, 21 22, 24, 124, 166, 214 215,258,306,605 к базе данных, 65, 186 нереrламентированный, 69, 76,92, 103 нечеткий, 99 Значения пропущенные, 174,229,247,450 закодированные, 110 111 составные, 11O 111, 128, 214 215, 229, 382,417 аномальные, СМ. Аномальные значения Значимость, 284, 408, 655 модели, 367, 368, 377, 378 переменной, 419 и Иерархические ассоциативные правила, 292 Избыточность, 91 Извлечение данных , 100 101, 103 104, 124 Издержки классификации, 688 Измерение, 78 82,608,613,616 Индекс Джини, 439 440 Индекс соответствия, 99 Интервал проrноза, 143 Информативность данных, 39 Информационный подход, 23, 28, 34, 40, 51 Исторические данные, 68 69 Источник данных локальные, 65, 114,217,498,502,513 неструктурированные, зо 31, 108 структурированные, 30, 32,62, 102, 107, 339,606 Исход, 405, 683 истинноотрицательный, 408, 573, 576 истинноположительный, 408, 573 574 ложноотрицательный, 408, 573 574 ложноположительный, 408, 573 к Карта, 332, 644 645, 649 самоорrанизующаяся, 322, 330. тепловая, 209 21O Карта Кохонена, 46, 176,210, 311, 322 325, 329 332,334 337,340 341, 475, 603, 644 651, 653, 655 инициализация,316,324,336,492,571 Алфавитный указатель 697 обучение, 54, 323, 475, 490 491, 498, 501, 557,567,593, 649 Катеrориальные данные, СМ. Данные Kaтe lорuалъные Качество данных, 211 визуальная оценка, 213, 219, 527 оценка, 25, 36 37,39, 59, 62 63, 151, 176, 211 213, 216 217, 219, 224, 244, 252, 347, 351 357, 367 368, 372, 374, 377, 384 386,410,420,444,476,495,52 544, 558, 563 565, 567, 569, 590,602, 643 профайлинr, 218 уровни, 203, 214 215, 293 295 Квадратичная сумма остаточная, 359 360,399 полная, 267, 359 360, 374, 441, 464 последовательная,389 390 реrрессионная, 198,342,345 347,359, 361, 363, 365 367, 376, 397 398,558 частная, 389 390 Квантование, 141, 160, 162,270,417,667 интервал, 94, 142 143, 148, 161 164, 16 252,356,410,413,419,484,518,539, 655 неравномерное, 164 165,683 равномерное, 164 Класс, 183, 194,251,560,660 662 миноритарный, 594 мажоритарный, 594 Классификация, 43 44, 47,342,344,574 байесовская, 345, 347 бинарная, 346,381, 403, 411, 421,565, 586,660 с учетом издержек, 572, 598, 682 Кластер, 652 653, 655 Кластеризация, 43 44, 205, 308 310, 341, 649 аrломеративная, 205 разделительная, 205, 311 Кодирование, 169 171, 495 двоичное, 170,380,495 дополнительная информация, 67 уникальные числовые коды, 170,495 Компоненты BpeMeHHoro ряда, 521 сезонная компонента, 521, 523 525, 530 тренд, 521 524, 526 527, 530 532, 538 539
698 Алфавитный указатель циклическая компонента, 521, 525 526 Конкурентное обучение, 322 Консолидация данных, 15,62,603 Корневой узел, 447 Корреляция, 362, 528, 684 Коэффициент детерминации, 360 361 Коэффициент корреляции, 361 362,529 Коэффициент реrрессии, 353 Коэффициент скорости обучения, 325, 506, 511 Кривая дохода, 584 Критерий, 207,338, 443 разбиения в дереве решений, 439 Стьюдента, 368, 410, 655 Фишера, 194,203, 368, 443 444, 472 Куб, 627 OLAp, 49, 76 77, 80 81, 86, 176, 184 190, 259,306,542,603,606,622,624,626, 631 633, 681 мноrомерный, 78 79, 176,517,626, 703 л Левередж, 285 Линия реrpессии, 353, 355 356 Лист, 428 Лифт ассоциативноrо правила, 283, 286, 291 Лифт кривая, 578 Лоrит преобразование, 422 м Матрица издержек, 574 575, 595 Матрица классификации, 193, 195 196, 573 Машинное обучение, 44 45 Метаданные, 74 75, 612 Метод наименьших квадратов, 351 Метод обратноrо исключения, 390 Метод перебора всех возможных набо ров, 391 Метод поиска лучших подмножеств, 391 Метод последовательноrо отбора, 390 Метод прямоrо отбора, 389 Метрика евклидов а, 314, 645 Манхэттена, 207, 311, 314 315 MHoroMepHoe ХД, 76, 80, 88, 185, 202, 209, 330 Мноroмерный куб, 78 детализация, 80, 82, 190 191 сечение, 80 81 свертка, 80,603 транспонирование,80 81, 190 Мноrослойный персептрон, 486 Множество, 32, 110, 197, 272, 288 289, 435 436, 457, 571, 598 валидационное, 568 обучающее, 25, 55 56, 432, 459, 489, 497, 547, 552, 567 569, 571 572, 595,646, 659 TeCTOBoe,25,55 56,496,551,568 569, 571,646,659,684 Моделирование,21,29 аналитический подход, 21 22, 24 информационный подход, 23 24, 28, 34, 40,51 Модель, 20 21, 23, 25, 144, 154, 199,255,257, 343,376,379,398, 478, 481, 533, 578, 580, 587,688 полная, 267, 359 360,374, 441, 464 Модель BpeMeHHoro ряда аддитивная,521,557 558 мультипликативная, 521 Модель проrноза, 532 декомпозиция BpeMeHHoro ряда, 538 метод среднеro и скользящеrо среднеrо наивная, 533 535 обобщенная, 64, 66, 68,72,101,144,236, 305 306,432,481,493,533,538,550 реrрессионная, 198, 342, 345 347, 361, 3 3, 365 367, 376, 397 398, 558 экстраполяция, 534 Модель смешанная, 21 Модель теоретическая, 21 Модель эмпирическая, 21 Момент,512 Мультиколлинеарность, 402 н Наивный проrноз, 533 Недообучение, 466 Независимая переменная, 297,392,396, 428 Нейрон,326 329,478 биолоrический,478 входной,485 выходной, 485
искусственный, 349, 478, 480 481 <1мертвый!>,333 победитель, 326,471 сиrмоидальный, 483 скрытый, 485 Нейронная сеть, 348, 350, 475, 498, 688 Непрерывные данные, 33, 516 Несбалансированность классов, 593 Нечеткая лоrика, 46, 95 Нечеткие запросы, 94 Нечеткие срезы, 94 Нечеткое множество, 95,98 Нормализация, 142, 166 168, 495, 603 десятичное масштабирование, 166 минимаксная, 167,495 поэлементное преобразование, 168 стандартным отклонением, 366 Нулевая rипотеза, 367, 379, 389 о Область промежуточная, 102 Обобщающая способность, 55,345,467,469 Обоrащение данных, 64, 131, 133 134 внешнее, 134, 157 160 внутреннее, 134 135, 156 157 Обработка дубликатов и противоречий, 230, 238 Обучающая выборка, 52, 251, 495, 497, 533 Обучающее множество, 56, 432, 568 Обучение, 54, 323, 475, 490 491, 498, 501, 557,567,593, 649 без учителя, 54 деревьев решений, 230, 280, 348, 427 4З5, 4З7 438, 444, 448, 459, 465 467, 469 470, 477 478, 513, 544, 546, 549, 551, 557, 560 561, 596,672 конкурентное, 322 машинное, 44 45, 137,428,600 нейронных сетей, 46, 230, 322 323, 341, 427, 473 475, 477 478, 482 486, 492, 495 499,501 502,504,544,546,597 с учителем, 54, 344,431,473,492,507 Обучение сети Кохонена, 323, 649 конкуренция,323 328,337 объединение, 42, 46, 96, 115, 140, 153, 155, 157,205, 239, 323 326,342,548 нодстройка весов, 323 324, 326 329,490, 494,512 Алфавитный указатель 699 Окно выrрузки, 103 Ординальные данные, 32 Остатки реrpессии, 354 Отношение правдоподобия, 468 отрицательноro результата, 408 положительноrо результата, 408 Отношение шансов, 422 Оценка качества данных, 211, 216 217, 219, 224 Оценка максимальноrо правдоподобия Очистка данных, 41, 64,108,118,225 Ошибка, 55 56, 201, 240, 357, 364, 368, 376, 413,509,554 BToporo рода, 586 587 обобщения, 55 58, 69, 72 74, 82, 86, 92,102,116,144,230,255,295,546, 568 569 обучения, 55 первоrо рода, 586 п Перекрестная проверка, 569, 571 Переменная,389,422 бинарная, 346,381, 403, 411, 421, 565, 586,660 зависимая,44,345 346,428,682 линrвистическая,96 независимая, 297, 392, 396, 428 фиктивная,381 382,386,400 Переобучение,466,496 497 Поддержка, 283 284, 291 292, 302, 305, 439 ассоциативноrо правила, 283, 286, 291 минимальная, 161,291,297,305,469,518, 636, 679 Последовательность, 121, зоо 302,304,554, 556,616 клиентская, 301, 303 максимальная, 105, 143, 161,301, 636, 664 частая, 302 Последовательный шаблон, 44, 299 Постзarpузочные операции, 122 Правило Байеса, 575 576 Правило Видроу Хоффа, 507 Предобработка данных, 225, 228 Принцип <1разделяй и властвуй», 435 Проrноз, 515, 536,681
700 Алфавитный указатель Проrнозирование, 309 310, 514, 516, 535, 537,539 540,630 631,676,678 Проекция, 650 с сохранение тополоrическоrо подобия, 330 Пропущенные данные, 174,229,247,450 восстановление, 129,230,247,249 Простой классификатор Байеса, 423 Профайлинr данных, 218 р Радиус обучения, 648 Разделительная кластеризация, 205, 311 Расстояние, 206, 264, 314 315, 317 319,405, 645,650 евклидово, 207, 236, 245,264,311,314, 324,326,330,339,350,650 Манхэттена, 207, 311, 314 315 Реrрессионная модель, 198, 342, 345 347, 361, 363, 365 367,376, 397 398,558 множественная, 370, 376, 421 422 простая, 219,347,351,363,370 371, 522, 535 Реrpессия, 43 44, 196,380,537 линейная, 23, 166, 267 268, 345 346, 348, 351 352,356,359, 363, 365 367, 369 371, 379 380, 386 387, 396,403, 428,522,538,558,603,678 лоrистическая,345 348,403,405,410, 421,428,481 482,488,509,523,558, 594,603,659 660,669,684,687 688 множественная, 370, 376, 421 422 простая, 219, 347, 351, 363, 370 371,522, 535 Реляционное ХД, 76, 83, 608 Ретропроrноз, 198 200 с Самоорrанизация, 54,308 Сбор данных, 36, 118 Сrлаживание, 229, 246, 650 временных рядов, 16,40, 119, 142 143, 177, 198, 248, 514, 516, 518, 521, 525 526, 532, 538, 541 542, 603, 630 631, 677 678 Сезонная компонента, 521, 523 525, 530 Семантический слой, 70, 607 Сеть Кохонена, 322, 325 Система, 551 аналитическая, 48 49, 62, 68 69, 75, 77, 188,202,273,600 601,606,634 оперативной обработки (OLTP), 85 поддержки принятия решений, 67, 70, 607 Скользящее окно, 42, 143, 146, 148,603 Скоринr кредитный, 342, 397,452,572,584, 586,657 658 Скоринrовая карта, 310, 659 Скорость обучения, 648 Слияние данных, 154,671 внешнее соединение, 157 160 внутреннее соединение, 156 157 объединение, 155 Сокращение размерности, 254 записей, 270 272 значений, 270 272 числа признаков, 258, 260, 263, 270 Сортировка данных, 141 Составное значение, 111 Специфичность, 574 Сравнение моделей, 563 566, 603 Срез, 80,98, 186,622 нечеткий,99 Стэкинr, 561 562 СУБД, 38, 48, 63, 65, 70, 76, 82 83, 85, 107 1O8, 114, 124 125, 127, 130, 137, 174, 601 602, 604, 607 Схема звезда!>, 83 Схема снежинка!>, 84 Сэмлинr раl!номерный случайный, 276 277, 603 стратификационный,277 т Таблица сопряженности, 662, 665, 672 Таблица фактов, 83 Тест Вальда, 409, 419 Тест Чоу, 399, 658 Тип данных вещественный, 32 33,477, 614, 644, 659 дата/время, 32 33, 122, 142 143, 218, 300,613,659 лоrический,32 33, 142,659 строковый, 32 33, 141 142,218,339,477, 659 целый,32 33, 477, 613, 644, 659
числовой, 78, 139, 142,218,443,446 44 453,472,482 483,509,580 Тиражирование знаний, 28 Точка отсечения, 586 Транзакционные данные, 34, 40 Транзакция, 65,282 клиентская, 301, 303 Трансформация, 138 временных рядов, 40, 119, 142 143, 177, 198,248,514,516,518,521,525 526, 532, 538, 541 542, 603, 630 631, 677 678 rруппировка, 42 43, 119, 141, 151 153, 277,308,334,542, 603, 628 629, 632, 655, 667 квантование, 42, 141, 160 162, 164 16 265,270,417,439,603,667 нормализация, 142, 166 168,495,603 разrpуппировка, 141, 153 154,542, 603, 680 скользящее окно, 42, 143, 146, 148,603 слияние, 141, 154,239,603,633,671,687 сортировка, 42, 50, 119, 141,219,302 табличная подстановка, 141 Тренд, 521 522 Трудоемкость алrоритма, 58 у Узел,294,428,438,440,461,636 дочерний, 348, 444, 454 корневой, 447,460,469, 471 родительский,296 298,433,440,472 Упрощение деревьев решений, 465 отсечение ветвей, 468, 470 ранняя остановка, 468 469 Уравнениереrpессии,353,384,394,400 ф <DaKT, 78 79,608,659 <DaKTop, 37, 231 <Dильтрация,232,603,626 Апфавитный указатель 701 <Dормула Байеса, 424 <Dункция отличия, 315 <Dункция правдоподобия, 416 лоrарифмическая, 407 <Dункция принадлежности трапецеидальная, 96 треуrольная, 96 х Хранилище данных, 70,607,613 виртуальное,92 93,601,603 rибридное, 87 кросс платформенное, 76 MHoroMepHoe, 76,80,88,185,202,209, 330 реляционное, 88, 603 ц Целостность данных, 110 Центроид, 317 Циклическая компонента, 521, 525 526, 539 ч Частный F критерий, 388 Черный ящик, 23 Числовые данные, 219 Чувствительность, 573, 589 ш Шанс, 416 Шум,229 я я чейка карты Кохонена, 332
Паклин Николай Борисович, Орешков Вячеслав Иаоревич Бизнес-аналитика: от данных к знаниям (+CD) Учебное пособие 2 e издание, исправленное Заведующая редакцией Ведущий редактор Художник Корректор Верстка и Сальникова Е. Власова Л. Адуевская А. Павлович О. Махлина 000 «Мир кию'», 198206, СаНICТ Петербурr, Петерrофское шоссе, 73, лит. А29. Налоrовая льrота общероссийский классификатор продукции ОК 005 93, том 2; 95 3005 литература учебная. Подписаио в печать 12.06. 2. Формат 70> 100/16. Уел. п. л. 56,760. Тираж 1500. Заказ 6029. Отпечатано по технолоrни CtP в ИПК 000 «Леllинrpадское издательство» 194044, Санкт Петербурr, ул.Менделеевская, д. 9 Телефон/факс: (812) 495 56 10.
BaseGrou p Labs ТЕхнолоrии АНАЛИЗА ДАННЫХ BaseGroup Labs нрофессионалЫIЫЙ поставщик продуктов и реIIIений в области анализа l(aH пых. Мы имеем МIIOI'олетний опыт работы в области разработки аналитических алrоритмов и СОЗit,Шия законченных систем. BaseGroup Labs предлаrает полностью иптеrрироваlшые I1рОДУК ты, объелиняющие все необходимые инструменты анализа: хранилища данных, ана.ТIитическую отчетность, механиз:!ы ноиска закономерностей и построения моделей, средства интеrрации аШUIитических систем с платфор:!ами сторонних производителей. Системы от BaseGroup Labs выполнены с примененисм самых современных информаци онных технолоrий. т ехнолоrи и Data Warehouse хранилище данных о Консолидация анализируемых данных, обеспсчение непротиворечивости данных. О Быстрый доступ к необходимой инфор мации. О Автоматичсское обновлеНlIе данных. О Боrатый семантический слой / 'OLAP мноrомерный анализ данных о Мноrомерная отчетность, позволяющая извлечь :taKCH !YM полезной информации из имеющихся данных, О rибкие механизмы навиrации и манипу лирования данными. О Анализ тендеIЩИЙ. О Простота lIРlIменения конечным ноль :ювателем ,Data Mining добыча 'данных " о ПРОПIOзирование. О Поиск закономерностей и зависимостей. О Извлечение правил. О Онтимизация нроцсссов. О Анализ по прющипу «что если» Knowledge Discovery in DB , , обнаружение знаний в базах данных , о Механизмы .Улучшения качсства исход ных данных (очистка, преобразование и трансформация данных), О Построение сценариев обработкп дaH ных. О Механизмы построения моделей, О ИНТСI'рация моделей в инфОР"'I<щионные системы Наши системы базируются на собственном анa.шrrическом ядре, что обеспечивает беспреце дентную rибкость при выборе способов анализа и создании прикладных решений. ПримеНСlIИе самообучающихся механизмов дает возможность быстрой адантации решения под постоянно нзмеНЯlOщиеся условия. Россия, 390046, r. Рязань, ул. Введенская, д. 115, оф. 447. Тел/факс +7 (4912) 24 09 77. Россия, r. Москва, ул. Садовническая, д. 82, стр. 2, подъезд 6. Тел/факс +7 (495) 222 71 17. info@basegroup.ru www.basegroup.ru
.. J2 f 2rOB Deductor флаrманский продукт BaseGroup Labs, концентрирующий мнorолетний опыт KOM панни и вобравший в себя самые удачные архитектурные идеи и современный математический аппарат. В Deductor реализованы технолоrии анализа структурированных данных: нейронные сети, деревья решений, хранилища данных и OLAP, ассоциативные правила, карты Кохонена и MHoroe друтое. Использование Deductor в учебном процессе поможет студентам освоить алroритмы машинноrо обучения и системы интеллектуальной обработки информации на прак тике, решая актуальные задачи по консолидации, очистке, проrнозированию, клаССИфИКаЦИИ, кластеризаЦИИ,скоринrу. Образование Для высших учебных заведений BaseGroup Labs предлаrает специальные условия. Заключив с нами соrлашение о сотрудничестве, преподаватели и сотрудники учебноro заведения получают следующие возможности, О Аналитическую платформу Deductor Academic для прuведения практикумов по дисци плинам, связанным с информационно аналитическими системами, интеллектуальными информационными системами, системами поддержки принятия решений и друrим курсам для прикладных информатиков и экономистов. О Бесплатное е lеarniпg обучение преподавателей на образовательном портале edu.basegroup.ru в полноценной системе ДИСТalщиониоrо обучения и сертификацию по результатам обучения, обсуждение возникающих вопросов на форуме. О Мероприятия для вузов партнеров: очные конференции для преподавателей, конкурсы CTY денческих работ. О Проrpаммы повышения квалификации по корпоративным аналитическим системам при институте экономики и финансов <!Синерrия!>. О Большое число методических разработок для проведения практических занятий со CTyдeH там и по всем современным технолоrиям анализа данных, Участие в проrрамме полностью бесплатное. Образовательная инициатива действует с 2005 rода, и за это время более 90 вузов России, Украины и Беларуси стали нашими партнерами и используют аналитическую платформу Deductor в учебном процессе. Вот некоторые из них: О Высшая школа экономики; О Российский rосударственный аrpарный университет; О Томский rосударственный университет; О CaHKT Петербурrский rосударственный политехнический университет; О Одесский национальный университет имени И. И. Мечникова; О Белорусский rосударственный университет информатики и радиоэлектроники. Форму и условия партнерства, полный список вузов партнеров и друryю дополнительную информацию можно получить на образовательном портале http://edu.basegroup.ru. Россия, 390046, r. Рязань, ул. Введенская, д. 115, оф, 447. Тел/факс: +7 (4912) 24 09 77; +7 (4912) 24 06 99, edu@basegroup.ru
Н.Паклин,В.Орешков ", ....;, . "11. , ;1 I ,. 'InПlП ! . L ,",,,,.J1 В!;alk l' CJ!L Вi'", 205UпlIIOD3 '. со J 2. ,nl, ! " I ::' '" !II I e;iiilP ...... '"'" .,.е 1811 _1 ..... ' .","", vl :;: ... ".,. ...:, .: , .I ;::L4;;':: со' .1 A. BaseGrou p Labs "ТЕхнолоrии АНАЛИЗА ДАННЫХ 8 4:"'! о" ? "f?,5.. ," 1.. С' ...... . , , O . . .- ) ." ,.?: ';'1.-:'. ; 11 I .iI .,... ' .Jm"""'1 . , а ''. .... . в ..). .:1 а о 6 - АНАЛИТИКА: от д-анных к знаниям 2-е издание, исправпенное . Хранилища данных и OLAP . Очистка и предобработка данных . Основные алrоритмы Data Мiпiпg . Сравнение и ансамбли моделей . Решение бизнес задач на аналитической платформе Deductor ппTepo CD HOM Аналитическая платформа Deductor Academic .... . ..... ,...
Недостаток квалифицированных специалистов rлавная проблема на пути распространения методов анализа данных в бизнесе, производстве, технике. В ближайшие rоды спрос на таких специалистов будет только расти. Вы хотите идти в HOry со временем? Torдa ваш выбор дистанционные курсы BaseGroup Labs. Окунитесь в мир современных технолоrий анализа данных, скрывающийся за аббревиатурами и словами OLAP, KDD, Data Warehouse, Data Mining и Business Intelligence. . Полный курс по корпоративным аналитическим системам . Обучение не выходя из дома, офиса . Закрепление навыков на практике . Опытные преподаватели . Апестация и сертификация . Выrодные предложения о работе . Совместные с вузами проrpаммы повышения квалификации Т..'I"'л..tС'(......,......,чlll..J.. I..T........................j8C..J ( ':':.":'::"<;: . ........,...................................... ,====:cOlllJDoq .о-.cnol........--т-....... ..OoaI...."II э ..................IIЮ'OIIJ .........................I8Q. . ..............". "'1" ............,...............II] '......."..,..........""'""'...щ'" .....................- - Образовательный портал http://www.edu.basegroup.ru к изданию прилаrается компакт диск с дистрибутивом свободно распространяемой версии аналити ческой платформы Deductor Academic, файлы с демопримерами ко второй части книrи, а также дополнительные материалы по Deductor. в первой части учебноro пособия раскрываются основные технолorии, используемые при создании и внедрении корпоративных информационноаналитических систем и объединяемые термином .бизнесаналитика": хранилища данных и OLAP, преобразование и очистка данных, базовые алrоритмы Оат Мiпiпg, анализ временных рядов, сравнение и ансамбли моделей. Во второй части авторы демонстрируют, как можно решать задачи консолидации, составления аналитической отчетности, кредитноrо скоринrа, росспродаж, проrнозирования спроса и мнorие друrие средствами бизнес аналитики, на примере аналитической платформы Deductor. Книrа предназначена для бизнесаналитиков, специалистов в области анализа данных, а также для студентов вузов, обучающихся по направлениям и специальностям «Прикладная информатика», "Бизнесинформатика" и друrим экономическим специальностям. Экономическая лиrература Экономико-математические методы Уровень пользователя: ппTEP@ 197198, СанктПетербурr, а/я 127; тел.: (812) 7037374. postbook@per,com 61093, XapbKOB93. а/я 9130; тел.: (057) 7584145, 751" 1002, per@kharkov.piter.com ISBN: 978+459--0071 7 J IШ!IIШJ ll!11 www.piter.com вся информация о книrах и веб-маrазин

Название: Бизнес-аналитика: от данных к знаниям
Автор: Николай Паклин, Вячеслав Орешков
Издательство: Питер
ISBN: 978-5-459-00717-6
Год: 2013
Формат: PDF/DjVu, CD
Страниц: 704
Размер: 192.7 MB

Книга представляет собой руководство для профессиональных бизнес-аналитиков, занимающихся внедрением корпоративных аналитических систем. В теоретической части последовательно освещаются современные технологии сбора и анализа структурированной информации: хранилища данных, ETL, OLAP, Data Mining, Knowledge Discovery in Databases. В практической части приводятся примеры решения бизнес-задач на аналитической платформе Deductor Academic. В данное, второе, издание включены разделы по последовательным шаблонам, байесовскому классификатору, обучению в условиях несбалансированности классов, расширена практическая часть. Книга будет полезна всем интересующимся вопросами интеллектуального анализа данных и методами автоматического поиска закономерностей в массивах информации. Для специалистов в области анализа данных, студентов и аспирантов.

В книге последовательно раскрываются основные технологии, используемые при создании и внедрении корпоративных информационно-аналитических систем, объединяемые термином «бизнес-аналитика»: хранилища данных и OLAP, трансформация данных, ETL и методы очистки, базовые алгоритмы Data Mining, анализ временных рядов, подходы к построению ансамблей моделей и их сравнению.

Во второй части авторы на демонстрационных примерах показывают, как можно решать такие задачи как консолидация, аналитическая отчетность, кредитный скоринг, стимулирование продаж, прогнозирование спроса и другие средствами бизнес-аналитики на базе аналитической платформы Deductor компании BaseGroup Labs.

Рассматриваемые теоретические вопросы:

  • Технологии KDD и Data Mining
  • Хранилища данных и OLAP
  • ETL, очистка и предобработка данных
  • Алгоритмы кластеризации, классификации и регрессии
  • Ассоциативные правила и анализ временных рядов
  • Сравнение и ансамбли моделей

Примеры решения бизнес-задач в Deductor:

  • Консолидация данных и аналитическая отчетность аптечной сети
  • Ассоциативные правила в стимулировании розничных продаж
  • Сегментация клиентов телекоммуникационной компании
  • Скоринговая карта для оценки кредитоспособности заемщиков
  • Прогнозирование продаж товаров в оптовой компании
  • Повышение эффективности массовой рассылки клиентам

Книга может выступать в качестве руководства для профессиональных бизнес-аналитиков, занимающихся внедрением корпоративных аналитических систем. Для студентов вузов, обучающихся по направлениям и специальностям «Прикладная информатика», «Бизнес-информатика» и других экономических специальностей, специалистов в области анализа данных, аспирантов.

К изданию прилагается компакт-диск с дистрибутивом свободнораспространяемой версии аналитической платформы Deductor Academic, файлы с демопримерами ко второй части книги, а также дополнительные материалы по Deductor.

September 14 2009, 01:20

Бизнес-аналитика: от данных к знаниям…

Бизнес-аналитика… Так называется одна книга, которую я приобрел буквально на днях, и так называется (судя по всему) та специализация, в рамках которой я работаю. То есть, другими словами, время безымянного существования в бизнесе, когда я не знал, как себя назвать, кажется закончилось. С каждым новым шагом я убеждаюсь в этом все больше. Хотя по должности я экономист, однако моя специальность не экономика как таковая. И хотя неплохо программирую с помощью методов VBA, что находит свое продолжение в использовании средств манипуляции данными ADO и DAO, однако моя специальность — это также не программирование. Хотя не далее как в пятницу начальник отдела ИТ сделал мне приятный комплимент (что дескать я дам еще фору иным программистам — спасибо ему на этом), все-таки я не IT-шник. Моя сфера именно бизнес-аналитика, где главное — это техника, способность и практические навыки к анализу данных. Эта способность включает в себя многое, но главное в ней — скорость! Аналитик в считанные минуты и секунды находит решение тем вопросам, на разрешение которых у других уходят часы и дни.

Мне это сложно объяснить, но именно в этом заключается та сила, которая позволяет мне шаг за шагом добиваться новых результатов и доказывать, что именно я как никто другой нужен на своем месте. Но с другой стороны я понимаю, что из сферы экономики я мог бы перекочевать в сферу анализа продаж или закупок, или заняться анализом продаж на бирже — и везде суть моей работы была бы одна и та же.

Книга Николая Паклина и Вячеслава Орешкова «Бизнес-аналитика» — первая в своем роде, где бизнес-аналитика излагается достаточно концептуально, чтобы к ней серьезно отнестись. Конечно, на мой взгляд там половина — вода. Но зато другая половина стоит того, чтобы ее почитать. Кроме того, вода — это не так уж плохо, когда надо создать имидж в глазах непосвященных. Так что есть чему порадоваться :))

Книга представляет собой руководство для профессиональных бизнес-аналитиков, занимающихся внедрением корпоративных аналитических систем. В теоретической части последовательно освещаются современные технологии сбора и анализа структурированной информации: хранилища данных, ETL, OLAP, Data Mining, Knowledge Discovery in Databases. В практической части приводятся примеры решения бизнес-задач на аналитической платформе Deductor Academic. В данное, второе, издание включены разделы по последовательным шаблонам, байесовскому классификатору, обучению в условиях несбалансированности классов, расширена практическая часть. Книга будет полезна всем интересующимся вопросами интеллектуального анализа данных и методами автоматического поиска закономерностей в массивах информации. Для специалистов в области анализа данных, студентов и аспирантов.

Книга, которую выдержите в руках, в какой-то степени уникальна. Во-первых, ей присущи системность и глубина изложения материала, чего так не хватает российским изданиям по бизнес-аналитике (да и самих книг, к сожалению, единицы). Во-вторых, материал рассчитан не на разработчиков информационно-аналитических систем (проще говоря, программистов), а на тех, кто этими системами пользуется, — аналитиков. В-третьих, большинство рассмотренных технологий анализа данных можно проверить в действии на примере решения актуальных бизнес-задач (создание хранилищ данных, OLAP, скоринг, оптимизация массовой рассылки и др.) на аналитической платформе Deductor Academic. Несмотря на то что у книги два автора, за этим проектом стоит много талантливых людей, и в первую очередь — коллектив российской компании BaseGroup Labs, разработчика аналитической платформы Deductor. На протяжении многих лет компания целенаправленно занимается анализом данных, и сегодня ощутимы результаты этой кропотливой работы — десятки выполненных проектов, более 90 вузов-партнеров, образовательный портал с e-learning-курсами по бизнес-аналитике, накопленный опыт решения разнообразных бизнес-аналитических задач.
Книга в целом ориентирована на широкий круг читателей — от IТ-специалистов до экономистов и медиков — то есть на всех желающих познакомиться с современными технологиями анализа данных. Однако в значительной мере мы ее писали для аналитиков, которые хотят, чтобы накопленные в компании данные превратились в знания, а не лежали мертвым грузом. Как учебное пособие книга в первую очередь предназначена для студентов направлений и специальностей «Прикладная информатика», «Бизнес-информатика», а также других родственных направлений.

Понравилась статья? Поделить с друзьями:
  • Бизнес английский для начинающих учебник скачать
  • Бизнес букет в новосибирске нарымская 37 каталог
  • Бизнес в квартире с минимальными вложениями идеи
  • Бизнес в россии дореволюционного периода реферат
  • Бизнес в селе чем заняться с нуля самостоятельно