Методы Data Mining
Описание функциональных возможностей технологии Data Mining как процессов обнаружения неизвестных данных. Изучение систем вывода ассоциативных правил и механизмов нейросетевых алгоритмов. Описание алгоритмов кластеризации и сфер применения Data Mining.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 14.06.2013 |
Размер файла | 208,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
31
Размещено на http://www.allbest.ru/
1
Министерство образования и науки РФ
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Институт Кибернетики
Направление Информатика и вычислительная техника
Кафедра ВТ
Контрольная работа
по дисциплине информатика и вычислительная техника
Тема: Методы Data Mining
Томск 2012
Оглавление
Введение
1. Data Mining. Основные понятия и определения
1.1 Этапы в процессе интеллектуального анализа данных
1.2 Компоненты систем интеллектуального анализа
1.3 Методы исследования данных в Data Mining
2. Методы Data Mining
2.1 Вывод ассоциативных правил
2.2 Нейросетевые алгоритмы
2.3 Методы ближайшего соседа и k-ближайших соседей
2.4 Деревья решений
2.5 Алгоритмы кластеризации
2.6 Генетические алгоритмы
3. Сферы применения
4. Производители средств Data Mining
5. Критика методов
Заключение
Список литературы
Введение
Результатом развития информационных технологий является колоссальный объем данных, накопленных в электронном виде, растущий быстрыми темпами. При этом данные, как правило, обладают разнородной структурой (тексты, изображения, аудио, видео, гипертекстовые документы, реляционные базы данных). Накопленные за длительный срок данные могут содержать в себе закономерности, тенденции и взаимосвязи, являющиеся ценной информацией при планировании, прогнозировании, принятии решений, контроле за процессами. Однако человек физически не способен эффективно анализировать такие объемы неоднородных данных. Методы традиционной математической статистики долгое время претендовали на роль основного инструмента анализа данных. Однако они не позволяют синтезировать новые гипотезы, а могут использоваться лишь для подтверждения заранее сформулированных гипотез и “грубого” разведочного анализа, составляющего основу оперативной аналитической обработки данных (online analytical processing, OLAP). Нередко именно формулировка гипотезы оказывается самой сложной задачей при проведении анализа для последующего принятия решений, поскольку далеко не все закономерности в данных очевидны с первого взгляда. Поэтому технологии интеллектуального анализа данных (Data mining) рассматриваются как одна из самых важных и многообещающих тем для исследований и применения в отрасли информационных технологий. Под интеллектуальным анализом данных в этом случае понимается процесс определения новых, корректных и потенциально полезных знаний на основе больших массивов данных. Так, MIT Technology Review охарактеризовал Data Mining как одну из десяти развивающихся технологий, которые изменят мир.
1. Data Mining. Основные понятия и определения
Data Mining - это процесс обнаружения в «сырых» данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности.
Суть и цель технологии Data Mining можно сформулировать следующим образом: это технология, которая предназначена для поиска в больших объемах данных неочевидных, объективных и полезных на практике закономерностей.
Неочевидные закономерности - это такие закономерности, которые нельзя обнаружить стандартными методами обработки информации или экспертным путем.
Под объективными закономерностями следует понимать закономерности, полностью соответствующие действительности, в отличие от экспертного мнения, которое всегда является субъективным.
Эта концепция анализа данных, предполагает, что:
§ данные могут быть неточными, неполными (содержать пропуски), противоречивыми, разнородными, косвенными, и при этом иметь гигантские объёмы; поэтому понимание данных в конкретных приложениях требует значительных интеллектуальных усилий;
§ сами алгоритмы анализа данных могут обладать «элементами интеллекта», в частности, способностью обучаться по прецедентам, то есть делать общие выводы на основе частных наблюдений; разработка таких алгоритмов также требует значительных интеллектуальных усилий;
§ процессы переработки сырых данных в информацию, а информации в знания не могут быть выполнены вручную, и требуют автоматизации.
В основу технологии Data Mining положена концепция шаблонов (паттернов), отражающих фрагменты многоаспектных взаимоотношений в данных. Эти шаблоны представляют собой закономерности, свойственные подвыборкам данных, которые могут быть компактно выражены в понятной человеку форме.
Поиск шаблонов производится методами, не ограниченными рамками априорных предположений о структуре выборке и виде распределений значений анализируемых показателей.
Важной особенностью Data Mining является нестандартность и неочевидность разыскиваемых шаблонов. Иными словами, средства Data Mining отличаются от инструментов статистической обработки данных и средств OLAP тем, что вместо проверки заранее предполагаемых пользователями взаимозависимостей они на основании имеющихся данных способны находить такие взаимозависимости самостоятельно и строить гипотезы об их характере. Выделяют пять стандартных типов закономерностей, выявляемых методами Data Mining:
· ассоциация -- высокая вероятность связи событий друг с другом. Примером ассоциации являются товары в магазине, часто приобретаемые вместе;
· последовательность -- высокая вероятность цепочки связанных во времени событий. Примером последовательности является ситуация, когда в течение определенного срока после приобретения одного товара будет с высокой степенью вероятности приобретен другой;
· классификация -- имеются признаки, характеризующие группу, к которой принадлежит то или иное событие или объект;
· кластеризация -- закономерность, сходная с классификацией и отличающаяся от нее тем, что сами группы при этом не заданы -- они выявляются автоматически в процессе обработки данных;
· временные закономерности -- наличие шаблонов в динамике поведения тех или иных данных. Характерный пример временной закономерности -- сезонные колебания спроса на те или иные товары либо услуги.
1.1 Этапы в процессе интеллектуального анализа данных
Традиционно выделяются следующие этапы в процессе интеллектуального анализа данных:
1. Изучение предметной области, в результате которого формулируются основные цели анализа.
2. Сбор данных.
3. Предварительная обработка данных:
a. Очистка данных - исключение противоречий и случайных "шумов" из исходных данных
b. Интеграция данных - объединение данных из нескольких возможных источников в одном хранилище
c. Преобразование данных. На данном этапе данные преобразуются к форме, подходящей для анализа. Часто применяется агрегация данных, дискретизация атрибутов, сжатие данных и сокращение размерности.
4. Анализ данных. В рамках данного этапа применяются алгоритмы интеллектуального анализа с целью извлечения паттернов.
5. Интерпретация найденных паттернов. Данный этап может включать визуализацию извлеченных паттернов, определение действительно полезных паттернов на основе некоторой функции полезности.
6. Использование новых знаний.
1.2 Компоненты систем интеллектуального анализа
Обычно в системах интеллектуального анализа данных выделяются следующие главные компоненты:
1. База данных, хранилище данных или другой репозиторий информации. Это может быть одна или несколько баз данных, хранилище данных, электронные таблицы, другие виды репозиториев, над которыми могут быть выполнены очистка и интеграция.
2. Сервер базы данных или хранилища данных. Указанный сервер отвечает за извлечение существенных данных на основании пользовательского запроса.
3. База знаний. Это знания о предметной области, которые указывают, как проводить поиск и оценивать полезность результирующих паттернов.
4. Служба добычи знаний. Она является неотъемлемой частью системы интеллектуального анализа данных и содержит набор функциональных модулей для таких задач, как характеризация, поиск ассоциаций, классификация, кластерный анализ и анализ отклонений.
5. Модуль оценки паттернов. Данный компонент вычисляет меры интереса или полезности паттернов.
6. Графический пользовательский интерфейс. Этот модуль отвечает за коммуникации между пользователем и системой интеллектуального анализа данных, визуализацию паттернов в различных формах.
1.3 Методы исследования данных в Data Mining
Большинство аналитических методов, используемые в технологии Data Mining - это известные математические алгоритмы и методы. Новым в их применении является возможность их использования при решении тех или иных конкретных проблем, обусловленная появившимися возможностями технических и программных средств. Следует отметить, что большинство методов Data Mining были разработаны в рамках теории искусственного интеллекта. Рассмотрим наиболее широко употребляемые методы:
1. Вывод ассоциативных правил.
2. Нейросетевые алгоритмы, идея которых основана на аналогии с функционированием нервной ткани и заключается в том, что исходные параметры рассматриваются как сигналы, преобразующиеся в соответствии с имеющимися связями между «нейронами», а в качестве ответа, являющегося результатом анализа, рассматривается отклик всей сети на исходные данные.
3. Выбор близкого аналога исходных данных из уже имеющихся исторических данных. Называются также методом «ближайшего соседа».
4. Деревья решений -- иерархическая структура, базирующаяся на наборе вопросов, подразумевающих ответ «Да» или «Нет».
5. Кластерные модели применяются для объединения сходных событий в группы на основании сходных значений нескольких полей в наборе данных.
6. Генетические алгоритмы -- поиск и генерация алгоритма, выражающего взаимозависимость данных, на основании изначально заданного алгоритма, модифицируемого в процессе поиска.
В следующей главе подробнее опишем вышеперечисленные методы.
2. Методы Data Mining
2.1 Вывод ассоциативных правил
Ассоциативные правила - это правила вида «если…, то...». Поиск таких правил в наборе данных обнаруживает скрытые связи в, на первый взгляд, никак не связанных данных. Одним из наиболее часто цитируемых примеров поиска ассоциативных правил служит проблема поиска устойчивых связей в корзине покупателя. Эта проблема состоит в том, чтобы определить какие товары приобретаются покупателями вместе, так, чтобы специалисты по маркетингу могли соответствующим образом разместить эти товары в магазине для повышения объема продаж.
Ассоциативные правила определяются как утверждения вида {X1,X2,…,Xn} -> Y, где подразумевается, что Y может присутствовать в транзакции при условии, что X1,X2,…,Xn присутствуют в этой же транзакции. Следует обратить внимание, что слово "может" подразумевает, что правило не является тождеством, а выполняется только с некоторой вероятностью. Кроме того, в качестве Y может выступать набор элементов, а не только один элемент. Вероятность нахождения Y в транзакции, в которой имеются элементы X1,X2,…,Xn, называется достоверностью (confidence). Процент транзакций, содержащих правило, от общего числа транзакций называется поддержкой (support). Уровень достоверности, который должна превышать достоверность правила, называется интересностью (interestingness).
Существуют различные типы ассоциативных правил. В простейшей форме ассоциативные правила сообщают только о наличии или отсутствии ассоциации. Такие правила называются булевыми ассоциативными правилами (Boolean Association Rule). Пример такого правила: «покупатели, которые приобретают йогурт, так же приобретают масло с низким уровнем жира».
Правила, которые собирают несколько ассоциативных правил вместе, называются мультиуровневые или обобщенные ассоциативные правила (Multilevel or Generalized Association Rules). При построении таких правил, элементы обычно группируются согласно иерархии, и поиск ведется на самом высоком концептуальном уровне. Например, "покупатели, которые приобретают молоко, так же приобретают хлеб". В этом примере, молоко и хлеб содержат иерархию различных типов и брендов, однако поиск на нижнем уровне не позволит найти интересные правила.
Более сложным типом правил являются количественные ассоциативные правила (Quantitative Association Rules). Этот тип правил ищется с применением количественных (например, цена) или категориальных (например, пол) атрибутов, и определен как {<attribute:value>, <attribute:value>,…,<attribute:value>} -> <attribute:value>. Например, "покупатели, чей возраст находится между 30 и 35 годами с доходом более 75000 в год покупают машины стоимостью более 20000".
Вышеперечисленные типы правил не затрагивают тот факт, что транзакции, по своей природе, зависят от времени. Например, поиск до того, как продукт был выставлен на продажу или после того, как он исчез с рынка, неблагоприятно повлияет на пороговое значение поддержки. С учетом этого, в введена концепция атрибутного времени жизни в алгоритмах поиска временных ассоциативных правил (Temporal Association Rules).
Проблема поиска ассоциативных правил может быть в общем виде разложена на две части: поиск часто встречающихся наборов элементов, и генерация правил на основе найденных часто встречающихся наборов. Предыдущие исследования, по большей части, придерживались этих направлений и расширяли их в различных направлениях.
С момента появления алгоритма Apriori, этот алгоритм является наиболее часто применяемым на первом шаге. Многие улучшения, например, по скорости и по масштабируемости, направлены на совершенствование алгоритма Apriori, на исправление его ошибочного свойства генерировать слишком много кандидатов на наиболее часто встречающиеся наборы элементов. Apriori генерирует наборы элементов используя только большие наборы, найденные на предыдущем шаге, без повторного рассмотрения транзакций. Модифицированный алгоритм AprioriTid улучшает Apriori за счет того, что использует базу данных только при первом проходе. При подсчетах на последующих шагах используются лишь данные, созданные при первом проходе и имеющие гораздо меньший размер, чем исходная база данных. Это приводит к колоссальному росту производительности. Дальнейшая усовершенствованная версия алгоритма, названная AprioriHybrid, может быть получена, если при нескольких первых проходах использовать Apriori, а затем, на более поздних проходах, когда k-ые наборы-кандидаты уже могут быть целиком размещены в памяти компьютера, переключатся на AprioriTid.
Дальнейшие усилия по улучшению алгоритма Apriori связаны с распараллеливанием алгоритма (Count Distribution, Data Distribution, Candidate Distribution и др.), его масштабированием(Intelligent Data Distribution, Hybrid Distribution), введение новых структур данных, таких как деревья часто встречающихся элементов(FP-growth).
Второй шаг в основном характеризуется достоверностью и интересностью. В новых модификациях к традиционным булевым правилам правил добавляются размерность, качество и временная поддержка, описанные выше. Для поиска правил зачастую используется эволюционный алгоритм.
2.2 Нейросетевые алгоритмы
Искусственные нейронные сети появились в результате применения математического аппарата к исследованию функционирования нервной системы человека с целью ее воспроизведения. А именно: способность нервной системы обучаться и исправлять ошибки, что должно позволить смоделировать, хотя и достаточно грубо, работу человеческого мозга. Основной структурной и функциональной частью нейронной сети является формальный нейрон (formal neuron), представленный на рис. 1, где x0 , x1,..., xn - компоненты вектора входных сигналов, w0 ,w1,...,wn - значения весов входных сигналов нейрона, а y - выходной сигнал нейрона.
Рис. 1. Формальный нейрон: синапсы (1), сумматор (2), преобразователь (3).
Формальный нейрон состоит из элементов 3 типов: синапсов, сумматора и преобразователя. Синапс характеризует силу связи между двумя нейронами.
Сумматор выполняет сложение входных сигналов, предварительно помноженных на соответствующие веса. Преобразователь реализует функцию одного аргумента - выхода сумматора. Эта функция называется функцией активации или передаточной функцией нейрона.
Описанные выше формальные нейроны можно объединять таким образом, что выходные сигналы одних нейронов являются входными для других. Полученное множество связанных между собой нейронов называют искусственными нейронными сетями (artificial neural networks, ANN) или, коротко, нейронными сетями.
Различают следующие три общих типа нейронов, в зависимости от их положения в нейронной сети:
* входные нейроны (input nodes), на которые подаются входные сигналы. Такие нейроны нейроны имеют, как правило, один вход с единичным весом, смещение отсутствует, а значение выхода нейрона равно входному сигналу;
* выходные нейроны (output nodes), выходные значения которых представляют результирующие выходные сигналы нейронной сети;
* скрытые нейроны (hidden nodes), не имеющие прямых связей с входными сигналами, при этом значения выходных сигналов скрытых нейронов не являются выходными сигналами ИНС.
По структуре межнейронных связей различают два класса ИНС:
1. ИНС прямого распространения, в которых сигнал распространяется только от входных нейронов к выходным.
2. Рекуррентные ИНС - ИНС с обратными связями. В таких ИНС сигналы могут передаваться между любыми нейронами, вне зависимости от их расположения в ИНС.
Существуют два общих подхода к обучению ИНС:
1. Обучение с учителем.
2. Обучение без учителя.
Обучение с учителем (supervised learning) подразумевает использование заранее сформированного множества обучающих примеров. Каждый пример содержит вектор входных сигналов и соответствующий вектор эталонных выходных сигналов, которые зависят от поставленной задачи. Данное множество называют обучающей выборкой или обучающим множеством. Обучение нейронной сети направлено на такое изменение весов связей ИНС, при котором значение выходных сигналов ИНС как можно меньше отличаются от требуемых значений выходных сигналов для данного вектора входных сигналов.
При обучении без учителя (unsupervised learning) подстройка весов связей производится либо в результате конкуренции между нейронами, либо с учетом корреляции выходных сигналов нейронов, между которыми существует связь. В случае обучения без учителя обучающая выборка не используется.
Нейронные сети применяются для решения широкого спектра задач, например, таких как планирование полезной нагрузки для космических челноков и прогнозирования валютных курсов. Однако они не часто используются в системах интеллектуального анализа данных в связи со сложностью модели (знания, зафиксированные как веса нескольких сотен межнейронных связей, совершенно не поддаются анализу и интерпретации человеком) и длительным временем обучения на большой обучающей выборке. С другой стороны, нейронные сети обладают такими преимуществами для использования в задачах анализа данных, как устойчивость к зашумленным данным и высокая точность.
2.3 Методы ближайшего соседа и k-ближайших соседей
В основе алгоритмов ближайших соседей (nearest neighbor algorithm) и k-ближайших соседей (k-nearest neighbor algorithm, KNN) лежит сходство объектов. Алгоритм ближайшего соседа выделяет среди всех известных объектов объект, максимально близкий (используется метрика расстояния между объектами, например, евклидова) к новому ранее неизвестному объекту. Главная проблема метода ближайшего соседа это его чувствительность к выбросам в обучающих данных.
Описанную проблему позволяет избегать алгоритм KNN, выделяющий среди всех наблюдений уже k-ближайших соседей, похожих на новый объект. На основе классов ближайших соседей выносится решение касательно нового объекта. Важной задачей данного алгоритма является подбор коэффициента k - количество записей, которые будут считаться похожими. Модификация алгоритма, при которой вклад соседа пропорционален расстоянию до нового объекта (метод k-взвешенных ближайших соседей) позволяет достичь большей точности классификации. Метод k ближайших соседей, так же, позволяет оценить точность прогноза. Например, все k ближайших соседей имеют один и тот же класс, то вероятность, что проверяемый объект будет иметь такой же класс, очень высока.
Среди особенностей алгоритма стоит отметить устойчивость к аномальным выбросам, так как вероятность попадания такой записи в число k-ближайших соседей мала. Если же это произошло, то влияние на голосование (особенно взвешенное) (при k>2) также, скорее всего, будет незначительным, и, следовательно, малым будет и влияние на итог классификации. Также, преимуществами являются проста реализации, легкость интерпретации результата работы алгоритма, возможность модификации алгоритма, путём использования наиболее подходящих функций сочетания и метрик, что позволяет подстроить алгоритм под конкретную задачу. Алгоритм KNN обладает и рядом недостатков. Во-первых, набор данных, используемый для алгоритма, должен быть репрезентативным. Во-вторых, модель нельзя отделить от данных: для классификации нового примера нужно использовать все примеры. Эта особенность сильно ограничивает использование алгоритма.
2.4 Деревья решений
Под термином «деревья решений» подразумевается семейство алгоритмов, основанных на представлении классификационных правил в иерархической, последовательной структуре. Это самый популярный класс алгоритмов для решения задач интеллектуального анализа данных.
Семейство алгоритмов построения деревьев решений позволяет предсказать значение какого-либо параметра для заданного случая на основе большого количества данных о других подобных случаях. Обычно алгоритмы этого семейства применяются для решения задач, позволяющих разделить все исходные данные на несколько дискретных групп.
При применении алгоритмов построения деревьев решений к набору исходных данных результат отображается в виде дерева. Подобные алгоритмы позволяют осуществить несколько уровней такого разделения, разбивая полученные группы (ветви дерева) на более мелкие на основании других признаков. Разделение продолжается до тех пор, пока значения, которые предполагается предсказывать, не станут одинаковыми (или, в случае непрерывного значения предсказываемого параметра, близкими) для всех полученных групп (листьев дерева). Именно эти значения и применяются для осуществления предсказаний на основе данной модели.
Действие алгоритмов построения деревьев решений базируется на применении методов регрессионного и корреляционного анализа. Один из самых популярных алгоритмов этого семейства -- CART (Classification and Regression Trees), основанный на разделении данных в ветви дерева на две дочерние ветви; при этом дальнейшее разделение той или иной ветви зависит от того, много ли исходных данных описывает данная ветвь. Некоторые другие сходные алгоритмы позволяют разделить ветвь на большее количество дочерних ветвей. В данном случае разделение производится на основе наиболее высокого для описываемых ветвью данных коэффициента корреляции между параметром, согласно которому происходит разделение, и параметром, который в дальнейшем должен быть предсказан.
Популярность подхода связана с наглядностью и понятностью. Но деревья решений принципиально не способны находить “лучшие” (наиболее полные и точные) правила в данных. Они реализуют наивный принцип последовательного просмотра признаков и находят фактически части настоящих закономерностей, создавая лишь иллюзию логического вывода.
2.5 Алгоритмы кластеризации
Кластеризация -- это задача разбиения множества объектов на группы, называемые кластерами. Главное отличие кластеризации от классификации состоит в том, что перечень групп четко не задан и определяется в процессе работы алгоритма.
Применение кластерного анализа в общем виде сводится к следующим этапам:
· отбор выборки объектов для кластеризации;
· определение множества переменных, по которым будут оцениваться объекты в выборке. При необходимости - нормализация значений переменных;
· вычисление значений меры сходства между объектами;
· применение метода кластерного анализа для создания групп сходных объектов (кластеров);
· представление результатов анализа.
После получения и анализа результатов возможна корректировка выбранной метрики и метода кластеризации до получения оптимального результата.
Среди алгоритмов кластеризации выделяют иерархические и плоские группы. Иерархические алгоритмы (также называемые алгоритмами таксономии) строят не одно разбиение выборки на непересекающиеся кластеры, а систему вложенных разбиений. Таким образом, выход алгоритма представляет собой дерево кластеров, корнем которого является вся выборка, а листьями -- наиболее мелкие кластеры. Плоские алгоритмы строят одно разбиение объектов на непересекающиеся между собой кластеры.
Еще одна классификация алгоритмов кластеризации - на четкие и нечеткие алгоритмы. Четкие (или непересекающиеся) алгоритмы каждому объекту выборки ставят в соответствие номер кластера, то есть каждый объект принадлежит только одному кластеру. Нечеткие (или пересекающиеся) алгоритмы каждому объекту ставят в соответствие набор вещественных значений, показывающих степень отношения объекта к кластерам. Таким образом, каждый объект относится к каждому кластеру с некоторой вероятностью.
Среди алгоритмов иерархической кластеризации выделяются два основных типа: восходящие и нисходящие алгоритмы. Нисходящие алгоритмы работают по принципу «сверху-вниз»: вначале все объекты помещаются в один кластер, который затем разбивается на все более мелкие кластеры. Более распространены восходящие алгоритмы, которые в начале работы помещают каждый объект в отдельный кластер, а затем объединяют кластеры во все более крупные, пока все объекты выборки не будут содержаться в одном кластере. Таким образом, строится система вложенных разбиений. Результаты таких алгоритмов обычно представляют в виде дерева.
К недостатку иерархических алгоритмов можно отнести систему полных разбиений, которая может являться излишней в контексте решаемой задачи.
Рассмотрим теперь плоские алгоритмы. Простейшие среди этого класса - алгоритмы квадратичной ошибки. Задачу кластеризации для этих алгоритмов можно рассматривают как построение оптимального разбиения объектов на группы. При этом оптимальность может быть определена как требование минимизации среднеквадратической ошибки разбиения:
,
где cj -- «центр масс» кластера j (точка со средними значениями характеристик для данного кластера).
Самым распространенным алгоритмом этой категории является метод k-средних. Этот алгоритм строит заданное число кластеров, расположенных как можно дальше друг от друга. Работа алгоритма делится на несколько этапов:
1. Случайно выбрать k точек, являющихся начальными «центрами масс» кластеров.
2. Отнести каждый объект к кластеру с ближайшим «центром масс».
3. Пересчитать «центры масс» кластеров согласно их текущему составу.
4. Если критерий остановки алгоритма не удовлетворен, вернуться к п. 2.
В качестве критерия остановки работы алгоритма обычно выбирают минимальное изменение среднеквадратической ошибки. Так же возможно останавливать работу алгоритма, если на шаге 2 не было объектов, переместившихся из кластера в кластер. К недостаткам данного алгоритма можно отнести необходимость задавать количество кластеров для разбиения.
Наиболее популярным алгоритмом нечеткой кластеризации является алгоритм c-средних (c-means). Он представляет собой модификацию метода k-средних. Шаги работы алгоритма:
1. Выбрать начальное нечеткое разбиение n объектов на k кластеров путем выбора матрицы принадлежности U размера n x k.
2. Используя матрицу U, найти значение критерия нечеткой ошибки:
,
где ck -- «центр масс» нечеткого кластера k:
.
3. Перегруппировать объекты с целью уменьшения этого значения критерия нечеткой ошибки.
4. Возвращаться в п. 2 до тех пор, пока изменения матрицы U не станут незначительными.
Этот алгоритм может не подойти, если заранее неизвестно число кластеров, либо необходимо однозначно отнести каждый объект к одному кластеру.
Следующая группа алгоритмов - алгоритмы, основанные на теории графов. Суть таких алгоритмов заключается в том, что выборка объектов представляется в виде графа G=(V, E), вершинам которого соответствуют объекты, а ребра имеют вес, равный «расстоянию» между объектами. Достоинством графовых алгоритмов кластеризации являются наглядность, относительная простота реализации и возможность вносения различных усовершенствований, основанные на геометрических соображениях. Основными алгоритмам являются алгоритм выделения связных компонент, алгоритм построения минимального покрывающего (остовного) дерева и алгоритм послойной кластеризации.
В алгоритме выделения связных компонент задается входной параметр R и в графе удаляются все ребра, для которых «расстояния» меньше R. Соединенными остаются только наиболее близкие пары объектов. Смысл алгоритма заключается в том, чтобы подобрать такое значение R, лежащее в диапазон всех «расстояний», при котором граф «развалится» на несколько связных компонент. Полученные компоненты и есть кластеры.
Для подбора параметра R обычно строится гистограмма распределений попарных расстояний. В задачах с хорошо выраженной кластерной структурой данных на гистограмме будет два пика - один соответствует внутрикластерным расстояниям, второй - межкластерным расстояния. Параметр R подбирается из зоны минимума между этими пиками. При этом управлять количеством кластеров при помощи порога расстояния довольно затруднительно.
Алгоритм минимального покрывающего дерева сначала строит на графе минимальное покрывающее дерево, а затем последовательно удаляет ребра с наибольшим весом. Алгоритм послойной кластеризации основан на выделении связных компонент графа на некотором уровне расстояний между объектами (вершинами). Уровень расстояния задается порогом расстояния c. Например, если расстояние между объектами , то .
Алгоритм послойной кластеризации формирует последовательность подграфов графа G, которые отражают иерархические связи между кластерами:
,
где Gt = (V, Et) -- граф на уровне сt, ,
сt - t-ый порог расстояния, m - количество уровней иерархии,
G0 = (V, o), o - пустое множество ребер графа, получаемое при t0 = 1,
Gm = G, то есть граф объектов без ограничений на расстояние (длину ребер графа), поскольку tm = 1.
Посредством изменения порогов расстояния {с0, …, сm}, где 0 = с0 < с1 < …< сm = 1, возможно контролировать глубину иерархии получаемых кластеров. Таким образом, алгоритм послойной кластеризации способен создавать как плоское разбиение данных, так и иерархическое.
Кластеризация позволяет добиться следующих целей:
· улучшает понимание данных за счет выявления структурных групп. Разбиение выборки на группы схожих объектов позволяет упростить дальнейшую обработку данных и принятия решений, применяя к каждому кластеру свой метод анализа;
· позволяет компактно хранить данные. Для этого вместо хранения всей выборки можно оставить по одному типичному наблюдению из каждого кластера;
· обнаружение новых нетипичных объектов, которые не попали ни в один кластер.
Обычно, кластеризация используется как вспомогательный метод при анализе данных.
2.6 Генетические алгоритмы
Генетические алгоритмы относятся к числу универсальных методов оптимизации, позволяющих решать задачи различных типов (комбинаторные, общие задачи с ограничениями и без ограничений) и различной степени сложности. При этом генетические алгоритмы характеризуются возможностью как однокритериального, так и многокритериального поиска в большом пространстве, ландшафт которого является негладким.
Эта группа методов использует итеративный процесс эволюции последовательности поколений моделей, включающий операции отбора, мутации и скрещивания. В начале работы алгоритма популяция формируется случайным образом. Для оценки качества закодированных решений используют функцию приспособленности, которая необходима для вычисления приспособленности каждой особи. По результатам оценивания особей наиболее приспособленные из них выбираются для скрещивания. В результате скрещивания выбранных особей посредством применения генетического оператора кроссинговера создается потомство, генетическая информация которого формируется в результате обмена хромосомной информацией между родительскими особями. Созданные потомки формируют новую популяцию, причем часть потомков мутирует, что выражается в случайном изменении их генотипов. Этап, включающий последовательность «Оценивание популяции» - «Селекция» - «Скрещивание» - «Мутация», называется поколением. Эволюция популяции состоит из последовательности таких поколений.
Выделяют следующие алгоритмы отбора особей для скрещивания:
· Панмиксия. Обе особи, которые составят родительскую пару, случайным образом выбираются из всей популяции. Любая особь может стать членом нескольких пар. Данный подход универсален, но эффективность алгоритма снижается с ростом численности популяции.
· Селекция. Родителями могут стать особи с приспособленностью не ниже среднего. Такой подход обеспечивает более быструю сходимость алгоритма.
· Инбридинг. Метод построен на формировании пары на основе близкого родства. Под родством здесь понимается расстояние между членами популяции как в смысле геометрического расстояния особей в пространстве параметров так и хемингово расстояние между генотипами. Потому различают генотипный и фенотипный инбридинг. Первый член пары для скрещивания выбирается случайно, а вторым с большей вероятностью будет максимально близкая к нему особь. Инбридинг можно охарактеризовать свойством концентрации поиска в локальных узлах, что фактически приводит к разбиению популяции на отдельные локальные группы вокруг подозрительных на экстремум участков ландшафта.
· Аутбридинг. Формировании пары на основе дальнего родства, для максимально далеких особей. Аутбридинг направлен на предупреждение сходимости алгоритма к уже найденным решениям, заставляя алгоритм просматривать новые, неисследованные области.
Алгоритмы формирования новой популяции:
· Отбор с вытеснением. Из всех особей с одинаковыми генотипами предпочтение отдается тем, чья приспособленность выше. Таким образом, достигаются две цели: не теряются лучшие найденные решения, обладающие различными хромосомными наборами, в популяции постоянно поддерживается достаточное генетическое разнообразие. Вытеснение формирует новую популяцию из далеко расположенных особей, вместо особей, группирующихся около текущего найденного решения. Этот метод применяют для многоэкстремальных задач.
· Элитный отбор. Элитные методы отбора гарантируют, что при отборе обязательно будут выживать лучшие члены популяции. При этом часть самых лучших особей без каких-либо изменений переходит в следующее поколение. Быстрая сходимость, обеспечиваемая элитным отбором, может быть компенсирована подходящим методом выбора родительских пар. В данном случае часто используют аутбридингом. Именно такая комбинация «аутбридинг -- элитный отбор» является одной из наиболее эффективной.
· Турнирный отбор. Турнирный отбор реализует n турниров, чтобы выбрать n особей. Каждый турнир построен на выборке k элементов из популяции, и выбора лучшей особи среди них. Наиболее распространен турнирный отбор с k = 2.
Одним из наиболее востребованных приложений генетических алгоритмов в области Data Mining является поиск наиболее оптимальной модели (поиск алгоритма, соответствующего специфике конкретной области). Генетические алгоритмы в первую очередь применяются для оптимизации топологии нейронных сетей и весов. Однако, их также возможно использовать и как самостоятельный инструмент.
3. Сферы применения
Технология Data Mining имеет действительно широкий спектр применения, являясь, по сути, набором универсальных инструментов для анализа данных любого типа.
Маркетинг
Одной из самых первых сфер, где были применены технологии интеллектуального анализа данных, была сфера маркетинга. Задача, с которой началось развитие методов Data Mining, называется анализ покупательской корзины.
Данная задача состоит в выявлении товаров, которые покупатели стремятся приобретать вместе. Знание покупательской корзины необходимо для проведения рекламных компаний, формирование персональных рекомендаций покупателям, выработки стратегии создания запасов товаров и способов их раскладки в торговых залах.
Также в маркетинге решаются такие задачи, как определение целевой аудитории того или иного продукта для более успешного его продвижения; исследование временных шаблонов, которое помогает предприятиям принимать решения о создании товарных запасов; создание прогнозирующих моделей, что дает возможность предприятиям узнавать характер потребностей различных категорий клиентов с определенным поведением; прогнозирование лояльности клиента, что позволяет заблаговременно выявить момент ухода клиента при анализе его поведения и, возможно, предотвратить потерю ценного клиента.
Промышленность
Одним из важных направлений в этой сфере является мониторинг и контроль качества, где с помощью средств анализа возможно предсказать выход оборудования из строя, появление неисправностей, планировать ремонтные работы. Прогнозирование популярности определенных характеристик и знание того, какие характеристики обычно заказываются вместе помогает оптимизировать производство, ориентировать его на реальные потребности потребителей.
Медицина
В медицине анализ данных также применяется довольно успешно. Примером задач могут служить анализ результатов обследований, диагностика, сравнение эффективности методов лечения и лекарств, анализ заболеваний и их распространения, выявление побочных эффектов. Такие технологии Data Mining, как ассоциативные правила и последовательные шаблоны, успешно применяются при выявлении связей между приемом препаратов и побочными эффектами.
Молекулярная генетика и генная инженерия
Пожалуй, наиболее остро и вместе с тем четко задача обнаружения закономерностей в экспериментальных данных стоит в молекулярной генетике и генной инженерии. Здесь она формулируется как определение маркеров, под которыми понимают генетические коды, контролирующие те или иные фенотипические признаки живого организма. Такие коды могут содержать сотни, тысячи и более связанных элементов. Результатом аналитического анализа данных также являются обнаруженная учеными-генетиками зависимость между изменениями в последовательности ДНК человека и риском развития различных заболеваний.
Прикладная химия
Методы Data Mining находят применение и в области прикладной химии. Здесь нередко возникает вопрос о выяснении особенностей химического строения тех или иных соединений, определяющих их свойства. Особенно актуальна такая задача при анализе сложных химических соединений, описание которых включает сотни и тысячи структурных элементов и их связей.
Борьба с преступностью
В обеспечении безопасности средства Data Mining применяются сравнительно недавно, однако в настоящее время уже получены практические результаты, подтверждающие эффективность интеллектуального анализа данных в этой области. Швейцарскими учеными были разработаны система анализа протестной активности с целью прогнозирования будущих инцидентов и система отслеживание возникающих киберугроз и действий хакеров в мире. Последняя система позволяет прогнозировать киберугрозы и другие риски информационной безопасности. Также методы Data Mining успешно применяются для выявления мошенничества с кредитными карточками. Путем анализа прошлых транзакций, которые впоследствии оказались мошенническими, банк выявляет некоторые стереотипы такого мошенничества.
Другие приложения
· Анализ риска. Например, путем выявления сочетаний факторов, связанных с оплаченными заявлениями, страховщики могут уменьшить свои потери по обязательствам. Известен случай, когда в США крупная страховая компания обнаружила, что суммы, выплаченные по заявлениям людей, состоящих в браке, вдвое превышает суммы по заявлениям одиноких людей. Компания отреагировала на это новое знание пересмотром своей общей политики предоставления скидок семейным клиентам.
· Метеорология. Предсказание погоды методами нейронных сетей, в частности используются самоорганизующиеся карты Кохонена.
· Кадровая политика. Средства анализа помогают службам по управлению персоналом отбирать наиболее удачных кандидатов на основе анализа данных их резюме, моделировать характеристики идеальных сотрудников для той или иной должности.
4. Производители средств Data Mining
Средства Data Mining традиционно относятся к дорогостоящим программным продуктам. Поэтому до недавнего времени основными потребителями этой технологии были банки, финансовые и страховые компании, крупные торговые предприятия, а основными задачами, требующими применения Data Mining, считались оценка кредитных и страховых рисков и выработка маркетинговой политики, тарифных планов и иных принципов работы с клиентами. В последние годы ситуация претерпела определенные изменения: на рынке программного обеспечения появились относительно недорогие инструменты Data Mining и даже системы с свободным распространением, что сделало доступной эту технологию для предприятий малого и среднего бизнеса.
Среди платных инструментов и систем анализ данных лидерами являются SAS Institute (SAS Enterprise Miner), SPSS (SPSS, Clementine) и StatSoft (STATISTICA Data Miner). Достаточно известными являются решения от Angoss (Angoss KnowledgeSTUDIO), IBM(IBM SPSS Modeler), Microsoft (Microsoft Analysis Services) и (Oracle) Oracle Data Mining.
Выбор свободного программного обеспечения также отличается разнообразием. Существуют как универсальные средства анализа, такие как JHepWork, KNIME, Orange, RapidMiner, так и специализированные средства , например Carrot2 - фрэймворк для кластеризации текстовых данных и результатов поисковых запросов, Chemicalize.org - решение в области прикладной химии, NLTK (Natural Language Toolkit) инструмент для обработки естественного языка (natural language processing).
5. Критика методов
Результаты Data Mining в большой мере зависят от уровня подготовки данных, а не от «чудесных возможностей» некоторого алгоритма или набора алгоритмов. Около 75% работы над Data Mining состоит в сборе данных, который совершается еще до применения инструментов анализа. Неграмотное применение инструментов, приведет к бессмысленной трате потенциала компании, а иногда и миллионов долларов.
Мнение Херба Эдельштайна (Herb Edelstein), известного в мире эксперта в области Data Mining, Хранилищ данных и CRM: «Недавнее исследование компании Two Crows показало, что Data Mining находится все еще на ранней стадии развития. Многие организации интересуются этой технологией, но лишь некоторые активно внедряют такие проекты. Удалось выяснить еще один важный момент: процесс реализации Data Mining на практике оказывается более сложным, чем ожидается.
IT-команды увлеклись мифом о том, что средства Data Mining просты в использовании. Предполагается, что достаточно запустить такой инструмент на терабайтной базе данных, и моментально появится полезная информация. На самом деле, успешный Data Mining проект требует понимания сути деятельности, знания данных и инструментов, а также процесса анализа данных». Таким образом, прежде чем использовать технологию Data Mining, необходимо тщательно проанализировать ограничения, накладываемые методами, и связанные с ней критические вопросы, а также трезво оценить возможности технологии. К критическим вопросам относятся следующие:
1. Технология не может дать ответы на вопросы, которые не были заданы. Она не может заменить аналитика, а всего лишь дает ему мощный инструмент для облегчения и улучшения его работы.
2. Сложность разработки и эксплуатации приложения Data Mining.
Поскольку данная технология является мультидисциплинарной областью, для разработки приложения, включающего Data Mining, необходимо задействовать специалистов из разных областей, а также обеспечить их качественное взаимодействие.
3. Квалификация пользователя.
Различные инструменты Data Mining имеют различную степень «дружелюбности» интерфейса и требуют определенной квалификации пользователя. Поэтому программное обеспечение должно соответствовать уровню подготовки пользователя. Использование Data Mining должно быть неразрывно связано с повышением квалификации пользователя. Однако специалистов по Data Mining, которые бы хорошо разбирались в бизнес-процессах, в настоящее время мало.
4. Извлечение полезных сведений невозможно без хорошего понимания сути данных.
Необходим тщательный выбор модели и интерпретация зависимостей или шаблонов, которые обнаружены. Поэтому работа с такими средствами требует тесного сотрудничества между экспертом в предметной области и специалистом по инструментам Data Mining. Постоенные модели должны быть грамотно интегрированы в бизнес-процессы для возможности оценки и обновления моделей. В последнее время системы Data Mining поставляются как часть технологии хранилищ данных.
5. Сложность подготовки данных.
Успешный анализ требует качественной предобработки данных. По утверждению аналитиков и пользователей баз данных, процесс предобработки может занять до 80% процентов всего Data Mining-процесса.
Таким образом, чтобы технология работала на себя, потребуется много усилий и времени, которые уходят на предварительный анализ данных, выбор модели и ее корректировку.
6. Большой процент ложных, недостоверных или бесполезных результатов.
С помощью технологий Data Mining можно отыскивать действительно очень ценную информацию, которая может дать значительное преимущество при дальнейшем планировании, управлении, принятии решений. Однако, результаты, полученные с помощью методов Data Mining, достаточно часто содержат ложные и не имеющие смысла выводы. Многие специалисты утверждают, что Data Mining-инструменты могут выдавать огромное количество статистически недостоверных результатов. Чтобы снизить процент таких результатов, необходима проверка адекватности полученных моделей на тестовых данных. Однако полностью избежать ложных выводов невозможно.
7. Высокая стоимость.
Качественный программный продукт является результатом значительных трудозатрат со стороны разработчика. Поэтому программное обеспечение Data Mining традиционно относятся к дорогостоящим программным продуктам.
8. Наличие достаточного количества репрезентативных данных.
Инструменты Data Mining, в отличие от статистических, теоретически не требуют наличия строго определенного количества ретроспективных данных. Эта особенность может стать причиной обнаружения недостоверных, ложных моделей и, как результат, принятия на их основе неверных решений. Необходимо осуществлять контроль статистической значимости обнаруженных знаний.
нейросетевой алгоритм кластеризация данные mining
Заключение
В аналитическом обзоре рассмотрены основные методы Data Mining, такие как вывод ассоциативных правил, нейросетевые алгоритмы, методы ближайшего соседа и k-ближайших соседей, деревья решений, алгоритмы кластеризации, генетические алгоритмы. Были описаны ключевые этапы процесса интеллектуального анализа данных, компоненты систем интеллектуального анализа, а также освещены производители таких систем.
Дана краткая характеристика сфер применения и приведена критика технологии Data Mining и мнение экспертов в этой области.
Список литературы
1. Han and Micheline Kamber. Data Mining: Concepts and Techniques. Second Edition. - University of Illinois at Urbana-Champaign
2. Berry, Michael J. A. Data mining techniques: for marketing, sales, and customer relationship management - 2nd ed.
3. Siu Nin Lam. Discovering Association Rules in Data Mining. - Department of Computer Science University of Illinois at Urbana-Champaign
4. Дюк В.А., Самойленко А.П. Data Mining: учебный курс. -- СПб.: Питер, 2001
5. Дадим слово критикам. // Intersoft Lab. [2001--2012]. URL: http://citforum.ru/consulting/BI/dm_criticism/ (дата обращения: 20.11.2012)
6. David Hand, Heikki Mannila, Padhraic Smyth. Principles of Data Mining. - The MIT Press, 2001
7. Степанов Р. Г. Технология Data Mining: Интеллектуальный Анализ Данных. - Казанский Государственный Университетим. В.И.Ульянова-Ленина, 2008.
8. Fredrik Johansson, Joel Brynielsson. Detecting Emergent Con?icts through Web Mining and Visualization. - Swedish Defence Research Agency (FOI) Stockholm, Sweden
9. An Introduction to Information Retrieval - Cambridge University. // The Stanford Natural Language Processing Group. URL: http://nlp.stanford.edu/IR-book/pdf/irbookonlinereading.pdf (дата обращения: 20.11.2012)
10. Mining of Massive Datasets Stanford University. //The Stanford InfoLab. URL: http://i.stanford.edu/~ullman/mmds/book.pdf
Размещено на Allbest.ru
Подобные документы
Основы для проведения кластеризации. Использование Data Mining как способа "обнаружения знаний в базах данных". Выбор алгоритмов кластеризации. Получение данных из хранилища базы данных дистанционного практикума. Кластеризация студентов и задач.
курсовая работа [728,4 K], добавлен 10.07.2017Data mining, developmental history of data mining and knowledge discovery. Technological elements and methods of data mining. Steps in knowledge discovery. Change and deviation detection. Related disciplines, information retrieval and text extraction.
доклад [25,3 K], добавлен 16.06.2012Совершенствование технологий записи и хранения данных. Специфика современных требований к переработке информационных данных. Концепция шаблонов, отражающих фрагменты многоаспектных взаимоотношений в данных в основе современной технологии Data Mining.
контрольная работа [565,6 K], добавлен 02.09.2010Классификация задач DataMining. Создание отчетов и итогов. Возможности Data Miner в Statistica. Задача классификации, кластеризации и регрессии. Средства анализа Statistica Data Miner. Суть задачи поиск ассоциативных правил. Анализ предикторов выживания.
курсовая работа [3,2 M], добавлен 19.05.2011Анализ проблем, возникающих при применении методов и алгоритмов кластеризации. Основные алгоритмы разбиения на кластеры. Программа RapidMiner как среда для машинного обучения и анализа данных. Оценка качества кластеризации с помощью методов Data Mining.
курсовая работа [3,9 M], добавлен 22.10.2012Перспективные направления анализа данных: анализ текстовой информации, интеллектуальный анализ данных. Анализ структурированной информации, хранящейся в базах данных. Процесс анализа текстовых документов. Особенности предварительной обработки данных.
реферат [443,2 K], добавлен 13.02.2014Классификация задач Data Mining. Задача кластеризации и поиска ассоциативных правил. Определению класса объекта по его свойствам и характеристикам. Нахождение частых зависимостей между объектами или событиями. Оперативно-аналитическая обработка данных.
контрольная работа [26,1 K], добавлен 13.01.2013Роль информации в мире. Теоретические основы анализа Big Data. Задачи, решаемые методами Data Mining. Выбор способа кластеризации и деления объектов на группы. Выявление однородных по местоположению точек. Построение магического квадранта провайдеров.
дипломная работа [2,5 M], добавлен 01.07.2017- Визуализация профиля пользователя социальной сети на основе обработки семантического описания данных
Анализ существующих музыкальных сетей, профиля музыкального файла. Технологии и возможности Web 2.0. Анализ алгоритмов в Data Mining. Структура социальной сети. Набор графических элементов, описывающий человека в зависимости от прослушиваемой музыки.
дипломная работа [3,7 M], добавлен 20.04.2012 Создание структуры интеллектуального анализа данных. Дерево решений. Характеристики кластера, определение групп объектов или событий. Линейная и логистическая регрессии. Правила ассоциативных решений. Алгоритм Байеса. Анализ с помощью нейронной сети.
контрольная работа [2,0 M], добавлен 13.06.2014