Секция
«ПРОГРАММНЫЕ СРЕДСТВА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»
УДК 004.032.26
ОСНОВНЫЕ КОНЦЕПЦИИ НЕЙРОЭВОЛЮЦИОННЫХ АЛГОРИТМОВ
И. Р. Абянов Научный руководитель - М. Н. Фаворская
Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: ildaravgn@gmail.ru
В статье рассмотрены фундаментальные концепции нейроэволюционных алгоритмов и сделаны выводы о их потенциале.
Ключевые слова: искусственные нейронные сети, эволюционные алгоритмы, машинное обучение, нейроэволюция.
BASIC CONCEPTS OF NEUROEVOLUTIONARY ALGORITHMS
I. R. Abyanov Scientific Supervisor - M. N. Favorskaya
ReshetnevSiberian State University of Science and Technology 31, Krasnoyarskii rabochii prospekt, Krasnoyarsk, 660037, Russian Federation
E-mail: ildaravgn@gmail.ru
The article discusses the fundamental concepts of neuroevolutionary algorithms and draws conclusions about their potential.
Keywords: artificial neural networks, evolutionary algorithms, machine learning, neuroevolution.
Нейроэволюция - это метод машинного обучения, который генерирует все более совершенные нейронные сети для задачи, к которой он применяется, с помощью метода оптимизации на основе популяции, который постоянно повышает качество каждой нейронной сети в этой популяции. Каждая особь в этой популяции хранится не в виде сложной нейронной сети, а в виде генома, который представляет собой упрощенное цифровое генетическое представление, которое можно сопоставить с нейронной сетью. Сам процесс нейроэволюции сначала инициализирует набор этих геномов, а затем применяет их к проблемной среде, после чего каждому геному присваивается оценка приспособленности, основанная на том, насколько хорошо нейронная сеть решает прикладную задачу. Основное преимущество нейроэволюционных алгоритмов заключается в том, что область их применения шире, чем у алгоритмов обучения с учителем, которые требуют правильных пар ввода-вывода. Нейроэволюция требует только измерения производительности сети при выполнении задачи [1].
В настоящее время определено большое количество нейроэволюционных алгоритмов. Они делятся на две группы: на алгоритмы, производящие эволюцию весов при установленной топологии сети, и на алгоритмы, также производящие эволюцию самих
Секция «Программные средства и информационные технологии»
топологии сети помимо эволюции весов [2]. Хотя и не существует общепринятых условий для проведения различий, принято, что добавление либо удаление связей в сети в ходе эволюции называется усложнение либо упрощение соответственно. Сети, в которых производится эволюция как связей, так и топологии, называются TWEANNs (Topology & Weight Evolving Artificial Neural Networks).
Большинство искусственных нейронных сетей (далее ИНС) используют градиентный спуск, а не нейроэволюцию. Однако в 2017 году исследователи из Uber заявили, что они обнаружили, что простые алгоритмы структурной нейроэволюции конкурентоспособны со сложными современными стандартными алгоритмами глубокого обучения с градиентным спуском, по причине того, что нейроэволюция с меньшей вероятностью застревает в локальных минимумах [3]. Журналист журнала Science Мэтью Хатсон предположил, что отчасти причина успеха нейроэволюции там, где раньше она терпела неудачу, связана с увеличением вычислительной мощности, доступной в 2010-х годах [4].
После создания начальной популяции запускается цикл оптимизации, и популяция постоянно мутирует, рекомбинируется, оценивается и естественным образом отбирается. Этот бесконечный цикл внедрения инноваций, их оценки и последующей категоризации представляет собой процесс оптимизации, который в конечном итоге приведет к созданию нейронной сети, которая очень хорошо решает прикладную задачу, и которую вряд ли было бы возможно создать вручную.
Способность, которая сопоставляет геномы с соответствующими им нейронными сетями, отвечает за гранулярность пространства поиска, ограничивая сложность кодирования генома. Поэтому эта способность называется генетическим кодированием. Генетическое кодирование обычно можно разделить на две подкатегории: прямое кодирование и косвенное кодирование.
В случае прямого кодирования каждый параметр ИНС явно кодируется в его генетическом представлении. Кодируется каждое соединение и соответствующий ему вес непосредственно в генотипе, но ограничивается пространство поиска, исключая возможность смещения и функций активации в результирующей ИНС. Такое кодирование может представлять произвольные топологии с прямой и рекуррентной связью, допуская, возможно, идеально подходящие и в то же время минимально подходящие топологии. Однако такая высокая степень гибкости топологии приводит к огромному пространству поиска с высокой степенью детализации.
Косвенное кодирование предусматривает пользовательское кодирование, которое часто не может быть явно переведено в ИНС, и требует отдельной способности перевода, которая также обеспечивается косвенным кодированием, чтобы сопоставить генотип с нейронной сетью. Хорошо спроектированный алгоритм непрямого кодирования позволяет производить более быстрое перемещение по пространству поиска даже простыми мутациями.
Метод воспроизведения особей популяции обычно сводится к созданию новых геномов путем мутации или рекомбинации геномов, которые считаются подходящими для использования в качестве родителей для следующего поколения. Мутация позволяет геномам потомков исследовать жизнеспособность новых архитектур ИНС, распределения веса и гиперпараметров. Рекомбинация геномов представляет собой процесс слияния двух подходящих высоко оценённых геномов и их отличительных особенностей и распространения полезных черт среди остальной части популяции.
Метод оценки особи представляет собой процесс сопоставления генома с нейронной сетью в соответствии с его генетическим кодированием, применение его к проблемной среде и последующее вычисление значения пригодности в зависимости от того, насколько хорошо ИНС справляется с поставленной задачей.
Распространенным методом определения значения пригодности является установка его равным точности выполнения задачи. Также стоит отметить способ оценки методом поиска
Актуальные проблемы авиации и космонавтики - 2022. Том 2
новизны. В данной концепции геномы с новыми подходами к проблеме получают более высокие значения пригодности [5].
Метод, с помощью которого выбираются геномы в качестве родителей для потомства, также сильно зависит от типа используемого алгоритма нейроэволюции. В нейроэволюции поколений выбор геномов, подходящих в качестве родителей для следующего поколения, обычно сводится к выбору оговоренной доли наиболее эффективных геномов в текущем поколении. Типовой конфигурацией алгоритма нейроэволюции может быть использование 20% от геномов с лучшей оценкой в качестве родителей и удаление 90% худших геномов для замещения их особями следующего поколения.
Нейроэволюция очень широкий подход к оптимизации искусственных нейронных сетей для лучшей работы в проблемной среде. Это универсальный инструмент, который не ограничивается одним аспектом машинного обучения и может применяться для улучшения методов компьютерного зрения, обработки естественного языка или агентных сред, поскольку его универсальность и пространство поиска ограничены только выразительностью его генетического кодирования. Аспектов, которые необходимо учитывать и комбинировать при создании алгоритма нейроэволюции, множество, но в первую очередь их необходимо определить посредством точного анализа проблемы и ее конкретных характеристик, чтобы они их применение было выражено наиболее эффективно [6].
Подобно естественному отбору в природе, который управляется только обратной связью от репродуктивного успеха, нейроэволюция управляется некоторой мерой общей производительности [7]. Принимая во внимание, что наиболее распространенные алгоритмы обучения ИНС работают посредством контролируемого обучения и, следовательно, зависят от заранее размеченных пар входа-выхода, главное преимущество нейроэволюции заключается в том, что она позволяет ИНС учиться даже тогда, когда такие пары отсутствуют, основываясь только на скудной обратной связи.
Процесс создания топологии и конфигурации ИНС не является тривиальной задачей. Плохо или неправильно настроенные сети могут привести к ошибке или неэффективности ИНС для решения поставленных задач. Поиск подходящих под определенные задачи топологий часто является очень утомительным и подверженным ошибкам процессом. Следовательно, у нейроэволюции есть большой потенциал, чтобы стать стандартным инструментом каждого разработчика и исследователя. Облачное оборудование, оптимизированное для искусственного интеллекта становится все более доступным, улучается его соотношение цены и производительности, что способствует увеличению потенциала данной концепции.
Библиографические ссылки
1. Себастьян Ризи, Чарльз Хьюз, Кеннет Стэнли. «Neuroevolution in Games: State of the Art and Open Challenges»- Университет Центральной Флориды, США, 2010.
2.Свободная энциклопедия Wikipedia -Wikipedia [сайт] - URL: https://ru.wikipedia.org/ (дата обращения 28.03.2022).
3. Welcoming the Era of Deep Neuroevolution - Uber.com [сайт] - URL: https://eng.uber.com/deep-neuroevolution/ (дата обращения 28.03.2022).
4. «Artificial intelligence can 'evolve' to solve problems» -Science.org [сайт] - URL: https://www.science.org (дата обращения 29.03.2022).
5. Себастьян Ризи, Чарльз Хьюз, Кеннет Стэнли. «Evolving plastic neural networks with novelty search» - Университет Центральной Флориды, США, 2010.
6. «A Primer on the Fundamental Concepts of Neuroevolution» - Medium.com [сайт] - URL: https://towardsdatascience.com (дата обращения31.03.2022).
7. «Neuroevolution» - Scholarpedia.org [сайт] - URL:http://www.scholarpedia.org
© Абянов И. Р.,2022