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

Методы искусственного интеллекта: методы и технологии экспертных систем, нейронных сетей, генетических алгоритмов, нечёткой логики, эвристические методы ограниченного перебора и визуализации данных. Это один из подходов к решению проблем неопределённости при принятии решений.

Понятие, эволюция и инструменты интеллектуального анализа данных

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

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

Термин «искусственный интеллект» имеет, по крайней мере, 3 взаимосвязанных значения.

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

Логистическое направление (Маккарти): мышление – логический вывод в системе аксиом исчисления предикатов.

Эвристические программы (Герберт, Саймон и др.): психологическая модель мышления как эвристического поиска в пространстве возможных состояний. В отличие от логисцистов, авторы данного проекта не считали, что для доказательства даже логических теорем достаточно внутренних средств самой логики. Эвристика – это основанное не опыте правило, стратегия, ловкий приём, упрощение или иное  средство, существенно ограничивающее поиск решения сложных задач». Идея Саймона и его единомышленников состояла в том, что для создания искусственного интеллекта нужно не увеличивать скорость перебора всех вариантов, а выявлять эвристики и включать их в компьютерные программы.

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

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

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

Эволюционный подход: заменить моделирование человека моделированием процесса его эволюции.

Исследования в области искусственного интеллекта прошли несколько этапов:

  1. возникновение и первые шаги нового направления научных исследований. Возникают различные исследовательские программы, формируется круг задач, разрабатываются инструменты их решений;
  2. конец 60х-начало70-х гг. – завершение становления искусственного интеллекта как научной дисциплины;
  3. появление подлинно прикладных разработок. Основные технологии: нейронные сети, генетические алгоритмы, нечёткая логика.

Нейронные сети

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

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

  • Классификация образов. Задача состоит в указании принадлежности входного образа, представленного вектором признаков, одному или нескольким предварительно определённым классам;
  • Кластеризация, категоризация. Алгоритм кластеризации основан на подобии образов и размещает близкие образы в один кластер;
  • Аппроксимация функций;
  • Предсказание (прогноз);
  • Оптимизация. Задачей алгоритма является нахождение такого решения, которое удовлетворяет системе ограничений и максимизирует или минимизирует целевую функцию;
  • Память, адресуемая по содержанию;
  • Управление.

Нейрон – особая биологическая клетка, которая обрабатывает информацию. Она состоит из тела клетки и 2 типов внешних древоподобных ветвей: аксона и дендритов. Тело клетки включает ядро, которое содержит информацию о наследственных свойствах, и плазму, обладающую молекулярными средствами для производства необходимых нейрону материалов. Нейрон получает сигналы (импульсы) от др. нейронов через дендриты и передаёт сигналы, сгенерированные телом клетки, вдоль аксона, который в конце разветвляется на волокна. На окончаниях этих волокон находятся синапсы.

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

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

Теоретически число слоёв и число нейронов в каждом слое может быть произвольным, однако фактически оно ограничено ресурсами компьютера или спец. Микросхемы, на которых обычно реализуется нейронная сеть. Выбор структуры нейронной сети осуществляется в соответствии с особенностями и сложностью задачи.

По архитектуре связей нейронные сети могут быть сгруппированы в 2 класса: сети прямого распространения, в которых графы не имеют петель, и рекуррентные сети, или сети с обратными связями.

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

Генетические алгоритмы

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

Основное отличие генетических алгоритмов заключается в их большей универсальности.

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

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

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

 Нечёткая логика

Так называемая нечёткая логика включает в себя несколько элементов: нечёткую арифметику, нечёткие множества и собственно нечёткую логику.

Нечётка алгебра

В основе нечёткой арифметики лежит представление о нечётком числе. Называется оно так потому, что описывает событие или объект недостаточно хорошо известный и строго определённый. Нечёткие числа отличаются от обычных тем, что их значения могут находиться в некотором диапазоне. При этом указывается так называемая функция принадлежности µ(х), с помощью которой задаётся субъективная оценка степени возможности нахождения этого числа в этом диапазоне. Функция принадлежности может принимать значения на отрезке [0,1].

Чаще всего используется треугольная функция принадлежности, которая однозначно задаётся тройкой чисел: ХL – левая граница нечёткого числа, ХR – правая граница нечёткого числа, Х* — центральное значение нечёткого числа.

Очевидно, что путём изменения значений ХL и ХR можно изменить наши субъективные представления о нечёткости соответствующей оценки.

Нечёткие числа удобны тем, что они дают интерпретацию качественным оценкам.

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

Для нечётких чисел, так же как и для обычных, определены 4 арифметические операции – сложение, вычитание, умножение и деление.

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

Нечёткая логика

В нечёткой логике используются нечёткие высказывания, относительно которых можно судить о степени их истинности или ложности в настоящее время. Степень истинности или ложности может принимать любое значение из замкнутого интервала [0,1], причём 0 и 1 являются предельными значениями степени истинности и совпадают с понятиями лжи и истинности для булевых высказываний.

Применение нечёткой логики:

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