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

Генетическая топология поиска нейросетевых моделей Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
238
204
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКАЯ ТОПОЛОГИЯ ПОИСКА НЕЙРОСЕТЕВЫХ МОДЕЛЕЙ / GENETIC SEARCH TOPOLOGY OF NEURAL NETWORK MODELS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шумков Евгений Александрович, Чистик Игорь Константинович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

GENETIC SEARCH TOPOLOGY OF NEURAL NETWORK MODELS

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

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

УДК 004.94

UDC 004.94

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

GENETIC SEARCH TOPOLOGY OF NEURAL NETWORK MODELS

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

Shumkov Eugene Alexandrovich Cand.Tech.Sci.

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

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

Университет, Краснодар, Россия

Chistik Igor Konstantinovich

Kuban State Technological University, Krasnodar,

Russia

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

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

Ключевые слова: ГЕНЕТИЧЕСКАЯ ТОПОЛОГИЯ ПОИСКА НЕЙРОСЕТЕВЫХ МОДЕЛЕЙ

Keywords: GENETIC SEARCH TOPOLOGY OF NEURAE NETWORK MODEES

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

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

идет вслед за другим, а в равноправном оба метода используются синхронно.

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

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

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

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

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

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

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

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

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

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

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

Следует отметить, что согласно [6] иногда в связке «генетический алгоритм +

нейронная сеть» применяются очень сложные архитектуры нейронных сетей, в частности АРТ-1 и АРТ-2.

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

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

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

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

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

Если смотреть обобщено на решение задач нейронными сетями, то можно http://ej.kubagro.ru/2013/09/pdf/86.pdf

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

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

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

нейронной сети и нейронов в каждом слое? То есть в случае функции вида .

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

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

временных рядов; БОСЗ - блок оценки сложности задачи; БГП - блок генерации прототипа особи; Стохастического генератора по прототипу; БПНО - блока получения новых особей; БОО - блока оценки особей; БУП - блока управления популяциями; БОН - блока обучения нейросетей; Сектора популяций.

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

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

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

Научный журнал КубГАУ, №93(09), 2013 года модели следующий:

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

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

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

•Шаг 5. Стохастический генератор по прототипу по заложенному алгоритму формирует заданное количество банков особей начальной популяции1;

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

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

Отдельно рассмотрим блок генерации прототипа (см. Рисунок 3). Данный

1 Реализовать стохастический генератор можно различными способами, например [3].

http://ej.kubagro.ru/2013/09/pdf/86.pdf

блок предназначен для первоначального получения особей для банков любой эпохи, но предназначен прежде всего для генерации первоначальных банков особей («нулевая» эпоха).

БРВХ'

БРВЫХ

вшд

вето

БУВО

ВРДОВ

Задатчик СО

ВВ ФА

Вх

Вых

ТО

Сл

СО

ФА

6x1

Вых1

Вх2

ВхЗ

Н2

-+

-+

5РСМ

вгп

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

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

слои; Н1 - Нк - количество нейронов в слоях. То есть в блоке генерации прототипа формируется прототип структуры нейронной сети максимально подходящей для входящей задачи. Структура рассчитывается компонентами на основании данных от баз знаний.

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

Литература:

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://ei.kubagro.ru/2013/07/pdf/78.pdf 1

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

References

1. Bychkov A.V. Nejrosetevoe upravlenie rentabel'nost'ju predprijatija. Diss. kand. tehn. nauk.

Krasnodar: KubGTU. 2001. 156 s.

2. Glushan' V.M. Metod imitacii otzhiga // Izvestija TRTU. Tematicheskij vypusk «Intellektual'nye

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

SAPR». S. 148-150.

3. Markov V.N. Sposob porozhdenija jevristik dlja reshenija NP-trudnyh zadach // Informacionnye

tehnologii. 2006. №5. s. 21-25.

4. Osovskij S. Nejronnye seti dlja obrabotki informacii. / Per. s pol'skogo I.D. Rudinskogo. - М.:

Finansy i statistika, 2002. - 344 s.

5. Panchenko T.V. Geneticheskie algoritmy: uchebno - metodicheskoe posobie / pod. red. Ju.Ju.

Tarasevicha. - Astrahan': Izdatel'skij dom «Astrahanskij universitet». 2007. 87 s.

6. Rutkovskaja D., Pilin'skij М., Rutkovskij Г. Nejronnye seti, geneticheskie algoritmy i nechetkie sistemy: Per. s pol'sk. I.D. Rudinskogo. М.: Gorjachaja linija- Telekom. 2006. 452 s.

7. Hajkin S. Nejronnye seti: polnyj kurs, 2-e izdanie.: Per. s angl. - М.: Izdatel'skij dom «Vil'jams», 2006.- 1104 s.

8. Shumkov E.A., Chistik R.K. // Politematicheskij setevoj jelektronnyj nauchnyj zhurnal KubGAU. №7, 2013. [Rezhim dostupa: http://ej.kubagro.ru/2013/07/pdf/78.pdf]

9. Jarushkina N.G. Osnovy teorii nechetkih i gibridnyh sistem: Ucheb. Posobie. - М.: Finansy i statistika. 2004. 320 s.

i Надоели баннеры? Вы всегда можете отключить рекламу.