1.Постановка задачи
Имеется абстрактный временной ряд:
X=(x1, x2,…,xn), (1)
где хi – действительные числа.
Этот ряд может подразумевать под собой что угодно – изменение курса доллара в банке “Металлург” за последние тридцать дней, урожай кукурузы в колхозе “Отрадное” каждый год за последние 40 лет и т.д.
На основе временного ряда Х построить его продолжение Х`:
X`=(x1, x2,…,xn, xn+1, xn+2,…) (2)
2. Построение сети на основе временного ряда
Сеть обратного распространения успешно применялась многими авторами для решения задачи прогнозирования. Причем результаты оказывались на удивление правдоподобными. Это дало толчок к использованию нейронных сетей в сфере бизнеса для предсказания изменений курсов валют и т.д. Существует множество коммерческих нейросетевых программных продуктов для построения прогнозов.
Разобьем временной ряд на окна длины l+1:
x1, x2,…, xl, xl+1 (3)
x2, x3,…, xl+1, xl+2
…
xk, xk+1,…, xl+k-1, xn
Построим многослойный персептрон, имеющий l входов и один выход. Обучим его с помощью алгоритма обратного распространения на основе следующей обучающей последовательности:
xi, xi+1,…, xl+i-1 –> xl+i , i=1…n-l (4)
Сеть должна иметь достаточное количество связей для запоминания последовательности.
3. Получение решения на основе построенной нейронной сети
Значение хn+1(см. формулу (2)) снимается с выхода построенной выше нейронной сети при подаче на вход следующего вектора:
(xn-l+1, xn-l+2,…, xn), (5)
где n – длина исходного временного ряда;
l – размер окна;
Значение хn+2 находится аналогично, на вход сети подается вектор:
(xn-l+2, xn-l+3,…, xn+1), (6)
где n – длина исходного временного ряда;
l – размер окна;
Таким образом, мы можем продолжать исходный ряд сколь угодно долго, находя следующие значения на основе предыдущих.
Пример функционирования метода:
Сеть имеет 2 входа 1 выход, два нейрона в скрытом слое, размер окна - 3. Значения востанавливались при подаче на входы сети не ее же предыдущих выходов(см. выше), а на основе исходного ряда. Черное – реальный ряд, желтое – восстановленный (рис. 1).
Рис. 1
На рис. 2 ряд восстановлен только по первому окну.
Рис. 2