Сравнение временных рядов при авторегрессионном прогнозе (пример)
Материал из MachineLearning.
(→Постановка задачи) |
(→Алгоритм) |
||
Строка 16: | Строка 16: | ||
== Алгоритм == | == Алгоритм == | ||
- | + | ||
- | <tex> | + | Для настройки параметров модели <tex>f(\mathbf{x}, \mathbf{w})+\epsilon</tex> используется [[Связанный Байесовский вывод|связный байесовский вывод]] |
- | \ | + | |
- | \ | + | <tex>\ln p(D|\beta, A)=-\frac{1}{2}\ln|A|-\frac{N}{2}\ln2\pi+\frac{N}{2}\ln\beta-S(\mathbf{w_0})-\frac{1}{2}\ln|H|,</tex> |
- | + | ||
- | \ | + | где <tex>S(\mathbf{w})=\frac{1}{2}\mathbf{w}^TA\mathbf{w}+\beta E_D</tex> — функция ошибки, |
- | + | ||
- | \ | + | <tex>H=-\nabla\nabla S(\mathbf{w})|_{\mathbf{w}=\mathbf{w_0}}</tex> — [http://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%82%D1%80%D0%B8%D1%86%D0%B0_%D0%93%D0%B5%D1%81%D1%81%D0%B5 матрица Гессе] функции ошибок, |
- | \ | + | |
- | \left( | + | <tex>E_D=\frac{1}{2}\sum^n_{i=1}(\widehat{x_i}-x_i)^2</tex> — функция ошибки в пространстве данных. |
- | \begin{array}{ | + | |
- | \ | + | Настройка параметрической регрессионной модели происходит в 2 этапа, сначала настраиваются параметры <tex>\mathbf{w}</tex> при фиксированных гиперпараметрах <tex>\beta, A</tex>, затем при вычисленных значениях параметров функция правдоподобия <tex>\ln p(D|\beta, A)</tex> оптимизируется по гиперпараметрам. Процедура повторяется, пока настраиваемые параметры не стабилизируется. |
+ | |||
+ | Для простоты вычислений, считаем, что<tex> A </tex> имеет диагональный вид: | ||
+ | |||
+ | <tex>A=\left( | ||
+ | \begin{array}{cccc} | ||
+ | \alpha_{1} & 0 & \dots & 0\\ | ||
+ | 0 & \alpha_2 & \dots & 0 \\ | ||
+ | \vdots & \vdots & \ddots & 0\\ | ||
+ | 0 & \dots & 0 & \alpha_M\\ | ||
\end{array} | \end{array} | ||
\right). | \right). | ||
- | </tex> | + | </tex>. |
- | + | ||
== Вычислительный эксперимент == | == Вычислительный эксперимент == |
Версия 16:39, 19 декабря 2010
Содержание |
Аннотация
Временным рядом называется последовательность упорядоченных по времени значений некоторой вещественной переменной . Элемент последовательности называется отсчетом временного ряда.
Задача авторегрессионного прогноза заключается в нахождении модели , где вектор параметров модели, которая наилучшим образом приближает следущее значение временного ряда . Свертка временного ряда возникает в случае существования на множестве подпоследовательностей временного ряда некоторого инварианта. Примером инварианта является период временного ряда, который физически может означать сезонность в данных. При этом построенная модель должна учитывать наличие инварианта и сохранять данное свойство для ряда прогнозов: .
Постановка задачи
Пусть задан временной ряд . Предполагается, что отсчеты были сделаны через равные промежутки времени, и период временного ряда равен , при этом , где . Задана модель ,где случайная величина имеет нормальное распределение . Вектор параметров модели рассматривается как многомерная случайная величина. Пусть плотность распределения параметров имеет вид многомерного нормального распределения с матрицей ковариации . Модель некоторым образом учитывает период временного ряда. Предполагается, модель временного ряда может меняться с течением времени, т.е. для разных подпоследовательностей длины оптимальные параметры модели будут отличаться. Расстояние между различными подпоследовательностями и измеряется как сумма квадратов отклонений:
Расстояние между параметрами модели , настроенной на разных подпоследовательностях, можно измерить как расстояние Кульбака-Лейблера между функциями распределения 2-ух случайных величин :
Требуется исследовать зависимость расстояния между параметрами модели от расстояния между подпоследовательностями, на которых эти параметры были настроены.
Алгоритм
Для настройки параметров модели используется связный байесовский вывод
где — функция ошибки,
— матрица Гессе функции ошибок,
— функция ошибки в пространстве данных.
Настройка параметрической регрессионной модели происходит в 2 этапа, сначала настраиваются параметры при фиксированных гиперпараметрах , затем при вычисленных значениях параметров функция правдоподобия оптимизируется по гиперпараметрам. Процедура повторяется, пока настраиваемые параметры не стабилизируется.
Для простоты вычислений, считаем, что имеет диагональный вид:
.
Вычислительный эксперимент
Вычислительный эксперимент проводился на реальных данных. Использовались временные ряды потребления электроэнергии в некотором регионе с отсчетами а) 1 час и b) 24 часа. В первом случае период ряда был равен , во втором . Для решения задача линейной регрессии использовался метод наименьших углов (ЛАРС).
Исходный код
Смотри также
Литература
- Стрижов В.В, Пташко Г.О. Построение инвариантов на множестве временных рядов путем динамической свертки свободной переменной. — ВЦ РАН, 2009.
- Стрижов В.В Методы выбора регрессионных моделей. — ВЦ РАН, 2010.