назад Оглавление вперед


[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [ 9 ] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42]


9

I 1-51-

0.5 О

о оо

о о

ОООО ООО

о оо

ОООО оо

ООООо о

оо оо

во о оо о о о о А

ЛАДо

л ддд -л д ддд

дд д д д

д д д дд

Длина лепестка

□ Setosa о Versicolor * Virginica

Рис. 2.3. Ирисы Фишера. Двумерная проекция массива данных (ширина и длина лепестка)

Обучение и доводка

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

выход > 2/3 -> virginica, выход < 1/3 -> setosa, остальные значения -> versicolor.

Обучение было проделано с помощью пакета Nevada QuickProp на майнфрейм-комьютере Convex. Никакой оптимизации процесса обучения не производилось: процесс заканчивался, когда средняя квадратичная ошибка переставала существенно уменьшаться за 1000 итераций (эпох). Коэффициент, определяющий длину шага, во всех случаях принимался равным 0.1, а начальные значения весов брались случайным образом в интервале [-0.1,0.1]. Обучение занимало 10000-30000 эпох в зависимости от сложности сети. Полученные в результате значения весов приведены в верхнем левом углу таблицы на рис. 2.7 (см. ниже). В частности, значения веса третьего скрытого элемента и выходного узла равны, соответственно, 48.65 и 0.69. Вес соединения, идущего от первого скрытого элемента к выходному, равен 4.16.

Результаты

В табл. 2.1 приведены результаты для сетей в сравнении с другими известными методами.

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

Метод

Невязка при повторной подстановке

Правило индукции (Вейс и др.) Один ближайший сосед Деревья классификации и регрессии Индукция по решающему дереву Линейный дискриминантный анализ Квадратичный дискриминантный анализ Общий дискриминантный Анализ"

Сеть 4-3-1.г».;> "•г-гйгм.л

Сеть 4-4-1 •:ж,>тЛ.ш.х:Ш-

Сеть 4-5-1

7/150 6/150 4/150 3/150 3/150 3/150 3/150 3/150 2/150 0/150

Таблица 2.1. Результаты классификации (невязка при повторной подстановке) для задачи с ирисами Фишера

разец относился к тому или иному классу согласно простому пороговому правилу интерпретации выхода сети:

База данных и предварительная обработка

Имеются данные измерений для 150 экземпляров ирисов, в равных частях (по 50 штук) принадлежащих к трем видам (iris setosa, iris versicolor, iris virginica). Для каждого экземпляра ириса известны 4 величины: длина чашелистика (SL), ширина чашелистика (SW), длина лепестка (PL) и ширина лепестка (PW) (см. [111]). На рис. 2.3 показан представительный срез базы данных. Входной файл для нейронной сети состоит из 150 строк (по 50 для каждого сорта):

•первые 4 переменные - длина чашелистика (SL), ширина чашелистика (SW), длина лепестка (PL) и ширина лепестка (PW).

•пятая переменная- целевая, обозначает класс (вид) и для различных видов принимает следующие значения: О - setosa, 0.5 - versicolor, 1 - virginica. Такой способ кодировки связан с предположением Фишера, что versicolor - это гибрид setosa и virginica. На срезе PW/PL (рис. 2.3) можно заметить соответствующую упорядоченность. Здесь можно было бы использовать и другой метод кодировки, например разбить задачу на три подзадачи с двумя классами каждая.



Статистический анализ временных рядов

Подробное описание методов статистического анализа временных рядов выходит за рамки этой книги. Мы вкратце рассмотрим традиционные подходы, выделяя при этом обстоятельства, которые имеют прямое отношение к предмету нашего изложения. Начиная с пионерской работы Юла [295], центральное место в статистическом анализе временных рядов заняли линейные модели ARMA. Со временем эта область оформилась в законченную теорию с набором методов - теорию Бокса-Дженкинса (см. [48]). В этом подходе модель задается двумя компонентами, характеризующими авторегрессию и скользящее среднее. Общая формула для процесса с авторегрессией и скользящим средним порядка {p,q) имеет вид: „*:

X, =«0+Jfl.X, .+b.8, .+8,, V (2)

где р- порядок авторегрессии (положительное целое число), q - порядок скользящего среднего, 8, - шум (некоррелированный временной ряд, подчиненный гауссову распределению с нулевым средним и дисперсией ст). Коэффициенты а и by являются параметрами модели. Если q = 0, то получается авторегрессионная модель AR(p), а если р = О, - модель скользящего среднего МА(д).

Присутствие в модели ARMA авторегрессионного члена выражает то обстоятельство, что текущие значения переменной зависят от ее прошлых значений. Такие модели называются одномерными. Часто, однако, значения исследуемой целевой переменной связаны с несколькими разными временными рядами. Так будет, например, если целевая переменная- курс обмена валют, а другие участвующие переменные- процентные ставки (в каждой из двух валют). Соответствующие методы называются многомерными. Общий вид уравнения многомерной модели такой:

= о + Z Z -t, + . ..w .к(3)

k=l j=l

где к- номер временного ряда (всего их- N). Математическая структура линейных моделей довольно проста, и расчеты по ним могут быть без особых трудностей выполнены с помощью стандартных пакетов численных методов. Следующим шагом в анализе временных рядов стала разработка моделей, способных учитывать нелинейности, присутствующие, как правило, в реальных процессах и системах. Одна из первых таких моделей была предложена Тонгом [261] и называется пороговой авторегрессионной моделью (TAR). В ней, при достижении определенных (установленных заранее) пороговых зна-

ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ В АНАЛИЗЕ ВРЕМЕННЫХ РЯДОВ

Задача анализа временных рядов

Временной ряд - это упорядоченная последовательность вещественных чисел X,, t = 1,2,..., Г, представляющих собой результаты наблюдений некоторой величины. Эти значения обычно получают как результаты измерений в некоторой физической системе. Если нас интересуют зависимости между текущими и прошлыми значениями, то нужно рассматривать вектор задержки (х, 1,х, 2,...,х „) в «-мерном пространстве сдвинутых во времени значений, или пространстве задержки.

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

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

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



Затем были предложены STAR-, или «гладкие» TAR-модели. Такая модель представляет собой линейную комбинацию нескольких моделей, взятых с коэффициентами, которые являются непрерывными функциями времени. Примером может служить следующее уравнение модели, в котором 6 - гладкая функция, принимающая значения от О до 1:

е(х, ,)+Б,. (5)

Были предложены также многочисленные другие нелинейные Модели анализа временных рядов, см. [129], [220].

Модели, основанные на нейронных сетях с прямой связью

Любопытно заметить, что все описанные в предыдущем пункте модели могут быть реализованы посредством нейронных сетей. Любая зависимость вида х, =/(х,.,,х, 2,...,х, р)+8, с непрерывной нелинейной функцией /может быть воспроизведена на многослойной сети. Пример приведен на рис. 2.4.

Рис. 2.4. Реализация АКМА (p,q) модели на простейшей нейронной сети

Вместо того, чтобы отображать поверхность во входном (фазовом) пространстве, образованную данными, посредством одной ги-

перплоскости (AR), нескольких гиперплоскостей (TAR), или нескольких гиперплоскостей, гладко соединенных друг с другом (STAR), нейронная сеть может осуществить произвольное нелинейное отображение. Мы говорим это не для того, чтобы представить нейронные сети как универсальную модель в анализе временных рядов, а просто чтобы показать все многообразие структур, которые таким способом можно моделировать. Недавние исследования показали, что нейронные сети имеют, по сравнению с классическими моделями, более высокие потенциальные возможности при анализе сложной динамической структуры, но при этом дают лучщие результаты и на таких известных типах временных рядов, как стационарные, периодические, трендовые и некоторые другие (см. [275]). Мы согласны с мнением Куама [170], что перед окончательным формированием нейронной сети необходимо проделать моделирование на основе модульного подхода с выделением тренда и сезонных колебаний.

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

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

Сбор данных

Доводка

Архивация данных

Сценарии

Фильтрация данных

торговых операций

Выбор показателей

Торговля

V

ь J

Предварительная обработка

Анализ предсказание

Торговля

Рис. 2.5. Блок-схема финансового прогнозирования при помощи нейронных сетей

чений, происходит переключение с одной линейной AR-модели на другую. Тем самым в системе выделяется несколько режимов работы. Через 9j обозначим номер режима в момент t (6, = 1,2,...,г). Тогда одномерная AR-модель с соответствующим номером дает:

[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [ 9 ] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42]