Библиографическое описание:

Ляпунцова Е. В., Бессонов Д. В. Intelligent Evolutionary Studio — программное обеспечение для машинного обучения искусственных нейронных сетей // Молодой ученый. — 2013. — №8. — С. 55-59.

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

Ключевые слова: искусственные нейронные сети, генетические алгоритмы, машинное обучение.

Введение

Авторами разработан программный продукт под названием Intelligent Evolutionary Studio (IES), который является инструментом для машинного обучения искусственных нейронных сетей (ИНС). В IES применяется машинное обучение с помощью эволюционных алгоритмов, а именно используется генетический алгоритм (ГА). Машинное обучение ИНС в IES возможно через настройку весовых коэффициентов и/или структуры сетей. Под настройкой весовых коэффициентов понимается следующее, что дана ИНС, без заранее заданных весовых коэффициентов, и требуется подобрать такие весовые коэффициенты, при которых заданная ИНС будет соответствовать выходным сигналам из обучающего множества. Настройка структуры сетей в машинном обучении ИНС происходит точно так же, как и настройка весовых коэффициентов, за исключением того, что структура или архитектура ИНС заранее не известна, и происходит подбор подходящей структуры сети в соответствии с обучающим множеством.

IES разработан с помощью предложенного шаблона проектирования эволюционного моделирования [1]. Способы, описанные в литературе [4], эволюционного обучения ИНС применяются в IES. Разработанный программный продукт позволяет загружать заранее заданные структуры ИНС и обучающее множество. Для этого был описан и разработан специальный формат файлов. Пользователь может создавать или редактировать собственные структуры сетей и обучающее множество, а затем загружать в IES подготовленные файлы для машинного обучения ИНС. Далее приводится описание формата файлов и функций IES.

Формат файлов искусственной нейронной сети

В IES используются два формата файлов. Один описывает структуру ИНС, а второй — обучающее множество. Оба формата являются текстовыми. Редактирование файлов возможно в любом текстовом редакторе без форматирования.

Далее рассматривается описание формата структуры ИНС. Файл состоит из двух групп. Первая группа обозначается строкой «net:». Свидетельствует о том, что следующие строки описывают расположение нейронов на плоскости. Обратите внимание, что номера строк в примерах файлов не входят в описание формата файлов, а введены лишь для удобства объяснения. Для примера, рассмотрим следующие строки файла:

Строка 1       net:

Строка 2       101

Строка 3       101

Строка 4       010

Начиная со строки 2, каждая строка обозначает слой ИНС, где вторая и четвертая строка являются входным и выходным слоем сети. Все строки между строками, обозначающие входной и выходной слой, являются скрытыми слоями. Каждая строка состоит из «0» и «1», где «0» говорит о том, что нейрон отсутствует на данном уровне, а «1» — нейрон присутствует на данном уровне. Например, вторая строка «101» обозначает присутствие нейронов на верхнем и нижнем уровнях.

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

Строка 1       lnk:

Строка 2       0:0:1:0

Строка 3       0:0:1:1

Строка 4       0:1:1:0

Строка 5       0:1:1:1

Строка 6       1:0:2:0

Строка 7       1:1:2:0

Начиная со строки 2, каждая строка обозначает связь между двумя нейронами, где через разделительный символ «:» идут по следующему порядку: номер слоя, где расположен исходящий нейрон, номер исходящего нейрона, затем номер слоя, где расположен принимающий нейрон, и номер принимающего нейрона. Номера слоя и нейрона начинаются с нуля. Например, пятая строка «0:1:1:1» обозначает связь между нейроном (номер 1) в слое с номером 0 с нейроном (номер 1) в слое с номером 1.

На этом описание структуры ИНС заканчивается. Полный текст файла с описанием структуры ИНС приводится ниже, полученная ИНС в графическом виде представлена на рисунке (рис. 1). Все строки файла с описанием ИНС:

Строка 1       net:

Строка 2       101

Строка 3       101

Строка 4       010

Строка 5       lnk:

Строка 6       0:0:1:0

Строка 7       0:0:1:1

Строка 8       0:1:1:0

Строка 9       0:1:1:1

Строка 10     1:0:2:0

Строка 11     1:1:2:0

Рис. 1. Графический вид ИНС из примера описания формата файлов

Далее рассматривается описание формата обучающего множества. Файл состоит из набора входных сигналов и выходных сигналов. Например:

Строка 1       0 0 0

Строка 2       0 1 1

Строка 3       1 0 1

Строка 4       1 1 0

Каждая строка обозначает обучающее подмножество. Каждый сигнал отделятся символом пробела. Если обучаемая ИНС принимает два входных сигнала и один выходной сигнал, то в каждой строке обучающего множества первые два числа через пробел будут обозначать входные сигналы, а третье число — выходной сигнал. Поэтому для разных ИНС одно и тоже обучающее множество может отличаться. Файл с обучающим множеством выбирается в зависимости от входных и выходных сигналов ИНС. В случае с двумя входными сигналами и одним выходным сигналов обучающее множество можно представить таблицей (таб. 1).

Таблица 1

Обучающее множество из примера

Строка

Входной сигнал 1

Входной сигнал 2

Выходной сигнал

1

0

0

0

2

0

1

1

3

1

0

1

4

1

1

0

Функции IES

IES управляется через главное окно. На рисунке (рис. 2) показано главное окно. Все окно можно разделить на следующие части:

-        Главное меню;

-        Таблица весовых коэффициентов;

-        Изображение структуры ИНС.

Рис. 2. Главное окно IES

Все функции IES доступны через главное меню. Структура меню выглядит следующим образом:

1.      Обучение;

1.1.         Настройка весов;

1.2.         Настройка сети;

2.      Действия;

2.1.         Запустить;

2.2.         Остановить;

2.3.         Параметры;

3.      Информация;

3.1.         График;

3.2.         Обучающее множество.

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

Во втором разделе меню «Действия» возможны функции запуска и остановки алгоритма обучения. А также в этом разделе можно вызвать окно (рис. 3) для настройки параметров алгоритма обучения.

Рис. 3. Окно с настройками параметров алгоритма обучения

После завершения алгоритма обучения становится доступным следующий раздел.

В третьем разделе меню «Информация» можно вызвать окно для отображения графика приспособленности (рис. 4) и окно с таблицей обучающего множества (рис. 5).

Рис. 4. График приспособленности

Рис. 5. Обучающее множество

Заключение

В итоге разработано ПО для обучения ИНС с помощью эволюционных алгоритмов. IES позволяет обучать ИНС путем настройки весовых коэффициентов, а также путем настройки структуры сети. IES позволяет конструировать сложные структуры ИНС (рис. 6).

Рис. 6. Примеры сложных ИНС

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

IES разработан с помощью языка программирования Java и платформы Java Standard Edition. Разработка проводилась в соответствии с паттернами проектирования [3]. Для запуска IES, на компьютере пользователя должна быть установлена JRE старше 1.6 версии.

Результатом разработки является реализация предложенного подхода [1]. На основе такого шаблона проектирования эволюционного моделирования реализован IES, а также получено свидетельство о регистрации объекта интеллектуальной собственности [2]. Разработанное программное обеспечение применимо к решению задач распознавания, классификации, прогнозирования и т. д.

Литература:

1.      Ляпунцова Е. В., Бессонов Д. В. Шаблон проектирования эволюционного моделирования // XIII Национальная конференция с международным участием «Искусственный интеллект-2012», Белгород, Октябрь 16–19, 2012. Труды конференции в 4 томах, т. 2. — Белгород: Изд-во БГТУ, 2012. — С. 307–312

2.      Ляпунцова Е. В., Бессонов Д. В. IntelligentEvolutionaryStudio (IES). Интеллектуальная Собственность — БесПроблем. Свидетельство № 13–11 от 19.06.2013

3.      Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования. — СПб: Питер, 2010. — 366 с.

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

Обсуждение

Социальные комментарии Cackle