Прогнозирование временных рядов методом SSA (пример)
Материал из MachineLearning.
 (→Постановка задачи)  | 
				 (→Описание алгоритма)  | 
			||
| Строка 12: | Строка 12: | ||
== Описание алгоритма ==  | == Описание алгоритма ==  | ||
Выберем n такое, что <tex>$0 < n \le N - 1$</tex> - время жизни многомерной гусеницы. Пусть <tex>$\sigma = N - n + 1$</tex> - длина гусеницы. Построим последовательность из n векторов в <tex>$R^{\\tau}$</tex>, <tex>$\tau = s*\sigma$</tex>, следующего вида:  | Выберем n такое, что <tex>$0 < n \le N - 1$</tex> - время жизни многомерной гусеницы. Пусть <tex>$\sigma = N - n + 1$</tex> - длина гусеницы. Построим последовательность из n векторов в <tex>$R^{\\tau}$</tex>, <tex>$\tau = s*\sigma$</tex>, следующего вида:  | ||
| - | <tex>$$Y^{(l)} \in R^\tau, Y^{(l)} = (X^{(l,1), \ldots, X^{(l,s)})^T,$</tex>  | + | <tex>$$Y^{(l)} \in R^\tau, Y^{(l)} = (X^{(l,1)}, \ldots, X^{(l,s)})^T,$</tex>  | 
Версия 10:15, 5 мая 2010
SSA (Singular Spectrum Analysis, "Гусеница") - метод анализа и прогноза временных рядов. Базовый вариант метода состоит в преобразовании одномерного ряда в многомерный с помощью однопараметрической сдвиговой процедуры (отсюда и название "Гусеница"), исследовании полученной многомерной траектории с помощью анализа главных компонент (сингулярного разложения) и восстановлении (аппроксимации) ряда по выбранным главным компонентам. Таким образом, результатом применения метода является разложение временного ряда на простые компоненты: медленные тренды, сезонные и другие периодические или колебательные составляющие, а также шумовые компоненты. Полученное разложение может служить основой прогнозирования как самого ряда, так и его отдельных составляющих. "Гусеница" допускает естественное обобщение на многомерные временные ряды, а также на случай анализа изображений. В данной статье рассмотрим вариант алгоритма, предназначенный для анализа многомерного временного ряда.
Постановка задачи
Наблюдается система функций дискретного аргумента {, где k = 1, ..., s}. Параметр s, таким образом, имеет смысл размерности многомерной числовой последовательности, а N - количество элементов в последовательности. Требуется разложить ряд в сумму компонент (используя метод главных компонент, см. описание алгоритма), интерпретировать каждую компоненту, и построить продолжение ряда 
 по выбранным компонентам.
Описание алгоритма
Выберем n такое, что  - время жизни многомерной гусеницы. Пусть 
 - длина гусеницы. Построим последовательность из n векторов в 
, 
, следующего вида:

