Генетическая топология поиска нейросетевых моделей

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 12.05.2017
Размер файла 89,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Кубанский Государственный Технологический Университет

ГЕНЕТИЧЕСКАЯ ТОПОЛОГИЯ ПОИСКА НЕЙРОСЕТЕВЫХ МОДЕЛЕЙ

Шумков Евгений Александрович, к.т.н.

Чистик Игорь Константинович

г. Краснодар, Россия

Аннотация

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

Ключевые слова: генетическая топология поиска нейросетевых моделей

In the article we consider the topology of genetic search of neural network models

Keywords: genetic search topology of neural network models

Обучение нейронных сетей сложная задача по ряду причин. Нередко процесс поиска адекватной нейросетевой модели заканчивается с нулевым результатом и очень большую роль играет опыт разработчика нейросетевых моделей. Для получения нейросетевой модели решающей задачу с заданным показателем качества обычно необходимо пройти следующие шаги: вначале необходимо подготовить данные, определиться с типом сети, определить входы и выходы, решить задачу о первоначальной структуре сети - слои и нейроны в них, далее необходимо обучить сеть, то есть подобрать коэффициенты связей между нейронами, проверить обученную сеть на валидационной выборке и в итоге проверить в реальной работе. При этом все шаги тесно связаны между собой и некачественная проработка по одному из них ведет, в конечном счете, к длительному обучению сети или вообще к получению неправильно работающей нейросети. Существует большое количество методов и алгоритмов предварительной подготовки данных, расчета структуры сети и модифицированных методов обучения, но все они в значительной мере опираются на опыт разработчика. Одним из наиболее универсальных способов автоматического получения нейросетевых моделей является использование генетических алгоритмов [5, 6, 9].

Согласно COGANN (Combinations of Genetic Algorithms and Neural Networks), объединение нейронных сетей и генетических алгоритмов может быть, как вспомогательным, так и равноправным. Во вспомогательном подходе один метод идет вслед за другим, а в равноправном оба метода используются синхронно.

В качестве вспомогательной парадигмы выделяют следующие виды объединения:

· генетические и нейросетевые алгоритмы применяются одновременно для одной задачи (например, для задач классификации);

· анализ нейронных сетей с помощью генетических алгоритмов;

· подбор параметров нейронных сетей с помощью генетических алгоритмов;

· подбор правил обучения нейронных сетей с помощью генетических алгоритмов;

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

В случае равноправного объединения выделяют следующие виды совместного использования генетических алгоритмов и нейронных сетей:

· генетические алгоритмы для обучения нейронных сетей (эволюционное обучение нейронной сети);

· выбор топологии нейронной сети с помощью генетического алгоритма (эволюционный подбор топологии сети);

· нейронные сети для решения оптимизационных задач с подбором весов через генетический алгоритм;

· реализация генетического алгоритма с помощью нейронной сети.

Следует отметить, что согласно [6] иногда в связке "генетический алгоритм + нейронная сеть" применяются очень сложные архитектуры нейронных сетей, в частности АРТ-1 и АРТ-2.

Согласно [8] управляемыми параметрами в генетических алгоритмах являются: длина хромосомы; наполнение хромосомы (локусы и аллели); параметры оператора кроссовера; параметры оператора мутации; параметры оператора инверсии; параметры выбора лучших особей; критерий остановки генерации особей и популяции; параметры генерации начальной и последующих популяций и т.д.

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

Для решения задачи поиска нейросетевой модели с помощью разработанной топологии будем придерживаться следующей последовательности действий (Рисунок 1). Первым шагом необходимо проанализировать входные примеры поступившей задачи, то есть определить обучающую выборку. Здесь часть работы берет на себя постановщик задачи, который минимум должен указать, что будет выходами в случае обучения с учителем. В случае обучения без учителя определение количества выходных классов берет на себя предлагаемая топология. Далее необходимо оценить сложность задачи с точки зрения решения ее с помощью нейронных сетей, то есть оценить примерное количество скрытых слоев и нейронов в них, а также выбрать архитектуру нейронной сети и метод ее обучения (или набор архитектур и методов обучения). После предварительного оценивания сложности задачи работает конструктор нейросетей, который и формирует один или несколько прототипов нейронных сетей. И последним шагом, самым длительным по временным затратам, является собственно сам генетический поиск адекватной нейросетевой модели.

Рисунок 1. Последовательность решения задачи

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

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

Введем также понятие дочерней и базовой хромосомы. Базовая хромосома - это хромосома несущая основную (базовую) информацию об объекте описания. Дочерняя - это составная часть базовой особи, ее ответвление. Дочерних хромосом может быть несколько. Дочерние хромосомы вводятся в связи с тем, что в ряде задач решаемых с помощью генетических алгоритмов, в обычной хромосоме трудно и зачастую невозможно ряд параметров переменной длины разместить в одной хромосоме. Обычно поступают следующим образом - под параметры переменной длины либо резервируют часть генов, либо такие параметры размещают в конце хромосомы. Но допустим, как поступить с варьируемым количеством слоев в нейронной сети и нейронов в каждом слое? То есть в случае функции вида . Поэтому в данной работе мы предлагаем делать ответвления от базовой хромосомы. Но суть и принцип работы генетического алгоритма остается прежним, за небольшими исключениями в обработке генов [8].

Рассмотрим общую структуру разработанной топологии применения генетических алгоритмов для обучения нейронных сетей. Структура разработанной топологии представлена на Рисунке 2. Топология состоит из следующих компонент (укрупнено): БЗПЗН - базы знаний о предыдущих запусках нейронных сетей; БЗНС - базы знаний по нейронным сетям; БЗГА - базы знаний по генетическим алгоритмам; БЗВР - базы знаний по временным рядам; БАВР - блок анализа временных рядов; БОСЗ - блок оценки сложности задачи; БГП - блок генерации прототипа особи; Стохастического генератора по прототипу; БПНО - блока получения новых особей; БОО - блока оценки особей; БУП - блока управления популяциями; БОН - блока обучения нейросетей; Сектора популяций.

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

Рисунок 2. Генетическая топология поиска нейросетевой модели

Общий алгоритм работы топологии генетического поиска нейросетевой модели следующий:

· Шаг 1. На вход топологии поступает задача, с полным или частичным указанием входов, выходов, целевой функции. В общем случае поступают временные ряды входов и выходов;

· Шаг 2. Временные ряды и заданные параметры анализируются блоком оценки сложности задачи и блоком анализа временных рядов;

· Шаг 3. На основе данных о временных рядах задачи, а также сложности задачи, блок генерации прототипов, используя данные БЗНС и БЗПЗН формирует прототипы особей нейронных сетей;

· Шаг 4. На основе информации о сложности задачи БЗГА подает данные на стохастический генератор по прототипу по количеству банков особей и особей в них;

· Шаг 5. Стохастический генератор по прототипу по заложенному алгоритму формирует заданное количество банков особей начальной популяции Реализовать стохастический генератор можно различными способами, например [3].;

· Шаг 6. После окончания формирования начальной популяции управление передается блоку управления популяциями, который находясь в рамках заданных ограничений (от разработчика и БЗГА) используя блок получения новых особей и блок оценки особей, формирует новые особи, новые банки особей и новые популяции (см. подробнее п.2.). Новые особи, банки особей и популяции формируются либо до предельных значений ограничений выставленных пользователем или БЗГА, либо по достижению целевого критерия задачи;

Информация обо всех необходимых параметрах на вышеуказанных шагах записывается в базы знаний.

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

Рисунок 3. Блок генерации прототипа

На рисунке введены следующие обозначения: БРВХ - Блок расчета входов; БРВЫХ - блок расчета выходов; БВТО - блок выбора типа обучения; СО - скорость обучения; БШД - блок шкалирования данных; БВ ФА - блок выбора функции активации; БРДОВ - блок расчета длины обучающей выборки; БРСН - блок расчета слоев и нейронов; БУВО - блок установки вида ошибки; Вх - входы; ВХ 1 - ВХn - нумерация входов; Вых 1 - ВыхZ - нумерация выходов; ТО - тип обучения; Сл - слои; Н 1 - НK - количество нейронов в слоях. То есть в блоке генерации прототипа формируется прототип структуры нейронной сети максимально подходящей для входящей задачи. Структура рассчитывается компонентами на основании данных от баз знаний.

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

Литература

1. Бычков А.В. Нейросетевое управление рентабельностью предприятия. Дисс. канд. техн. наук. Краснодар: КубГТУ. 2001. 156 с.

2. Глушань В.М. Метод имитации отжига // Известия ТРТУ. Тематический выпуск "Интеллектуальные САПР". С. 148-150.

3. Марков В.Н. Способ порождения эвристик для решения NP-трудных задач // Информационные технологии. 2006. №5. с. 21-25.

4. Осовский С. Нейронные сети для обработки информации. / Пер. с польского И.Д. Рудинского. - М.: Финансы и статистика, 2002. - 344 с.

5. Панченко Т.В. Генетические алгоритмы: учебно - методическое пособие / под. ред. Ю.Ю. Тарасевича. - Астрахань: Издательский дом "Астраханский университет". 2007. 87 с.

6. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польск. И.Д. Рудинского. М.: Горячая линия - Телеком. 2006. 452 с.

7. Хайкин С. Нейронные сети: полный курс, 2-е издание.: Пер. с англ. - М.: Издательский дом "Вильямс", 2006. - 1104 с.

8. Шумков Е.А., Чистик Р.К. // Политематический сетевой электронный научный журнал КубГАУ. №7, 2013. [Режим доступа: http://ej.kubagro.ru/2013/07/pdf/78.pdf]

9. Ярушкина Н.Г. Основы теории нечетких и гибридных систем: Учеб. Пособие. - М.: Финансы и статистика. 2004. 320 с.

Размещено на Allbest.ru


Подобные документы

  • Диагностический анализ изучения алгоритмов обучения нейронных сетей "с учителем". Сбор входных и выходных переменных для наблюдений и понятие пре/пост процессирования. Подготовка и обобщение многослойного персептрона, модель обратного распространения.

    курсовая работа [249,3 K], добавлен 22.06.2011

  • История появления эволюционных алгоритмов. Нейрокомпьютерные исследования в России. Реализация генетических алгоритмов. Расчет эффективности процедур поиска конкурирующей процедуры. Schema и теорема шим. Примеры использования нейросетевых технологий.

    курсовая работа [43,0 K], добавлен 20.10.2008

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

    реферат [347,6 K], добавлен 17.12.2011

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

    курсовая работа [1,3 M], добавлен 26.03.2016

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

    презентация [150,8 K], добавлен 19.08.2013

  • Методы реализации алгоритмов сортировки и алгоритмов поиска на языках программирования высокого уровня. Программирование алгоритмов сортировки и поиска в рамках создаваемого программного средства на языке Delphi. Создание руководства пользователя.

    курсовая работа [1,7 M], добавлен 16.04.2012

  • Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.

    дипломная работа [1,8 M], добавлен 08.02.2017

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

    курсовая работа [527,2 K], добавлен 28.05.2009

  • Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.

    контрольная работа [135,5 K], добавлен 30.11.2015

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

    курсовая работа [27,9 K], добавлен 23.07.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.