Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пример 4.34




Программа СТО

Программа GTO (Genetic Training Option - Режим Генетическо­го Обучения) взаимодействует с программой BrainMaker. В ней реа­лизован эволюционный алгоритм с соответственно определенными операторами мутации и скрещивания. Мутация изменяет значения весов избранного нейрона, а скрещивание заключается в обмене ве­сов избранных нейронов у пары родителей. Например, для нейрон­ной сети, изображенной на рис. 4.2, можно получить потомка, имею­щего веса первого нейрона, унаследованные от первого родителя, и веса второго и третьего нейронов - от второго родителя. Выражен­ные в процентах показатели мутации (mutation rate) и скрещивания (crossover rate) определяют количество нейронов, подвергающихся мутации или скрещиванию. Пользователь также может ввести значе­ния дополнительных параметров скрещивания и мутации. Они отно­сятся к так называемому полному скрещиванию либо к определен­ным функциям распределения показателей скрещивания и/или мута­ции [51].

Применить программу СТО для нейронной сети, реализующей логическую систему XOR (рис. 4.2) с начальными значениями весов, представленными на рис. 4.166, которая после обучения программой BrainMaker с толерантностью погрешности, равной 0,1 (пример 4.33) имеет веса, представленные на рис. 4.175.

Все параметры программы СТО имели значения, установлен­ные по умолчанию. В частности, предусматривалось обучение каж­дой сети программой BrainMaker в течение 100 прогонов (runs) и сме­на 30 поколений. Для оценки приспособленности сети использова­лись результаты как обучения, и тестирования уже обученной сети. Показатели мутации и скрещивания были равны соответственно 10 и 50. Это означает, что 50% всех нейронов сети подвергалось скрещи­ванию, а 10% - мутации. Также принималось, что все скрещиваемые нейроны подвергаются полному скрещиванию, т.е. потомок наследует все веса нейрона от второго родителя. Помимо того, все подлежащие мутации нейроны мутировали в соответствии с распределением Гаус­са с показателем 0,25. Это означает, что к весу добавлялась некото­рая величина, выбиравшаяся по распределению Гаусса. В качестве критерия оценивания потомков применялся тах{1 - RMS}, где RMS (также, как и в примере 4.31) означал погрешность, рассчитанную как квалратный корень из суммы квадратов разностей между заданным


(эталонным) и выходным значением, деленный на количество этало­нов. В результате выполнения программы СТО при ее взаимодейст­вии с программой BrainMaker рассчитаны значения указанной выше погрешности для конкретных сетей, упорядоченные в порядке их уменьшения, т.е. от «наилучшей» сети к «наихудшей» (рис. 4.185).

Наилучшей из 30 сформированных программой GTO нейрон­ных сетей со структурой, показанной на рис. 4.2, оказалась сеть, для которой значение max{1 - RMS} было равно 0,9139. Значения весов этой сети представлены на рис. 4.186, а результаты ее тестирования програм мой BrainMaker - на рис. 4.187 - 4.190. Заметим, что значе­ние погрешности Q, рассчитываемой программой Evolver, для сети с весами, показанными на рис. 4.186, равно 0,007451. Эта погреш­ность меньше значения Q, рассчитанного для сети из примера 4.33 (веса см. на рис. 4.175). Конечно, новая сеть ненамного лучше сети из примера 4.33. Теперь следует вновь применить программу BrainMaker для проверки - можно ли улучшить характеристики сети, полученной в результате выполнения программы СТО. Очевидно, что попытка дообучения этой сети с толерантностью погрешности 0,1 ни­чего не изменит. Однако при задании уровня толерантности 0,025 мы получаем процесс, показанный на рис. 4.191 и значения весов, пред­ставленные на рис. 4.192. Выходное значение у для щ = 1 и и2 = 0 так­же приведено на рис. 4.191.

Пример 4.34 иллюстрирует следующее объединение традици­онного (градиентного) алгоритма обучения, реализованного в про­грамме BrainMaker, с генетическим алгоритмом программы GTO:

1) обучение нейронной сети программой BrainMaker;

2) применение программы GTO к сети, обученной в п.1;

3) продолжение обучения наилучшей сети, полученной в п.2,
программой BrainMaker;

Следует отметить, что п.2 предполагает использование как ге­нетического алгоритма программы GTO, так и соответствующей про­цедуры программы BrainMaker, вызываемой программой GTO

Можно предложить и другой подход:

1) использование программы BrainMaker только для форми­
рования сети со значениями весов, выбираемыми случайным обра­
зом:

2) применение программы GTO для поиска наилучших весов;

3) применение программы BrainMaker для завершения обуче­
ния

Второй подход основан на обработке программой GTO сети со случайными значениями весов. При отключении опции обучения каж­дой вновь формируемой сети программой BrainMaker программа GTO вызывает ее только для тестирования сети. В последующем наилучшая из созданных таким образом сетей «дообучается» про­граммой BrainMaker (п. 3). Такая методика подобна применявшейся в примерах 4.31 и 4.32 - вначале выполняется генетический, а затем - традиционный алгоритм обучения. В программе GTO дополнитель­но возможно обучение каждой вновь сформированной сети (потомка) за определенное количество прогонов с последующим ее тестирова-


Глава 4 Генетические алгорит


4 73. Эволюционные алгоритмы для обучения нейронных сетей


lertions Display An




Поделиться с друзьями:


Дата добавления: 2015-06-04; Просмотров: 296; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.