Применение метода роя частиц в качестве обучения нейронных сетей

ПРИМЕНЕНИЕ МЕТОДА РОЯ ЧАСТИЦ В КАЧЕСТВЕ ОБУЧЕНИЯ

НЕЙРОННЫХ СЕТЕЙ Титюнников А.В.1, Кароль А.Д.2, Бессчетнов А.В.3

'Титюнников Андрей Викторович — студент;

2Кароль Антон Дмитриевич — студент;

3Бессчетнов Александр Владимирович — студент, кафедра информационных технологий, Донской государственный технический университет г. Ростов-на-Дону

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

Ключевые слова: МРЧ, искусственные нейронные сети, роевой интеллект, метод обратного распространения ошибки, методы оптимизации.

Введение

Человечество давно пытается понять механизм работы человеческого мозга и попытаться воссоздать его искусственную версию. С развитием компьютерных технологии, одним из перспективных методов воссоздания алгоритма работы мозга, является использование искусственных нейронных сетей (ИНС).

Искусственная нейронная сеть (ИНС) — математическая модель, а также её программное или аппаратное воплощение, построенная по принципу организации и функционирования биологических нейронных сетей — сетей нервных клеток живого организма. Это понятие возникло при изучении процессов, протекающих в мозге, и при попытке смоделировать эти процессы [1]. ИНС - это мощный инструмент, который применяется в широком спектре проблем, таких как распознавание образов, защита от вредоносных атак, прогнозирование и т.д.

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

Существует несколько подходов к обучению нейронной сети. На сегодняшний день наиболее распространенный метод называется обратным распространением ошибки. Хотя математически этот метод не является совершенным. Одним из альтернативной методики обучения нейронной сети является метод роя частиц (МРЧ).

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

Оригинальный МРЧ алгоритм.

МРЧ - это алгоритм стохастического поиска, основанный на популяции. Этот алгоритм впервые был представлен в 1995 году Джеймсом Кеннеди и Расселом Эберхартом. С тех пор он широко используется для решения широкого круга задач оптимизации. Алгоритм был представлен как симулирующий социальную деятельность животных, например, насекомых, птиц и т. д. Он пытается имитировать естественный процесс группового общения, чтобы делиться индивидуальными знаниями, когда такие стаи пасут, мигрируют или охотятся. Если один из членов видит желаемый путь, остальная часть этого роя будет быстро следовать. В МРЧ это поведение животных имитируется частицами с определенными положениями и скоростями в поисковом пространстве, где популяция называется роем, а каждый член роя называется частицей. Начиная с случайно инициализированной популяции, каждая частица в МРЧ пролетает через поисковое пространство и запоминает лучшее положение, которое он обнаружил. Члены роя обмениваются лучшими позициями друг с другом и динамически корректируют свое собственное положение и скорость на основе этих хороших позиций. Регулировка скорости основана на историческом поведении самих частиц, а также их соседей.

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

+ Cl rav{-l+1) = + 2

Xt = [Xi,2> — 'Xi,K]lx.K;

Gbest= [gbestif, gbesW, ... , gbestKl]ik;

} ~ шmax--:-X t.

Lmax

В этих уравнениях i = 1,2, ..., N - индекс каждой частицы, t - число итераций, randl и rand2 - случайные числа между 0 и 1. Pbesti - лучший предыдущий опыт i-я частица, которая записана. Gbest - лучшая частица среди всего населения. Nswarm - количество роев. Константы с1 и с2 являются весовыми коэффициентами стохастических членов ускорения, которые тянут каждую частицу к позициям Pbesti и Gbest. tmax - максимальное количество итераций. штах и Штт - максимальные и минимальные веса инерции соответственно. K - число переменных. Вес инерции ю контролирует свойства исследования алгоритма. Факторы обучения с1 и с2 определяют влияние личного лучшего Pbest и глобального наилучшего Gbest соответственно. Если с1 >с2, частица имеет тенденцию сходиться к лучшему положению, найденному само по себе (Pbest), а не к лучшему положению, найденному роем (Gbest), и наоборот. В большинстве реализаций используется параметр с1 = с2 = 2.

Общая структура канонического алгоритма МРЧ заключается в следующем: procedure Particle Swarm Optimization begin

Initialize x[i], v[i] and xbest[i] for each particle i; while (not termination condition) do begin for each particle i

Evaluate objective function;

Update xbest[i] end for each i Set g equal to index of neighbor with best xbest[i]; Use g to calculate v[i]; Update x[i]= x[i]

+ v[i];

Evaluate objective function; Update xbest[i] end end end

Обучение нейронной сети с использованием МРЧ

Для определения синаптического веса нейрона (k) рассчитывается при помощи метода обратного распространения, по формуле (7):

AWkj

Затем синаптические веса дополнительно регулируются при помощи МРЧ:

дbest = Wk

0<q<N

Wk(n) = min E(pbest). (10) 0< <

Результат полученный с помощью метода обратного распространения ошибки записывается в переменную gbest, затем создается область поиска в которой находится рой. L - количество синаптических связей для каждого нейрона в слое, а переменная N отображает количество нейронов в рассматриваемом слое. Далее стохастически формируются начальные координаты для каждой частицы и их векторы скорости. После каждой итерации алгоритма в переменную pbest записывается лучший результат, найденный отдельной частицей, при котором значение среднеквадратичной ошибки должно быть минимально. После jV-операции, лучшее значение переменной pbest записывается в вектор синаптических весов ( ), где n - номер обучающего примера.

Главной задачей для ИНС является корректная настройка параметров МРЧ. Если настройка будет осуществлена некорректно, то результат процесса обучения может остановиться на хаотичных и слишком больших значениях синаптических весов. При таком исходе, вне зависимости от входных параметров, на выходе будет получается один и тот же результат. Или же МРЧ совсем не окажет воздействия на процесс обучения.

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

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

где dk(n) - желаемый ответ; у-п(п) - полученный ответ.

Среднеквадратичная ошибка

3,00 Е-05 2,50 Е-05 2,00 Е-05 1,50 Е-05 1/50 Е-05 5 <00Е-06 0,ООЕ-ЬОО

1 2 3 4 5

^^^ Метод о&ратного распространения ошибки МРЧ

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

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

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

МРЧ имеет гораздо меньшую чувствительность по отношению к его свободным параметрам.

МРЧ широко применяется, в числе прочих, в задачах машинного обучения (в частности, для обучения нейросетей, распознавания изображений).

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

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

1. Малыхина М.П., Бегман Ю.В. Нейросетевая экспертная система на основе прецедентов для решения проблем абонентов сотовой связи: монография. Краснодар, 2011.

2. «An efficient hybrid approach based on PSO, ACO and k-means for cluster analysis». Applied Soft Computing 10 (1): 183-197, 2010.

3. «Adaptive Particle Swarm Optimization». IEEE Transactions on Systems, Man, and Cybernetics 39: 1362-1381, 2009.

4. Kennedy J. and Eberhart R.C. Particle Swarm Optimization. IEEE Int. Conf. Neural Networks, pages 1942-1948, 1995.

5. Beville Jean-Iuc Particle Swarm Optimization. Technical report, Miki Lab, Doshisha University Japan 2006.

6. Carlisle А. and Dozier G. An off-the-shelf PSO. In Proc. Workshop on Particle Swarm Optimization, Indianapolis, IN, 2001.