Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)
Материал из MachineLearning.
Содержание | 
Постановка задачи
У нас есть временной ряд из матрицы  признаков и вектора 
 ответов. Нам необходимо восстановить вектор ответов 
 по матрице признаков 
. Известно, что временной ряд, который необходимо восстановить идет непосредственно после временного ряда, ответы для которого нам известны.
Предлагается использовать функционал качества MAPE:
-  
,
 
где  -- восстановленные ответы, а 
 -- правильные ответы.
Описание данных
У нас есть данные с 01/01/2003 до сегодняшнего дня. Данные для прогнозирования состоят из временного ряда, различных погодных параметров (температура, скорость ветра, относительная влажность, ...) и средних цен на электричество.
В нашей задаче мы используем следующие данные - матрицу переменных xRegression и вектор откликов yRegression. Мы будем обозначать их X  и Y соответственно. Размер X
-- , где 
 -- количество объектов (временной ряд дней), а 
 -- количество переменных. Размер Y
-- 
.
Первый столбец  и 
 -- временной ряд. Второй столбец 
 -- вектор откликов. Они нормализованы на среднегодичное значение. Количество переменных в 
 -- 26. Они представлены в таблице ниже.
| # | Описание | 
|---|---|
| 1 | временной ряд | 
| 2-6 | день недели | 
| 7-18 | месяц | 
| 19 | средняя температура | 
| 20 | индекс HDD | 
| 21 | индексCDD | 
| 22 | максимальная температура | 
| 23 | минимальная температура | 
| 24 | относительная влажность | 
| 25 | осадки | 
| 26 | скорость ветра | 
Предположения о характере данных
- Предполагается, что отсчеты времени сделаны через равные промежутки.
 
- Предполагается, что ряд имеет периодическую составляющую.
 
- Предполагается, что ряд имеет пропущенные значения.
 
- Предполагается, что длина ряда кратна периоду. Это условие можно достичь, присоединив к началу ряда необходимое число пропущенных значений.
 
В нашем случае, данные имеют ярко выраженную годовую периодическую составляющyю. Это можно проследить на примере данных о средней температуре за день.
Data-mean_temp.png
Пути решения задачи
- Данные имеют годовую периодику. Будем выполнять прогноз с горизонтом прогноза, равным длине периода, при помощи авторегрессии.
 
- Параметры модели, с помощью которых выполняется прогноз вектора Y, находятся с помощью алгоритма LARS.
 
Авторегрессия
Построение авторегрессионной матрицы. Дан временной ряд . 
Составляется   -матрица значений временного ряда:
, в которой длина ряда 
.
Обозначим столбцы матрицы . Для каждого столбца 
 матрицы 
 построим набор моделей-предикатов. Для это зафиксируем столбец 
 , считая, что прогнозируеем значение ряда в момент времени 
.
Для каждого из прочих столбцов  решим задачу линейной регрессии 
, где матрица
Функции  заданы или определены, исходя из дополнительных условий.
Выбирается заданное число  векторов 
 , доставляющих наибольшее значение функционалу качества. Обозначим 
 - множество выбранных индексов 
. Строится корректор над множеством моделей-предикатов- линейная регрессия   
 с ограничением на неотрицательность векторов 
. Матрица 
 - присоединённые векторы 
. Прогнозируемое значение ряда 
 в момент времени 
 равно значению первого элемента  вектора 
.
Вычислительный эксперимент
Авторегрессия
Выборка разбивается на обучающую и тестовую. Тестовой выборкой являются данные за последний год. Прогнозирование выполняется с помощью построения авторегрессионной матрицы. На примере нескольких временных рядом посмотрим, как реальные данные соотносятся с прогнозируемыми.
Cредняя температура
Минимальная температура
Индекс HDD
Осадки
LARS
Выборка разбивается на обучающую и тестовую. Тестовой выборкой являются данные за последний год. Вектор Y находим с помощью алгоритма LARS.Проверим, насколько реальные данные соотносятся с прогнозируемыми.
График LARS
График MAPE
Код
Смотри также
Литература
- Vadim Strijov Model Generation and its Applications in Financial Sector. — 2009.
 - Bradley Efron, Trevor Hastie, Iain Johnstone and Robert Tibshirani Least Angle Regression. — 2002.
 - Стрижов В.В Методы выбора регрессионных моделей. — 2010.
 - Rafal Weron Modeling and Forecasting Electricity Loads and Prices. — 2006.
 

