Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Общий конспект по Технологии анализа и обработ...docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
2.66 Mб
Скачать

Применение генетических алгоритмов

Генетический алгоритм для решения любой проблемы должен содержать, как правило, следующие компоненты:

  • генетическое представление потенциальных решений задачи;

  • способ создания начальной популяции потенциальных решений;

  • оценочную функцию создания начальной популяции потенциальных решений;

  • генетические операторы, изменяющие генетический состав потомства;

  • значения параметров генетического алгоритма (вероятности скрещивания и мутации, размер популяции, количество поколений и др.).

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

Примеры программного обеспечения

На рынке программного обеспечения имеется несколько продуктов, использующих генетические алгоритмы: Evoler, GeneHunter, Genetic Training Option for BrainMaker, Auto2Fit, Omega, Genitor, Xpert Rule Gen Asy, PC/Beagle, EM, Escapate, GAGA, Gausd, Genesis, OOGA, EnGENer, Game, GA Workbench, Pegasus и др.

  1. Методы интеллектуального анализа: деревья решений

Дерево принятия решений (также могут назваться деревьями классификации или регрессионными деревьями) — используется в области статистики и анализа данных для прогнозных моделей. Структура дерева представляет собой следующее: «листья» и «ветки». На ребрах («ветках») дерева решения записаны атрибуты, от которых зависит целевая функция, в «листьях» записаны значения целевой функции, а в остальных узлах — атрибуты, по которым различаются случаи. Чтобы классифицировать новый случай, надо спуститься по дереву до листа и выдать соответствующее значение. Подобные деревья решений широко используются в интеллектуальном анализе данных. Цель состоит в том, чтобы создать модель, которая предсказывает значение целевой переменной на основе нескольких переменных на входе.

Типология деревьев

Деревья решений, используемые в Data Mining, бывают двух основных типов:

  • Анализ дерева классификации, когда предсказываемый результат является классом, к которому принадлежат данные;

  • Регрессионный анализ дерева, когда предсказанный результат можно рассматривать как вещественное число (например, цена на дом, или продолжительность пребывания пациента в больнице).

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

  • Деревья решений «мешок», наиболее раннее дерево решений, строит несколько деревьев решений, неоднократно интерполируя данные с заменой, и деревья голосований для прогноза консенсуса;

  • Случайный классификатор «лесной» использует ряд деревьев решений, с целью улучшения ставки классификации;

  • «Повышенные» деревья могут быть использованы для регрессионного типа и классификации типа проблем.

  • «Вращение леса» — деревья, в которых каждое дерево решений анализируется первым применением метода главных компонент (PCA) на случайные подмножества входных функций.

Алгоритмы построения дерева

  • Алгоритм ID3, где выбор атрибута происходит на основании прироста информации (англ. Gain), либо на основании индекса Гини.

  • Алгоритм C4.5 (улучшенная версия ID3), где выбор атрибута происходит на основании нормализованного прироста информации (англ. Gain Ratio).

  • Алгоритм CART и его модификации — IndCART, DB-CART.

  • Автоматический детектор взаимодействия Хи-квадрат (CHAID). Выполняет многоуровневое разделение при расчете классификации деревьев;

  • MARS: расширяет деревья решений для улучшения обработки цифровых данных.

Достоинства метода

Среди прочих методов Data Mining, метод дерева принятия решений имеет несколько достоинств:

  • Прост в понимании и интерпретации. Люди способны интерпретировать результаты модели дерева принятия решений после краткого объяснения

  • Не требует подготовки данных. Прочие техники требуют нормализации данных, добавления дамми-переменных, а также удаления пропущенных данных.

  • Способен работать, как с категориальными, так и с интервальными переменными. Прочие методы работают лишь с теми данными, где присутствует лишь один тип переменных. Например, метод отношений может быть применен только на номинальных переменных, а метод нейронных сетей только на переменных, измеренных по интервальной шкале.

  • Использует модель «белого ящика». Если определенная ситуация наблюдается в модели, то её можно объяснить при помощи булевой логики. Примером «черного ящика» может быть искусственная нейронная сеть, так как результаты данной модели поддаются объяснению с трудом.

  • Позволяет оценить модель при помощи статистических тестов. Это дает возможность оценить надежность модели.

  • Является надежным методом. Метод хорошо работает даже в том случае, если были нарушены первоначальные предположения, включенные в модель.

  • Позволяет работать с большим объемом информации без специальных подготовительных процедур. Данный метод не требует специального оборудования для работы с большими базами данных.

Недостатки метода

  • Проблема получения оптимального дерева решений является NP-полной с точки зрения некоторых аспектов оптимальности даже для простых задач. Таким образом, практическое применение алгоритма деревьев решений основано на эвристических алгоритмах, таких как алгоритм «жадности», где единственно оптимальное решение выбирается локально в каждом узле. Такие алгоритмы не могут обеспечить оптимальность всего дерева в целом.

  • Те, кто изучает метод дерева принятия решений, могут создавать слишком сложные конструкции, которые не достаточно полно представляют данные. Данная проблема называется проблемой «чрезмерной подгонки». Для того, чтобы избежать данной проблемы, необходимо использовать Метод «регулирования глубины дерева».

  • Существуют концепты, которые сложно понять из модели, так как модель описывает их сложным путем. Данное явление может быть вызвано проблемами XOR, четности или мультиплексарности. В этом случае мы имеем дело с непомерно большими деревьями. Существует несколько подходов решения данной проблемы, например, попытка изменить репрезентацию концепта в модели (составление новых суждений), или использование алгоритмов, которые более полно описывают и репрезентируют концепт (например, метод статистических отношений, индуктивная логика программирования).

  • Для данных, которые включают категориальные переменные с большим набором уровней (закрытий), больший информационный вес присваивается тем атрибутам, которые имеют большее количество уровней.

Регулирование глубины дерева

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

Один из вопросов, который возникает в алгоритме дерева решений — это оптимальный размер конечного дерева. Так, небольшое дерево может не охватить ту или иную важную информацию о выборочном пространстве. Тем не менее, трудно сказать, когда алгоритм должен остановиться, потому что невозможно спрогнозировать, добавление какого узла позволит значительно уменьшить ошибку. Эта проблема известна как «эффект горизонта». Тем не менее, общая стратегия ограничения дерева сохраняется, то есть удаление узлов реализуется в случае, если они не дают дополнительной информации.

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

Методы регулирования

Сокращение дерева может осуществляться сверху вниз или снизу вверх. Сверху вниз — обрезка начинается с корня, снизу вверх — сокращается число листьев дерева. Один из простейших методов регулирования — уменьшение ошибки ограничения дерева. Начиная с листьев, каждый узел заменяется на самый популярный класс. Если точность предсказания не влияет, то изменение сохраняется.

Методы и средства интеллектуального анализа данных

Интеллектуальный анализ данных — одно из новых направлений искусственного интеллекта. Этот термин является кратким и весьма неточным переводом с английского языка терминов Data Mining и Knowledge Discovery in Databases (DM&KDD). Более точный перевод — «добыча данных» и «выявление знаний в базах данных».

Data Mining — это процесс обнаружения в сырых данных (row data) раннее неизвестных, нетривиальных, практически полезных, доступных интерпретации знаний (закономерностей), необходимых для принятия решений в различных сферах человеческой деятельности (Г.Пятецкий-Шапиро).

Появление технологий DM&KDD обусловлено накоплением огромных объемов информации в компьютерных базах данных, которые стало невыгодно хранить и которыми стало трудно пользоваться традиционными способами. Последнее обстоятельство связано со стремительным развитием вычислительной техники и программных средств для представления и обработки данных. Большие объемы накопленных данных постоянно приходится модифицировать из-за быстрой смены аппаратного и программного обеспечения БД, при этом неизбежны потери и искажение информации. Одним из средств для преодоления подобных трудностей является создание информационных хранилищ данных, доступ к которым не будет сильно зависеть от изменения данных во времени и от используемого программного обеспечения. Другой подход ориентирован на сжатие больших объемов данных путем нахождения некоторых общих закономерностей (знаний) в накопленной информации. Оба направления актуальны с практической точки зрения. Второй подход более интересен для специалистов в области ИИ, так как связан с решением проблемы приобретения новых знаний. Следует заметить, что наиболее плодотворным является сочетание обоих направлений.

Методы построения деревьев решений

Методика "Разделяй и властвуй"

Методика основана на рекурсивном разбиении множества объектов из обучающей выборки на подмножества, содержащие объекты, относящиеся к одинаковым классам.

Сперва выбирается независимая переменная, которая помещается в корень дерева.

Из вершины строятся ветви, соответствующие всем возможным значениям выбранной независимой переменной.

Множество объектов из обучающей выборки разбивается на несколько подмножеств в соответствии со значением выбранной независимой переменной.

Таким образом, в каждом подмножестве будут находиться объекты, у которых значение выбранной независимой переменной будет одно и то же.

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

Вопрос в том, какую зависимую переменную выбрать для начального разбиения. От этого целиком зависит качество получившегося дерева.

Общее правило для выбора переменной для разбиения: выбранная переменная должны разбить множество так, чтобы получаемые в итоге подмножества состояли из объектов, принадлежащих к одному классу, или были максимально приближены к этому, т.е. чтобы количество объектов из других классов ("примесей") в каждом из этих множеств было минимальным.

Алгоритм ID3

Рассмотрим критерий выбора независимой переменной, от которой будет строиться дерево.

Полный набор вариантов разбиения |X| - количество независимых переменных.

Рассмотрим проверку переменой xh, которая принимает m значений ch1,ch2,...,chm.

Тогда разбиение множества всех объектов обучающей выборки N по проверке переменной xh даст подмножества T1,T2,...,Tm.

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

Так, чтобы в каждом из них были по-возможности объекты одного класса.

Эта мера упорядоченности (неопределенности) характеризуется информацией.

В контексте рассматриваемой задачи это количество информации, необходимое для того, чтобы отнести объект к тому или иному классу.

При разделении исходного множества на более мелкие подмножества, используя в качестве критерия для разделения значения выбранной независимой переменной,

неопределённость принадлежности объектов конкретным классам будет уменьшаться. Задача состоит в том, чтобы выбрать такие независимые переменные,

чтобы максимально уменьшить эту неопределенность и в конечном итоге получить подмножества, содержащие объекты только одного класса.

В последнем случае неопределенность равна нулю.

Единственная доступная информация - каким образом классы распределены в множестве T и его подмножествах, получаемых при разбиении.

Именно она и используется при выборе переменной.

Алгоритм C4.5

Представляет собой усовершенствованный вариант алгоритма ID3. Среди улучшений стоит отметить следующие:

Возможность работать не только с категориальными атрибутами, но также с числовыми. Для этого алгоритм разбивает область значений независимой переменной на несколько интервалов и делит исходное множество на подмножества в соответствии с тем интервалом, в который попадает значение зависимой переменной.

После построения дерева происходит усечение его ветвей. Если получившееся дерево слишком велико, выполняется либо группировка нескольких узлов в один лист, либо замещение узла дерева нижележащим поддеревом. Перед операцией над деревом вычисляется ошибка правила классификации, содержащегося в рассматриваемом узле. Если после замещения (или группировки) ошибка не возрастает (и не сильно увеличивается энтропия), значит замену можно произвести без ущерба для построенной модели.

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

Алгоритм C4.5 решает эту проблему путём введения нормализации.

Оценивается не количество объектов того или иного класса после разбиения, а число подмножеств и их мощность (число элементов).

Алгоритм покрытия

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

На каждом шаге алгоритма выбирается значение переменной, которое разделяет множество на два подмножества. Разделение должно выполняться так, чтобы все объекты класса, для которого строится дерево, принадлежали одному подмножеству. Такое разбиение производится до тех пор, пока не будет построено подмножество, содержащее только объекты одного класса.

Для выбора независимой переменной и её значения, которое разделяет множество, выполняются следующие действия:

Из построенного на предыдущем этапе подмножества (для первого этапа это вся обучающая выборка), включающего объекты, относящиеся к выбранному классу для каждой независимой переменной, выбираются все значения, встречающиеся в этом подмножестве.

Для каждого значения каждой переменной подсчитывается количество объектов, удовлетворяющих этому условию и относящихся к выбранному классу.

Выбираются условия, покрывающие наибольшее количество объектов выбранного класса.

Выбранное условие является условием разбиения подмножества на два новых.

После построения дерева для одного класса таким же образом строятся деревья для других классов.

Интеллектуальный анализ данных в системах поддержки принятия решений

Сегодня мы являемся свидетелями активного развития технологии интеллектуального анализа данных (ИАД или data mining), появление которой связано, в первую очередь, с необходимостью аналитической обработки сверхбольших объемов информации, накапливаемой в современных хранилищах данных. Возможность использования хорошо известных методов математической статистики и машинного обучения для решения задач подобного рода открыло новые возможности перед аналитиками, исследователями, а также теми, кто принимает решения - менеджерами и руководителями компаний. Сложность и разнообразие методов ИАД требуют создания специализированных средств конечного пользователя для решения типовых задач анализа информации в конкретных областях. Поскольку эти средства используются в составе сложных многофункциональных систем поддержки принятия решений, они должны легко интегрироваться в подобные системы. Одним из наиболее важных и перспективных направлений применения ИАД являются бизнес-приложения, поэтому опыт канадско-американской фирмы Cognos по реализации методов ИАД в составе интегрированных интеллектуальных систем поддержки принятия решений представляет интерес как для разработчиков, так и для пользователей.

Системы ИАД применяются в научных исследованиях и образовании, в работе правоохранительных органов, производстве, здравоохранении и многих других областях. Особенно широко технология ИАД используется в деловых приложениях.

Использование интеллектуального анализа данных (Data Mining) в системах управления взаимоотношений с клиентами (CRM)

В последнее время, в связи с ростом числа внедрений систем управления взаимоотношений с клиентами (CRM), во многих компаниях появился интерес в обнаружении закономерностей в базах данных, содержащих сведения о клиентах. Для достижения поставленной цели служит внедрение системы, реализующей методы Data Mining, которые предназначены для обработки и содержательной интерпретации данных с целью выявления актуальных трендов и выработки оптимальных стратегий.

Исследуя затраты на маркетинговую деятельность, компании все больше внимания начинают уделять возможностям их оптимизации. Как можно больше узнать о своих клиентах? Как правильно использовать имеющуюся информацию для формирования пакета наиболее интересных предложений определенным клиентам? Как правильно понять какое из предложений оказалось наиболее успешным?

Первым шагом на пути решения подобных вопросов является создание системы сбора всей доступной информации из различных источников (ERP, CRM, почта, excel-файлы и т.д.) по всей компании, включая все ее филиалы. Эта информация должна проходить проверки на полноту, непротиворечивость, приводиться к единому удобному для конечного пользователя формату и обеспечивать достаточный уровень детализации для возможности принятия решений. Собранная таким образом информация сохраняется в многомерном аналитическом хранилище данных (OLAP-хранилище), что позволяет на лету формировать аналитические отчеты в различных разрезах и с произвольной глубиной "проваливания" в оперативные данные. Средства OLAP также идеально подходят для проверок заранее сформулированных аналитиком гипотез.

Второй шаг на пути внедрения полноценной аналитической системы состоит в реализации методов Data Mining, служащих для обнаружения ранее неизвестных и нетривиальных закономерностей в собранных в компании данных. Получение таких знаний призвано обеспечить конкурентные преимущества за счет более глубоко взгляда на процессы, тенденции и риски в бизнесе компании. Использование методов интеллектуального анализа данных является многоступенчатым и иногда весьма сложным процессом, но выгода может в десятки раз окупить затраты.

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

Использование Data Mining в CRM призвано помочь понять способы выхода на новых клиентов, а также помочь удержать и улучшить коммерческие взаимоотношения с существующими клиентами. Методы анализа данных могут варьироваться от весьма простых (определения с кем когда и где необходимо вступить в контакт) до применения сложных алгоритмов прогнозирования клиентского поведения и определения оптимальных маркетинговых стратегий.