Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лекции ННТЗУ / Лекция_9_ГА_4

.pdf
Скачиваний:
4
Добавлен:
30.11.2022
Размер:
593.33 Кб
Скачать

Эволюция весов связей

Эволюционный подход к обучению нейронных сетей состоит из двух основных этапов.

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

На втором этапе уже осуществляется сам процесс эволюции, основанный на генетическом алгоритме.

Эволюция весов связей

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

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

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

образом.

3) Репродукция особей с вероятностью, соответствующей их приспособленности, либо согласно их рангу (в зависимости от способа селекции - например, по методу рулетки или ранговому методу).

4) Применение генетических операторов - таких как скрещивание, мутация и/или инверсия для получения нового поколения.

Эволюция весов связей

Эволюция архитектуры сети

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

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

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

Схема непосредственного кодирования

Каждая связь нейронной сети непосредственно задается его двоичным представлением

Матрица С размерностью n x n может представлять связи нейронной

сети, состоящей из п узлов (нейронов), причем значение cij определяет наличие или отсутствие связи между i-м и j-м нейронами. Если cij = 1, то связь существует, если cij = 0, то связь отсутствует. При таком подходе двоичная последовательность (хромосома), представляющая связи нейронной сети, имеет вид комбинации строк (или столбцов) матрицы С.

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

Схема непосредственного кодирования

Схема непосредственного кодирования

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

В этом случае хромосома для ИНС, представленной на предыдущем слайде, будет иметь вид 0110110011

Схема непосредственного кодирования может одновременно примяться для определения как связей, так и их весов. Этот способ кодирования применяется, главным образом, для небольших нейронных сетей

Эволюция архитектуры сети

Второй этап эволюционного проектирования архитектуры нейронной сети состоит (в соответствии с типовым циклом эволюции) из следующих шагов:

1) Декодирование каждой особи текущей популяции для описания архитектуры нейронной сети.

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

Эволюция архитектуры сети

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

4) Репродукция особей с вероятностью, соответствующей их приспособленности или рангу в зависимости от используемого метода селекции.

5) Формирование нового поколения в результате применения таких генетических операторов, как скрещивание, мутация и/или инверсия.

Эволюция архитектуры сети

Соседние файлы в папке лекции ННТЗУ