Лекционный материал по ИИС для самостоятельного изучения. 2 Модели представления знаний 2 Логическая модель представления знаний
Скачать 2.32 Mb.
|
Глава 4. ИНТЕЛЛЕКТУАЛЬНЫЙ АНАЛИЗ ДАННЫХ 4.1. Технологии интеллектуального анализа данных Методы интеллектуального анализа данных. В настоящее время интенсивно разрабатывались методы автоматического извлечения знаний из накопленных фактов, хранящихся в различных базах данных. Для анализа информации, накопленной в современных базах данных, методы анализа должны быть эффективными, т.е. простыми в использовании, обладать значительным уровнем масштабируемости и определенным автоматизмом. Это концепция, зародившаяся в 1989 г., лежит в основе двух современных технологий анализа данных Data Mining и KDD – Knowledge Discovery in Databases, которые на русский язык переводятся как «добыча (раскопка) данных» и « «извлечение знаний из баз данных». Knowledge Discovery in Database(KDD) — процесс получения из данных знаний в виде зависимостей, правил и моделей позволяющих моделирование и прогнозирование различных процессов. В отечественной литературе применяется термин «Интеллектуальный анализ данных» (ИАД). В этой области необходимо отметить пионерские работы отечественных исследователей, в частности, М.М. Бонгарда (программа «Кора»), В.К. Финна (JSM-метод), А.Г. Ивахненко (МГУА), выполнивших свои работы задолго до того, как в этой области на Западе возник настоящий бум. ИАД— это процесс поддержки принятия решений, основанный на поиске в данных скрытых закономерностей, 122 то есть извлечения информации, которая может быть охарактеризована как знания. Интеллектуальный анализ данных является кратким обозначением довольно широкого спектра процедур автоматического анализа данных высокоинтеллектуальными технологиями. В общем случае процесс ИАД состоит из трех стадий: выявление закономерностей (свободный поиск); использование выявленных закономерностей для предсказания неизвестных значений (прогностическое моделирование); анализ исключений, предназначенный для выявления и толкования аномалий в найденных закономерностях. Причины распространения KDD и Data Mining. В KDD и Data Mining нет ничего принципиально нового. Специалисты в различных областях человеческого знания решали подобные задачи на протяжении нескольких десятилетий. Однако в последние годы интеллектуальная составляющая бизнеса стала возрастать, и для распространения технологий KDD и Data Mining были созданы все необходимые и достаточные условия. Развитие технологий автоматизированной обработки информации создало основу для учета сколь угодно большого количества факторов и объема данных. Возникла острая нехватка высококвалифицированных специалистов в области статистики и анализа данных. Поэтому потребовались технологии обработки и анализа, доступные для специалистов любого профиля за счет 123 применения методов визуализации и самообучающихся алгоритмов. Возникла объективная потребность в тиражировании знаний. Полученные в процессе KDD и Data Mining результаты являются формализованным описанием некоего процесса, а следовательно, поддаются автоматической обработке и повторному использованию на новых данных. На рынке появились программные продукты, поддерживающие технологии KDD и Data Mining, – аналитические платформы. С их помощью можно создавать полноценные аналитические решения и быстро получать первые результаты. Технология Knowledge Discovery in Databases описывает не конкретный алгоритм или математический аппарат, а последовательность действий, которую необходимо выполнить для построения модели с целю извлечения знания. Она не зависит от предметной области; это набор атомарных операций, комбинируя которые, можно получить нужное решение. KDD включает в себя этапы подготовки данных, предобработки (очистки) данных, трансформации данных, построения моделей (применения методов Data Mining) и интерпретации полученных результатов. Ядром этого процесса являются методы Data Mining, позволяющие обнаруживать закономерности и знания (рис.4.1). 124 Рис. 4.1. Этапы KDD. Кратко рассмотрим каждый этап. 1 этап. Выборка данных. Этот этап заключается в подготовке набора данных, в том числе из различных источников, выбора значимых параметров и т.д. Для этого должны быть различные инструменты доступа к различным источникам данных – конверторы, запросы, фильтрация данных и т.п. В качестве источника рекомендуется использовать специализированное хранилище данных, агрегирующее всю необходимую для анализа информацию. 2 этап. Очистка данных. Реальные данные для анализа редко бывают хорошего качества. Поэтому для эффективного применения методов Data Mining следует обратить серьезное внимание на вопросы предобработки данных. Данные могут содержать пропуски, шумы, аномальные значения и т.д. Кроме того, данные могут быть противоречивы, избыточны, недостаточны, содержать ошибки и т.д. 125 Для решения каждой из этих проблем есть отработанные методы. Конечно, ошибки можно править и вручную, но при больших объемах данных это становится довольно проблематично. Поэтому рассмотрим варианты решения этих задач в автоматическом режиме при минимальном участии человека. Противоречивость информации. Для начала нужно решить, что именно считать противоречием. Как ни странно, это задача нетривиальная. Например, пенсионную карточку в России нужно менять в случае изменения фамилии, имени, отчества и пола. Оказывается, в том, что человек родился женщиной, а вышел на пенсию мужчиной, противоречия нет! После того, как мы определимся с тем, что считать противоречием и найдем их, есть несколько вариантов действий. При обнаружении нескольких противоречивых записей, удалять их. Метод простой, а потому легко реализуемый. Иногда этого бывает вполне достаточно. Тут важно не переусердствовать, иначе мы можем вместе с водой выплеснуть младенца. Исправить противоречивые данные. Можно вычислить вероятность появления каждого из противоречивых событий и выбрать наиболее вероятное. Это самый грамотный и корректный метод работы с противоречиями. Пропуски в данных. Очень серьезная проблема. Это вообще бич для большинства хранилищ данных. Большинство методов прогнозирования исходят из предположения, что данные поступают равномерным постоянным потоком. На практике такое встречается крайне редко. Поэтому одна из самых востребованных областей 126 применения хранилищ данных – прогнозирование – оказывается реализованной некачественно или со значительными ограничениями. Для борьбы с этим явлением можно воспользоваться следующими методами: Аппроксимация . Т.е. если нет данных в какой-либо точке, мы берем ее окрестность и вычисляем по известным формулам значение в этой точке, добавляя соответствующую запись в хранилище. Хорошо это работает для упорядоченных данных . Например, сведения об ежедневных продажах продуктов. Определение наиболее правдоподобного значения. Для этого берется не окрестность точки, а все данные. Этот метод применяется для неупорядоченной информации, т.е. случаем, когда мы не в состоянии определить, что же является окрестностью исследуемой точки. Аномальные значения Довольно часто происходят события, которые сильно выбиваются из общей картины. И лучше всего такие значения откорректировать. Это связано с тем, что средства прогнозирования ничего не знают о природе процессов. Поэтому любая аномалия будет восприниматься как совершенно нормальное значение. Из-за этого будет сильно искажаться картина будущего. Какой-то случайный провал или успех будет считаться закономерностью. Есть метод борьбы и с этой напастью – это робастные оценки. Это методы устойчивые к сильным возмущениям. Мы оцениваем имеющиеся данные ко всему, что выходит за допустимые границы, и применяем одно из следующих действий: Значение удаляется; 127 Заменяется на ближайшее граничное значение. Шум. Почти всегда при анализе мы сталкиваемся с шумами. Шум не несет никакой полезной информации, а лишь мешает четко разглядеть картину. Методов борьбы с этим явлением несколько. Спектральный анализ . При помощи него мы можем отсечь высокочастотные составляющие данных. Проще говоря, это частые и незначительные колебания около основного сигнала. Причем, изменяя ширину спектра, можно выбирать какого рода шум мы хотим убрать. Авторегрессионые методы. Этот довольно распространенный метод активно применяется при анализе временных рядов и сводится к нахождению функции, которая описывает процесс плюс шум. Собственно шум после этого можно удалить и оставить основной сигнал. Ошибки ввода данных. Вообще это тема для отдельного разговора, т.к. количество типов такого рода ошибок слишком велико, например, опечатки, сознательное искажение данных, несоответствие форматов, и это еще не считая типовых ошибок, связанных с особенностями работы приложения по вводу данных. Для борьбы с большинством из них есть отработанные методы. Некоторые вещи очевидны, например, перед внесением данных в хранилище можно провести проверку форматов. Некоторые более изощренные. Например, можно исправлять опечатки на основе различного рода тезаурусов. Но, в любом случае, очищать нужно и от такого рода ошибок. К задачам очистки данных относятся: заполнение пропусков, подавление аномальных значений, сглаживание, исключение дубликатов и противоречий и пр. 128 Ошибочно предполагать, что если подать данные на вход системы в существующем виде, то на выходе будут получены полезные знания. Входные данные должны быть качественны и корректны. 3 этап. Трансформация данных. Этот шаг необходим для тех методов, которые требуют, чтобы исходные данные были в каком-то определенном виде. Дело в том, что различные алгоритмы анализа требуют специальным образом подготовленные данные. Например, для прогнозирования необходимо преобразовать временной ряд при помощи скользящего окна или вычисление агрегируемых показателей. К задачам трансформации данных относятся: скользящее окно, приведение типов, выделение временных интервалов, преобразование непрерывных значений в дискретные и наоборот, сортировка, группировка и прочее. 4 этап. Data Mining. На этом этапе строятся модели, в которых применяются различные алгоритмы для нахождения знаний. Это нейронные сети, деревья решений, алгоритмы кластеризации и установления ассоциаций и т.д. 5 этап. Интерпретация. На данном этапе осуществляется применение пользователем полученных моделей (знаний) в бизнес приложениях. Для оценки качества полученной модели нужно использовать как формальные методы, так и знания аналитика. Именно аналитик может сказать, насколько применима полученная модель к реальным данным. Пример. Имеется сеть магазинов розничной торговли. Требуется получить прогноз объемов продаж на следующий месяц. Первым шагом будет сбор истории продаж в каждом магазине и объединение ее в общую выборку данных. Следующим шагом будет предобработка собранных данных: 129 их группировка по месяцам, сглаживание кривой продаж, устранение факторов, слабо влияющих на объемы продаж. Далее следует построить модель зависимости объемов продаж от выбранных факторов. Это можно сделать с помощью линейной регрессии или нейронных сетей. Имея такую модель, можно получить прогноз, подав на вход модели историю продаж. Зная прогнозное значение, его можно использовать, например, в приложениях оптимизации для лучшего размещения товара на складе. Полученные модели являются, по сути, формализованными знаниями эксперта, а следовательно, их можно тиражировать. В этом заключается самое главное преимущество KDD. Т.е. построенную одним человеком модель могут применять другие, без необходимости понимания методик, при помощи которой эти модели построены. Найденные знания должны быть использованы на новых данных с некоторой степенью достоверности. Задачи и методы Data Mining. Термин Data Mining дословно переводится как «добыча данных» или «раскопка данных» и имеет в англоязычной среде несколько определений. Data Mining — обнаружение в «сырых» данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. Информация, найденная в процессе применения методов Data Mining, должна быть нетривиальной и ранее неизвестной, например, сведения о средних продажах 130 таковыми не являются. Знания должны описывать новые связи между свойствами, предсказывать значения одних признаков на основе других. Нередко KDD отождествляют с Data Mining. Однако правильнее считать Data Mining шагом процесса KDD. Приведенные ниже примеры из разных областей экономики демонстрируют основное преимущество методов Data Mining – способность обнаружения новых знаний, которые невозможно получить методами статистического, регрессионного анализа или эконометрики. 1. Множество клиентов компании с помощью одного из инструментов Data Mining были объединены в группы, или сегменты со схожими признаками. Это позволило проводить компании различную маркетинговую политику и строить отдельные модели поведения для каждого клиентского сегмента. Наиболее значимыми факторами для разделения на группы оказались следующие: удаленность региона клиента, сфера деятельности, среднегодовые суммы сделок, количество сделок в неделю. 2. Автоматический анализ банковской базы данных кредитных сделок физических лиц выявил правила, по которым потенциальным заемщикам отказывалось в выдаче кредита. В частности, решающими факторами при выдаче кредитов на небольшие суммы, оказались: срок кредита, среднемесячный доход и расход заемщика. В дальнейшем это учитывалось при экспресс-кредитовании наиболее дешевых товаров. 3. При анализе базы данных клиентов страховой компании был установлен социальный портрет человека, страхующего жизнь - это оказался мужчина 35-50 лет, 131 имеющий 2 и более детей и среднемесячный доход выше $2000. Задачи, решаемые методами Data Mining: Классификация – отнесение объектов (наблюдений, событий) к одному из заранее известных классов. Это делается посредством анализа уже классифицированных объектов и формулирования некоторого набора правил. Классификация используется в случае, если заранее известны классы отнесения объектов. Например, отнесение нового товара к той или иной товарной группе, отнесение клиента к какой-либо категории. При кредитовании это может быть, например, отнесение клиента по каким-то признакам к одной из групп риска. Кластеризация – это группировка объектов (наблюдений, событий) на основе данных (свойств), описывающих сущность объектов. Причем в отличие от классификации, группы заранее не заданы. Объекты внутри кластера должны быть «похожими» друг на друга и отличаться от объектов, вошедших в другие кластеры. Чем больше похожи объекты внутри кластера и чем больше отличий между кластерами, тем точнее кластеризация. Часто применительно к экономическим задачам вместо кластеризации употребляют термин сегментация. Кластеризация может использоваться для сегментации и построения профилей клиентов (покупателей). При достаточно большом количестве клиентов становится трудно подходить к каждому индивидуально. Поэтому клиентов удобно объединить в группы – сегменты с однородными признаками. Выделять сегменты клиентов можно по нескольким группам признаков. Это могут быть сегменты по 132 сфере деятельности, по географическому расположению. После сегментации можно узнать, какие именно сегменты являются наиболее активными, какие приносят наибольшую прибыль, выделить характерные для них признаки. Эффективность работы с клиентами повышается за счет учета их персональных предпочтений. Прогнозирование (регрессия). Это установление зависимости непрерывных выходных переменных от входных. К этому же типу задач относится прогнозирование временного ряда на основе исторических данных. Регрессия используется для установления зависимостей в факторах. Например, в задаче прогнозирования зависимой величиной является объемы продаж, а факторами, влияющими на эту величину, могут быть предыдущие объемы продаж, изменение курса валют, активность конкурентов и т.д. Или, например, при кредитовании физических лиц вероятность возврата кредита зависит от личных характеристик человека, сферы его деятельности, наличия имущества. Ассоциация – выявление закономерностей между связанными событиями. Примером такой закономерности служит правило, указывающее, что из события X следует событие Y. Такие правила называются ассоциативными. Впервые это задача была предложена для нахождения типичных шаблонов покупок, совершаемых в супермаркетах, поэтому иногда ее еще называют анализом рыночной корзины (market basket analysis). Ассоциации помогают выявлять совместно приобретаемые товары. Это может быть полезно для более удобного размещения товара на прилавках, стимулирования продаж. Тогда человек, 133 купивший пачку спагетти, не забудет купить к ним бутылочку соуса. Последовательность (последовательные шаблоны)– установление закономерностей между связанными во времени событиями. Последовательные шаблоны могут быть использованы при планировании продаж или предоставлении услуг. Пример последовательного шаблона: если человек приобрел фотопленку, то через неделю он отдаст ее на проявку и закажет печать фотографий. Методы в Data Mining. Для решения вышеперечисленных задач используются различные методы и алгоритмы Data Mining. Ввиду того, что Data Mining развивался и развивается на стыке таких дисциплин, как математика, статистика, теория информации, машинное обучение, теория баз данных, вполне закономерно, что большинство алгоритмов и методов Data Mining были разработаны на основе различных методов из этих дисциплин. На сегодня наибольшее распространение получили самообучающиеся методы и машинное обучение. Рассмотрим кратко наиболее известные алгоритмы и методы, применяющиеся для решения каждой задачи Data Mining. |