Математические методы прогнозирования (лекции, В.В. Стрижов)/Группа 774, осень 2020
Материал из MachineLearning.
Лекции по четвергам в 10:30 тут: m1p.org/go_zoom
This course joins two parts of the problem statements in Machine Learning. The first part comes from the structure of the measured data. The data come from Physics, Chemistry and Biology and have intrinsic algebraic structure. This stricture is part of the theory that stands behind the measurement. The second part comes from errors of the measurement. The stochastic nature errors request the statistical methods of analysis. So this course joins algebra and statistics. It is devoted to the problem of predictive model selection.
The course holds two semesters: Fall 2020 and Spring 2021. It contains lectures and practical works. Out of schedule cuts off half the score. The scoring, max:
- Questionnaires during lectures (3)
- Two application projects (2+2)
- The final exam: problems with discussion (3)
Список вопросов и ссылки на материалы курса для зачета
Youtube video
- Л1: Анализ ошибки и вероятностные модели
- Л2: Примеры прогностических моделей и вероятностная интерпретация
- Л3: Свертка и фазовая траектория
- Л4: Авторегрессионные модели и учет ошибки
- Л5: Динамическое выравнивание, локальное прогнозирование
- Л6: Метод проекции в скрытые пространства PLS
Практическое задание
Формат выполнения
- Создать файл pynb Surmane2020Problem в папке
- В файле Название задачи, автор
- Краткое пояснение задачи
- Желательна модель в виде формулы, а не в виде алгоритмического описания
- Три функции: модель, критерий качества, прогноз, оптимизация параметров (и выбор модели)
- График с прогнозом
- График с анализом ошибки на ваш выбор
Пояснение для сдающих в январе 2021: задание должно содержать
- время (можно в натуральных числах), явно указывающее на объект выборки,
- прогноз на несколько точек (поточечно, если это модель дает поточечный прогноз).
Пример:
Краткое описание задач
Задача 0: Протокол поточечного прогнозирования
Взять из работы Никиты Уварова
Задача 1: Непараметрическое прогнозирование: выбор ядра, настройка параметров
В работе описывается метод ядерного сглаживания временного ряда, как один из видов непараметрической регрессии. Суть метода состоит в восстановлении функции времени, как взвешенной линейной комбинации точек из некоторой окрестности. Непрерывную ограниченную симметричную вещественную весовую функцию называют ядром. Полученная ядерная оценка используется для прогнозирования следующей точки ряда. Исследуется зависимость качества прогнозирования от параметров ядра и наложенного шума.
Задача 2: Экспоненциальное сглаживание и прогноз
В работе исследуется применение алгоритма экспоненциального сглаживания к прогнозированию временных рядов. В основе алгоритма лежит учет предыдущих значений ряда с весами, убывающими по мере удаления от исследуемого участка временного ряда. Изучено поведение алгоритма на модельных данных в различных моделях весов. Проведен анализ работы алгоритма на реальных данных -– биржевых индексах.
Задача 3: Выделение периодической компоненты временного ряда (пример)
В проекте исследуется временной ряд на наличие периодической компоненты, строится тригонометрическая интерполяция предложенных временных рядов методом наименьших квадратов. Производится оценка параметров функции метода наименьших квадратов в зависимости от качества прогнозирования. В вычислительном эксперименте приводятся результаты работы корреляционной функции и метода наименьших квадратов на зашумлённом модельном синусе и реальном временном ряде электрокардиограммы.
Задача 4: Многомерная гусеница, выбор длины и числа компонент гусеницы (сравнение сглаженного и несглаженного временного ряда) (пример)
В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры.
Задача 5: Прогнозирование функциями дискретного аргумента (пример)
В работе исследуются короткие временные ряды на примере монофонических музыкальных мелодий. Происходит прогнозирование одной ноты экспоненциальным сглаживанием, локальным методом, а также методом поиска постоянных закономерностей. Вычислительный эксперимент проводится на двух мелодиях, одна из которых имеет точно повторяющиеся фрагменты.
Задача 7: Локальные методы прогнозирования,поиск метрики
Временной ряд делится на отдельные участки, каждому из которых сопоставляется точка в n-мерном пространстве признаков. Локальная модель рассчитывается в три последовательных этапа. Первый – находит k-ближайших соседей наблюдаемой точки. Второй – строит простую модель, используя только этих k соседей. Третий – используя данную модель, по наблюдаемой точке прогнозирует следующую. Многие исследователи, используют эвклидову метрику для измерения расстояний между точками. Данная работа призвана сравнить точность прогнозирования при использовании различных метрик. В частности, требуется исследовать оптимальный набор весов во взвешенной метрике для максимизации точности прогнозирования.
Задача 8: Локальные методы прогнозирования, поиск инвариантного преобразования
В проекте используются локальные методы прогнозирования временных рядов. В этих методах не находится представления временного ряда в классе заданных функций от времени. Вместо этого прогноз осуществляется на основе данных о каком-то участке временного ряда (используется локальная информация). В данной работе подробно исследован следующий метод (обобщение классического «ближайшего соседа»).
Пусть имеется временной ряд, и стоит задача продолжить его. Предполагается, что такое продолжение определяется предысторией, т.е. в ряде нужно найти часть, которая после некоторого преобразования A становится схожа с той частью, которую мы стремимся прогнозировать. Поиск такого преобразования A и есть цель данного проекта. Для определения степени сходства используется функция B – функция близости двух отрезков временного ряда (подробнее об этом см. здесь). Так мы находим ближайшего соседа к нашей предыстории. В общем случае ищем несколько ближайших соседей. Продолжение запишется в виде их линейной комбинации.
Задача 9: Выравнивание временных рядов: прогнозирование с использованием DTW (пример)
Временным рядом называется последовательность упорядоченных по времени значений некоторой вещественной переменной . Задача, сопутствующая появлению временных рядов, - сравнение одной последовательности данных с другой. Сравнение последовательностей существенно упрощается после деформации временного ряда вдоль одной из осей и его выравнивания. Dynamic time warping (DTW) представляет собой технику эффективного выравнивая временных рядов. Методы DTW используются при распознавании речи, при анализе информации в робототехнике, в промышленности, в медицине и других сферах.
Цель работы - привести пример выравнивания, ввести функционал сравнения двух временных рядов, обладающий естественными свойствами коммутативности, рефлексивности и транзитивностина. Функционал должен принимать на вход два временных ряда, а на выходе давать число, характеризующее степень их "похожести".
Задача 10: Выбор функции активации при прогнозировании нейронными сетями (убрать задачу)
Целью проекта является исследование зависимости качества прогнозирования нейронными сетями без обратной связи (одно- и многослойными перцептронами) от выбранной функции активации нейронов в сети, а также от параметров этой функции.
Результатом проекта является оценка качества прогнозирования нейронными сетями в зависимости от типа и параметров функции активации.
Задача 11: Прогнозирование музыкальных произведений
Соединить три проекта
Задача 12: Исследование сходимости при прогнозировании нейронными сетями с обратной связью
Исследуется зависимость скорости сходимости при прогнозировании временных рядов от параметров нейронной сети с обратной связью. Понятие обратной связи характерно для динамических систем, в которых выходной сигнал некоторого элемента cистемы оказывает влияние на входной сигнал этого элемента. Выходной сигнал можно представить в виде бесконечной взвешенной суммы текущего и предыдущих входных сигналов. В качестве модели нейронной сети используется сеть Джордана. Предлагается исследовать скорость сходимости в зависимости от выбора функции активации (сигмоидной, гиперболического тангенса), от числа нейронов в промежуточном слое и от ширины скользящего окна. Также исследуется способ повышения скорости сходимости при использовании обобщенного дельта-правила.
Задача 13: Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)
Работа посвящена исследованию одного из методов анализа многомерных временных рядов - метода "гусеницы", также известного как Singular Spectrum Analysis или SSA. Метод можно разделить на четыре этапа - представление временного ряда в виде матрицы при помощи сдвиговой процедуры, вычисление ковариационной матрицы выборки и сингулярное ее разложение, отбор главных компонент,относящихся к различным составляющим ряда (от медленно меняющихся и периодических до шумовых), и, наконец, восстановление ряда.
Областью применения алгоритма являются задачи как метеорологии и геофизики, так и экономики и медицины. Целью данной работы является выяснение зависимости эффективности алгоритма от выбора временных рядов, используемых в его работе.
Задача 14: Использование теста Гренджера при прогнозировании временных рядов
При прогнозировании ряда бывает полезно определить, является ли данный ряд "зависимым" от некоторого другого ряда. Выявить подобную связь помогает тест Грейнджера, основанный на статистических тестах(при этом метод не гарантирует точного результата - при сравнении двух рядов, зависящих от еще одного ряда возможна ошибка). Метод применяется при прогнозировании экономических явлений и явлений природного характера (например, землятрясений).
Цель работы - предложить алгоритм, наилучшим образом использующий данный метод; исследовать эффективность метода в зависимости от прогнозируемых рядов.
Задача 15: Прогнозирование и аппроксимация сплайнами
Описание.
Задача 16: ARIMA и GARCH при прогнозировании высоковолатильных рядов
Описание.
Задача 17: Прогнозирование и SVN–регрессия
Описание.
Задача 18: Прогнозирование методом PLS
Описание.
Список задач, черновик
- Непараметрическое прогнозирование (выбор ядра из набора, настройка параметров)
- Прогнозирование и экспоненциальное сглаживание (набор временных рядов, исследование современного состояния)
- Непараметрическое прогнозирование рядов с периодической составляющей (по мотивам работ прогнозирования объемов продаж)
- Многомерная гусеница, выбор длины и числа компонент гусеницы (сравнение сглаженного и несглаженного временного ряда)
- Многомерная гусеница, выбор временных рядов при прогнозировании
- Многомерная авторегрессия
- Локальные методы прогнозирования, поиск метрики
- Локальные методы прогнозирования, поиск инвариантного преобразования
- Прогнозирование с использованием пути наименьшей стоимости (DTW)
- Выбор функции активации при прогнозировании нейронными сетями
- Выбор ядра при прогнозировании функциями радиального базиса
- Исследование сходимости при прогнозировании нейронными сетями с обратной связью
- Прогнозирование функциями дискретного аргумента
- Использование теста Гренджера при прогнозировании временных рядов
- Прогнозирование и SVN – регрессия
- ARIMA и GARCH при прогнозировании высоковолатильных рядов с периодической составляющей (цен на электроэнергию)
- Прогнозирование и аппроксимация сплайнами
Экспоненциальное сглаживание
- Модель Брауна — экспоненциальное сглаживание.
- Модель Хольта — учитываются линейный тренд без сезонности.
- Модель Хольта-Уинтерса — учитываются мультипликативный тренд и сезонность.
- Модель Тейла-Вейджа — учитываются аддитивный тренд и сезонность.
- Модель Тригга-Лича — следящий контрольный сигнал используется для адаптации параметров адаптации
- Сезонность
- Анализ адекватности адаптивных моделей
Примеры
- Временной ряд
- Временной ряд (библиотека примеров)
- Прогнозирование ежедневных цен на электроэнергию (отчет)
- Daily electricity price forecasting (report)
- Прогнозирование временных рядов методом SSA (пример)
- Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)
- Прогнозирование функциями дискретного аргумента (пример)
- Коллекция реальных данных
ARIMA model examples [1] , [2] , [3] , [4] , [5] !!!!!! , [6] , [7] , [8] , [9] , [10]
Ковариационный анализ
- Ковариационный анализ
- Canonical correlation
- Cross-covariance matrix
- Причинность по Грейнджеру
Ссылки на ранее сделанный код и домашние задания
- Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Группа 874, весна 2011
- Руководство исследовательскими проектами (практика, В.В. Стрижов)
- Выделение периодической компоненты временного ряда (пример)
- Сравнение временных рядов при авторегрессионном прогнозе (пример)
- Прогнозирование финансовых пузырей (пример)
- Прогнозирование объемов продаж групп товаров (отчет)
- Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)
- Обнаружение жизненного цикла товаров (отчет)
ACF: автокорреляционная функция
- Autocorrelation
- Autocorrelation Matrix
- FPCA illustration
- An Example of ACF in Two Dimensions
- Effect of Windowing Function on Autocorrelation Function
- Sample ACF and Properties of AR(1) Model
- 2.8 Autocorrelation
- Autocorrelation Function of Exponential Sequence
- Fast way reduce noise of autocorrelation function in python?