Прогнозирование на основе аппарата нейронных сетей

Автор работы: Пользователь скрыл имя, 28 Декабря 2011 в 00:41, курсовая работа

Описание работы

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

Файлы: 1 файл

курсовая.rtf

— 607.47 Кб (Скачать файл)

     Пример удачного прогнозирования динамики биржевых курсов по заказу Chemical Bank продемонстрировала фирма Logica. На технической базе Sun SPARCstation LX с помощью нейронных вычислений моделировались рынки валютных курсов доллар/швейцарский франк и немецкая марка/швейцарский франк. Выбор именно этих валют объяснялся высоким уровнем подвижности первого соотношения и малым второго (до кризиса в 1993 году) . Данные о динамике кросс-курсов этих валют собирались с 1 октября 1992 года по 1 октября 1993 года, при этом ценовые прогнозы характеризовались пятью категориями: большой рост, малый рост, без изменений, малый спад, большой спад. В итоге нейронная система предсказала за вышеупомянутый годовой период 55 % реальных данных по первому соотношению валют и 23 % - по второму.

     Лондонская фондовая биржа (ЛФБ) начала внедрение автоматизированной системы с элементами искусственного интеллекта на базе нейронных вычислений для контроля внутреннего дилинга. Первый этап инсталляции этой системы, разработанной лондонской фирмой SearchSpace и получившей кодовое наименование MonITARS (Monitoring Insider Trading and Regulatory Surveillance) , успешно завершен.

     По оценкам экспертов, бум вокруг систем искусственного интеллекта в финансовой индустрии пришелся на период 1984 - 1989 гг. В основном он затронул США и в меньшей степени Великобританию, где разработчики сложных имитационных систем для военных (типа программы "Звездные войны") решили попытать счастья на Уолл-стрит. Многие разработчики действительно обогатились, чего нельзя сказать о финансовых структурах, чьи завышенные ожидания эффекта от внедрения подобных систем не оправдались. Так, один крупный инвестиционный банк на Уолл-стрит потратил более 1 млн. долл. на разработку системы искусственного интеллекта для финансовых операций, но спустя некоторое время вынужден был вернуться к старой, "неинтеллектуальной". Одной из причин неудачи был недостаточный по сравнению с ожидаемым уровень производительности системы, полученный в результате ее внедрения.

     Американская фондовая биржа в Нью-Йорке пошла по аналогичному пути, запустив в 1987 году автоматизированную систему Stockwatch Alert Terminal (SWAT) II. Ее расширенная версия - SWAT III - сейчас проходит бета-тестирование и, видимо, будет внедрена в начале года. Правда, фирма SearchSpace утверждает, что выбрала другую технологию (в отличие от SWAT) , называемую "генетическими алгоритмами", и ведет переговоры о ее внедрении с рядом бирж Европы и Дальнего Востока.

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

     Mellon equity Associates - подразделение Mellon Bank в Питтсбурге (США) - достаточно давно применяло собственную систему анализа линейной регрессии для распределения фондов и специальной селекции акций. В ходе работы они обнаружили, что между различными оценочными параметрами существуют нелинейные связи, не поддающиеся точному учету с помощью имеющегося у них инструментария.

     Поскольку данное направление работ составляет примерно половину всего бизнеса компании (под управлением находится около 2.5 млрд. долл. инвестиций) , то поиск более точных средств стал жизненно важной задачей. После тщательного анализа разных систем разработок ПО с помощью нейронных сетей Mellon Equity Associates выбрала пакет Neural-Works Professional II/Plus 5.0 фирмы Neural- Ware (Питтсбург) . Основанием для этого послужило наличие у него таких возможностей, как усиленный темп самообучения на базе "генетического алгоритма", очень важного для моделирования систем "с шумом".

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

     Neural-Works Professional II/Plus 5.0, инсталлированный в компании Mellon Equity Associates, ориентирован на IBM-совместимый ПК с 486-м процессором (правда, в качестве препроцессора там используется мэйнфрейм VAX) и содержит компилятор языка C и стандартные электронные таблицы. Пакет внедрялся в течение четырех-пяти месяцев и в рабочем режиме функционирует с января 1994 года.

     Гораздо более распространены случаи, когда в финансовых структурах применяются уже готовые приложения на базе нейронных сетей, например для автоматического распознавания чеков. Подобная система Quick Strokes-IFPS фирмы Mitek Systems (Сан-Диего, шт. Калифорния) была установлена в 1993 году в Федеральном резервном банке Чикаго. Она позволяет оперативно распознавать сканируемые чеки, используя среду обработки данных на базе мэйнфрейма.

     Департамент торговли и индустрии правительства Великобритании спонсирует две программы, направленные на развитие нейронных вычислений в финансовой сфере. Это "Клуб нейропрогнозирования", созданный Лондонской школой бизнеса совместно с университетским колледжем Лондона (UCL) , и "Нейронные сети для финансовых услуг", продвигаемый фирмой TBS Bank Technology с UCL и Центром прогнозирования Henley. Вместе с тем среди множества финансовых институтов, известных как пользователи или исследователи этой технологии, фигурируют такие гиганты, как Chemical Bank, Citibank, JP Morgan и др.

     Начав работу в этом направлении сравнительно недавно, программисты Великобритании уже добились ощутимых результатов. Группа специалистов, входящих в "Клуб нейропрогнозирования", создала нейронную систему для выработки тактики распределения фондов на глобальных рынках облигаций. Она охватывает семь отдельных географических регионов: Великобританию, Францию, Германию, Японию, США, Канаду, Австралию, и каждый из них моделируется особой локальной сетью нейронов. Все они проходят своеобразный процесс обучения на исторических данных с целью получения краткосрочных прогнозов ситуации на этом рынке за каждый месяц. Все локальные предсказания затем объединяются в Центре управления единым портфелем ценных бумаг.

     Вышеописанная система с ноября 1992 года поступила на вооружение Североамериканской страховой компании в Бостоне (США) . В итоге капитал этой компании быстро увеличился с 25 до 50 млн. долл., а портфель ценных бумаг показал доходность свыше 25 % в первый же год внедрения системы. В этом нет ничего удивительного, так как нейронная сеть представляет собой универсальное средство аппроксимации, способное решить любую задачу.

     Одна из наиболее передовых методик нейронных вычислений - генетические алгоритмы, имитирующие эволюцию живых организмов. Поэтому они могут быть использованы как оптимизатор параметров нейронной сети. Подобная система для прогнозирования результатов контрактов по долгосрочным ценным бумагам повышенной надежности была разработана и инсталлирована на рабочей станции Sun в компании Hill Samuel Investment Management. При моделировании нескольких стратегий торгов она достигла точности 57 % в предсказании направления движения рынка. В страховой фирме TSB General Insurance (Ньюпорт) используется сходная методика для прогноза уровня риска при страховании частных кредитов. Данная нейронная сеть самообучается на статистических данных о состоянии безработицы в стране. 

     Выводы 

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

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

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

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

 

      4. Нейронные сети основанные на методе обратного функционирования  

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

     4.1 Обучение нейронных сетей  

     Мы можем научить трехслойную сеть решать определенную задачу, пользуясь следующей процедурой. Сначала мы предъявляем сети серию тренировочных примеров, которые состоят из паттерна активностей входных элементов вместе с желаемым паттерном активностей выходных элементов [8].

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

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

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

     4.2. Алгоритм обратного распространения 

     4.2.1 Идея создания алгоритма обратного распространения

     Примерно в 1974 году Поль Дж. Вербос изобрел значительно более эффективную процедуру для вычисления EW, когда работал над своей докторской диссертацией в Гарвардском университете. Процедура, известная теперь как алгоритм обратного распространения (back propagation algorithm) , стала одним из наиболее важных инструментов в обучении нейронных сетей [5,16,27,30,42,48,49].

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

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

Информация о работе Прогнозирование на основе аппарата нейронных сетей