УПРАВЛЕНЕЦ / 7-8/35-36/2012
Принципы выбора оптимальной топологии нейронной сети для поддержки принятия
V л
управленческих решений1
^ виноГрАдовА Екатерина Юрьевна
Кандидат экономических наук, доцент, начальник отдела автоматизации
Уральский государственный экономический университет 620144, рФ, г. Екатеринбург, ул. 8 Марта/народной воли, 62/45 Тел.: (343) 221-17-47 E-mail: [email protected]
Ключевые слова
программное обеспечение
интеллектуальные информационные технологии
нейросети
нейромодели
управление процессами
Аннотация
В статье описываются основные принципы выбора оптимальной топологии, учитываемые при построении нейронной сети для принятия управленческих решений хозяйствующим субъектом.
Интеллектуальные информационные технологии - последний на сегодняшний день этап развития аналитических методик и технологий, основанных на обработке входных данных и параметров и моделировании некоторого конечного результата. На данный момент нет альтернативы рыночной экономике и прочно утверждается мнение
о необходимости разработки комплексных интеллектуальных систем управления и планирования хозяйственной деятельности хозяйствующих субъектов всех форм собственности.
Выбирать тип нейронной сети следует исходя из постановки задачи и имеющихся данных для обучения. При обучении с учителем требуется наличие для каждого элемента выборки «экспертной» оценки. Иногда получение такой оценки для большого массива данных просто невозможно. В этих случаях естественным выбором является сеть, обучающаяся без учителя, например, самоорганизующаяся карта Кохонена или нейронная сеть Хопфилда. При решении других задач, таких как прогнозирование временных рядов, экспертная оценка уже содержится в исходных данных и может быть выделена при их обработке. В этом случае можно использовать многослойный персептрон или сеть Ворда.
Топологией нейронной сети будем называть ее структуру межнейронных связей и выбранный вид функций активации нейронов. Для однозначного задания нейронной сети необходимо указать ее топологию и значения настроечных параметров (веса синапсов, коэффициенты функций активации нейронов). Настройка параметров нейронной сети называется обучением.
В качестве критерия оптимальности топологии примем способность обученной сети заданной топологии к обобщению, т.е. к правильному функционированию на примерах, не вошедших в обучающую выборку. Важность опти-
мизации топологии можно продемонстрировать на следующих примерах.
Назовем функцией учителя функцию, которую должна аппроксимировать нейронная сеть. Пусть функция учителя также является нейронной сетью, но с неизвестной структурой межнейронных связей. Известно только, что это многослойная сигмоидная сеть. Пусть имеется набор известных значений функции учителя при заданных значениях ее аргументов. Назовем этот набор обучающими примерами.
Назовем способностью к обобщению свойство нейронной сети аппроксимировать функцию учителя с приемлемой точностью при значениях аргументов, не представленных в обучающих примерах.
Рассмотрим случай, когда количество обучающих примеров не меньше, чем количество настроечных параметров в нейронной сети функции учителя, а примеры не содержат погрешностей. Очевидно, что в данном случае аппроксимирующая нейронная сеть с топологией, совпадающей с топологией функции учителя, будет обладать наилучшей обобщающей способностью. Достаточно добавить, удалить или перенаправить один синапс, и способность к обобщению снизится.
В случае, когда примеров меньше, чем количество настроечных параметров в нейронной сети функции учителя, и (или) они содержат погрешности, оптимальная топология уже может не совпадать с топологией функции учителя. В данном случае оптимальной может оказаться топология, содержащая меньшее число примеров.
Выбор топологии и настройка весов связей искусственной нейронной сети (ИНС) являются одними из важнейших этапов при использовании нейросете-вых технологий для решения практических задач. От этих этапов напрямую зависит качество (адекватность) полученной нейросетевой модели, системы управления и т.д.
1 Работа выполнена при финансовой поддержке Российского гуманитарного научного фонда (грант № 09-03-83306а/У).
principles of Choosing the Optimal Topology of Neural Network to support Managerial Decision Making
Построение искусственной нейронной сети по традиционной методике выполняется фактически методом проб и ошибок. Исследователь задает количество слоев, нейронов, а также структуру связей между ними (наличие/отсутствие рекуррентных связей) и смотрит, что у него получилось - сеть обучается с помощью какого-либо метода, а затем тестируется на тестовой выборке. Если полученные результаты работы удовлетворяют заданным критериям, то задача построения ИНС считается выполненной успешно; в противном случае процесс повторяется с другими значениями исходных параметров.
Как отмечает большинство исследователей [1-6], центральной точкой любого метода эволюционного построения нейронных сетей является выбор генетического представления (схемы кодирования и соответствующего декодирования). Выбор представления определяет класс сетей, которые могут быть построены с помощью данного метода. Кроме того, от них зависит эффективность метода по всем параметрам.
В настоящее время обычно выделяют два больших класса способов кодирования: прямое кодирования (direct encoding) и косвенное кодирование (indirect encoding).
Прямое кодирование оперирует хромосомами, отображающими некоторое линейное представление ИНС, в котором в явном виде указаны все нейроны, веса и связи ИНС. Таким образом, всегда можно построить взаимнооднозначное соответствие между структурными элементами ИНС (нейронами, связями, весами и пр.), т.е. фенотипом, и соответствующими участками хромосомы, т.е. генотипом.
Этот способ представления нейронной сети является наиболее простым и интуитивным, а кроме того, позволяет применять к полученным хромосомам уже имеющийся аппарат генетического поиска (например, операторы кроссинг-овера и мутации). Из наиболее очевидных минусов такой схемы кодирования
можно отметить «распухание» генотипа при увеличении количества нейронов и связей ИНС и, как следствие, низкую эффективность за счет значительного увеличения пространства поиска.
Для прямого кодирования предложены методики, целью которых является купирование вышеописанных недостатков (например, NEAT).
Косвенное кодирование (в некоторых источниках также используется термин weak - слабое, имеется в виду «слабосвязанное») исповедует более «биологичный» принцип - в генотипе кодируется не сам фенотип, но правила его построения (условно говоря, некая программа). При декодировании генотипа эти правила применяются в определенной последовательности (зачастую рекурсивно, и применимость правил зависит от текущего контекста), в результате чего и строится нейронная сеть.
Сравнение различных подходов к нейроэволюции
Однозначно сказать, какой из вышеописанных подходов является наиболее оптимальным, в настоящее время довольно затруднительно. Это связано с тем, что единого критерия «универсальной оценки» так и не выработано. Как правило, и сами авторы, и сторонние исследователи оценивают эффективность на основе тех или иных тестовых задач в рамках определенных проблемных областей и при этом трактуют результаты очень по-разному. Более того, полученные результаты могут измениться при изменении тестовых условий, что потребует дополнительных исследований.
Совместное использование эволюционных алгоритмов и ИНС позволяет решать задачи настройки и обучения ИНС как по отдельности, так и одновременно. Одним из достоинств такого синтезированного метода является во многом унифицированный подход к решению разнообразных задач классификации, аппроксимации, управления и моделирования. Использование качественной оценки функционирования ИНС позволяет применять нейроэволю-
Yekaterina Yu. VINoGRADoVA
Cand. Sc. (Ec.), Assistant-Prof.,
Head of Automation Dprt.
Urals State University of Economics
620144, RF, Ekaterinburg,
ul. 8 Marta/Narodnoy Voli, 62/45
Phone: (343) 221-17-47
E-mail: [email protected]
Key words
software
intellectual information technologies artificial neural networks neural models process administration
Summary
The paper deals with fundamental principles of choosing the optimal topology for the construction of neural network that is used in managerial decision making process of economic entities.
UpRAvLENETs / 7-8/35-36/2012
УПРАВЛЕНЕЦ / 7-8/35-36/2012
Источники
1. Горбань А.Н., Россиев Д.А. Нейронные сети на персональном компьютере. Новосибирск: Наука, 1996.
2. Ежов А.А., Шумский С.А. Нейрокомпьютинг и его приложения в экономике и бизнесе. М.: МИФИ, 1998.
3. Кузнецов И.П. Механизмы обработки семантической информации. М.: Наука, 1978.
4. Итоги науки и техники: физические и математические модели нейронных сетей. М.: ВИНИТИ, 1990. Т. 1.
5. Миркес Е.М. Нейросетевые ритуалы анализа таблиц данных // Нейроинформатика и ее приложения: VIII Всерос. семинар. Красноярск: КГТУ, 2000.
6. Уоссермен Ф. Нейрокомпьютерная техника. М.: Мир, 1992.
ционные алгоритмы для решения задач исследования адаптивного поведения интеллектуальных агентов, поиска игровых стратегий, обработки сигналов. Несмотря на то что количество проблем и открытых вопросов, касающихся разработки и применения нейроэволюцион-ных алгоритмов (способы кодирования, генетические операторы, методы анализа и др.), велико, часто для успешного решения задачи с использованием ней-роэволюционного алгоритма достаточно адекватного понимания проблемы и нейроэволюционного подхода, свидетельством чего является большое число интересных и успешных работ в данном направлении.
Нейронечеткие, или гибридные, системы, включающие в себя нечеткую логику, нейронные сети, генетические алгоритмы и экспертные системы, являются эффективным средством при решении большого круга задач реального мира.
Каждый интеллектуальный метод обладает своими индивидуальными особенностями (например, возможностью к обучению, способностью объяснения решений), которые делают его пригодным только для решения конкретных специфических задач.
Например, нейронные сети успешно применяются в распознавании моделей, но они неэффективны в объяснении способов достижения своих решений.
Системы нечеткой логики, которые связаны с неточной информацией, успешно применяются при объяснении своих решений, но не могут автоматически пополнять систему правил, которые необходимы для принятия этих решений.
Названные ограничения послужили толчком для создания интеллектуальных гибридных систем, где два или более методов объединяются для того, чтобы преодолеть ограничения, характерные для каждого метода в отдельности.
Гибридные системы играют важную роль при решении задач в различных прикладных областях. Во многих сложных областях существуют проблемы, связанные с отдельными компонентами, каждый из которых может требовать своих методов обработки.
Пусть в сложной прикладной области имеется две отдельные подзадачи, например задача обработки сигнала и задача вывода решения. Тогда нейронная сеть и экспертная система будут использованы соответственно для решения этих отдельных задач.
Интеллектуальные гибридные системы успешно применяются во многих областях, таких как управление, техническое проектирование, торговля, оценка кредита, медицинская диагностика и когнитивное моделирование. И диапазон приложения данных систем непрерывно растет.
В то время как нечеткая логика обеспечивает механизм логического вывода из когнитивной неопределенности, вычислительные нейронные сети обладают такими заметными преимуществами, как обучение, адаптация, отказоустойчивость, параллелизм и обобщение.
Для того чтобы система могла обрабатывать когнитивные неопределенности так, как это делают люди, нужно применить концепцию нечеткой логики в нейронных сетях. Такие гибридные системы называются нечеткими нейронными или нечетко-нейронными сетями.
Нейронные сети используются для настройки функций принадлежности в нечетких системах, которые применяются в качестве систем принятия решений.
Нечеткая логика может описывать научные знания напрямую, используя правила лингвистических меток, однако много времени обычно занимает процесс проектирования и настройки функций принадлежности, которые определяют эти метки.
Обучающие методы нейронных сетей автоматизируют этот процесс, существенно сокращая время разработки и затраты на получение данных функций.
Теоретически нейронные сети и системы нечеткой логики равноценны, поскольку они взаимно трансформируемы, тем не менее на практике каждая из них имеет свои преимущества и недостатки.
В нейронных сетях знания автоматически приобретаются за счет применения алгоритма вывода с обратным ходом, но процесс обучения выполняется относительно медленно, а анализ обученной сети сложен («черный ящик»).
Невозможно извлечь структурированные знания (правила) из обученной нейронной сети, а также собрать особую информацию о проблеме для того, чтобы упростить процедуру обучения.
Нечеткие системы находят большое применение, поскольку их поведение может быть описано с помощью правил нечеткой логики, таким образом, ими можно управлять, регулируя эти правила. Следует отметить, что приобретение знаний - процесс достаточно сложный,
при этом область изменения каждого входного параметра необходимо разбивать на несколько интервалов; применение систем нечеткой логики ограничено областями, в которых допустимы знания эксперта и набор входных параметров достаточно мал.
Для решения проблемы приобретения знаний нейронные сети дополняются свойством автоматического получения правил нечеткой логики из числовых данных.
Вычислительный процесс представляет собой использование следующих нечетких нейронных сетей. Процесс начинается с разработки «нечеткого нейрона», который основан на распознавании биологических нейронных морфологий согласно механизму обучения. При этом можно выделить три этапа вычислительного процесса нечеткой нейронной сети:
• разработка нечетких нейронных моделей на основе биологических нейронов;
• разработка моделей синоптических соединений, которые вносят неопределенность в нейронные сети;
• разработка алгоритмов обучения (метод регулирования синоптических весовых коэффициентов).
Общая идея применения нейронных сетей, использующих обучение, основана на запоминании сетью предъявленных ей примеров и выработке решений, согласованных с запомненными примерами.
Практическая реализация этих положений подразумевает, во-первых, минимизацию объема памяти, требуемой для запоминания примеров, и, во-вторых, быстрое использование запомненных примеров, исключающее применение традиционных памятей с произвольной или последовательной выборками.
В нейронных сетях принято следующее представление решаемых задач. Каждому входному параметру х,, / = 1,п, задачи сопоставляется измерение / многомерного пространства, размерность которого равна числу п параметров. Для каждого параметра используется некоторая шкала, задающая возможные значения этого параметра. Тем самым постановка задач сводится к определению свойств точек х.={х.1, х.2,..., х.п} п-мерного пространства, где х.. - значение входного параметра / точки } при известных свойствах точек, принадлежащих примерам, использованным при обучении.
В задачах, эффективно решаемых нейросетями, точки многомерного про-
странства, в котором сформулирована задача, образуют области точек, обладающих одним и тем же свойством, например, принадлежащих одному классу объектов, имеющих одинаковое значение заданной на них некоторой функции и т.д. Нейронные сети запоминают подобные области, а не отдельные точки, представляющие предъявленные при обучении примеры.
Используются различные способы реализации запоминания областей. Наиболее употребляемые в настоящее время - это выделение областей посредством гиперплоскостей и покрытие областей гипершарами.
При использовании гиперплоскостей каждый нейрон } с пороговой функцией активации, ¡£{1,..., Ы}, N - число нейронов в сети, задает гиперплоскость значениями весов своих входов:
WjiXji
= 0
(1)
i=i
где а. - величина порога; п(\) - число входов нейрона ¡.
В этом случае запоминание примеров выполняется путем формирования нейронной сети и заданием весов входов. Изменение весов входов, числа нейронов, графа межнейронных связей меняет набор и положение разделяющих гиперплоскостей, разбивающих многомерное пространство на области.
Одноуровневая сеть, известная также как простой персептрон, не способна разделить на два класса точки, соответствующие нулевым и единичным значениям булевой функции «исключающее или». Двухуровневые сети и сети с большим числом уровней способны справиться с этой задачей. Посредством нейросетей с числом уровней, превышающим два, и с п входами может быть задана произвольная булева функция от п переменных.
Двухуровневая нейронная сеть способна аппроксимировать в равномерной метрике с любой заданной погрешностью £>0 любую непрерывную функцию Нх;, х2,..., хп), а в среднеквадратичной метрике - любую измеримую функцию, определенную на ограниченном множестве:
N
/Ol,X
1
+ е
-(»¡Л +W, 2*2 +И',Л +• • ■+«'*,*» )
(2)
где V - веса входов нейрона второго слоя с линейной функцией активации; w.j - вес ¡-го входа,¡=1,..., п, /-го нейрона, ¡= 1, ... , Ы, первого слоя с сигмоидной функцией активации; N - число нейронов первого слоя.
Существенным преимуществом аппроксимации нейронной сетью по сравнению с традиционными методами аппроксимации служит независимость точности аппроксимации от размерности входов. Среднеквадратичная ошибка аппроксимации может быть ограничена величиной порядка Ы-1. Тем самым устраняется «проклятие размерности» аппроксимируемой функции, делающее неприменимыми традиционные методы аппроксимации при сколько-нибудь значительных размерностях входного пространства.
Установление универсального аппроксимирующего свойства нейронных сетей вывело аппарат нейросетей из стадии эмпирических построений в класс теоретически обоснованных методов. В настоящее время быстро развиваются методы оценки точности аппроксимации от числа нейронов и построения нейросетей с заданной точностью аппроксимации.
В дальнейшем будем называть такие сети многоуровневыми персептронными сетями.
В случае покрытия гипершарами каждый нейрон задает значениями весов своих входов координаты центра гипершара, а также запоминает радиус полученного гиперкуба.
Эти сети называются сетями с радиусными базисными функциями, другое их название - вероятностные нейронные сети.
Как видно, в обоих случаях, при использовании как гиперплоскостей, так и гипершаров, имеет место реализация распределенного коллективного запоминания нейронами при обучении предъявленных сети примеров. Естественно, что рассмотренными двумя случаями разнообразие нейронных сетей не должно исчерпываться и существуют другие виды функций состояния и активации нейронов.
В ходе функционирования сеть относит предъявленный на ее входы набор значений к той или иной области, что и является искомым результатом. Заметим, что предъ-
UpRAvLENETs / 7-8/35-36/2012
УПРАВЛЕНЕЦ / 7-8/35-36/2012
References
1. Gorban A.N., Rossiev D.A. Neural networks on PC. Novosibirsk: Nauka, 1996.
2. Yezhov A.A., Shumsky S.A. Neural computing and its applications in economics and business. Moscow: MIFI, 1998.
3. Kuznetsov I.P. Semantic information processing mechanisms. Moscow: Nauka, 1978.
4. Results of science and technology: physical and mathematical models of neural networks. Moscow: VINITI, 1990. Vol. 1.
5. Mirkes Ye.M. Rituals of neural network analysis of data tables // Neural informatics and its applications: VIII All-Russia panel discussion. Krasnoyarsk: KSTU, 2000.
6. Wasserman Ph. Neural Computing. Theory and Practice. Moscow: Mir, 1992.
являемый сети набор входных значений мог не подаваться на входы сети при обучении. Но в силу сформированных посредством других наборов входных значений совокупности областей этот набор попадет в одну из них. Если результат правильный, то имеет место правильно функционирующая сеть, иначе сеть сконструирована или обучена с ошибкой. Поэтому смысл процедуры обучения или конструирования - отделение множеств точек каждой области без включения посторонних точек и потери своих.
Вообще говоря, можно ставить задачу синтеза требуемой нейронной сети. В этом случае должна быть сформирована система уравнений, левая часть которой строится на базе графа сети и функций активации и состояния нейронов. Основные трудности связаны с формированием правой части. Если известна структура области решения, то правая часть может быть как-то параметрически описана через известную структуру этой области. После решения сформированной системы будут вычислены необходимые веса ребер нейронной сети, решающей требуемую задачу. Однако, как правило, структура области реше-
ния заранее не известна. Максимум, что известно, - отдельные точки области решения, которые можно использовать как примеры при обучении сети.
Если известна структура области решения, то могут быть применены алгоритмы, базирующиеся на правилах типа «если А, то делай Б». В отличие от этих программ нейронная сеть может экстраполировать результат. Другое преимущество перед программами, базирующимися на правилах, состоит в том, что учет новых фактов заключается в переобучении сети с их участием, а не в переделывании правил программы и ее переписывании. Кроме того, настройка нейронной сети на большем числе примеров не увеличивает время ее работы, а введение новых дополнительных правил замедляет работу программы.
В заключение следует отметить, что чем более изучена проблема, тем выше вероятность применения для ее решения алгоритмов, основанных на формулах и правилах. Однако при ограниченном количестве экспериментальных данных именно нейронные сети являются аппаратом, позволяющим максимально использовать имеющуюся информацию.