Содержание
- Что такое мягкие вычисления?
- Постановка задачи оптимизации, теорема Вейерштрасса, понятие минимума.
- DATA MINING
- Что такое Data Mining?
- Классы систем и методов Data Mining.
- ГЕНЕТИЧЕСКИЙ АЛГОРИТМ
- Что такое генетический алгоритм?
- Кто придумал генетический алгоритм?
- Преимущества генетических алгоритмов?
- Недостатки генетических алгоритмов?
- Что такое простейший генетический алгоритм, схема, теорема Холланда?
- В элитарном ПГА не ясна роль "не элитных" особей.
- Классический (одноточечный) кроссинговер.
- Двуточечный кроссинговер.
- Унифицированный (однородный) кроссинговер.
- Дифференциальное скрещивание.
- Исходники некоторых кроссинговеров.
- Что такое инверсия и переупорядочение?
- Что такое эпистаз?
- Что такое ложный оптимум?
- Что такое инбридинг, оутбридинг, селективный выбор, панмиксия?
- Динамическая самоорганизация параметров ГА.
- Метод миграции и искусственной селекции.
- Метод прерывистого равновесия.
- Почему у меня популяция пpи малых размерах вообще не сходится?
- Разное.
- ГА не рекомендуется, если нужно найти точный глобальный экстремум.
Почему?
- На каких функциях проверить мой генетический алгоритм?
- ГЕНЕТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ
- Что такое генетическое программирование?
- Деревья поколений.
- Терминальный алфавит, функциональный базис и их свойства.
- НЕЙРОННЫЕ СЕТИ
- Математическая модель нейрона.
- Применение генетического подхода в обучении нейронной сети.
- НЕЧЕТКИЕ МНОЖЕСТВА
- Что такое нечеткое множество, нечеткая и лингвистическая переменная?
- Базовые операции над нечеткими множествами.
- Библиотека операций над нечеткими множествами.
- Словарь
Что такое мягкие вычисления?
Термин "мягкие вычисления" введен Лофти Заде в 1994 году. Это
понятие объединяет такие области как: нечеткая логика, нейронные сети,
вероятностные рассуждения, сети доверия и эволюционные алгоритмы; которые дополняют
друг друга и используются в различных комбинациях или самостоятельно для
создания гибридных интеллектуальных систем. Поэтому создание систем работающих
с неопределенностью, надо понимать как составную часть "мягких" вычислений.
По существу в 1970 году Л.Заде был создан новый метод
вычислительной математики, который был поддержан аппаратными средствами
(нечеткими процессорами) который в ряде проблемных областей стал более эффективным,
чем классические методы. Первоначально эти области входили в
проблематику искусственного интеллекта. Постепенно круг этих областей
существенно расширился и сформировалось направление "вычислительного интеллекта". В
это направление в настоящее время входят:
- нечеткая логика и теория множеств;
- нечеткие экспертные системы;
- системы приближенных вычислений;
- теория хаоса;
- фрактальный анализ;
- нелинейные динамические системы;
- гибридные системы (нейронечеткие или нейрологические,
генетиконейронные,
нечеткогенетические или логикогенетические системы);
- системы, управляемые данными (нейронные сети, эволюционное
вычисление).
Постановка задачи оптимизации, теорема Вейерштрасса, понятие минимума.
Пусть задана функция q(x), определенная во всех значениях
x принадлежащих X. В общем случае x может быть вектором
значений многопараметрической функции q(x).
Тогда, в общей задаче оптимизации требуется найти вектор
x=(x1,x2,...,xn) из допустимой области X, который обращает в минимум целевую
функцию q(x). Если необходимо найти максимум функции, то в качестве целевой
берут обратную функцию -q(x).
Теорема Вейерштрасса. Непрерывная функция, определенная на
непустом замкнутом ограниченном множестве, достигает своего минимума (максимума)
по крайней мере в одной из точек этого множества.
В общем случае глобальный минимум в точке x' области определения
X характеризуется:
q(x')<=q(x) для всех x принадлежащих X
Знак '<=' предполагает возможность существования нескольких
минимумов.
При таком определении глобальный минимум называют слабым.
Сильный глобальный минимум определяется:
q(x')<q(x) для всех x принадлежащих X при x' не равном x
Минимум в точке x=x' называют локальным (относительным), если
найдется такая окрестность O(x') точки x', что для всех x принадлежащих O(x')
имеет место q(x')<=q(x)
DATA MINING
Что такое Data Mining?
В.Дюк, А.Самойленко. Data Mining
Data Mining переводится как "добыча" или "раскопка данных". Нередко
рядом с Data Mining встречаются слова "обнаружение знаний в базах данных".
В целом технологию Data Mining достаточно точно определяет
Григорий Пиатецкий-Шапиро - один из основателей этого направления. Data Mining -
это процесс обнаружения в сырых данных ранее не известных,
нетривиальных, практически полезных, доступных интерпритации знаний, необходимых для
принятия решений в различных сферах человеческой деятельности.
Классы систем и методов Data Mining
В.Дюк, А.Самойленко. Data Mining
- Предметно-ориентированные аналитические системы.
Наиболее широкий подкласс таких систем, получивший распространение
в области исследования финансовых рынков, носит название "технический
анализ". Он представляет собой совокупность нескольких десятков методов
прогноза динамики цен и выбора оптимальной структуры инвестиционного
портфеля, основанных на различных эмпирических моделях динамики рынка. Эти методы
часто используют несложный статистический аппарат, но максимально
учитывают сложившуюся в своей области специфику (профессиональный язык,
системы различных индексов и пр.).
- Статистические пакеты.
Последние версии почти всех известных статистических пакетов
включают наряду с традиционными статистическими методами также элементы Data Mining.
Но основное внимание в них уделяется всё же классическим
методикам - корреляционному, регрессионному, факторному анализу и др.
- Нейронные сети.
Это большей класс систем, архитектура которых имеет аналогию (как
теперь известно, довольно слабую) с построением нервной ткани из нейронов. В одной
из наиболее распространенных архитектур, многослойном перцептроне с
обратным распространением ошибки, имитируется работа нейронов в составе
иерархической сети, где каждый нейрон более высокого уровня соединен входами с
выходами нейронов нижележащего уровня. На нейроны самого нижнего слоя подаются
значения входных параметров, на основе которых нужно принимать какие-то
решения, прогнозировать развитие ситуации и т.д. Эти значения рассматриваются
как сигналы, передающиеся в следующий слой, ослабляясь или усиливаясь
в зависимости от числовых значений (весов), приписываемых межнейронным связям.
В результате на выходе нейрона самого верхнего слоя вырабатывается
некоторое значение, которое рассматривается как ответ - реакция всей сети на
введенные значения входных параметров. Для того чтобы сеть можно было применять
в дальнейшем, её прежде надо "натренировать" на полученных ранее данных,
для которых известны и значения входных параметров, и правильные ответы на
них. Тренировка состоит в подборе весов межнейронных связей.
Основным недостатком нейросетевой парадигмы является необходимость
иметь очень большой объем обучающей выборки. Другой существенный
недостаток заключается в том, что даже натренированная нейронная сеть представляет
собой "черный ящик". Знания, зафиксированные как веса нескольких сотен
межнейронных связей, совершенно не поддаются анализу и интерпретации человеком
(известные попытки дать интерпретацию структуре нейронной сети выглядят
неубедительными - система "KINOsuite-PR").
- Системы рассуждений на основе аналогичных случаев.
Идея систем case based reasoning - CBR - на первый взгляд крайне
проста. Для того чтобы сделать прогноз на будущее или выбрать правильное решение,
эти системы находят в прошлом близкие аналоги наличной ситуации и выбирают тот
же ответ, который был для них правильным.
Главным минусом этих систем считают то, что они вообще не
создают каких-либо моделей или правил, обобщающих предыдущий опыт, - в выборе
решения они основываются на всем массиве доступных исторических данных,
поэтому невозможно сказать на основе каких конкретно факторов CBR-системы строят
свои ответы.
- Деревья решений.
Деревья решений (decision trees) являются одним из наиболее
популярных подходов к решению задач Data Mining. Они создают иерархическую
структуру классифицирующих правил типа "ЕСЛИ... ТО..." (if-then), имеющую вид
дерева. Для принятия решения, к какому классу отнести некоторый объект или
ситуацию, требуется ответить на вопросы, стоящие в узлах этого дерева, начиная с
его корня. Вопросы имеют вид "значение параметра A больше x?". Если
ответ положительный, то осуществляется переход к правому узлу следующего
уровня, если отрицательный - к левому узлу; затем снова следует вопрос, связанный
с соответствующим узлом.
Популярность подхода связана как бы с наглядностью и понятностью.
Но деревья решений принципиально не способны находить "лучшие" (наиболее полные
и точные) правила в данных. Они реализуют наивный принцип
последовательного просмотра признаков и "цепляют" фактически осколки настоящих
закономерностей, создавая лишь иллюзию логического вывода.
- Генетические алгоритмы.
Data Mining не основная область применения генетических алгоритмов.
Их нужно рассматривать скорее как мощное средство решения
разнообразных комбинаторных задач и задач оптимизации. Тем не менее, генетические
алгоритмы вошли сейчас в стандартный инструментарий методов Data Mining.
Первый шаг при построении генетических алгоритмов - это кодировка
исходных логических закономерностей в базе данных, которые именуют хромосомами, а
весь набор таких закономерностей называют популяцией хромосом. Далее для
реализации концепции отбора вводится способ сопоставления различных хромосом.
Популяция обрабатывается с помощью процедур репродукции, изменчивости
(мутации), генетической композиции. Эти процедуры имитируют биологические процессы.
- Алгоритмы ограниченного перебора.
Эти алгоритмы вычисляют частоты комбинаций простых логических событий
в подгруппах данных. Примеры простых логических событий: X=a, Xa, a
|