Научная статья на тему 'Выбор начальных значений и оптимизация параметров нейронной сети'

Выбор начальных значений и оптимизация параметров нейронной сети Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1882
489
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Гридин В. Н., Солодовников В. И., Карнаков В. В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Гридин В. Н., Солодовников В. И., Карнаков В. В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Выбор начальных значений и оптимизация параметров нейронной сети»

Выбор начальных значений и оптимизация параметров

нейронной сети

Гридин В.Н., Солодовников В.И., Карнаков В.В.

Центр информационных технологий в проектировании РАН

[email protected]

Аннотация

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

1 Введение

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

2 Выбор нейросетевой архитектуры

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

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

3 Выбор начальных значений параметров сети

Существуют различные подходы для выбора начальных значений характеристик нейронной сети. Например, «Наставник» (Network Advisor) пакета ST Neural Networks для многослойного персептрона по умолчанию предлагает один промежуточный слой с числом элементов в нем, равным полусумме числа входов и выходов.

Обычно используются результаты оценки, основанной на знаниях о задаче и имеющихся исходных данных, их размерности и объеме выборки. Так Минский в своей работе «Персептроны» доказал, что простейшие однослойные нейронные сети, состоящие из входного и выходного слоев (известные, как линейный персептрон), способны решать только линейно разделимые задачи и обеспечивают универсальную линейную аппроксимацию. Это ограничение преодолимо путем добавления скрытых слоев и использования многослойных нейронных сетей. В общем виде можно сказать, что при решении задач классификации в сети с одним скрытым слоем, входной вектор преобразуется в некоторое новое пространство, которое может иметь другую размерность, а затем гиперплоскости, соответствующие нейронам выходного слоя, разделяют его на классы. Таким образом,

сеть распознает не только характеристики исходных данных, но и "характеристики характеристик", сформированные скрытым слоем [Стариков, 2016]. Сеть с одним скрытым слоем, содержащим Ь нейронов со ступенчатой функцией активации, способна осуществить произвольную классификацию hd точек ^мерного пространства (т.е. классифицировать hd примеров). Более того, одного скрытого слоя нейронов с сигмоид-ной функцией активации достаточно для аппроксимации любой границы между классами или некоторой функции со сколь угодно высокой точностью [Ежов, 1998].

Проблема выбора количества скрытых элементов заключается в том, что с одной стороны, их число должно быть достаточным для решения поставленной задачи, а с другой не должно быть слишком большим, чтобы обеспечить необходимую обобщающую способность и избежать переобучения. Это связано с тем обстоятельством, что количество скрытых элементов зависит от сложности того отображения, которое нейронная сеть стремится воспроизвести, а оно заранее неизвестно. Стоит отметить, что с ростом числа элементов растет и количество требуемых наблюдений. В качестве оценки можно воспользоваться принципом совместной оптимизации эмпирической ошибки и сложности модели, который имеет следующий вид [Ежов, 1998]: тт{ описание ошибки + описание модели }.

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

Точность аппроксимации исследуемых зависимостей (функций) нейросетью возрастает с числом нейронов скрытого слоя. При Н нейронах ошибка оценивается как О(1/Н). Поскольку число выходов сети не превышает, а как правило - много меньше числа входов, основное число весов в двухслойной сети сосредоточено в первом слое, т.е. w = Н ■ 1 , где i - размерность входов. В

этом случае средняя ошибка аппроксимации выразится через общее число весов

следующим образом: о| — I.

I w )

Описание сети связано со сложностью модели и в основном сводится к рассмотрению количества информации при передаче значений ее весов через некоторый канал связи. Если нами была принята гипотеза Y о параметрах сети, ее весах и количестве нейронов, которая объясняет имеющиеся данные, то количество информации (в отсутствие шумов) при передаче весов будет равняться -\о§,(вероятности данного события до поступления сообщения на вход приемника). При заданной точности такое описание потребует порядка:

—log-P(Y) ~ w бит. Следовательно, удельную ошибку на один пример, связанную со сложностью модели, можно оценить как:

w

--, где p - количество примеров обуча-

Р

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

w

Р >~, e

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

Итак, были рассмотрены обе составляющие ошибки обобщения сети. Важно, что эти составляющие по-разному зависят от размера сети (числа весов), что предполагает возможность выбора оптимального размера, минимизирующего общую ошибку: т1п{описание ошибки + описание модели}

i w _ ' — + — > 2 •.

w p

i

Р

Минимум ошибки (знак равенства) достигается при оптимальном числе весов в сети

W'

соответствующих числу нейронов в скрытом слое равному по порядку величине:

*=w,

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

4 Оценка полученной архитектуры

После выбора архитектуры сети осуществляется процесс обучения. В частности для многослойного персептрона это может быть алгоритм обратного распространения ошибки - back-propagation (BP). Одна из наиболее серьезных проблем заключается в том, что сеть обучается минимизировать ошибку на обучающем множестве, а не ошибку, которую можно ожидать от сети, когда ей будут подаваться совершенно новые наблюдения. Таким образом, в отсутствие идеального и бесконечно большого обучающего множества ошибка обучения будет отличаться от ошибки обобщения для заранее неизвестной модели явления [Bishop, 1995].

Поскольку ошибка обобщения определена для данных, которые не входят в обучающее множество, решением может служить разделение всех имеющихся данных на два множества: обучающее - на котором подбираются конкретные значения весов, и вали-дационное - на котором оценивается предсказательная способность сети и выбирается оптимальная сложность модели. Для поиска момента остановки процесса обучения широко используется парадигма «кривых обучения», осуществляющая анализ зависимостей ошибок обучения и обобщения от размеров нейросети [Watanabe, 1993; Cortes, 1995].

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

Другим классом кривых обучения являются зависимости внутренних свойств нейросети от её размера, сопоставляемые затем с ошибкой обобщения. Например, в работе [Watanabe, 1993] осуществлен анализ внутреннего представления задачи, связь ошибки обучения и максимума суммы модулей весов синапсов, приходящихся на нейрон сети. Также существуют варианты кривой обобщения, которые основываются на зависимости волнового критерия от размера сети [Ларько, 2011] или осуществляют сопоставление средних значений модулей весов синапсов [Царегородцев, 2005].

Рис. 1. Критерий остановки обучения в момент времени

В упрощенном виде для оценки уже построенной нейросетевой модели могут быть сформулированы следующие критерии:

• если ошибка тренировки мала, а ошибка тестирования велика, значит, сеть содержит слишком много весовых коэффициентов;

• если и ошибка тренировки, и ошибка тестирования велики, значит весовых коэффициентов слишком мало;

• если все весовые коэффициенты очень большие, значит весовых коэффициентов слишком мало.

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

5 Альтернативный подход на

основе генетического алгоритма

Все чаще для решения подобного рода проблем используются генетические алгоритмы (ГА), предложенные в 1975 году

Джоном Холландом (John Holland) из Мичиганского университета. Они нашли свое применение для решения задач оптимизации и отыскания глобального экстремума многоэкстремальной функции. Генетические алгоритмы работают с кодовыми последовательностями (КП) безотносительно к их смысловой интерпретации, поэтому КП и ее структура задается понятием генотипа, а его интерпретация, с точки зрения решаемой задачи, понятием фенотипа. Каждая КП представляет, по сути, точку пространства поиска и называется особью или индивидуумом. Набор КП (особей) образует исходное множество решений K (популяцию). В качестве кодовой последовательности может выступать нейронная сеть, в частности, многослойный персептрон. В этом случае, ГА применимы для обучения нейросети, т.е. минимизации суммарной квадратической ошибки работы сети путем подстройки ее весовых коэффициентов. Соотнесение основных структурных характеристик нейронной сети и параметров ГА осуществляется следующим образом:

• ген - весовой коэффициент нейронной сети;

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

• популяция - множество хромосом, вариантов наборов весовых коэффициентов (множество вариантов НС).

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

6 Заключение

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

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

Благодарности

Работа выполняется в рамках программы фундаментальных научных исследований ОНИТ РАН «Интеллектуальные информационные технологии, системный анализ и автоматизация», проект «Развитие методов искусственного интеллекта для анализа информации».

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

Ежов А., Шумский С., Нейрокомпьютинг и его применение в экономике и бизнесе, 1998.

Bishop C.M. Neural Networks and Pattern

Recognition. Oxford Press. 1995. Watanabe E., Shimizu H. Relationships between internal representation and generalization ability in multi layered neural network for binary pattern classification problem /Proc. IJCNN 1993, Nagoya, Japan, 1993. Vol.2.-pp.1736-1739. Cortes C., Jackel L., D., Solla S. A., Vapnik V., Denker J. S.. Learning curves: asymptotic values and rate of convergence / Advances in Neural Information Processing Systems 7 (1994). MIT Press, 1995. - pp. 327334.

Царегородцев В.Г. Определение оптимального размера нейросети обратного распространения через сопоставление средних значений модулей весов синапсов / Материалы 14 международной конференции по нейрокибернетике, Ростов-на-Дону, 2005. Т.2. - С.60-64. Ларько, А. А. Оптимизация размера нейросети обратного распространения [Электронный ресурс] / URL: http: //www.sciteclibrary.ru/rus/catalog/page s/8621.html (дата обращения 20.02.2016). Стариков А. Применение нейронных сетей для задач классификации // BaseGroup Labs 1995-2016. URL:

http://www.basegroup.ru (дата обращения 20.02.2016).

i Надоели баннеры? Вы всегда можете отключить рекламу.