УДК 519.95
ПАРАЛЛЕЛЬНЫЙ АЛГОРИТМ САМООРГАНИЗАЦИИ СТРУКТУРЫ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ
© О.В. Крючин, А.А. Арзамасцев
Ключевые слова: кластерные системы, искусственные нейронные сети, алгоритм самоорганизации.
В данной работе описывается алгоритм самоорганизации структуры искусственной нейронной сети. Данный алгоритм может быть применен к многослойному персептрону, сети каскадной корреляции Фальмана и сети Вольтери. Также описывается его использование на кластерных системах.
В настоящее время не существует общего алгоритма определения структуры ИНС, подходящего для каждой рассматриваемой проблемы. Часто такую структуру выбирают методом «проб и ошибок», который зачастую отнимает у исследователя много времени. В некоторых программных ИНС-оболочках предусмотрена визуализация построения структуры сети [1-3].
Одним из способов уменьшения временных затрат на подбор структуры ИНС является использование кластерных систем, поэтому целью данной работы является разработка алгоритмов самоорганизации структуры сети следующих типов: многослойный пересеп-трон, сеть каскадной корреляции Фальмана, сеть Вольтери. Разработанные алгоритмы должны работать на кластерных системах.
При использовании многослойного персептрона применяется следующий алгоритм подбора структуры: вначале задается минимально-возможная структура и затем на скрытый слой добавляются нейроны до тех пор, пока это приводит к значительному уменьшению невязки. После того, как значение невязки перестает уменьшаться, добавляется новый скрытый слой с одним нейроном и вновь проверяется значение невязки. Такие операции продолжаются до тех пор, пока не будет достигнуто требуемое значение невязки или выполнится другое условие остановки.
В отличие от многослойного персептрона, где каждый скрытый слой может иметь произвольное количество нейронов, в каскадной сети и сети Вольтерри количество нейронов на каждом из слоев определяется однозначно. В случае каскадной сети каждый скрытый слой содержит только один нейрон, а в структуре Вольтерри количество нейронов на I -м слое однозначно выражается формулой
-м, (1)
где Ыь - количество слоев, М - количество входов. Исходя из этого, для данных структур необходимо лишь подобрать количество скрытых слоев, следовательно, упростив описанный выше алгоритм (убрав из него подбор числа нейронов в каждом из скрытых сло-
ев), его вполне можно применить для этих типов структур.
Подбор количества нейронов во входном слое обусловлен размерностью входного вектора х . Подобная ситуация и с входным слоем, в котором количество нейронов проонимается разным размерности ожидаемого вектора ё . Серьезной проблемой остается подбор количества скрытых слоев и числа нейронов в каждом из них. Теоретическое решение этой задачи в смысле условия достаточности было предложено математиками, занимающимися аппроксимацией функций нескольких переменных. Следует отметить, что ИНС выступает в роли универсального аппроксиматора обу-чаюшдх данных (х,ё) . В процессе обучения подбираются его функциональные коэффициенты (векторы весов отдельных нейронов). На этапе функционирования при зафиксированных значениях весов производится простой расчет значения аппроксимирующей функции при заданном входном векторе.
Определение минимального количества скрытых слоев сети основано на использовании свойств аппроксимирующих функций. Каждая заданная функция может быть выражена линейной комбинацией локальных импульсов, которые имеют ненулевое значение только в ближайшей окрестности текущего значения х. Импульсная функция определенной структуры может быть сформирована как суперпозиция двух функций, сдвинутых относительно друг друга. Соответствующим подбором функциональных параметров можно добиться такого импульса, который будет возникать в необходимом месте и иметь требуемую ширину и крутизну нарастания.
Возможность обобщения приведенных рассуждений следует из теории Колмогорова. Если ограничиться непрерывной функцией, трансформирующей М -мерное множество входных данных х в Р -мерный выходной вектор ё , то можно доказать, что аппроксимация такого типа осуществима при использовании сети с одним скрытым слоем. При М входных нейронах будет достаточно использовать для реализации этой функции скрытый слой с (2М +1) нейронами. Резуль-
тат, полученный благодаря теореме Колмогорова, носит теоретический характер. Теорема не уточняет ни вида активационных функций нейронов, ни методов подбора весовых коэффициентов, однако представляет собой фактор, важный для минимизации структур ИНС [4].
При реализации параллельных версий алгоритмов используются п вычислительных узлов. Ведущий узел формирует п структур и посылает их на вычислительные узлы. Получив структуру ИНС, вычислительные узлы начинают подбор весовых коэффициентов (и при необходимости типов активационных функций). После того, как какой-либо узел заканчивает обучение, он посылает обученную структуры вычислительному узлу, который проверяет необходимость продолжать обучение. Если такая необходимость остается, он формирует новую структуру и вновь посылает ее вычислительному узлу. Такой процесс продолжается до тех пор, пока не будет подобрана структура, которая удовлетворяет необходимым условиям.
ЛИТЕРАТУРА
1. Антонов А.С. Введение в параллельные вычисления: метод. пособие // Московский государственный университет им. М.В. Ломоносова. Научно-исследовательский центр. М. 2002.
2. Арзамасцев А.А., Зусман Ю.А., Зенкова Н.А., Слетков Д.В., Шку-та Н.О, Крючин О.В., Банников С.С., Королев А.Н, Шохина Л.С., Шкатова Т.Б. Реализация проекта Tempus Tacis «System Modernisation of University Management» в Тамбовском государственном университете им. Г.Р. Державина // Вестник Тамбовского университета. Серия Естеств. и техн. науки. Тамбов, 2006. Т. 1. Вып. 5. С. 619-645.
3. Арзамасцев А.А., Крючин О.В., Азарова П.А., Зенкова Н.А. Универсальный программный комплекс для компьютерного моделирования на основе искусственной нейронной сети с самоорганизацией структуры // Вестник Тамбовского университета. Серия Естеств. и техн. науки. Тамбов, 2006. Т. 11. Вып. 4. С. 564-570.
4. Осовский С. Нейронные сети для обработки информации. М.: Финансы и статистика, 2002.
Поступила в редакцию 12 ноября 2010 г.
Kryuchin O.V., Arzamastsev A.A. Parallel algorithm of selforganization of artificial neuron network structure
The article describes the algorithm of self-organization of artificial neuron network structure. This algorithm can be used to multi-layered perse-proton, network of cascade correlation of Falman and Volterie. Also its use on the cluster systems is described.
Key words: cluster systems; artificial neuron networks; algorithm of self-organization.