14.09.2010
Сергей Головачев , научный сотрудник Центра фундаментальных исследований ГУ - ВШЭ
ФОРМУЛА МЫСЛИ . Статья.
Прогнозирование американского фондового рынка с помощью нейронных сетей.
Использование методов искусственных нейронных сетей как инструмента прогнозирования финансовых рынков является относительно новым и перспективным направлением, которое может выявить механизмы принятия решений рядовыми участниками рынка.
В теоретической части данной статьи описаны общие принципы, на основе которых строятся искусственные нейронные сети. В практической части статьи рассматриваются практические результаты прогнозирования с помощью двух нейронных сетей - сети Левенберга-Марквардта, использующей обобщенный метод обратного распространения ошибки, и синергетической сети Германа Хакена.
Особое внимание в ходе прогнозирования динамики фондового рынка будет уделено выявлению ключевых факторов, влияющих на формирование доходности на финансовые инструменты, в частности явлению обращения средних по знаку.
Общие принципы построения искусственных нейронных сетей
Учитывая те уникальные характеристики, которыми обладает наш мозг, неудивительно, что многие исследователи пытаются применить знания о его функционировании на практике, в частности, для ряда различных физико-математических задач и разнообразного прогнозирования. Модели, которые построены по принципу функционирования нейронов головного мозга, называются искусственными нейронными сетями.
Для того чтобы построить любую нейронную сеть, необходимо задать ряд важнейших параметров, которые будут непосредственным образом влиять на функционирование сети.
Во-первых, следует определить архитектуру нейронной сети. Для этого следует определить число слоев с нейронами, число нейронов в каждом слое и связи между нейронами и соответствующими слоями. В практической части данной статьи мы будем использовать простую трехслойную сеть с двумя входными значениями, двумя нейронами в скрытом слое и одним выходным значением, которое будет являться ориентиром для прогноза.
Во-вторых, следует задать функцию активации нейронов в каждом слое. Входное значение для функции активации - это суммарный вклад всех нейронов слоя, взвешенный по соответствующим весам (синапсам). При этом важное преимущество нейронной сети по сравнению, например, с регрессионными моделями состоит в том, что эти веса не являются раз и навсегда жестко определенными. Напротив, они меняются с течением времени, что как раз соответствует принципам функционирования головного мозга. Однако в отличие от нейронов мозга, которые, как отмечалось выше, генерируют определенный сигнал или "молчат", функция активации искусственных нейронов далеко не всегда бывает исключительно пороговой.
В-третьих, большую роль играет то, каким образом в сети будут представлены исходные данные для последующей обработки. Существует два принципиально разных подхода к представлению этой информации:
1) Априорные данные об окружающей действительности, достоверность которых не подвергается сомнению. Мы будем использовать данный подход при прогнозировании финансовых рядов с помощью сети Германа Хакена.
2) Эмпирические наблюдения за окружающей действительностью, которые могут быть лишь ее искаженным отражением. Мы будем использовать данный подход при прогнозировании финансовых рядов с помощью сети Левенберга-Марквардта.
В-четвертых, необходимо задать алгоритм обучения нейронной сети. Пожалуй, это наиболее сложный и принципиальный вопрос на начальном этапе построения. В зависимости от метода обучения, искусственные нейронные сети делятся на две большие группы.
Первая группа представляет собой сети, которые обучаются на определенном, заданном извне наборе обучающих примеров. Здесь можно выделить стандартные сети прямого прохода (feed-forward), а также рекуррентные (recurrent) нейронные сети, или сети с обратной связью. Важной особенностью и преимуществом рекуррентных сетей (в частности, сетей Элмана и Джордана) является то, что наряду с текущими входными значениями они также обрабатывают свои собственные "ответы" за прошлый временной период. Таким образом, при построении рекуррентной сети создается некий аналог долгосрочной памяти - прошлых входных значений, которые имеют определенное влияние на текущее принятие решений. Соответственно, в ходе обучения рекуррентной нейронной сети важна последовательность, в которой ей предъявляются обучающие примеры. Наиболее эффективным методом обучения данной группы нейронных сетей является метод обратного распространения ошибки, который также может быть представлен в обобщенном виде методом Левенберга-Марквардта. Именно такую сеть мы будем использовать в одном из практических разделов данной статьи…