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

кандидата технических наук
Чистик, Игорь Константинович
город
Краснодар
год
2013
специальность ВАК РФ
05.13.01
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Топология поиска нейросетевой модели с помощью генетических алгоритмов»

Автореферат диссертации по теме "Топология поиска нейросетевой модели с помощью генетических алгоритмов"

На правах рукописи

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

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

7

Специальность 05.13.01 — «Системный анализ, управление и обработка информации (информационные и технические системы)»

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

28 НОЯ Ш

Краснодар - 2013

005540723

005540723

Работа выполнена в ФГБОУ ВПО «Кубанский государственный технологический университет»

Научный руководитель: кандидат технических наук

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

Официальные оппоненты: доктор технических наук, профессор

Сныткнн Иван Илларионович, с.н.с. 1ТИО Военной академии связи имени Маршала Советского Союза С.М. Буденного (филиал г. Краснодар)

кандидат технических наук, доцент Гсршунина Наталья Николаевна, ФГБОУ ВПО «Кубанский государственный технологический университет», доцент кафедры начертательной геометрии и компьютерной графики

Ведущая организация: ФГ БОУ ВПО «Кубанский государственный

аграрный университет»

Защита диссертации состоится «23» декабря 2013 г. в 1400 часов на заседании диссертационного совета Д 212.100.04 в ФГБОУ ВПО «Кубанский государственный технологический университет» по адресу: 350072, г. Краснодар, ул. Московская 2, корпус Г, аудитория Г-248

С диссертацией можно ознакомиться в библиотеке ФГБОУ ВПО «Кубанский государственный технологический университет»

Автореферат разослан «22» ноября 2013 г.

Ученый секретарь

диссертационного совета Д 212.100.04 канд. техн. наук, доцент

Власенко А.В.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

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

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

Задачи исследования:

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

— проанализировать методы совместного использования генетических алгоритмов и нейронных сетей, выявить сильные и слабые стороны взаимодействия;

— разработать топологию и алгоритм генетического поиска адекватной нейросетевой модели;

— программно реализовать разработанную топологию в составе моделирующего комплекса;

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

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

— оценить эффективность предложенной топологии генетического поиска нейросетевых моделей.

Научная новизна:

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

— предложены варианты разработанной топологии;

а) для поиска структуры нейронной сети;

б) для поиска коэффициентов связей нейронной сети;

в) с параллельным генетическим поиском;

- введено понятие прототипа особи;

- разработана топология генетического поиска нейросетевых моделей для прогнозирования котировок финансовых инструментов.

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

Апробация работы. Основные положения работы апробированы на восьмой международной научно-практической конференции «Исследование, разработка и применение высоких технологий в промышленности» (г. Санкт-Петербург, 2009), Международной научно-технической конференции «Современные информационные технологии» (г. Пенза, 2009), XXX, XXXI Международных научно - технических конференциях «Математические методы и информационные технологии в экономике, социологии и образовании» (г. Пенза, 2013).

Реализация научно-технических результатов работы в промышленности. Разработанное программное обеспечение внедрено в «ВТБ 24 (ЗАО)» (филиал г.Краснодар), «Смена», ООО, производственно-строительная компания, г. Анапа.

Публикации. По теме диссертации опубликовано 5 работ, из них 1 статья и 4 тезисов (в том числе 1 статья в изданиях, рекомендованных ВАК при Минобрнауки России).

Основные положения, выносимые на защиту:

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

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

- варианты разработанной топологии для поиска структуры нейронной сети и коэффициентов связей;

- понятие прототипа особи в генетических алгоритмах;

- применение разработанной топологии для работы на финансовых рынках;

- результаты сравнительного анализа разработанной топологии.

Структура и объем работы. Диссертационная работа состоит из

введения, четырех глав, заключения, списка использованных источников из 101 наименования и 1 приложения на 2 страницах. Объем основного текста составляет 130 страниц машинописного текста, в том числе 23 рисунка и 25 таблиц.

КРАТКОЕ СОДЕРЖАНИЕ ДИССЕРТАЦИИ

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

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

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

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

В заключении главы сформулированы цели и задачи исследования.

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

• БЗПЗН - базы знаний о предыдущих запусках нейронных сетей;

• БЗНС - базы знаний по нейронным сетям;

• БЗГА - базы знаний по генетическим алгоритмам;

• БЗВР - базы знаний по временным рядам;

• БАВР - блока анализа временных рядов;

• БОСЗ - блока оценки сложности задачи;

• БГП - блока генерации прототипа особи;

• Стохастического генератора особей;

• БГ1НО - блока получения новых особей;

• БОО - блока оценки особей;

• БУП - блока управления популяциями;

• БОН - блока обучения нейросетей;

• Сектора популяций.

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

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

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

БЗВР является вспомогательной базой знаний и ее основная задача -предоставить формулы для расчета различных показателей временных рядов.

База знаний о предыдущих запусках поиска нейронных сетей состоит из двух крупных блоков:

• блока знаний о временных рядах, которым обучались нейронные сети (в привязке к соответствующему блоку БЗНС и БЗГП);

• блока знаний о результатах поиска нейронных сетей для различных задач (аналогичная привязка).

БЗГА укрупнено состоит из следующих блоков: «Параметры и формулы оценки особей», «Расчет максимального времени поиска особей в банках особей», «Расчета количества шагов эволюции», «Правила генерации новых особей», «Правила отбора особей в следующую эпоху».

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

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

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

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

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

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

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

Рисунок 2 - Последовательность работы баз знаний

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

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

БГП

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

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

Данная топология нивелирует недостатки совместного использования генетических алгоритмов и нейронных сетей: ограничения по операции «кроссовер» для особей разной структуры и отдельное вынесение процесса обучения нейронных сетей за рамки генетического поиска.

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

Также во второй главе предложены два основных варианта реализации топологии:

а) для поиска только коэффициентов связей между нейронами;

б) для поиска структуры нейронной сети с последующим ее обучением.

В конце главы рассмотрен вопрос создания топологии с параллельным вычислением и комбинированного варианта а) и б).

Для возможности решения сложных по описанию задач введено понятие прототипа особи и применения основных генетических операций к ней (Рисунок 4).

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

у

12 3 4 5 6 7 8 Рисунок 4 - Представление прототипа особи

Пусть гены в базовой и дочерней хромосомах представляются, как показано на рисунке 4. Введем координатную сетку {Х;У}, пусть рабочей областью для удобства будет только первый квадрант.

Согласно введенной схемы кодирования, базовая хромосома всегда параллельна оси ординат, а дочерние хромосомы всегда параллельны оси абсцисс. Выделим гены, от которых отходят дочерние хромосомы. Назовем их х-генами. Для удобства восприятия они обозначены точкой по центру. Координаты каждого гена можно ввести, как пару цифр {х,;у,}.

Введены необходимые модификации в основные операторы генетических алгоритмов для применения к прототипу особи: инверсии, мутации и кроссовера.

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

1аким образом, разработана топология генетического поиска нейросетевых моделей, которая:

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

- накапливать знания о решенных задачах для сокращения времени решения новых задач;

- действовать в автоматическом режиме и максимально разгружать пользователя при поиске нейросетевой модели;

- все настройки и коэффициенты топология изменяет сама, но с возможной корректировкой со стороны пользователя.

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

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

Для сравнительного анализа реализованы оба разработанных варианта топологии.

Для варианта топологии поиска весовых коэффициентов будем использовать следующий вид прототипа особи (Рисунок 5). Базовая хромосома содержит необходимую информацию об основных параметрах структуры нейронной сети: количестве входов, количестве выходов, количестве слоев, функции активации и т.д. Л дочерние хромосомы описывают конкретные входы, выходы и матрицы весов связей.

..........

In X1 X2 X3 XN

Out Y1 Ym

L

Ml W11 W12 W13 Щ

M2 W11 Wt2 W13 Wjn

j

Мк W11 W12 W13 Wig

AF

-.....i ... _______I.....

Рисунок 5 - Представление особи для варианта топологии с поиском

весовых коэффициентов На рисунке 5 введены следующие обозначения: In — входы; Out -выходы; Xj - номера входов (в привязке к входным временным рядам), Yj - выходы; L - количество скрытых слоев; А/, - матрицы весовых коэффициентов; Wjj - весовые коэффициенты; AF - функция активации.

Для второго варианта топологии предлагается следующий вид особи (Рисунок 6).

Х1 Х2 хз

Out LT LT LS AF

I

Y1

Ym

ElD

N1 |N2 ~ |Nk |

Рисунок 6 - Представление особи для варианта топологии с поиском

структуры нейронной сети На рисунке б приняты следующие обозначения: In - входы; Out -выходы; Xj - номера входов (в привязке к входным временным рядам), Yj - выходы; L - количество скрытых слоев; LT - тип обучения; /V,- - количество нейронов; LS - скорость обучения; AF-тип функции активации.

Также приведены конкретные реализации баз знаний, которые имеют особенности реализации к данной задаче.

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

Для прогнозирования реализован многослойный персептрон и следующие алгоритмы его обучения: обратного распространения ошибки, эластичного распространения и Левенберга - Марквардта.

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

Л л |г/, |+1

где d - реальное значение прогнозируемой котировки; у - прогноз нейронной сети; 5 - количество примеров валидационной выборки. Для прогнозирования обычно используются нейронные ссти с одним выходом.

Для отбора особей в следующую популяцию использовался набор стандартных методов с небольшими изменениями. Например, для метода «рулетка» отсекались особи со средней ошибкой прогноза выше установленного порогового значения и «рулетка» использовалась только для прошедших предварительный отбор особей.

= (2)

1/(0

i-i

где /(/) - пригодность / -й особи. N - число прошедших предварительный отбор особей.

Для проверки универсальности топологии рассмотрена задача выбора инвестиционного проекта в строительной сфере.

Постановка задачи следующая. Пусть имеется N площадок для строительства недвижимости, как коммерческой, так и для жилищного строительства. Также имеется М проектов возводимых зданий и пусть есть набор {М'} - это проекты коммерческого строительства и набор {Л/'} - проекты для жилищного строительства. Обычно N < М.

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

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

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

• при сравнении двух вариантов топологии - с поиском весовых коэффициентов и с поиском структуры нейронной сети с последующим обучением определено, что первый вариант топологии гораздо быстрее находит адекватную нейросетевую модель (в среднем в 4,19 раза для минутного графика и 5,09 для часового графика), но формируют больше банков особей, популяций и в разы больше особей;

• нейросегевые модели топологии с поиском структуры сети лучше прогнозируют реальные данные, в среднем на 7,8 % по моделям для минутного графика и на 8,5% по моделям для часового графика. Это объясня-

стся именно тем, что данные модели проходят обучение. То есть вариант топологии с поиском весовых коэффициентов в «слепую» ищет веса сети, а вариант топологии с поиском структуры сети подстраивает свои веса за счет градиентного обучения;

• использование баз знаний позволяет ускорить процесс поиска псйросетсвых моделей в среднем на 38 %, в сравнении со стандартной реализацией генетического алгоритма (только для варианта топологии с поиском весовых коэффициентов);

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

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

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ И ВЫВОДЫ

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

Основные теоретические и практические результаты работы заключаются в следующем.

1. Разработана генетическая топология поиска нейросетевых моделей.

2. Разработан алгоритм работы топологии генетического поиска нейросетевых моделей.

3. Разработаны различные варианты топологии, в частности а) для поиска нейросстсвых моделей, через нахождение весов синаптических связей; б) для поиска нейросетевых моделей, через поиск структуры нейронной сети с последующим ее обучением; в) с параллельным поиском; г) комбинированная топология а) и б).

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

5. Создана программная моделирующая оболочка для проведения экспериментов с разработанной топологией.

6. Получены результаты при сравнении двух вариантов топологии для задачи прогнозирования финансовых котировок - с поиском весовых коэффициентов и с поиском структуры нейронной сети с последующим обучением: первый вариант топологии гораздо быстрее находит адекватную нейросетевую модель, но формируют больше банков особей, популяций и в разы больше особей; второй вариант - лучше прогнозирует реальные данные - это объясняется именно тем, что данные модели проходят обучение. Использование баз знаний, по сравнению со стандартным генетическим алгоритмом, позволяет быстрее находить нейросетевую модель за счет накопленных данных по предыдущим решенным задачам.

Основное содержание диссертации опубликовано в следующих работах:

1. Шумков Е.Л., Чистик И.К. «Использование генетических алгоритмов для обучения нейронных сетей» // Политсматичсский сетевой электронный научный журнал КубГДУ [Электронный ресурс]. №7. 2013. Режим доступа: ЬКр://е|киЬа§го.ги/агс1пуе.а8р?п=91

2. Шумков Е.Л., Чистик И.К. «Аттракторы на финансовых временных рядах» // «Математические методы и информационные технологии в экономике, социологии и образовании». Сборник статей XXXI Международной научно -технической конференции. - Пенза: Приволжский Дом знаний. 2013. С. 42-44.

3. Шумков Е.А., Чистик И.К. «Автотрейдер с использованием (^-обучения» // «Математические методы и информационные технологии в экономике, социологии и образовании». Сборник статей XXX Международной научно - технической конференции. - Пенза: Приволжский Дом знаний. 2012. С. 126-127.

4. Чистик И.К. «Факториальная форма представления цепей» // «Современные информационные технологии». Сборник статей международной научно-технической конференции. - Пенза: Пензенская государственная технологическая академия, 2009, выпуск 10, С. 69-71.

5. Чистик И.К. «О нумерации решений в задачах с факториальным ростом сложности» // «Исследование, разработка и применение высоких технологий в промышленности». Сборник трудов восьмой международной научно-практической конференции. - Санкт-Петербург: Издательство Политехнического университета, 2009. С. 66-67.

Подписано в печать 21.11.2013. Печать трафаретная. Формат 60x84 '/,6. Усл. печ. л. 1,35. Тираж 100 экз. Заказ № 1015. ООО «Издательский Дом-Юг» 350072, г. Краснодар, ул. Московская 2, корп. «В», оф. В-120 тел. 8-918-41-50-571 e-mail: ollbmenko@yandex.ru Сайг: http://id-yug.com

Текст работы Чистик, Игорь Константинович, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)

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

На правах рукописи

04201 455702

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

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

Специальность 05.13.01 - Системный анализ, управление и обработка информации (информационные и технические

системы)

ДИССЕРТАЦИЯ

на соискание ученой степени кандидата технических наук

Научный руководитель:

канд. техн. наук Е.А. Шумков

Краснодар - 2013

Принятые сокращения

БЗ - база знаний;

БЗПЗН - база знаний о предыдущих запусках нейронных сетей;

БЗНС - база знаний о нейронных сетях;

БЗВР - база знаний о временных рядах;

БЗГА - база знаний о генетических алгоритмах;

ГА - генетический алгоритм ('генетические алгоритмы' - в контексте); ИАД - интеллектуальный анализ данных; РБФ - радиально - базисная функция; НС - нейронная сеть;

Оглавление

Введение..................................................................................................................6

Глава 1. Нейронные сети и генетические алгоритмы.................................13

1.1 Искусственные нейронные сети................................................................13

1.2 Пластичность нейронной сети...................................................................15

1.3 Подходы к ускорению обучения нейронных сетей.............................17

1.4 Стохастические методы обучения нейронных сетей..............................18

1.4.1 Обзор стохастических методов обучения нейронных сетей...........18

1.4.2 Машина Больцмана..............................................................................18

1.4.3 Сигмоидальные сети доверия.............................................................21

1.4.4 Распределение Гиббса..............................................................................22

1.4.5 Метод «отжига»........................................................................................24

1.4.6 Алгоритм Метрополиса...........................................................................26

1.4.7 Машина Гельмгольца...............................................................................27

1.6 Индекс производительности стохастических методов.......................29

1.7 Генетические алгоритмы............................................................................30

1.7.1 Совместное применение генетических алгоритмов и нейронных сетей .............................................................................................................................37

1.7.2 Применение генетических алгоритмов..................................................41

Выводы Главы 1................................................................................................45

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

Введение.............................................................................................................47

2.1 Топология стохастического генератора для обучения нейронной сети 48

2.2 Основные операции с прототипами..........................................................52

2.3 Общая структура топологии.......................................................................55

2.4 Общий алгоритм работы топологии..........................................................56

2.5 Структура и принцип действия интеллектуальной базы знаний...........57

2.5.1 База знаний о нейронных сетях.........................................................58

2.5.2 База знаний по генетическим алгоритмам.........................................60

2.5.3 База знаний о временных рядах.........................................................62

2.5.4 База знаний о предыдущих запусках поиска нейронных сетей......63

2.5.6 Блок управления популяциями...............................................................67

2.5.7 Блок генерации прототипа......................................................................67

2.5.8 Модуль предварительного расчета параметров нейросети (слои+нейроны).................................................................................................71

2.5.9 Блок оценки сложности задачи...........................................................73

2.5.10 Блок получения новых особей..............................................................74

2.5.11 Блок оценки особей................................................................................76

2.5.12 Блок отбора особей................................................................................76

2.5.16 Модуль обучения нейросетей...............................................................76

2.5.17 Блок расчета ошибки нейросети...........................................................77

2.6 Вариант топологии без обучения нейронной сети..................................78

2.7 Вариант топологии с обучением нейронной сети...................................79

2.8 Вариант топологии с ансамблем нейросетей.......................................79

2.10 Топология с параллельным механизмом генетического поиска..........80

2.11 Сравнение с эволюционными алгоритмами...........................................81

Выводы Главы 2................................................................................................84

Глава 3. Реализация топологии генетического поиска нейросетевых

моделей..................................................................................................................86

3.1 Постановка задачи анализа и прогнозирования биржевых котировок.. 87

3.2 Прогнозирование финансовых временных рядов с помощью нейронных сетей....................................................................................................................89

3.3 Механические торговые системы..............................................................90

3.4 Описание разработанной информационной системы..............................92

3.5 Описание реализованного алгоритма........................................................92

3.6 Реализация стохастического генератора...............................................92

3.6.1. Описание реализации БЗНС...............................................................94

3.6.2. Описание реализации БЗПЗН.............................................................95

3.7 Особенности реализации БЗГА..................................................................97

3.8 Представление особей для различных вариантов топологии.................97

3.8 Кодирование входов и выходов нейронных сетей..................................99

3.9 Постановка задачи выбора инвестиционного проекта в строительной

сфере.................................................................................................................100

Выводы Главы 3..............................................................................................103

Глава 4. Экспериментальная часть...............................................................104

4.1 Описание условий проведения экспериментов......................................104

4.2 Параметры оценки работы топологии....................................................104

4.3 Работа топологии для поиска НС-модели краткосрочного прогноза (вариант топологии 1).....................................................................................106

4.4 Работа топологии для поиска НС модели краткосрочного прогноза (вариант топологии 2).....................................................................................110

4.5 Сравнение двух вариантов топологии:....................................................112

Выводы Главы 4..............................................................................................115

Заключение.........................................................................................................117

Список литературы...........................................................................................119

Приложение А. Обзор современных нейросетевых и генетических программных продуктов.................................................................................129

Введение

Методы нейроматематики с каждым годом все больше получают распространение в самых различных сферах применения [1, 3, 7, 8, 16, 21, 22, 33, 39, 40, 50]. Можно выделить основные направления применения нейронных сетей - это распознавание изображений, прогнозирование финансово - экономических инструментов и показателей, различные веб -задачи и т.д. Основные преимущества нейросетевого моделирования следующие:

• возможность решения задач, не имеющих строгого математического описания

• возможность интеграции в одной модели переменных различной природы и типов значений;

• адекватность современным технологиям;

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

• неявный учет скрытого влияния переменных;

• высокая скорость получения результата за счет массового параллелизма работы;

• нечувствительность к наличию пропусков и искажений во входных данных и т.д.

Основными недостатками нейронных сетей обычно считают следующее [3, 7, 22, 33]: нейронная сеть обычно рассматривается, как «черный ящик» из которого трудно вербализовать нейросетевую базу знаний; для обучения нейронной сети требуется значительная по объему обучающая выборка; значительное время обучения нейронной сети и трудность работы с нейросетью неподготовленному специалисту.

Обучение нейронной сети, в общем, относится к задаче оптимизации. Методы оптимизации, как известно, делят на два класса: методы, использующие производную (градиентные методы) и стохастические методы [31].

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

Генетические алгоритмы способны отыскивать решения при практически полном отсутствии предположений о характере исследуемой функции при решении целочисленных или комбинаторных оптимизационных задач [27, 29, 30, 33, 36]. Генетические алгоритмы тесно связаны с биологическим процессом эволюции, который можно рассматривать, как процесс постоянной оптимизации биологических видов, с основной направляющей - естественным отбором. Более того, можно сказать, что теория генетических алгоритмов строилась на базе теории Ч. Дарвина и его последователей [12].

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

В то же время, если существует специальный метод решения задачи, то генетический алгоритм, скорее всего ему проиграет [30].

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

Актуальность данной диссертационной работы заключается в следующих выводах:

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

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

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

На основании перечисленных требований к методам генетического поиска нейросетевых моделей, сформулированы вопросы, отражающие научную проблему:

1. Возможно ли создание обобщенной методологии создания генетической топологии поиска нейросетевых моделей.

2. Как обеспечить интерпретируемость работы поиска нейросетевой модели с помощью генетических алгоритмов?

3. Возможен ли поиск прогнозирующих моделей с помощью генетического топологии поиска нейросетевой модели?

4. Возможно ли создание полностью автоматической системы поиска адекватной нейросетевой модели?

5. Каким образом реализовать доступность моделирования сложных задач с помощью генетических алгоритмов и нейронных сетей для конечного пользователя?

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

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

Для достижения указанных целей были поставлены и реализованы следующие задачи:

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

- проанализировать методы совместного использования генетических алгоритмов и нейронных сетей, выявить сильные и слабые стороны взаимодействия;

- разработать топологию и алгоритм генетического поиска адекватной нейросетевой модели;

- программно реализовать разработанную топологию в составе моделирующего комплекса;

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

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

- оценить эффективность предложенной топологии генетического поиска нейросетевых моделей.

Содержание диссертационной работы отражает реализацию поставленных задач.

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

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

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

В четвертой главе приведены результаты экспериментов с созданными моделями топологии генетического поиска нейросетевых моделей для задачи прогнозирования финансовых котировок.

В заключении описаны выводы и результаты проделанной работы.

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

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

Научная новизна исследования заключается в следующих результатах:

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

- предложены варианты разработанной топологии а) для поиска структуры нейронной сети; б) для поиска весов синаптических связей; в) с параллельным генетическим поиском;

- введено понятие прототипа особи и операции над ним;

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

Практическая значимость работы заключается в разработке и адаптации метода создания генетической топологии генерации нейросетевых моделей, разработке моделирующей системы МС8ой\уаге, исследования и применения генетических и нейросетевых моделей. Система ЫС8ой\уаге используется для генерации нейронных сетей работающих на финансовых рынках.

Основные положения, выносимые на защиту:

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

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

- варианты разработанной топологии для поиска структуры нейронной сети и весов синаптических связей;

- понятие прототипа особи в генетических алгоритмах;

- применение разработанной топологии для работы на финансовых рынках;

- результаты сравнительного анализа разработанной топологии. Разработанное программное обеспечение внедрено в «ВТБ 24 (ЗАО)»

(филиал г. Краснодар).

Основной материал работы опубликован в 1 научной статье в журналах рекомендованных ВАК и 4 тезисах докладов. Подана заявка о выдаче патента на изобретение.

Диссертация состоит из введения, четырех разделов, заключения, списка использованной литературы и приложения. Ее общий объем составляет 130 страниц текста, содержащего 23 рисунка и 25 таблиц.

Глава 1. Нейронные сети и генетические алгоритмы

1.1 Искусственные нейронные сети

Нейронные сети в настоящее время очень популярный инструмент для решения задач во многих областях человеческой деятельности [1, 7, 16, 21]. Свою историю искусственные нейронные сети ведут с формального персептрона МакКаллока и Питтса 1943 года [40]. Искусственные нейронные сети прошли долгий путь своего развития, пройдя и сквозь забвение и период бурного расцвета. В настоящее время искусственные нейронные сети (далее просто нейронные сети) являются широко применяемым инструмент