УДК 519.87
О НАСТРОЙКЕ НЕЙРОННОЙ СЕТИ САМОКОНФИГУРИРУЕМЫМ ГЕНЕТИЧЕСКИМ АЛГОРИТМОМ
Я. С. Полонская
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-mail: [email protected]
Рассматривается применение генетического алгоритма для настройки весовых коэффициентов нейронной сети, с целью обеспечения ее оптимальной работы на тестовых задачах. Для улучшения результата, ГА используется в комбинации с методом сопряженных градиентов.
Ключевые слова: нейронная сеть, оптимизация весовых коэффициентов, генетический алгоритм, самонастройка.
ON THE ARTIFICIAL NEURAL NETWORK TUNING WITH SELF-CONFIGURING
GENETIC ALGORITHM
Y. S. Polonskaya
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: yanapolonskaya1413@y andex.ru
The paper considers the application of the genetic algorithm with self-configuration to adjust the weighting coefficients of the artificial neural network. To improve the result, the genetic algorithm is used jointly with the conjugate gradient method.
Keywords: artificial neural network, weight coefficients adjustment, genetic algorithm, self-configuration.
Искусственные нейронные сети (ИНС) являются мощным инструментов анализа данных, в то время как генетические алгоритмы (ГА) известны как робастные методы оптимизации, благодаря способности к адаптации. Их совместное использование позволяет объединить адаптивные способности ГА с аналитическими возможностями ИНС. Настоящая работа посвящена исследованию эффективности настройки весов искусственной нейронной сети с помощью само-конфигурирумого генетического алгоритма [1]. Такой подход позволяет автоматически получать эффективные на практике нейроэволюционные модели [2; 3].
ГА является средством глобальной оптимизации, позволяющим вести глобальный поиск в пространстве параметров. Генетический алгоритм осуществляет одновременный поиск по многим направлениям путем использования популяции возможных решений. Переход от одной популяции к другой позволяет избежать попадания в локальный оптимум, что характерно для локальных алгоритмов, в том числе наиболее распространенного при настройке весовых коэффициентов метода обратного распространения ошибки. ГА может за несколько итераций попасть в зону притяжения локального оптимума, но далее медленно идет к оптимуму. Поэтому после окончания работы ГА для уточнения решений предпочтительно использовать алгоритм, который базируется на локальной информации. Чаще всего для этой задачи используются градиентные методы.
Использование ГА для формирования начальных весов нейронной сети, которые далее могут быть улучшены любым методом локального поиска, помогает значительно улучшить качество проектируемой модели.
Актуальные проблемы авиации и космонавтики - 2017. Том 2
Рассматриваемая в данной работе нейронная сеть имеет послойную структуру с прямой передачей сигнала. Такая структура демонстрирует устойчивое поведение. Для каждого нейрона используется выбранная случайным образом активационная функция. Использованные актива-ционные функции приведены в табл. 1.
Таблица 1
Типы активационных функций используемых в работе
Функция № 1 Функция № 2 Функция № 3 Функция № 4 Функция № 5
/ (х) = X2 / (х) = Ч X) f (x) = exp Г-x2 ^ f (x) = 1 - exp f- x2 ' / ( г) = 1
1 2 V l 2 V 1 + ехр(-X)
Функция № 6 Функция № 7 Функция № 8 Функция № 9 Функция № 10
/ (X) = 5Ш( X) / (X) = ехр( X) / (X) = IX f (x) = ■ -1, x <-1, x,-1 < x < 1, 1, x > 1 / (X) = X)
Функция № 11 Функция № 12 Функция № 13 Функция № 14
/ ( X) =-2--1 1 + ехр(х) / (X) = X3 / (X) = - X f (x) = ■ 0,x <-0.5, x + 0,5,-0.5 < x < 0.5, 1, x > 0.5
Для настройки нейронной сети необходимо минимизировать функцию ошибки моделирования нейронной сети.
Для проведения численных исследований был сформирован репрезентативный набор тестовых задач, приведенный в табл. 2. Она содержит также значения ошибок, получившихся на каждой из тестовых задач (усреднено по многократным прогонам), и количество скрытых слоев нейронной сети для каждой задачи. Ошибки приведены для оптимизации весовых коэффициентов нейросети стандартным ГА с наилучшими настройками, определенными ранее [4], и для оптимизации самоконфигурируемым ГА (СГА), тестирование которого также проведено раннее [5]. В данной работе, каждый из скрытых слоев нейронной сети содержал 4 нейрона.
Таблица 2
Результаты теста
Моделируемая функция Диапазон входных переменных Объем выборки Кол-во скрытых слоев Ошибка моделирования
СГА ГА
Обучение Тест Обучение Тест
У = x2 X е [-1;1] 100 1 0.00006 0.0001 0.00008 0.00011
У = sin( x) X е [-4;3] 200 1 0.0086 0.0087 0.0265 0.0349
y = x2sin( x^ +xl sin(x2) X е [-4;3] 200 2 0.0076 0.0086 0.0160 0.0225
y=7 X е [1; 20] 200 2 0.0279 0.0287 0.0449 0.0416
/ 2 2 SinJ x + x2 y = /т-т yjx + x2 X е [-4л; 4л] 1000 2 0.0124 0.0099 0.0158 0.0179
sin x X е [-4;3] 200 1 0.0063 0.0072 0.0118 0.0099
y x
Из проведенных исследований можно сделать выводы, что использование ГА для оптимизации весовых коэффициентов является эффективным подходом. Применение СГА не ухудшает (а иногда улучшает) точность моделирования по сравнению с наилучшими настройками стандартного ГА. При этом отсутствует необходимость в значительных вычислительных затратах на установление этих наиболее эффективных настроек.
Далее, планируется объединить задачу подбора весовых коэффициентов ИНС с задачей выбора структуры нейросети. Таким образом, предполагается для решения той или иной задачи при помощи нейронных сетей сначала автоматически выбирать ее структуру при помощи самоконфигурируемого ГА (количество скрытых слоев, количество нейронов на каждом слое, тип активационной функции на каждом нейроне), а затем для полученной сети настраивать весовые коэффициенты связей нейронов. Данный метод позволит автоматически генерировать нейросе-тевые модели при решении сложных практических задач [6; 7].
Библиографические ссылки
1. Semenkin E., Semenkina M. Self-configuring genetic algorithm with modified uniform crossover operator // Lecture Notes in Computer Science. 2012. Т. 7331 LNCS. № PART 1. С. 414421.
2. Khritonenko D. I., Semenkin E. S. Distributed self-configuring evolutionary algorithms for artificial neural networks design // Вестник СибГАУ. 2013. № 4 (50). С. 112-116.
3. Brester Ch. Yu., Semenkin E. S. Development of adaptive genetic algorithms for neural network models multicriteria design // Вестник СибГАУ. 2013. № 4 (50). С. 99-103.
4. Полонская Я. С. О выборе эффективных настроек генетического алгоритма оптимизации параметров классификаторов в задаче распознавания типа радарных сигналов, возвращаемых от ионосферы, с наличием помех // Актуальные проблемы авиации и космонавтики. Красноярск, 2016. Т. 1. С. 555-557.
5. Полонская Я. С. Исследование эффективности самоконфигурируемого генетического алгоритма // Научно-технический прогресс: актуальные и перспективные направления будущего. Кемерово, 2016. Т. 2. С. 84-86.
6. Семенкин Е. С., Медведев А. В., Ворожейкин А. Ю. Модели и алгоритмы для поддержки принятия решений инвестиционного аналитика // Вестник Томск. гос. ун-та. 2006. № 293. С. 63-70.
7. Решение задачи прогнозирования экологического состояния города нейроэволюцион-ными алгоритмами / Д. И. Хритоненко, Е. С. Семенкин, Е. В. Сугак и др. // Вестник СибГАУ. 2015. Т. 16. № 1. С. 137-142.
© Полонская Я. С., 2017