Анализ возможностей нейронных сетей для прогнозирования задач легкой
промышленности Дата: 25/03/2007 Номер: (09) УЭкС, 1/2007
Аннотация: В данной статье предлагается использовать концепцию нейронных сетей для анализа и прогнозирования поведения объектов легкой промышленности, базируясь на существующих пакетах прикладных программ. Целью исследования является построение математической нейромодели, которая для нового набора исходных данных выдавала бы отклик Y с точностью не хуже 5%. Эта модель должна отражать связь между показателями хозяйственной деятельности предприятия Y1, X1-X14 (входы модели) и поквартальным индексом снижения себестоимости продукции Y (%) (выход модели). В дальнейшем ее можно использовать для прогнозирования развития данного предприятия на будущие периоды времени.
Abstract: In given article it is offered to use the concept of neural networks for the analysis and forecasting of behaviour of objects of light industry, being based on existing packages of applied programs. A research objective is construction mathematical neural model which for a new set of initial data would give out response Y with accuracy not worse 5 %. This model should reflect communication between indicators of economic activities of enterprise Y1, X1-X14 (model inputs) and a quarterly index of decrease in the cost price of production Y (%) (a model exit). In further it can be used for forecasting of development of the given enterprise for the future periods of time.
Ключевые слова: нейронные сети, прогнозирование развития Keywords: neural networks, development forecasting
Шарстнёв Владимир Леонидович кандидат технических наук, профессор Вардомацкая Елена Юрьевна Республика Беларусь, Витебский государственный технологический университет
Выходные данные статьи: Шарстнев, В.Л. Анализ возможностей нейронных сетей для прогнозирования задач легкой промышленности / В.Л.Шарстнев, Е.Ю.Вардомацкая // Управление экономическими системами: электрон. науч. журн. / Кисловодский институт экономики и права - [Электронный ресурс]. - Киров: ООО "Международный центр научно-исследовательских проектов", 2007. - № 1 (09). - № гос регистрации статьи 0420700034/0004. - Режим доступа к журн.: http://uecs.mcnip.ru.
В любой области человеческой деятельности есть плохо алгоритмизируемые задачи, для решения которых необходима либо постоянная работа группы квалифицированных экспертов, либо адаптивные системы автоматизации. Одной из таких областей является легкая промышленность.
В данной работе предлагается использовать концепцию нейронных сетей для анализа и прогнозирования поведения объектов легкой промышленности, базируясь на существующих пакетах прикладных программ.
Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга. Нейрон -специальная клетка, способная распространять электрохимические сигналы - имеет разветвленную структуру ввода информации (дендриты), ядро и разветвляющийся выход (аксон). Аксоны клетки соединяются с дендритами других клеток с помощью синапсов. При активации нейрон посылает электрохимический сигнал по своему аксону. Через синапсы этот сигнал достигает других нейронов, которые могут в свою очередь активироваться. Нейрон активируется тогда, когда суммарный уровень сигналов, пришедших в его ядро из дендритов, превысит определенный уровень (порог активации). Интенсивность сигнала, получаемого нейроном (а, следовательно и возможность его активации), сильно зависит от активности синапсов. Обучение нейронной сети заключается в первую очередь в изменениях "силы" синаптических связей. Таким образом, мозг может быть сравним с системой из параллельных процессоров, работающих гораздо эффективнее, чем популярные сейчас последовательные вычисления.
В основу искусственных нейронных сетей положены следующие черты живых нейронных сетей: простой обрабатывающий элемент - нейрон, участие большого числа нейронов в обработке информации, массированная параллельность обработки информации за счет большого числа изменяющихся по весу связей между нейронами.
В настоящее время существует определенное количество работающих и реализованных программно архитектур нейронных сетей, так как не всякое соединений нейронов будет работоспособно и вообще целесообразно. По архитектуре связей нейросети могут быть сгруппированы в два класса: сети прямого распространения, в которых связи не имеют петель и сети рекуррентного типа, в которых возможны обратные связи.
Для реализации работы моделей нейронных сетей разного вида разработано специальное программное обеспечение. В качестве наиболее удобного и адаптированного для квалифицированного пользователя средства могут быть рекомендованы:
1. пакет Statistica Neural Networks, в частности, для решения задач регрессии и прогнозирования временных рядов. Задачи регрессии в этом пакетеможно решать с помощью сетей следующих типов: многослойный персептрон, радиальная базисная функция, обобщенно-регрессионная сеть и линейная сеть. При этом выходные данные должны иметь стандартный числовой (не номинальный) тип.
2. надстройка ExcelNeuralPackage, реализующая концепцию нейронных сетей и возможности решения широкого круга финансово-экономических, статистических и управленческих задач, с помощью сетей на основе однослойного и многослойного персептрона.
К профессиональным пакетам прикладных программ можно отнести лидера нейросетевых технологий - продукты компаний Ward Systems Group, Inc. и Российской компании “НейроПроект”.
Покажем, как с помощью пакета STATISTICA Neural Networks построить нейронную сеть для решения задачи регрессионного анализа и прогнозирования. В качестве объекта
исследования используем показатели экономической деятельности одного из предприятий легкой промышленности г.Витебска и проведем анализ влияния показателей экономического роста предприятия на индекс снижения себестоимости продукции.
Целью исследования является построение математической нейромодели, которая для нового набора исходных данных выдавала бы отклик Y с точностью не хуже 5%. Эта модель должна отражать связь между показателями хозяйственной деятельности предприятия Y1, Х1-Х14 (входы модели) и поквартальным индексом снижения себестоимости продукции Y (%) (выход модели). В дальнейшем ее можно использовать для прогнозирования развития данного предприятия на будущие периоды времени (кварталы).
Для обучения сети возьмём выборку из 45 поквартальных данных за 1995-2005 годы, сформированных на основе бухгалтерской отчетности Вид таблицы данных представлен на рис.1.
Таблица исходных данных
1 2 э 4 5 6 7 8 3 10 11 12 13 14 15 16 17
N Y Y1 XI Х2 ХЗ Х4 ХБ ХБ Х7 Я0 Х9 Х10 Х11 Х12 Х13 Х14
1 2Q4.2 9.26 0,23 0,76 0.4 1.37 1,23 0.23 1,45 26006 167.69 47750 6.4 166.32 10.06 ¡7,72
2 209.6 3J35 0,24 0.75 0,26 1.49 1,04 0.39 1.3 2ЭЗЭ5 166,1 50391 7.0 92J0S 14.76 ¡3,39
3 222.6 12,11 0,19 0,68 0.4 1.44 1.3 0,43 1,37 22589 220.45 43143 9.76 15В04 6.43 26,46
4 236,7 10jst 0,17 0,7 0,5 1,42 0,43 0.18 1,65 21220 169,3 41089 7,9 93J96 21,36 22,37
5 62 9,35 0,23 0.62 0,4 1.35 0,33 0.15 1,91 7394 39.53 14257 5.35 173.38 1Ш 23,13
Б 53,1 9,87 0,43 0.76 0,19 1.39 0,57 0.34 1,63 115S6 40.41 22661 9,9 162,3 12.6 17,55
7 172,1 8,17 0,31 0,73 0,25 1,16 1,72 0.38 1,94 2ББ09 102J96 52509 4,5 8856 11,52 21,32
3 56,5 9,12 0,26 0,71 0,44 1J27 1.7 0,09 1,69 7301 37.02 14903 48S 101,18 3,28 13,52
9 52 JE 5JBB 0,49 0,69 0,17 1.16 0,34 0,14 1,94 11587 45.74 25587 3,45 166.32 11.52 23,99
10 46.6 6,3 0,36 0.73 0.39 1.25 0J6 0.21 2.06 9475 40.07 16S21 3.6 140,76 32,4 21,76
Рис.1. Исходные данные
Приведем поверхности зависимостей Y=f(X1, Х3) и Y=f(X8,X10) (см.рис.2), где
Y - поквартальный индекс снижения себестоимости продукции, %,
XI - трудоемкость единицы продукции, час,
Х3 - удельный вес комплектующих изделий,
Х8 - среднесписочная численность персонала, чел.,
Х10 -фонд заработной платы персонала, млн. руб.
ЛО ‘jMrt*-* |-Ш(Г«Г^Ик«1| *w . Д4ИНМ* «•«/•$ »с » '* - Хи»
к. ---..
Рис.2. Поверхности Y=f(X1,X3) и Y=f(X8,X10)
Факт нелинейности поставленной задачи не вызывает сомнения. По виду поверхностей, изображенных на рис.2, предположить вид зависимостей трудно, тем более, что учтены далеко не все факторы. Для построения модели можно использовать модуль Statistica Nonlinear Estimation и при помощи встроенных в него процедур «нащупать» вид
функции. Но предварительно следует, во-первых, провести анализ значимости независимых факторов Y1, X1-X14 и степень их влияния на выходной параметр Y, во-вторых, самостоятельно определить вид функциональной зависимости Y=f(Y1,X1,X2, ...., Xn).
Построим нейронную сеть, которая сама подберет адекватную функцию, наилучшим образом аппроксимирующую исходные данные.
На первом этапе выполняется обучение сети на тестовом множестве. Здесь необходимо вначале разделить данные на входные^1, X1-X14) и выходные (Y) и оценить значимость входов, так как не все рассматриваемые факторы X оказывают существенное воздействие на исследуемый показатель Y. Доля влияния некоторых факторов может оказаться столь незначительной, что их игнорирование не приведет к существенным отклонениям исследуемого объекта. Далее определим конфигурацию сети.
Надстройка STATISTICA Neural Networks (SNN) позволяет упростить этот процесс за счет использования процедуры Intelligent Problem Solver, которая автоматически понизит размерность проектируемой сети, выделив наиболее значимые факторы (рис. 3) и самостоятельно осуществит поиск нейронной сети, анализируя сети разной топологии.
Понижение размерности - Forwards Selection (Таблица иен данным)
Forwards Selection (Таблица иск данных) !
Ermr Y1 |Х1 |Х2 ,ХЗ ІХ4 ,Х5 Щ :Х7 ,ХЗ ,ХЭ IXI□ |Х11 XI2 |X13 1X14
Final 10.0093721 Y Y - Y - - - - Y Y Y Y - - -
Рис.3. Результат использования процедуры понижения размерности
Во время работы алгоритма поиска подходящей нейронной сети в соответствующем диалоговом окне приводится информация о рассмотренных нейронных сетях. Цель алгоритма поиска - перебор ряда нейросетевых конфигураций и выбор наилучшей с точки зрения минимума ошибки на выходе сети и максимума ее производительности (рис.4).
-J '|| WDKkhnnk У ■ - МшЫ Summary Перш- Г (I afinmi л ис и данным)
luden Mattel Summary Report (Таблица не* дан-ных)
Profile Train Perf Select Perf Tesi P&rf Train Errar 3elec< Erroi Tesi EfrOf Trjinino/Msftbers
1 MLP 2:2-6-1 I 0,154767 0,164335 0,516130 0Д37755 0J017477 0 J046J 36 BP100,CG20.CG18b
2 Linear 77-1 1 0,109704 0,130110 0,293701 0,025771 0,012492 0р32в41 PI
Э MUP 4:4-4-1:11 1 0.109022 0.092373 OJ7í6eO OJ025611 0J51060S 0.027245 0P100,CG2G,CG5Li
4 RBF 4:4*М:1 0ДО956 1.467179 1 L3252S6 0.004124 0J0Q4301 0j00335l KMXM.Pl
5 RBf 4:4-2-1 1 0,32573? ■D.S39227 0,967350 0.002231 0.00 2 350 0.-IC2577 KM.KN.Pl
Рис.4. Лучшая сеть
Для обучения алгоритм поиска сети самостоятельно разбивает все множество наблюдений на обучающее (Training), контрольное (Selection) и тестовое (Test). На обучающем множестве происходит непосредственное обучение сети, то есть изменение весовых коэффициентов нейронов пропорционально ошибке на выходе. Данные контрольного множества используются для кросс-проверки: на каждом шаге обучения сети рассчитывается ошибка для всего набора наблюдений из контрольного множества и сравнивается с ошибкой на обучающем множестве. Поскольку алгоритм обучения сети нацелен на минимизацию ошибки на выходе сети, то хорошей сетью следует признать ту, у которой ошибка одинаково мала на всех трех подмножествах. Производительность сети (S.D. Ratio) - это отношение стандартного отклонения ошибок сети к стандартному отклонению исходных данных. Если производительность сети не
превышает значения 0,2, то сеть подобрана хорошо. При выборе нейросети следует также учитывать, что общее число связей сети (весов) должно быть в несколько раз меньше объема обучающей выборки. Это обеспечит достаточно гладкую аппроксимацию данных. В рассматриваемом примере объем выборки равен 45, то есть количество связей сети должно быть не более 20.
Анализируя показатели сетей, построенных с помощью процедуры Intelligent Problem Solver надстройки SNN была выбрана нейросеть: трехслойный персептрон с 4-мя нейронами на скрытом слое, производительностью 0,12 (рис.4, 5), иллюстрация которой представлена на рис. 5. Таким образом, Intelligent Problem Solver дважды понизил размерность сети: первый раз на начальном этапе отобрал семь наиболее значимых факторов из пятнадцати (рис.3), затем при построении и обучении сети, учитывая объем выборки, уменьшил число входов до четырех.
Рис.5. Иллюстрация сети
Графической иллюстрацией качества работы нейронной сети является график зависимости наблюдаемых значений выходной переменной Y (Y-Observed) от предсказанных значений ^3 (Y-Predicted) (рис. 6.).
. ош«и о i
МО
«Лэ _
¿ XJO -* ИК.
• •
•09 90
«О 0 46 1М1((1}М.|«»М1«й«»4»Й№1«й«№«№ ГОО *
Ж
Y.3
204,20001205.0270
209.6000 213,4352
222.6000 241,2837 236.7000 195,3352
62,0000 57,8701 53,1000 76,9497
172,1000 163,0690 56,5000 56,4737
52.6000 49,6296
46.6000 41.0722
Рис.6. Графическая иллюстрация качества работы сети
Точки этого графика расположены достаточно близко к прямой, лежащей на под углом 45 градусов к осям координат, следовательно модель построена хорошо.
На основании предсказанных нейросетью значений Y, используя возможности модуля STATISTICA Multiple Regression, рассчитаем уравнение нейрорегрессии и оценим его адекватность. Коэффициенты уравнения нейрорегрессии и регрессионная статистика приведена в таблице на рис. 7
Нвррсз«| Эитгш* Аог Регелйргц Уапэ*1в \ не (Таблица данны * с иеЛрипрвгноэоЦ Р- Я?» .здиже Афзыеи Юн .Эвб'ОЖ Г|7^Д=ЭН,51 р<5даОВШ£1тпг^?411пцц. 11,75?
ВШд 8Й 6|г пГ ВрСз- в 5М £п она [Ст рйрй
1п1я№гр1 ! -*00.123 23,87015 -3 35153 0)002883
П П.ШЫИ О-ОЯЬЛ 9,ЭП г,шп з.-лггг 1иШ21!»Г
Х1 51.136 5?,Щ32 0.Р3717 0,334291
Я и.О/Ь^.1» о.вйш ■5?,гз^ ггдаш 2.12МТ иЛИтИН
>3 СД00Л2 029232! 0,002 ОДОЗЗб 0.63Е61 0,499«9
1!.й:Ни1 1^П1ЭЯ ||,7/ь и.ип!!?: и.жта АЛШШ
Х10 олтззаг ол«езг ОДП 0,06160 0£б1«5
«1 -0.013093 и 040406 ;.№Л9 -э.з?ж й.7№'Я
Рис.7. Результаты расчета уравнения нейрорегрессии
Поскольку значимыми являются только коэффициенты при Y1, Х3 и Х9, уравнение нейрорегрессии следует уточнить, рассчитав его только по этим факторам. В результате проведенного анализа при принятом уровне значимости 5% и степенях свободы 45-7-1=37 результаты нейромоделирования могут быть записаны в виде приближенного уравнения нейрорегрессии
Y (нейро) = 3,18^1+102.35-Х3+1.046-Х9 - 40.255 (1)
Наиболее важный в практическом использовании этап работы с сетью - это выполнение нейропрогноза. Используем для этого обученную и протестированную нейросеть. Добавив в тестовое множество несколько дополнительных примеров наблюдения, в которых выходное значение - индекс снижения себестоимости продукции (%) У пока неизвестно (поэтому оно принимается равным нулю) и, запустив нейропредсказатель, получим отклик сети. Расчет прогноза по уравнению регрессии (1) - Yнр и отклик сети Yнс представлены на рис. 8.
Сравнение фактического иццексд снижент себестоимости продукт#!!! С НвМрОТфОГНО <01.1
-Ш—Уне------У
I 3 5 7 9 И 13 »5 17 19 21 23 25 3 29 31 33 3!
¡Л Оа(а: Нейропрогноз * (6у -|П| х|
3
1 2 3 4 Унр Уне У У1 5 ХЗ 6 Х9
149.03 132.46 0 7,5 0,6 100
94.69 78.56 0 6.5 0,35 75
57,96 44.26 0 5,5 0,15 62,5
62,17 73,24 0 6 0.15 65
92,72 90,03 0 10 0,6| л
Л
Рис.8. Отклик сети
Результаты нейромоделирования хорошо аппроксимируют фактические данные и общая квадратичная ошибка составляет 3%. Это позволяет сделать вывод, что смоделированная нейросеть будет чувствительна к вариации входных параметров и следовательно может быть использована для прогнозирования экономической деятельности предприятий легкой промышленности на будущие периоды.
Литература
1. Бэстенс Д.-Э., Ван Ден Берг В.-М., Вуд Д. Нейронные сети и финансовые рынки. Принятие решений в торговых операциях. - М.: Изд-во ТВП, 1997.
2. Каллан Р. Основные концепции нейронных сетей: пер. с англ. М.: ИД «Вильямс», 2001.
3. Шегпе^ресурс http://statistica.com.
№ гос регистрации статьи 0420700034\0004
Это статья Электронный научный журнал "Управление экономическими системами"
http ://uecs.mcnip.ru
URL этой статьи: http://uecs.mcnip.ru/modules.php?name=News&file=article&sid=67