geum.ru - только лучшие рефераты!

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

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



a сигмоида меняется его внешний вид. Уменьшение параметра приводит к тому, что сигмоид становится более пологим, а в пределе, при a=0, вырождается в горизонтальную линию на уровне 0.5. Увеличение a приближает сигмоид по внешнему виду к функции единичного скачка с порогом в точке x=0 [4].

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

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

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

Рис. 2.2.3 Нейронная сеть с k скрытыми слоями

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

Обучение сети. Обучить нейросеть - значит, подобрать такие веса синаптических связей сети, чтобы на любой выходной вектор значений сеть выдавала адекватный (правильный) выходной вектор.

Обучение сети может производиться одним из двух способов: с учителем и без учителя. При обучении с учителем набирается некоторый объем наблюдений, либо с помощью экспертной оценки создается минимальный задачник (совокупность входных и выходных значений) и на их основе производится обучение нейронной сети по одному из известных алгоритмов обучения, например, Error Back Propagation - алгоритм обратного распространения ошибки [3]. Если такой подход невозможен, то используется обучение без учителя. Настройка весом в этом случае производится либо на основе конкуренции нейронов между собой, либо с учетом корреляции обучающих и выходных сигналов. Примерами алгоритмов обучения без учителя могут служить алгоритм Winner Take All, генетические алгоритмы, обучение по Хеббу.

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

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

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

автоматический проектирование нейронный семантика

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

Каждый индивид в ГА представляет собой решение, закодированное определенным образом (например, в виде бинарной, восьмеричной, десятичной или др. строки) - хромосому. Совокупность таких индивидов в фиксированный момент времени составляет популяцию. Этап эволюционного развития индивидов определяется номером поколения, в котором в данный момент времени находятся индивиды. Индивиды последующей популяции (потомки) получаются путем наследования признаков своих родителей и случайного изменения их генотипа, известного в природе как мутация. Каждый индивид в ГА характеризуется некоторым числом (пригодностью), обозначающим меру его адаптации к окружающей среде [5].

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

Операторы генетического алгоритма. Новые индивиды - решения в ГА создаются с использованием таких генетических операторов, как селекция, рекомбинация и мутация, каждый из которых отвечает за определенный процесс в развитии. Рассмотрим более подробно эти операторы.

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