Intellectual Technologies on Transport. 2015. No 3
Модификация метода RPROP для решения задач распознавания
образов
Благовещенская Е. А., Зуев Д. В. Петербургский государственный университет путей сообщения Императора Александра I Санкт-Петербург, Россия [email protected], [email protected]
Аннотация. Алгоритмы, применяемые для обучения пер-септронов и для обучения специальных архитектур нейронных сетей часто содержат параметры, которые пользователь выбирает на основе опыта и известных рекомендаций других авторов («вручную»). От выбора этих параметров существенно зависит скорость достижения алгоритмом результата. Сегодня нет общей методики автоматизированного определения таких параметров. В работе описывается алгоритм модификации известного метода RPROP, позволяющий повысить скорость его сходимости при распознавании образов.
Ключевые слова: нейронные сети, RPROP, распознавание образов.
Одним из ключевых критериев оценки эффективности любого метода обработки данных является скорость его работы [1]. В данной статье предложен эффективный метод повышения скорости работы эвристических алгоритмов оптимизации [2] для задач минимизации функции ошибки E w,}): Rm ^ R+ нейронных сетей [3, 9] при использовании их в решении задачи распознавании образов.
Рассмотрим сначала общую ситуацию. Особенностью большинства эвристических алгоритмов оптимизации является наличие параметров, выбираемых вручную. Такими параметрами часто являются константы или функции, характеризующие изменение «скорости шага» [3, 9]. В описаниях алгоритмов, как правило, даны либо конкретные рекомендуемые значения параметров, либо общие ограничения на их выбор.
В настоящей работе предложен общий подход к выбору параметров алгоритмов. В качестве объекта для применения предлагаемого метода выбран алгоритм оптимизации первого порядка RPROP [2, 10]. Результаты статистических исследований [5] показывают высокую скорость сходимости алгоритма RPROP в сравнении с другими градиентными алгоритмами. При этом отметим, что данный метод может быть перенесен на другие алгоритмы оптимизации без существенных изменений.
Приведем основные шаги алгоритма RPROP [11] для минимизации функции E({w.}) ошибки нейронной сети, заданной на множестве весовых коэффициентов } .
Шаг 1
Для каждого весового коэффициента wt произвольно выбираем число Д, (0) > 0 , формулируем условие остановки алгоритма (например, максимальное количество итераций
или максимальное значение функции ошибки) и выбираем параметры алгоритма п > 1 и 0 <р- < 1.
Шаг 2
На t-й итерации для всех i вычисляем значения () .Д, (tif Щ-R т. > 0;
dWi dwi
д,(t)H(p-).д,(t-1), if dEdW-1)dEp<0; (1)
dw, dwi
Д, (, -1), if =0.
dw, dw,
а затем
'-д.(t), if > 0;
wi
Дwг (t) = ^+Д, (t), if ^ < 0; (2)
wi
0, ,f dE^ = 0.
wi
Корректируем значения весовых коэффициентов по формуле
Wj (t + 1) = Wj (t) + Дwг■ (t).
Шаг 3
Проверяем условие остановки алгоритма. Если условие остановки не выполнено, переходим к шагу 2, в противном случае заканчиваем действия по алгоритму.
Особенностью RPROP является наличие константных величин п+ и п- . Конкретные значения этих величин существенно влияют как на сходимость, так и на скорость сходимости алгоритма.
Введем в рассмотрение вещественную непрерывную функцию F(t,ao,ai,...,an-i) от переменной t, зависящую от n параметров a0,a1,..., an-1. Если функция определена на всех возможных наборах вещественных параметров a0, а1,..., an-1, будем называть ее подстановкой.
Описание метода
Заменим в (1) величину п+ подстановкой F (t, ao, ab..., an-1), где t - номер итерации алгоритма. Введём в рассмотрение отображение
Интеллектуальные технологии на транспорте. 2015. № 3
46
Intellectual Technologies on Transport. 2015. No 3
A(X) :Rn з G ^ N,
ставящее в соответствие набору параметров a0, a1,..., an-1 количество итераций, за которые RPROP сходится при данных параметрах. Совокупность параметров a0, a1,..., an-1 будем интерпретировать как точку X = (a0,a1,...,an-1) е Rn.
Пусть множество G с Rn состоит из тех точек X, на которых RPROP сходится. Назовём его пространством сходимости отображения A. Задача повышения скорости сходимости RPROP сводится к задаче минимизации отображения A на своём пространстве сходимости.
Для минимизации A предлагается следующая модификация алгоритма многогранника [4]:
Шаг 1. Выбираем точку p(0) из пространства сходимости и некоторое значение параметра r. Формулируем условие остановки алгоритма. В качестве условия остановки может выступать, например, максимальное число итераций.
Шаг 2. На t-й итерации выбираем несколько точек, отстоящих на расстояние r от p(t -1) (в смысле обычного расстояния в Rn). Вычисляем для каждой из получившихся точек значение отображения A, принимаем в качестве p(t) ту точку, на которой значение отображения A меньше, чем
A( p( t -1)) .
Шаг 3. Проверяем условие остановки. Если оно выполнено, тогда заканчиваем действия по алгоритму. В противном случае переходим к шагу 2.
Геометрическая интерпретация алгоритма приведена на рис. 1.
Рис. 1. Геометрическая интерпретация алгоритма
Стрелками иллюстрируется движение точки в «оптимальном» направлении.
Замечание. Результат применения алгоритма зависит от выбора начальной точки p(0) и параметра r. Априори, особенно на практике, довольно сложно сделать выводы о пространстве сходимости отображения A и гарантировать, что хотя бы одна точка на окружности попадает в пространство сходимости. Для устранения этого недостатка, а также для повышения эффективности алгоритма предлагается рассматривать его вариации с динамически меняющимися радиусами, несколькими начальными точками и пр.
Схема применения метода для минимизации функции ошибки E ({wi}): Rm ^ R + нейронной сети
Часто для решения различных практических задач нейросетевым способом (распознавания образов, предсказания курса валют и др.) пользуются следующей схемой:
1) выбрать структуру нейронной сети;
2) выбрать алгоритм обучения и зафиксировать его параметры;
3) для множества «подобных» обучающих выборок применить выбранную нейронную сеть, выбранный алгоритм обучения и фиксированные параметры алгоритма.
Теперь подробнее поясним применение описанного алгоритма к решению задач распознавания образов. Отметим, что понятие подобности обучающих выборок определяется конкретной решаемой задачей. Для задачи распознавания рукописных букв подобными целесообразно считать обучающие выборки из одних и тех же букв, написанных разными людьми с похожим почерком.
Предложенный здесь метод показал свою эффективность именно в ситуации применения сети фиксированной структуры с фиксированным алгоритмом обучения и фиксированными параметрами алгоритма к множеству обучающих выборок.
Схема применения метода следующая:
1) выбрать структуру нейронной сети;
2) выбрать алгоритм обучения;
3) выбрать одну обучающую выборку из множества подобных обучающих выборок;
4) оптимизировать алгоритм обучения описанным методом для выбранной обучающей выборки;
5) зафиксировать оптимизированный алгоритм;
6) применить оптимизированный алгоритм для остальных обучающих выборок.
Примеры подстановок и результаты экспериментов
Полиномиальная подстановка
Довольно эффективной оказывается подстановка
F(t, ao, a1,..., an-i) = ao + a^ +... + an-1tn-1.
Такую подстановку назовем полиномиальной. Число n для полиномиальной подстановки определяется исходя из условий конкретной задачи или класса задач. Результаты статических исследований использования полиномиальной подстановки показали, что для различных конфигураций нейронных сетей предложенный метод находит модификации алгоритма RPROP, которые примерно в 3 раза превосходят по скорости сходимости «стандартный» RPROP, причем с возрастанием n результат меняется незначительно. Часть абсолютных значений результата эксперимента представлена в таблице.
Результаты эксперимента
Количество элементов обучающей выборки Количество эпох метода Градиентного спуска Количество эпох метода RPROP Количество эпох модифицированного метода RPROP
i 1252 239 5 4
2 5097 374 8 7
3 5135 375 22 12
4 5225 938 254 035 122 041
4 6963 032 21 18
4 55 070 050 1388 763 583 096
Интеллектуальные технологии на транспорте. 2015. № 3
47
Intellectual Technologies on Transport. 2015. No 3
Выбор первого приближения для полиномиальной подстановки может быть проведен следующим образом. Пусть для заданной обучающей выборки стандартный алгоритм RPROP с заданным параметром сходится. Если в качестве первого приближения в описанной модификации метода многогранника выбрать точку p (0) = (п+, 0,... ,0), то по построению алгоритма видно, что число итераций сходимости модифицированного RPROP, по крайней мере, не увеличится. На практике число итераций значительно уменьшается.
Нейро сетевая подстановка
Утверждение теоремы Цыбенко [8] о нейронных сетях заключается в следующем: любая непрерывная функция может быть сколь угодно точно приближена однослойной нейронной сетью с произвольной нелинейной функцией активации. Это утверждение дает мотивацию к выбору нейронной сети в качестве подстановки. Рассмотрим полносвязную нейронную сеть с одним скрытым слоем (рис. 2). Пусть сеть содержит один нейрон во входном слое, один нейрон в выходном слое и такое количество нейронов в скрытом слое, чтобы суммарное количество весовых коэффициентов сети было n
Пусть функции активации нелинейны.
Такую сеть можно взять в качестве подстановки F(t, a , ax,..., an-1), где набор (a0, ax,..., an-1) является набором весовых коэффициентов сети, а t - входной переменной. Для нейросетевой подстановки справедливо такое же замечание о выборе первого приближения, как и для полиномиальной подстановки, а именно: диапазон изменения значений подстановки определяется активационными функциями сети, таким образом, можно выбрать сеть с условием F (t ,0,...,0) = ц+ .
Заключение
Авторы разработали на языке C# для платформы Microsoft. NET программный комплекс, реализующий нейросетевую объектную модель и описанные алгоритмы. Прикладной задачей разработанного программного комплекса является задача распознавания образов. В качестве обучающей выборки образов для проведения эксперимента по определению эффективности предложенного в работе метода выступала база MNIST [6, 7]. Результаты работы программного комплекса показали, что применение полученных алгоритмов позволяет существенно экономить процессорное время вычислительной системы, что в несколько раз повышает эффективность её использования по сравнению с системами, использующими стандартный алгоритм RPROP для обучения нейронных сетей.
Литература
1. Благовещенская Е. А. О сходимости методов обучения нейронных сетей / Е. А. Благовещенская, Д. В. Зуев // Материалы XIX Междунар. конф. по вычислительной механике и современным прикладным программным системам (ВМСППС’2015), 24-31 мая 2015, Алушта. - М.: Изд-во МАИ, 2015. - С. 130-131.
2. Васильев А. Н. Нейросетевое моделирование. Принципы. Алгоритмы. Приложения / А. Н. Васильев, Д. А. Тар-хов. - СПб.: Изд-во Политехн. ун-та, 2009. - 528 с.
3. Круглов В. В. Нечеткая логика и искусственные нейронные сети / В. В. Круглов, М. И. Дли, Р. Ю. Голунов. - М.: Физматлит, 2000. - 224 с.
4. Метод Нелдера - Мида. - URL: http://ru.wikipedia.org/ wiki/Метод_Нелдера_-_Мида (дата обращения 14.04.2013).
5. Описание алгоритма RPROP. - URL: http://www. basegroup.ru/library/analysis/neural/rprop (дата обращения
14.04.2013) .
6. Описание базы данных MNIST. - URL: http://yann. lecun.com/exdb/mnist (дата обращения 14.04.2013).
7. Описание работы с базой данных MNIST и результаты экспериментов. - URL: http://yann.lecun.com/exdb/publis/pdf/ lecun-01a.pdf (дата обращения 14.04.2013).
8. Теорема Цыбенко. - URL: http://actcomm.dartmouth. edu/gvc/papers/approx_by_superposition.pdf (дата обращения
14.04.2013) .
9. Хайкин С. Нейронные сети. Полный курс / С. Хай-кин. - М.: Вильямс, 2006. - 1104 с.
10. Riedmiller M. A direct adaptive method for faster back-propagation learning: The RPROP algorithm / M. Ried-miller, H.Braun. - San Francisco, 1993.
11. Riedmiller M. RPROP - A Fast Adaptive Learning Algorithm / M. Riedmiller, H. Braun. - Proc. Int. Symp. Com-puter and Inform. Sci. 1992. VII.
Интеллектуальные технологии на транспорте. 2015. № 3
48
Intellectual Technologies on Transport. 2015. No 3
RPROP Method Modification for Pattern Recognition
Blagoveshchenskaya E. A., Zuev D. V Petersburg State Transport University St. Petersburg, Russia
[email protected], [email protected]
Abstract. For perception learning and also for special architecture neural networks the learning algorithms used normally have some parameters chosen on the basis of the previous experience of people involved or according to some external recommendations, that is “manually”, as we say. The parameter choice can determine the speed of the algorithm result achievement. Today there is no universal method of automatic determination of such parameters. The article describes an algorithm of the well-known RPROP method modification leading to the increase of convergence speed in pattern recognition.
Keywords: neural networks, RPROP, pattern recognition.
References
1. Blagoveshchenskaia E.A., Zuev D. V O skhodimosti metodov obu-cheniia neironnykh setei [On the Convergence of Methods of Training Neural Networks]. Materialy XIX Mezhdunarodnoi konferentsii po Vychislitel ’noi mekhanike i sovremennym prikladnym programmnym sistemam (VMSPPS’2015) [ArticlesXIXInt. Conf on Computer Mechanics and Modern Applied Codes]. Moscow, 2015. Pp. 130-131.
2. Vasil’ev A. N., Tarkhov D. A. Neirosetevoe modelirovanie. Printsipy. Algoritmy. Prilozheniia [Neural network modeling. Principles. Algorithms. Applications]. St. Petersburg, Izdatelstvo Politekhnicheskogo Universiteta, 2009. 528 p.
3. Kruglov V V., Dli M. I., Golunov R.Iu. Nechetkaia logika i iskusstvennye neironnye seti [Fuzzy Logic and Artificial Neural Networks]. Moscow, Fizmatlit, 2000. 224 p.
4. Metod Neldera - Mida [Method Neldera - Mida]. Available at: https://ru.wikipedia.org/wiki/ %D0 %9C %D0 %B5 %D 1 %82 %D0 %BE %D0 %B4_ %D0 %9D %D0 %B5 %D0 %BB %D0 % B4 %D0 %B5 %D 1 %80 %D0 %B0_ %E2 %80 %94_ %D0 %9C %D0 %B8 %D0 %B4 %D0 %B0 (accessed 14.04.2013)
5. Opisanie algoritma RPROP [Description of the Algorithm RPROP]. Available at: Rezhim dostupa: http://www.basegroup. ru/library/analysis/neural/rprop (accessed 14.04.2013).
6. Opisanie bazy dannykh MNIST [Database Description MNIST]. Available at: http://yann.lecun.com/exdb/mnist/(accessed
14.04.2013).
7. Opisanie raboty s bazoi dannykh MNIST i rezul’taty eksperimentov [How to Work with the Database and the Results of Experiments MNIST]. Available at: http://yann.lecun. com/exdb/publis/pdf/lecun-01a.pdf (accessed 14.04.2013).
8. Teorema Tsybenko [Theorem Tsybenko]. Available at: http://deeplearning.cs.cmu.edu/pdfs/Cybenko.pdf (accessed 06.10.2015).
9. Khaikin. S. Neironnye seti. Polnyi kurs [Neural networks. Full course]. Moscow, Vil’iams, 2006. 1104 p.
10. Riedmiller M., Braun H. A Direct Adaptive Method for Faster Backpropagation Learning: The RPROP Algorithm. San Francisco, 1993.
11. Riedmiller M., Braun H. RPROP - A Fast Adaptive Learning Algorithm. Proc. Int. Symp. Computer and Inform. Sci. 1992. VII.
Интеллектуальные технологии на транспорте. 2015. № 3
49