Математические методы прогнозирования/Осень 2022

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Format of the lab works)
Текущая версия (20:03, 14 февраля 2023) (править) (отменить)
(Continous-time models)
 
(135 промежуточных версий не показаны.)
Строка 2: Строка 2:
{{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}}
{{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}}
-
__NOTOC__
+
{{TOCright}}
 +
<!-- __NOTOC__ -->
Ведущие '''Алина Самохина, Денис Тихонов, Святослав Панченко'''
Ведущие '''Алина Самохина, Денис Тихонов, Святослав Панченко'''
 +
 +
Короткая ссылка [https://bit.ly/3QAOYPd bit.ly/3QAOYPd]
=Mathematical forecasting=
=Mathematical forecasting=
Строка 11: Строка 14:
==Schedule==
==Schedule==
-
*[Sep] [[Media:M1P_2022_L1.pdf|6]], 13, 20, 27~--- lab 1
+
*[Sep] [[Media:M1P_2022_L1.pdf|6]]-[https://www.youtube.com/watch?v=1V2kI7T8EPA s1], [[Media:M1P_2022_L2.pdf|13]]-[https://www.youtube.com/watch?v=DT61gl1x7pQ s2], [[Media:M1P_2022_L3.pdf|20]]-[https://www.youtube.com/watch?v=8yjRayx0sJE s3], [[Media:M1P_2022_L4.pdf|27]]-[https://www.youtube.com/c/MachineLearningPhystech s4] – lab 1
-
*[Oct] 4, 14, 18, 25~--- lab 2, 3
+
*[Oct] 4, 14, 18, 25 lab 2, 3
-
*[Nov] 8, 15, 22, 29~--- lab 4
+
*[Nov] [[Media:M1P_2022_L7.pdf|1]] – [https://www.youtube.com/watch?v=ZYBfqvQcMMc&list=PLk4h7dmY2eYF6Q3hRut13RNcn83HrY_cY&index=1 s7], 8, 15, 22, 29 lab 3, 4
*[Dec] 6, 13 exam
*[Dec] 6, 13 exam
 +
 +
[https://www.youtube.com/watch?v=8yjRayx0sJE&list=PLk4h7dmY2eYF6Q3hRut13RNcn83HrY_cY playlist 2022-2023]
 +
[https://www.youtube.com/playlist?list=PLk4h7dmY2eYHjAdKsMrzrNMbhQLmOIXrr 2021-2022]
==Discussion and course page==
==Discussion and course page==
* [https://t.me/is_mmp Telegram MMP]
* [https://t.me/is_mmp Telegram MMP]
-
* [https://m1p.org/isr This page will be moved here]
+
* [https://github.com/intsystems/MathematicalForecastingMethods GitHub]
==Lab works==
==Lab works==
Строка 37: Строка 43:
==Exam and grading==
==Exam and grading==
Four lab works within deadlines and the exam on topics with problems and discussion.
Four lab works within deadlines and the exam on topics with problems and discussion.
 +
 +
Each lab gives 2.5pt, all_labs = 10
 +
 +
The exam gives 10pt, final mark=(all_labs + exam) / 2
== Terminology and list of notations ==
== Terminology and list of notations ==
Строка 69: Строка 79:
* HOCCM to invent
* HOCCM to invent
* Taken’s theorem
* Taken’s theorem
-
* Neural ODE
+
* ResNet, Neural ODE
* Adjoint and back-propagation
* Adjoint and back-propagation
* Flows and forecasting
* Flows and forecasting
* Space state models
* Space state models
* S4, Hippo, SaShiMi models
* S4, Hippo, SaShiMi models
 +
* (if room) Neural PDE, Lagrangian, Hamiltonian nns.
\\ To include
\\ To include
* RNN, LSTM, attention, transformer models
* RNN, LSTM, attention, transformer models
Строка 83: Строка 94:
==Format of the lab works==
==Format of the lab works==
-
TODO Check the format!
+
# Create a .pynb or .py file Surname2022Lab [http://is-mipt.site in the folder]
-
 
+
-
Формат выполнения
+
-
# Create a .pynb or .py file Surname2022Lab [https://github.com/Intelligent-Systems-Phystech/2020-Time-series-forecasting папке]
+
# The report also could be in the .tex file.
# The report also could be in the .tex file.
# Find the format of your report above.
# Find the format of your report above.
Строка 100: Строка 108:
# Error analysis is a part of the report: <!-- Three functions: model, quality criterion, forecast, parameter optimization (and model selection)-->
# Error analysis is a part of the report: <!-- Three functions: model, quality criterion, forecast, parameter optimization (and model selection)-->
# plot of the forecast,
# plot of the forecast,
-
# MAPE error (and your optimization error, if available) and its standard deviation.
+
# MAPE error (and your optimization error, if available) and its standard deviation,
 +
# '''prove your model has the optimal structure''', try various structure parameters.
Details:
Details:
# time refers to each sample (in unix or any useful format),
# time refers to each sample (in unix or any useful format),
-
# the horizon is an expected fundamental period.
+
# the horizon is an expected fundamental period,
 +
# '''note that''' the historical time ends before the forecasting period, it means we could use either historical data or the forecasted data (the historical data are not updated after history ends),
 +
# the forecasting protocol is in [http://strijov.com/papers/Uvarov2018SuperpositionForecasting.pdf parer], [http://www.machinelearning.ru/wiki/images/5/5d/Uvarov2018Thesis.pdf text], [http://www.machinelearning.ru/wiki/images/c/cc/Uvarov2018Presentation.pdf slides] by Nikita Uvarov.
Examples:
Examples:
Строка 112: Строка 123:
==Lab work series I==
==Lab work series I==
-
=== Протокол поточечного прогнозирования ===
+
===Autoregression models===
-
[http://strijov.com/papers/Uvarov2018SuperpositionForecasting.pdf Взять из работы Никиты Уварова]
+
#[[Временной ряд (библиотека примеров)|'''Time series (collection of examples)''']]
 +
# [[Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Коллекция реальных данных|'''Time series and datasets collection''']]
 +
#[[Временной ряд]]
 +
#[[Прогнозирование ежедневных цен на электроэнергию (отчет)]]
 +
#[[Daily electricity price forecasting (report)]], [http://jmlda.org/papers/doc/2011/JMLDA2011no2.pdf Example]
 +
#[[Прогнозирование временных рядов методом SSA (пример)]]
 +
#[[Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)]]
 +
#[[Прогнозирование функциями дискретного аргумента (пример)]]
 +
#[[Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Группа 874, весна 2011]]
 +
#[[Руководство исследовательскими проектами (практика, В.В. Стрижов)]]
 +
#[[Выделение периодической компоненты временного ряда (пример)]]
 +
#[[Сравнение временных рядов при авторегрессионном прогнозе (пример)]]
 +
#[[Прогнозирование финансовых пузырей (пример)]]
 +
#[[Прогнозирование объемов продаж групп товаров (отчет)]]
 +
#[[Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)]]
 +
#[[Обнаружение жизненного цикла товаров (отчет)]]
 +
#[[Непараметрическая регрессия]]
 +
#[[Непараметрическая регрессия: ядерное сглаживание]]
-
=== Задача 1: Непараметрическое прогнозирование: выбор ядра, настройка параметров ===
+
=== Lab 101 Kernel smoothing ===
-
В работе описывается метод ядерного сглаживания временного ряда, как один из видов непараметрической регрессии. Суть метода
+
Метод ядерного сглаживания временного ряда, как один из видов непараметрической регрессии. Он восстанавливает функцию времени взвешенной линейной комбинацией точек из некоторой окрестности. Непрерывную ограниченную симметричную вещественную весовую функцию называют ядром. Полученная ядерная оценка используется для прогнозирования следующей точки ряда. Исследуется зависимость качества прогнозирования от параметров ядра и наложенного шума [https://lib.mipt.ru/book/29476/?q=%D1%85%D0%B0%D1%80%D0%B4%D0%BB%D0%B5 см. Хардле]. Select an optimal kernel to forecast a point of a phase trajectory in multivariate time series. [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/SSA/ Example]
-
состоит в восстановлении функции времени, как взвешенной линейной комбинации точек из некоторой окрестности. Непрерывную ограниченную симметричную вещественную весовую функцию называют ядром. Полученная ядерная оценка используется для прогнозирования следующей точки ряда. Исследуется зависимость качества прогнозирования от параметров ядра и наложенного шума.
+
-
+
-
=== Задача 2: Экспоненциальное сглаживание и прогноз ===
+
-
В работе исследуется применение алгоритма экспоненциального сглаживания к прогнозированию временных рядов. В основе алгоритма лежит учет предыдущих значений ряда с весами, убывающими по мере удаления от исследуемого участка временного ряда. Изучено поведение алгоритма на модельных данных в различных моделях весов. Проведен анализ работы алгоритма на реальных данных -– биржевых индексах.
+
-
=== Задача 3: [[Выделение периодической компоненты временного ряда (пример)]] ===
+
=== Lab 102 Exponential smoothing ===
 +
Алгоритм экспоненциального сглаживания для прогнозирования временных рядов. Он учитывает предыдущие значения ряда с весами, убывающими по мере удаления от исследуемого участка временного ряда. Изучить поведение алгоритма на модельных данных в различных моделях весов. Проанализировать работу алгоритма на биржевых индексах. Select points of phase trajectory to smooth. Модели экспоненциального сглаживания:
 +
#[[Модель Брауна]] — экспоненциальное сглаживание
 +
#[[Модель Хольта]] — учитываются линейный тренд без сезонности
 +
#[[Модель Хольта-Уинтерса]] — учитываются мультипликативный тренд и сезонность
 +
#[[Модель Тейла-Вейджа]] — учитываются аддитивный тренд и сезонность
 +
#[[Модель Тригга-Лича]] — следящий контрольный сигнал используется для адаптации параметров адаптации
 +
#[[Сезонность]]
 +
<!--#[[Анализ адекватности адаптивных моделей]]-->
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/ExpoSmoothing/ Example]
-
В проекте исследуется временной ряд на наличие периодической компоненты, строится тригонометрическая интерполяция предложенных временных рядов методом наименьших квадратов. Производится оценка параметров функции метода наименьших квадратов в зависимости от качества прогнозирования. В вычислительном эксперименте приводятся результаты работы корреляционной функции и метода наименьших квадратов на зашумлённом модельном синусе и реальном временном ряде электрокардиограммы.
+
===Lab 103 Local forecasting ===
 +
Временной ряд делится на отдельные участки, каждому из которых сопоставляется точка в n-мерном пространстве признаков. Локальная модель рассчитывается в три последовательных этапа. Первый – находит k-ближайших соседей наблюдаемой точки. Второй – строит простую модель, используя только этих k соседей. Третий – используя данную модель, по наблюдаемой точке прогнозирует следующую. Многие исследователи, используют эвклидову метрику для измерения расстояний между точками.
 +
Данная работа призвана сравнить точность прогнозирования при использовании различных метрик, в первую очередь Махаланобиса. В частности, требуется исследовать оптимальный набор весов во взвешенной метрике для максимизации точности прогнозирования. [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/LocalForecasting/ Example]
-
===Задача 4: Многомерная гусеница, выбор длины и числа компонент гусеницы (сравнение сглаженного и несглаженного временного ряда) (пример)===
+
===Lab 103a Local forecasting with invariants ===
 +
Find invariant translation in time (linear or non-linear) and in phase space (shift and scale).
 +
В проекте используются локальные методы прогнозирования временных рядов. В этих методах не находится представления временного ряда в классе заданных функций от времени. Вместо этого прогноз осуществляется на основе данных о каком-то участке временного ряда (используется локальная информация). В данной работе подробно исследован следующий метод (обобщение классического «ближайшего соседа»).
 +
Пусть имеется временной ряд, и стоит задача продолжить его. Предполагается, что такое продолжение определяется предысторией, т.е. в ряде нужно найти часть, которая после
 +
некоторого преобразования A становится схожа с той частью, которую мы стремимся прогнозировать. Поиск такого преобразования A и есть цель данного проекта. Для определения степени сходства используется функция B – функция близости двух отрезков
 +
временного ряда (подробнее об этом см. [http://www.machinelearning.ru/wiki/index.php?title=%D0%9B%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D0%BF%D1%80%D0%BE%D0%B3%D0%BD%D0%BE%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%2C%D0%BF%D0%BE%D0%B8%D1%81%D0%BA_%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D0%BA%D0%B8_%28%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%29&action=edit здесь]). Так мы находим ближайшего соседа к нашей предыстории. В общем случае ищем несколько
 +
ближайших соседей. Продолжение запишется в виде их линейной комбинации.
 +
 +
===Lab 104 Singular spectrum analysis ===
В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры.
В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры.
-
===Задача 5: [[Прогнозирование функциями дискретного аргумента (пример)]] ===
+
(Old variant Метод содержит четыре этапа - представление временного ряда в виде матрицы при помощи сдвиговой процедуры, вычисление ковариационной матрицы выборки и сингулярное ее разложение, отбор главных компонент,относящихся к различным составляющим ряда (от медленно меняющихся и периодических до шумовых), и, наконец, восстановление ряда. Областью применения алгоритма являются задачи как метеорологии и геофизики, так и экономики и медицины. Целью данной работы является выяснение зависимости эффективности алгоритма от выбора временных рядов, используемых в его работе.) [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/SSA/ Example], [http://jmlda.org/papers/doc/2011/JMLDA2011no2.pdf Example], [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/Group074/Kuznetsov2013SSAForecasting/ Example]
-
В работе исследуются короткие временные ряды на примере монофонических музыкальных мелодий. Происходит прогнозирование одной ноты экспоненциальным сглаживанием, локальным методом, а также методом поиска постоянных закономерностей.
+
===Lab 104a Singular spectrum analysis ===
-
Вычислительный эксперимент проводится на двух мелодиях, одна из которых имеет точно повторяющиеся фрагменты.
+
Forecast a multivariate series, the target time series are subset of the design.
-
===Задача 7: Локальные методы прогнозирования,поиск метрики ===
+
===Lab 105 Simple neural network ===
-
Временной ряд делится на отдельные участки, каждому из которых сопоставляется точка в n-мерном пространстве признаков. Локальная модель рассчитывается в три последовательных этапа.
+
Forecast a (multivariate) time series with 2-NN. Find the optimal number of neurons.
-
Первый – находит k-ближайших соседей наблюдаемой точки.
+
(Old variant Исследование зависимости качества прогнозирования нейронными сетями без обратной связи (одно- и многослойными перцептронами) от выбранной функции активации нейронов в сети, а также от параметров этой функции. Результат оценка качества прогнозирования нейронными сетями в зависимости от типа и параметров функции активации.) [http://jmlda.org/papers/doc/2011/JMLDA2011no1.pdf Example], [http://jmlda.org/papers/doc/2011/JMLDA2011no2.pdf Example]
-
Второй – строит простую модель, используя только этих k соседей.
+
-
Третий используя данную модель, по наблюдаемой точке прогнозирует следующую.
+
-
Многие исследователи, используют эвклидову метрику для измерения расстояний между точками.
+
-
Данная работа призвана сравнить точность прогнозирования при использовании различных метрик.
+
-
В частности, требуется исследовать оптимальный набор весов во взвешенной метрике для максимизации точности прогнозирования.
+
-
===Задача 8: Локальные методы прогнозирования, поиск инвариантного преобразования ===
+
===Lab 106 ARIMA ===
-
В проекте используются локальные методы прогнозирования
+
Find the optimal p,d,q.
-
временных рядов. В этих методах не находится представления временного
+
ARIMA model examples
-
ряда в классе заданных функций от времени. Вместо этого прогноз осуществляется на
+
[https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
-
основе данных о каком-то участке временного ряда (используется локальная информация).
+
, [https://towardsdatascience.com/machine-learning-part-19-time-series-and-autoregressive-integrated-moving-average-model-arima-c1005347b0d7]
-
В данной работе подробно исследован следующий метод (обобщение классического
+
, [https://people.duke.edu/~rnau/411arim.htm]
-
«ближайшего соседа»).
+
, [https://www.geeksforgeeks.org/python-arima-model-for-time-series-forecasting/]
 +
, [https://otexts.com/fpp2/non-seasonal-arima.html] !!!!!!
 +
, [https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
 +
, [https://towardsdatascience.com/machine-learning-part-19-time-series-and-autoregressive-integrated-moving-average-model-arima-c1005347b0d7]
 +
, [https://people.duke.edu/~rnau/411arim.htm]
 +
, [https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
 +
, [https://www.digitalocean.com/community/tutorials/a-guide-to-time-series-forecasting-with-arima-in-python-3].
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/ARIMA/ Example]
-
Пусть имеется временной ряд, и стоит задача продолжить его. Предполагается, что такое продолжение определяется
+
===Lab 106a GARCH ===
-
предысторией, т.е. в ряде нужно найти часть, которая после
+
Plot the forecast and error(t).
-
некоторого преобразования A становится схожа с той частью, которую мы стремимся прогнозировать. Поиск такого преобразования A и есть цель данного проекта. Для определения степени сходства используется функция B – функция близости двух отрезков
+
-
временного ряда (подробнее об этом см. [http://www.machinelearning.ru/wiki/index.php?title=%D0%9B%D0%BE%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D0%BF%D1%80%D0%BE%D0%B3%D0%BD%D0%BE%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%2C%D0%BF%D0%BE%D0%B8%D1%81%D0%BA_%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D0%BA%D0%B8_%28%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%29&action=edit здесь]). Так мы находим ближайшего соседа к нашей предыстории. В общем случае ищем несколько
+
-
ближайших соседей. Продолжение запишется в виде их линейной комбинации.
+
-
=== Задача 9: Выравнивание временных рядов: прогнозирование с использованием DTW (пример) ===
+
===Lab 107 Vector autoregression ===
 +
Forecast a multivariate time series. Find an optimal structure of [http://strijov.com/papers/macro1.pdf VAR-model].
-
[[временной ряд|Временным рядом]] называется последовательность упорядоченных по времени значений некоторой вещественной переменной <tex>$\mathbf{x}=\{x_{t}\}_{t=1}^T\in\mathbb{R}^T$</tex>. Задача, сопутствующая появлению временных рядов, - сравнение одной последовательности данных с другой. Сравнение последовательностей существенно упрощается после деформации временного ряда вдоль одной из осей и его выравнивания. Dynamic time warping (DTW) представляет собой технику эффективного выравнивая временных рядов. Методы DTW используются при распознавании речи, при анализе информации в робототехнике, в промышленности, в медицине и других сферах.
+
===Lab 108 Discrete functions to forecast MIDI ===
 +
Прогнозирование музыкальных произведений. [[Прогнозирование функциями дискретного аргумента (пример)]] В работе исследуются короткие временные ряды на примере монофонических музыкальных мелодий. Происходит прогнозирование одной ноты экспоненциальным сглаживанием, локальным методом, а также методом поиска постоянных закономерностей. Вычислительный эксперимент проводится на двух мелодиях, одна из которых имеет точно повторяющиеся фрагменты.
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/Group074/Matrosov2014MusicForecastingPaper/ Example]
-
Цель работы - привести пример выравнивания, ввести функционал сравнения двух временных рядов, обладающий естественными свойствами коммутативности, рефлексивности и транзитивностина. Функционал должен принимать на вход два временных ряда, а на выходе давать число, характеризующее степень их "похожести".
+
===Lab 109 Spline approximation and forecasting===
 +
[http://jmlda.org/papers/doc/2012/no3/Celyh2012MARS.pdf The description and code is here.]
 +
 +
===Lab 110: SVN–regression and forecasting===
 +
Use a linear model with or without kernel trick with quadratic or SVN error function.
-
=== Задача 10: Выбор функции активации при прогнозировании нейронными сетями (убрать задачу)===
+
===Lab 111: Flexible Least Squares ===
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/FlexibleLeastSquares/ Example]
-
Целью проекта является исследование зависимости качества прогнозирования нейронными сетями без обратной связи (одно- и многослойными перцептронами) от выбранной функции активации нейронов в сети, а также от параметров этой функции.
+
===Lab 112: Event forecasting===
 +
Event and change-point forecasting models
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/EventForecasting/ Example]
-
Результатом проекта является оценка качества прогнозирования нейронными сетями в зависимости от типа и параметров функции активации.
+
===Lab 106b: Histogram forecasting===
 +
[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/hist/ Example]
 +
and error correction (Uvarov's paper)
-
=== Задача 11: Прогнозирование музыкальных произведений ===
+
===RESUME of Lab series I===
-
Соединить три проекта
+
Golden rules of forecasting
 +
# The forecast horizon is a segment in the time-scale (there is no one-point forecast).
 +
# Multivariate time series only (there are no single-variate ones). Sometimes the time series are spatial.
-
===Задача 12: Исследование сходимости при прогнозировании нейронными сетями с обратной связью===
+
==Lab Series II==
 +
===Tensor low-rank approximation===
 +
# Коренев, Г.В. Тензорное исчисление, 2000, 240 с., [https://lib.mipt.ru/book/7235/Korenev-GV-Tenzornoe-ischislenie.djvu lib.mipt.ru].
 +
#  Roger Penrose, "Applications of negative dimensional tensors," in Combinatorial Mathematics and its Applications, Academic Press (1971). See Vladimir Turaev, Quantum invariants of knots and 3-manifolds (1994), De Gruyter, p. 71 for a brief commentary [https://www.mscs.dal.ca/~selinger/papers/graphical-bib/public/Penrose-applications-of-negative-dimensional-tensors.pdf PDF].
 +
# Tai-Danae Bradley, At the Interface of Algebra and Statistics, 2020, [https://arxiv.org/abs/2004.05631 ArXiv].
 +
# Oseledets, I.V. Tensor-Train Decomposition //SIAM Journal on Scientific Computing, 2011, 33(5): 2295–2317, [https://doi.org/10.1137/090752286 DOI], [https://www.researchgate.net/publication/220412263_Tensor-Train_Decomposition RG], [https://www-labs.iro.umontreal.ca/~grabus/courses/ift6760_files/lecture-11.pdf lecture], [https://github.com/oseledets/TT-Toolbox GitHub], [https://www.ifi.uzh.ch/dam/jcr:846e4588-673e-4f55-b531-544a2e1f602e/TA_Tutorial_Part2.pdf Tutoiral].
 +
# Wikipedia: [https://en.wikipedia.org/wiki/Singular_value_decomposition#Matrix_approximation SVD], [https://en.wikipedia.org/wiki/Multilinear_subspace_learning Multilinear subspace learning], [https://en.wikipedia.org/wiki/Higher-order_singular_value_decomposition HOSVD].
 +
# Seminar [https://www.youtube.com/watch?v=gxh-zktYTR8&list=PLk4h7dmY2eYHjAdKsMrzrNMbhQLmOIXrr&index=4 4 in 2021]
 +
# [https://hottbox.github.io/stable/index.html HOTTBOX: Higher Order Tensors ToolBOX] '''is the entrance point'''
 +
# [http://tensorly.org/dev/ TensorLy: Fast & Simple Tensor Learning In Python]
 +
# [https://www.tensortoolbox.org Tensor Toolbox for MATLAB]
 +
# [https://github.com/Intelligent-Systems-Phystech/GeometricDeepLearning Examples and links 2021]
 +
# [https://www.youtube.com/watch?v=3N3Bl5AA5QU AlphaTensor by DeepMind explained]
-
Исследуется зависимость скорости сходимости при прогнозировании временных рядов от параметров нейронной сети с обратной связью. Понятие обратной связи характерно для динамических систем, в которых выходной сигнал некоторого элемента cистемы
+
===Lab 201===
-
оказывает влияние на входной сигнал этого элемента. Выходной сигнал можно представить в виде бесконечной взвешенной
+
Tensor approximation. Approximate the 2, 3 and 4 index matrices using low-rank decompositions, linear and nonlinear. The data sets are: a picture, a short animation movie (basic variant), a sound spectrogram, an fMRI. Plot the sequence of data approximations with ranks 1,..,n. Plot the error: x-axis is the rank, y-axis is the approximation error. Plot the variance of the error for various samples of data, if possible.
-
суммы текущего и предыдущих входных сигналов. В качестве модели нейронной сети используется сеть Джордана.
+
* Code [Tucker, PARAFAC-CANDECOMP, Tensor-train, and variants]
-
Предлагается исследовать скорость сходимости в зависимости от выбора функции активации (сигмоидной,
+
* Data sets [Cartoon, Sound, fMRI, and variants]
-
гиперболического тангенса), от числа нейронов в промежуточном слое и от ширины скользящего окна.
+
-
Также исследуется способ повышения скорости сходимости при использовании обобщенного дельта-правила.
+
-
===Задача 13: [[Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)]]===
+
===Lab 202===
 +
PCA on higher orders. Construct a linear map of pairwise distance matrix to a space of lower dimensionality and plot the data. There are two possibilities: high-rank dimensional reduction and order reduction. If you could demonstrate the order reduction, it would be great. The pictures are appreciated.
 +
* Code [Tucker, Tensor-train, and variants]
 +
* Data sets [Cartoon, Sound, fMRI, and variants]
-
Работа посвящена исследованию одного из методов анализа многомерных временных рядов - метода "гусеницы", также известного как Singular Spectrum Analysis или SSA. Метод можно разделить на четыре этапа - представление временного ряда в виде матрицы при помощи сдвиговой процедуры, вычисление ковариационной матрицы выборки и сингулярное ее разложение, отбор главных компонент,относящихся к различным составляющим ряда (от медленно меняющихся и периодических до шумовых), и, наконец, восстановление ряда.
+
===Lab 203===
 +
Three-dimensional image reconstruction. Use sinograms of the computed tomography scans. Show the sequential approximation like in the lab work 1 with plots.
 +
* Code [linear and NN]
 +
* Data [Sinogram to fMRI]
-
Областью применения алгоритма являются задачи как метеорологии и геофизики, так и экономики и медицины. Целью данной работы является выяснение зависимости эффективности алгоритма от выбора временных рядов, используемых в его работе.
+
===Lab 204===
 +
Formalize the set of low-rank approximation quality criterions (for multilinear operators with pseudo-inverses): precision, stability, computational complexity. Compare the decomposition methods from hottbox.
 +
* Code [Hottbox]
 +
* Data [Synthetic data with a simple visual/geometric visualization, like TF logo]
-
===Задача 14: Использование теста Гренджера при прогнозировании временных рядов===
+
===Lab 205===
 +
Construct a phase trajectory of a spatial time series (a video, cartoon) and make a forecast with the higher order singular structure analysis.
 +
* Code [SSA, HOSVD]
 +
* Data [Cartoon with a walking hero]
-
При прогнозировании ряда бывает полезно определить, является ли данный ряд "зависимым" от некоторого другого ряда. Выявить подобную связь помогает тест Грейнджера, основанный на статистических тестах(при этом метод не гарантирует точного результата - при сравнении двух рядов, зависящих от еще одного ряда возможна ошибка). Метод применяется при прогнозировании экономических явлений и явлений природного характера (например, землятрясений).
+
===Lab 206===
 +
Construct two phase trajectories of spatial time series and discover a casualty with the higher order convergent cross mapping.
 +
* Code [CCM, HOSVD]
 +
* Data [Cartoon with a walking hero]
-
Цель работы - предложить алгоритм, наилучшим образом использующий данный метод; исследовать эффективность метода в зависимости от прогнозируемых рядов.
+
===Lab 207===
 +
Reduction an index on the tensor representation of the data, along with dimensionality reduction. The data is synthetic video, in more than 4D space, visualised by 3D projections.
 +
* Code [HOSVD, HOPCA]
 +
* Data [Synthetic 4D+ video]
-
===Задача 15: Прогнозирование и аппроксимация сплайнами===
+
===Lab 208===
-
Описание.
+
Higher order spectra analysis versus (higher order) Fourier transform on six-dimensional gyrokinetic data. Reduce number of indexes in tensor data.
 +
* Code [HOSVD]
 +
* Data [Gyrokinetic data 10.1016/j.jcp.2012.02.007]
-
===Задача 16: ARIMA и GARCH при прогнозировании высоковолатильных рядов ===
+
===Lab 209===
-
Описание.
+
Combine higher-order PLS with CCN to predict eye-movement.
 +
* Code [HOPLS]
 +
* Data [Systhesic video and eye-movement]
-
===Задача 17: Прогнозирование и SVN–регрессия ===
+
===Lab 210===
-
Описание.
+
Higher order PLS for multiway data
 +
* Code [HOPLS]
 +
* Data [Accelerometer under various conditions to predict gyro data]
-
===Задача 18: Прогнозирование методом PLS ===
+
===Lab 211===
-
Описание.
+
Tensor caterpillar (see paper)
 +
* Code [HOSSA]
 +
* Data [Energy] cut with two or three periodics
-
== Список задач, черновик ==
+
===RESUME of Lab series II===
-
# Непараметрическое прогнозирование (выбор ядра из набора, настройка параметров)
+
Golden rules of forecasting
-
# Прогнозирование и экспоненциальное сглаживание (набор временных рядов, исследование современного состояния)
+
# The periods, frequencies, spaces, and all cartesian-product-dependencies, which could be represented as multi-way matrix, must be represented like that.
-
# Непараметрическое прогнозирование рядов с периодической составляющей (по мотивам работ прогнозирования объемов продаж)
+
# The number of ways must be optimal.
-
# Многомерная гусеница, выбор длины и числа компонент гусеницы (сравнение сглаженного и несглаженного временного ряда)
+
-
# Многомерная гусеница, выбор временных рядов при прогнозировании
+
-
# Многомерная авторегрессия
+
-
# Локальные методы прогнозирования, поиск метрики
+
-
# Локальные методы прогнозирования, поиск инвариантного преобразования
+
-
# Прогнозирование с использованием пути наименьшей стоимости (DTW)
+
-
# Выбор функции активации при прогнозировании нейронными сетями
+
-
# Выбор ядра при прогнозировании функциями радиального базиса
+
-
# Исследование сходимости при прогнозировании нейронными сетями с обратной связью
+
-
# Прогнозирование функциями дискретного аргумента
+
-
# Использование теста Гренджера при прогнозировании временных рядов
+
-
# Прогнозирование и SVN – регрессия
+
-
# ARIMA и GARCH при прогнозировании высоковолатильных рядов с периодической составляющей (цен на электроэнергию)
+
-
# Прогнозирование и аппроксимация сплайнами
+
-
===Экспоненциальное сглаживание===
+
==Lab Series III==
-
#[[Модель Брауна]] — экспоненциальное сглаживание.
+
This series goes to the BCI-ML library. You have to upload an algorithm in py and its usage in (pynb) along with the example data. The series require the data from IMU: accelerometer and gyroscope. These data must acquire some periodic activity from one of more sensors with common time. Examples:
-
#[[Модель Хольта]] — учитываются линейный тренд без сезонности.
+
* two phones in a pocket of a walking person,
-
#[[Модель Хольта-Уинтерса]] — учитываются мультипликативный тренд и сезонность.
+
* two phones in a pocket and an opposite hand of a walking person,
-
#[[Модель Тейла-Вейджа]] — учитываются аддитивный тренд и сезонность.
+
* phones in pockets of several dancing persons.
-
#[[Модель Тригга-Лича]] — следящий контрольный сигнал используется для адаптации параметров адаптации
+
For some tasks the the time series must be splitted in-phase or randomly in a set of segments. For some tasks the trajectory matrix is the main object to model.
-
#[[Сезонность]]
+
-
#[[Анализ адекватности адаптивных моделей]]
+
-
===Примеры и данные===
+
Each set of time series includes three components '''(x,y,z)''' for accelerometer and for gyroscope.
-
#[[Временной ряд]]
+
-
#[[Временной ряд (библиотека примеров)]]
+
-
#[[Прогнозирование ежедневных цен на электроэнергию (отчет)]]
+
-
#[[Daily electricity price forecasting (report)]]
+
-
#[[Прогнозирование временных рядов методом SSA (пример)]]
+
-
#[[Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)]]
+
-
#[[Прогнозирование функциями дискретного аргумента (пример)]]
+
-
# [[Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Коллекция реальных данных|Коллекция реальных данных]]
+
-
ARIMA model examples
+
=== Lab 301 ===
-
[https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
+
Use IMU time series. Cut randomly one or two periods from time-series data (x,y,z of accelerometer) to make a segment. Collect a set of the segments. Variate sizes are welcome. Make the pairwise DTW alignment. Plot the results. Suggest a model of a linear path of minimum cost with a free time-ending (use weighted distance). [https://en.wikipedia.org/wiki/Dynamic_time_warping W-DTW], [http://www.machinelearning.ru/wiki/images/4/4e/Goncharov2016diplom.pdf paper],[http://strijov.com/papers/Goncharov2019mDTW.pdf paper], [https://github.com/fpetitjean/DBA toolbox], [https://paperswithcode.com/method/dtw PwC].
-
, [https://towardsdatascience.com/machine-learning-part-19-time-series-and-autoregressive-integrated-moving-average-model-arima-c1005347b0d7]
+
-
, [https://people.duke.edu/~rnau/411arim.htm]
+
-
, [https://www.geeksforgeeks.org/python-arima-model-for-time-series-forecasting/]
+
-
, [https://otexts.com/fpp2/non-seasonal-arima.html] !!!!!!
+
-
, [https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
+
-
, [https://towardsdatascience.com/machine-learning-part-19-time-series-and-autoregressive-integrated-moving-average-model-arima-c1005347b0d7]
+
-
, [https://people.duke.edu/~rnau/411arim.htm]
+
-
, [https://www.machinelearningplus.com/time-series/arima-model-time-series-forecasting-python/]
+
-
, [https://www.digitalocean.com/community/tutorials/a-guide-to-time-series-forecasting-with-arima-in-python-3]
+
-
===Ковариационный анализ===
+
=== Lab 302 ===
-
# [[Ковариационный анализ]]
+
Use IMU time series. Cut in-phase one or two periods from time-series data (x,y,z of accelerometer) to make a set of segments. Find the barycenter using DBA algorithm. Plot the result. [https://en.wikipedia.org/wiki/Dynamic_time_warping W-DTW], [http://www.machinelearning.ru/wiki/images/4/4e/Goncharov2016diplom.pdf paper],[http://strijov.com/papers/Goncharov2019mDTW.pdf paper], [https://github.com/fpetitjean/DBA toolbox], [https://paperswithcode.com/paper/averaging-spatio-temporal-signals-using PwC-hard].
-
# Canonical correlation
+
-
# Cross-covariance matrix
+
-
# Причинность по Грейнджеру
+
-
===Ссылки на ранее сделанный код и домашние задания===
+
=== Lab 303===
-
#[[Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Группа 874, весна 2011]]
+
Reconstruct the phase of a time series. The [https://en.wikipedia.org/wiki/Kernel_regression Nadaraya-Watson] algorithm is basic. For a quasi-periodic stationary time series make its phase trajectory. Recover regression for each sample of the phase. Show the convergence along the time. Plot the time series and its phase.
-
#[[Руководство исследовательскими проектами (практика, В.В. Стрижов)]]
+
 
-
#[[Выделение периодической компоненты временного ряда (пример)]]
+
Basic code [https://github.com/Denis-Tihonov/Tikhonov-Ms-Thesis by Denis Tikhonov]. See also [[Выделение периодической компоненты временного ряда (пример)|example]]
-
#[[Сравнение временных рядов при авторегрессионном прогнозе (пример)]]
+
 
-
#[[Прогнозирование финансовых пузырей (пример)]]
+
=== Lab 304===
-
#[[Прогнозирование объемов продаж групп товаров (отчет)]]
+
Reconstruct the directional regression [https://github.com/Intelligent-Systems-Phystech/SphericalRegression/blob/master/code/apply_dr.ipynb pynb], [http://www.machinelearning.ru/wiki/images/b/ba/Usmanova2020Thesis.pdf txt]. Use IMU time series for walking. Basic code by Denis Tikhonov, Karina Usmanova.
-
#[[Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)]]
+
 
-
#[[Обнаружение жизненного цикла товаров (отчет)]]
+
=== Lab 306===
 +
Reconstruct the spherical regression. Use IMU time series for walking. Basic code by Denis Tikhonov.
 +
 
 +
=== Lab 307===
 +
Detect if two time series describe one dynamic system. There given two time series, accelerometers and gyroscopes of two dancers (waltz preferred). Show that these two persons are a single dynamic system. Convergence cross-mapping.
 +
[http://www.machinelearning.ru/wiki/images/1/11/Usmanova2018CCM_PLS.pdf text]. Basic code by Denis Tikhonov.
 +
 
 +
=== Lab 308===
 +
Granger test: if the forecasting error decrease after the model appends new time series, consider previous and new time series related. Show that accelerations of two hands of a walking persons are related. [https://en.wikipedia.org/wiki/Granger_causality W], [http://jmlda.org/papers/doc/2011/JMLDA2011no1.pdf paper, p. 51]
 +
 
 +
=== Lab 309===
 +
A person walks with two phones. One in a hand and the other in the opposite pocket. The problem is to forecast the hand movement with the pocket movement only. [https://en.wikipedia.org/wiki/Partial_least_squares_regression W PLS], [https://en.wikipedia.org/wiki/Canonical_correlation W CCA], [http://strijov.com/papers/IsachenkoVladimirova2018PLS.pdf paper Roman Isachenko]. Ask for the PLS code.
 +
 
 +
=== Lab 309a===
 +
Run the QPFS model selection algorithms to find an optimal subset of the model components.
 +
 
 +
=== Lab 310===
 +
There given a low-resolution video of a pendulum as the source. And two time series, angle and acceleration, of this pendulum as the target. Given a point of the phase trajectory in the source space (4-way matrix), we have to forecast the angle and acceleration of the pendulum. See [https://arxiv.org/abs/1207.1230 HOPLS], [https://www.researchgate.net/publication/233840159_Higher_Order_Partial_Least_Squares_HOPLS_A_Generalized_Multilinear_Regression_Method text]. Ask for code.
 +
 
 +
===Lab 311===
 +
SEMOR, the self-modeling regression is the reminder of the umbrella alignment in the latent, analysed space of the sinal decoding model. We analyse
 +
# Granger, causality
 +
# CCM, relation
 +
# DTW, DBA, time-alignment
 +
# SEMOR itself, scale-alignment
 +
# PLS, dimensionality alignment
 +
# HOPLS, index alignment
 +
in this space. The reason for analysis of prepared data is the high complexity of the time-series data. So the test of causality and relation should be run in some subspace.
 +
 
 +
Since SEMOR itself looks trivial, while the whole list looks sophisticated, there is no lab work for this item.
 +
 
 +
 
 +
<!-- ===Lab 313===
 +
Исследование сходимости при прогнозировании нейронными сетями с обратной связью. Исследуется зависимость скорости сходимости при прогнозировании временных рядов от параметров нейронной сети с обратной связью. Понятие обратной связи характерно для динамических систем, в которых выходной сигнал некоторого элемента cистемы оказывает влияние на входной сигнал этого элемента. Выходной сигнал можно представить в виде бесконечной взвешенной суммы текущего и предыдущих входных сигналов. В качестве модели нейронной сети используется сеть Джордана. Предлагается исследовать скорость сходимости в зависимости от выбора функции активации (сигмоидной, гиперболического тангенса), от числа нейронов в промежуточном слое и от ширины скользящего окна. Также исследуется способ повышения скорости сходимости при использовании обобщенного дельта-правила. -->
 +
 
 +
<!-- ===Lab 314===
 +
Использование теста Гренджера при прогнозировании временных рядов. При прогнозировании ряда бывает полезно определить, является ли данный ряд "зависимым" от некоторого другого ряда. Выявить подобную связь помогает тест Грейнджера, основанный на статистических тестах(при этом метод не гарантирует точного результата - при сравнении двух рядов, зависящих от еще одного ряда возможна ошибка). Метод применяется при прогнозировании экономических явлений и явлений природного характера (например, землетрясений). Цель работы - предложить алгоритм, наилучшим образом использующий данный метод; исследовать эффективность метода в зависимости от прогнозируемых рядов.-->
 +
 
 +
==Lab works, Series IV==
 +
 
 +
===Continous-time models===
 +
The datasets for any lab work (if it is not specified) are 1) synthetic, are generated from the explicit solution of some differential equation, 2) from existing datasets, but not too long, 3) the self-made measurements are welcome. All of us have accelerometer, microphone, photo-video camera in the mobile phone.
 +
 
 +
* Latent ODEs for Irregularly-Sampled Time Series [https://arxiv.org/abs/1907.03907 text][https://github.com/YuliaRubanova/latent_ode Code Rubanova]
 +
* Replacing Neural Networks with Black-Box ODE Solvers [https://www.cs.toronto.edu/~duvenaud/talks/ode-talk-google.pdf slides Rubanova]
 +
* Neural Controlled Differential Equations for Irregular Time Series [https://arxiv.org/pdf/2005.08926.pdf text][https://github.com/patrick-kidger/NeuralCDE code Kridger] see [https://www.youtube.com/watch?v=TGfGiBhDEi0 his video]
 +
* Go with the Flow: Adaptive Control for Neural ODEs [https://hal.archives-ouvertes.fr/hal-03311766/document paper Mathieu Chalvidal]
 +
* Neural Ordinary Differential Equations by Ricky T. Q. Chen, Yulia Rubanova, Jesse Bettencourt, David K. Duvenaud // NeurIPS 2018 [https://arxiv.org/pdf/1806.07366.pdf]
 +
* Learning neural event functions for ordinary differential equations by Ricky T. Q. Chen, Brandon Amos, Maximilian Nickel // ICLR 2021, arXiv:2011.03902v4
 +
* Interpolation Technique to Speed Up Gradients Propagation in Neural ODEs by Talgat Daulbaev, Alexandr Katrutsa, Larisa Markeeva, Julia Gusak, Andrzej Cichocki, Ivan Oseledets // 2020, arXiv:2003.05271v2
 +
* Dynamical Systems with Applications using Python by Stephen Lynch, 2018
 +
* How To Train Your Neural ODE ChrisFinlay et al. [https://www.researchgate.net/profile/Levon-Nurbekyan/publication/339139726_How_to_train_your_neural_ODE/links/5e93a7ed299bf13079945d07/How-to-train-your-neural-ODE.pdf] or [http://proceedings.mlr.press/v119/finlay20a.html]
 +
 
 +
===Neural Controlled DE===
 +
* [https://www.youtube.com/watch?v=sbcIKugElZ4 Explained by Patrick Kidger] and [https://github.com/patrick-kidger/NeuralCDE his code]
 +
* Neural Controlled Differential Equations for Online Prediction Tasks by James Morrill, Patrick Kidger, Lingyi Yang, Terry Lyons, 2021 [https://arxiv.org/pdf/2106.11028.pdf] and [https://github.com/jambo6/online-neural-cdes code]
 +
* Forecasting the outcome of spintronic experiments with Neural Ordinary Differential Equations by Xing Chen, Flavio Abreu Araujo, Mathieu Riou, Jacob Torrejon, Dafiné Ravelosona, Wang Kang, Weisheng Zhao, Julie Grollier & Damien Querlioz, 2022 [https://www.nature.com/articles/s41467-022-28571-7 Nature], [https://www.nature.com/articles/s41467-022-28571-7 PDF]
 +
* [https://papertalk.org/papertalks/9864 collection] Neural Controlled Differential Equations for Irregular Time Series by Patrick Kidger, James Morrill, James Foster, Terry Lyons, 2020
 +
* Continuous-Time Modeling of Counterfactual Outcomes Using Neural Controlled Differential Equations by Nabeel Seedat, Fergus Imrie, Alexis Bellot, Zhaozhi Qian, Mihaela van der Schaar, 2022 [https://arxiv.org/pdf/2206.08311]
 +
* Attentive Neural Controlled Differential Equations for Time-series Classification and Forecasting by Sheo Yon Jhin, Heejoo Shin, Seoyoung Hong, Solhee Park, Noseong Park, 2021 [https://arxiv.org/pdf/2109.01876]
 +
* Graph Neural Controlled Differential Equations for Traffic Forecasting by Jeongwhan Choi, Hwangyong Choi, Jeehyun Hwang, Noseong Park, 2021 [https://arxiv.org/pdf/2112.03558]
 +
* Implicit energy regularization of neural ordinary-differential-equation control by Lucas Böttcher, Nino Antulov-Fantulin, Thomas Asikis, 2021 [https://arxiv.org/pdf/2103.06525.pdf]
 +
 
 +
===Code===
 +
* PyTorch Implementation of Differentiable ODE Solvers by Ricky Chen [https://github.com/rtqichen/torchdiffeq]
 +
* Neural Controlled Differential Equations for Irregular Time Series by Patrick Kidger [https://github.com/patrick-kidger/NeuralCDE]
 +
* A PyTorch library dedicated to neural differential equations and implicit models (the simplest implement, 100 lines). Maintained by DiffEqML [https://github.com/DiffEqML/torchdyn]
 +
* Neural Ordinary Differential Equations by Mikhail Surtsukov [https://github.com/msurtsukov/neural-ode/blob/master/Neural%20ODEs%20(Russian).ipynb (Russian explanation)]
 +
* Meta-Solver for Neural Ordinary Differential Equations by Julia Gusak [https://github.com/juliagusak/neural-ode-norm], [https://github.com/juliagusak/neural-ode-metasolver]
 +
* Neural ODE Processes [https://github.com/crisbodnar/ndp code] [https://openreview.net/forum?id=27acGyyI1BY paper]
 +
* PyTorch Implementation of Differentiable ODE Solvers [github.com/rtqichen/torchdiffeq]
 +
* Jupyter notebook with Pytorch implementation of Neural Ordinary Differential Equations [github.com/msurtsukov/neural-ode]
 +
* DiffEqFlux.jl – A Julia Library for Neural Differential Equations Julia [https://julialang.org/blog/2019/01/fluxdiffeq/#what_do_differential_equations_have_to_do_with_machine_learning]
 +
 
 +
===Lab 401===
 +
Plot the [https://en.wikipedia.org/wiki/Slope_field direction field] and approximation by ODE-Net near the special points for simple ODEs like y’=y/x (uniform/узел), y’=-y/x saddle, y’=-x/y center, y’=(x+y)/(x-y) spiral.
 +
 
 +
===Lab 402 ===
 +
Plot the stable and unstable [https://en.wikipedia.org/wiki/Autonomous_system_(mathematics) phase portraits] and approximations for simple ODE.
 +
 
 +
===Lab 403===
 +
Find the ODE and plot the solution and ODE-Net approximation to compare and show difference between ODEsolvers: Euler, RK4 and others.
 +
 
 +
===Lab 404===
 +
Approximate and plot the [http://www.machinelearning.ru/wiki/index.php?title=TS electricity consumption] time series. Compare the ODE-Net and LSTM or another model you like.
 +
 
 +
===Lab 405===
 +
Plot and approximate by ODE-Net the phase portrait of a pendulum with decay.
 +
 
 +
===Lab 405a===
 +
Plot and approximate the phase portrait of [https://en.wikipedia.org/wiki/Pendulum_(mechanics)#Coupled_pendula coupled pendula].
 +
 
 +
===Lab 406===
 +
Approximate an accelerometer (walking time series) by a solution of the pendulum ODE.
 +
 
 +
===Lab 406a===
 +
Approximate an accelerometer by a solution of the double-pendulum ODE.
 +
 
 +
===Lab 406b===
 +
Approximate an accelerometer and a gyroscope (acceleration and velocity) by a solution of the pendulum ODE.
 +
 
 +
===Lab 407===
 +
Lorentz attractor, [https://en.wikipedia.org/wiki/Lorenz_system#Python_simulation three ODEs]. Compare the forecast LSTM (or any model you like) how it differs from the forecast ODE-Net under different initial conditions and under different noise conditions. An option is to immerse the trajectory in a space of a higher dimension by random rotation.
 +
 
 +
===Lab 408===
 +
LSTM и ODE-RNN от [http://www.machinelearning.ru/wiki/images/6/62/Samokhina2021MSThesis.pdf от Алины Самохиной] раздел 2.2.2, только вместо EEG для упрощения временные ряды потребления электроэнергии.
 +
===Lab 409===
 +
Compare generated and forecaster electricity [http://www.machinelearning.ru/wiki/index.php?title=TS electricity consumption consumption time] series, see section 5 the arXiv:1806.07366v5 and the [ code]
 +
===Lab 410===
 +
Re-run the normalizing flows from [https://arxiv.org/abs/1806.07366 the paper] for various examples and analyse properties.
-
==Список вопросов и задач для зкзамена==
+
==Exam questions==
 +
See the course plan above
==Ссылки на материалы курса==
==Ссылки на материалы курса==
Строка 330: Строка 496:
|-
|-
|}
|}
 +
 +
 +
 +
====Выбор моделей в задачах декодирования====
 +
#[http://strijov.com/papers/Katrutsa2014TestGenerationEn.pdf Katrutsa A.M., Strijov V.V. Stresstest procedure for feature selection algorithms // Chemometrics and Intelligent Laboratory Systems, 2015, 142 : 172-183.]
 +
#[http://strijov.com/papers/Katrutsa2016QPFeatureSelection.pdf Katrutsa A.M., Strijov V.V. Comprehensive study of feature selection methods to solve multicollinearity problem according to evaluation criteria // Expert Systems with Applications, 2017, 76 : 1-11.]
 +
#[http://strijov.com/papers/IsachenkoVladimirova2018PLS.pdf Isachenko R.V., Vladimirova M.R., Strijov V.V. Dimensionality reduction for time series decoding and forecasting problems // DEStech Transactions on Computer Science and Engineering, 2018, 27349 : 286-296.]
 +
#[Isachenko R.A., Strijov V.V. Quadratic programming feature selection for multicorrelated signal decoding with partial least squares // Submitted, 2021.]
 +
 +
====Построение моделей нейроинтерфейсов====
 +
#[http://strijov.com/papers/MotrenkoStrijov2017ECoG_HL_2.pdf Motrenko A.P., Strijov V.V. Multi-way feature selection for ECoG-based brain-computer interface // Expert Systems with Applications, 2018, 114(30) : 402-413.]
 +
#[https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/PhDThesis/Motrenko/doc/Motrenko2018Thesis.pdf?format=raw Мотренко А.П. Выбор моделей прогнозирования мультикоррелирующих временных рядов (научный руководитель В.В. Стрижов). Московский физико-технический институт, 2019.]
 +
#[http://strijov.com/papers/Isachenko2020CanonicCorrelation.pdf Яушев Ф.Ю., Исаченко Р.В., Стрижов В.В. Модели согласования скрытого пространства в задаче прогнозирования // Системы и средства информатики, 2021, 31(1). ]
 +
 +
====Прогнозирование волатильности опционов====
 +
#Karsten Ehrig, Ulrike Prange, Gabriele Taentzer, Hartmut Ehrig. Fundamentals of Algebraic Graph Transformation, 2006.
 +
#[http://strijov.com/papers/Sologub2014Disser-0018d.pdf Сологуб Р.А. Алгоритмы индуктивного порождения и трансформации моделей в задачах нелинейной регрессии, 2014.]
 +
#[http://strijov.com/papers/Kulunchakov2014RankingBySimpleFun.pdf Kulunchakov A.S., Strijov V.V. Generation of simple structured Information Retrieval functions by genetic algorithm without stagnation // Expert Systems with Applications, 2017, 85 : 221-230.]
 +
#[http://strijov.com/papers/Strijov09JCT5.pdf Стрижов В.В., Сологуб Р.А. Индуктивное порождение регрессионных моделей предполагаемой волатильности для опционных торгов // Вычислительные технологии, 2009, 14(5) : 102-113.]
 +
#[http://strijov.com/papers/Rudoy2012Generation_Preprint.pdf Рудой Г.И., Стрижов В.В. Алгоритмы индуктивного порождения суперпозиций для аппроксимации измеряемых данных // Информатика и её применения, 2013, 7(1) : 17-26.]
 +
 +
====Выравнивание DTW====
 +
параметрическое и непараметрическое, поиск центроидов временных рядов
 +
#[http://strijov.com/papers/Isachenko2016MetricsLearning.pdf Исаченко Р.В., Стрижов В.В. Метрическое обучение в задачах многоклассовой классификации временных рядов // Информатика и ее применения, 2016, 10(2) : 48-57.]
 +
#[http://strijov.com/papers/Goncharov2019mDTW.pdf Гончаров А.В., Стрижов В.В. Выравнивание декартовых произведении упорядоченных множеств // Информатика и ее применения, 2020, 14(1) : 31-39.]
 +
#[http://strijov.com/papers/Goncharov2015authumn.pdf Гончаров А.В., Стрижов В.В. Метрическая классификация временных рядов со взвешенным выравниванием относительно центроидов классов // Информатика и ее применения, 2016, 10(2) : 36-47.]
 +
#[http://strijov.com/papers/Goncharov2015MetricClassification.pdf Гончаров А.В., Попова М.С., Стрижов В.В. Метрическая классификация временных рядов с выравниванием относительно центроидов классов // Системы и средства информатики, 2015, 25(4) : 52-64.]
 +
#[http://strijov.com/papers/Goncharov2017Analysis.pdf Goncharov A.V., Strijov V.V. Analysis of dissimilarity set between time series // Computational Mathematics and Modeling, 2018, 29(3) : 359-366.]
 +
#[http://strijov.com/papers/Goncharov_Fruct_2016.pdf Goncharov A.V., Strijov V.V. Continuous time series alignment in human actions recognition // Artificial Intelligence and Natural Language and Information Extraction, Social Media and Web Search FRUCT Conference proceedings // AINL FRUCT: Artificial Intelligence and Natural Language Conference, 2016 : 83-86.]
 +
 +
====Задачи локального прогнозирования====
 +
#[http://strijov.com/papers/Karasikov2016TSC.pdf Карасиков М.Е., Стрижов В.В. Классификация временных рядов в пространстве параметров порождающих моделей // Информатика и ее применения, 2016, 10(4) : 121-131.]
 +
#[http://strijov.com/papers/Isachenko2018AccelerometerAIDM.pdf Isachenko R.V., Bochkarev А.М., Zharikov I.N., Strijov V.V. Feature generation for physical activity classification // Artificial Intelligence and Decision Making, 2018, 3 : 20-27.]
 +
#[http://strijov.com/papers/IsachenkoVladimirova2018PLS.pdf Isachenko R.V., Vladimirova M.R., Strijov V.V. Dimensionality reduction for time series decoding and forecasting problems // DEStech Transactions on Computer Science and Engineering, 2018, 27349 : 286-296.]
 +
#[https://rdcu.be/bfR32 Isachenko R.V., Strijov V.V. Quadratic Programming Optimization with Feature Selection for Non-linear Models // Lobachevskii Journal of Mathematics, 2018, 39(9) : 1179-1187. ]
 +
 +
====Рейтинги====
 +
Прогнозирование элементов частично-упорядоченных множеств
 +
#[https://sourceforge.net/p/mvr/code/HEAD/tree/lectures/AMA2015/Strijov19Dec2014PreferenceLearning_AMA.pdf?format=raw Слайды]
 +
#[http://strijov.com/papers/Medvednikova2014POF.pdf Stenina M.M., Kuznetsov M.P., Strijov V.V. Ordinal classification using Pareto fronts // Expert Systems with Applications, 2015, 42(14) : 5947–5953.]
 +
#[http://strijov.com/papers/Kuznetsov-Strijov2013Concordance.pdf Kuznetsov M.P., Strijov V.V. Methods of expert estimations concordance for integral quality estimation // Expert Systems with Applications, 2014, 41(4-2) : 1988-1996.]
 +
#[https://mipt.ru/upload/iblock/782/kuznetsov_dissertatsiya.pdf Кузнецов М.П. Построение моделей обучения по предпочтениям с использованием порядковых экспертных оценок, 2016.]
 +
 +
====Вероятностные модели====
 +
#[http://strijov.com/papers/Strijov2012ErrorFn.pdf Стрижов В.В. Функция ошибки в задачах восстановления регрессии // Заводская лаборатория. Диагностика материалов, 2013, 79(5) : 65-73.]
 +
#[https://www.sciencedirect.com/science/article/pii/S0895717711001075 Strijov V.V., Krymova E.A., Weber G.W. Evidence optimization for consequently generated models // Mathematical and Computer Modelling, 2013, 57(1-2) : 50-56.]
 +
#[http://strijov.com/papers/HyperOptimizationEng.pdf Kuznetsov M.P., Tokmakova A.A., Strijov V.V. Analytic and stochastic methods of structure parameter estimation // Informatica, 2016, 27(3) : 607-624.]
===Youtube video===
===Youtube video===
Строка 339: Строка 552:
# Л5: [https://www.youtube.com/watch?v=LuEjLEWYdCQ Динамическое выравнивание, локальное прогнозирование]
# Л5: [https://www.youtube.com/watch?v=LuEjLEWYdCQ Динамическое выравнивание, локальное прогнозирование]
# Л6: [https://youtu.be/PRZRgfoGoyg Метод проекции в скрытые пространства PLS]
# Л6: [https://youtu.be/PRZRgfoGoyg Метод проекции в скрытые пространства PLS]
 +
 +
===Ковариационный анализ===
 +
# [[Ковариационный анализ]]
 +
# Canonical correlation
 +
# Cross-covariance matrix
 +
# Причинность по Грейнджеру
===ACF: автокорреляционная функция===
===ACF: автокорреляционная функция===
Строка 359: Строка 578:
*[[Математические методы прогнозирования (лекции, В.В. Стрижов)/Группы 674, 774, весна 2021]]. (Взять лабы и материалы)
*[[Математические методы прогнозирования (лекции, В.В. Стрижов)/Группы 674, 774, весна 2021]]. (Взять лабы и материалы)
*[[Математические методы прогнозирования (лекции, А.В. Грабовой, В.В. Стрижов)/Осень 2021]] (Взять материалы без лаб)
*[[Математические методы прогнозирования (лекции, А.В. Грабовой, В.В. Стрижов)/Осень 2021]] (Взять материалы без лаб)
 +
 +
 +
==Organizational part==
 +
Preparing to Lab Series III
 +
 +
Motivation
 +
* The basic goal is to reduce programming time and boost quality of the code.
 +
* The long-term goal is to make more complex experiments.
 +
 +
Organization part
 +
Ensure:
 +
# The author has right to pack external code to the library.
 +
# The author shows contribution as the code creator, assembler, and experimenter.
 +
# The author’s upload is shareable. Other students can use it.
 +
 +
Todo:
 +
# Find a proper source code for the Lab 301-310.
 +
# Make an example from an existing student work.
 +
# Set a page with list of examples.
 +
# Publish a simple manual how to pack a lab-work into the library.
 +
 +
==Topics to discuss==
 +
* What are the criterions for criterions index selection?
 +
* Can we rotate the time as a tensor index?
 +
* Can we count multi periodicity as a multi-index and HO-SVD?
 +
* Why we need to reduce the dimensionality?
 +
* How to sample the case trajectory by sliding and random windows?
 +
* Time series or a spectrogram (time or frequency domain)?
 +
* What is the difference between SVD, PLS, CCA?
 +
* CCM between two phase trajectories with various number of indexes?
 +
* How to detect a phase of the quasi periodic signal?
 +
* How the tensor product and SVD are connected?
 +
* How to align the indexes in HOPLS?
 +
* How to detect are the time-stamps regular or not?
 +
* Is the linearity of time important for the convolution?

Текущая версия

Each tuesday 16:10 at the channel m1p.org/go_zoom

Содержание

Ведущие Алина Самохина, Денис Тихонов, Святослав Панченко

Короткая ссылка bit.ly/3QAOYPd

Mathematical forecasting

This course delivers methods of model selection in machine learning and forecasting. The modelling data are videos, audios, encephalograms, fMRIs and another measurements in natural science. The models are linear, tensor, deep neural networks, and neural ODEs. The practical examples are brain-computer interfaces, weather forecasting and various spatial-time series forecasting. The lab works are organised as paper-with-code reports.

Schedule

  • [Sep] 6-s1, 13-s2, 20-s3, 27-s4 – lab 1
  • [Oct] 4, 14, 18, 25 – lab 2, 3
  • [Nov] 1s7, 8, 15, 22, 29 – lab 3, 4
  • [Dec] 6, 13 exam

playlist 2022-2023 2021-2022

Discussion and course page

Lab works

Lab work contains report in the notebook and talk with discussion

  1. Title and motivated abstract
  2. Problem statement
  3. Model, problem solution
  4. Code, analysis and illustrative plots
  5. References

Note: the model (and sometimes data) are personal. The rest – infrastructure, error functions, plots, are welcome to be created collectively and shared.

Topics of the lab works are

  • Autoregressive forecasting (Singular Structure Analysis)
  • Spatial-time forecasting (Tensor Decomposition)
  • Signal decoding (Projection to Latent Space)
  • Continuous-time forecasting (Neural Differential Equations)

Exam and grading

Four lab works within deadlines and the exam on topics with problems and discussion.

Each lab gives 2.5pt, all_labs = 10

The exam gives 10pt, final mark=(all_labs + exam) / 2

Terminology and list of notations

See PhD thesis by Roman Isachenko See also

Lecture topics

  • Energy forecasting example
  • Regression
  • Linear model
  • Model selection call
  • Forecasting protocol
  • Error functions
  • Singular spectrum analysis
  • SSA forecasting
  • Forecasting protocols and verification (before AR)
  • Autoregression
  • Singular values decomposition (PCA, AE, Kar-Lo)
  • QPFS model selection
  • Auto, cross-correlation, cointegration
  • Diagrams for ML and PLS
  • Projection to latent space and relation to PCA, canonical-correlation analysis
  • PLS-QPFS model selection
  • Higher-order SSA
  • Tensor decomposition
  • Tensor model selection
  • HOPLS
  • Granger causality test
  • Convergent cross mapping
  • HOCCM to invent
  • Taken’s theorem
  • ResNet, Neural ODE
  • Adjoint and back-propagation
  • Flows and forecasting
  • Space state models
  • S4, Hippo, SaShiMi models
  • (if room) Neural PDE, Lagrangian, Hamiltonian nns.

\\ To include

  • RNN, LSTM, attention, transformer models
  • Directional regression
  • Harmonic functions
  • Phase extraction
  • Non-parametric regression and customer demands forecasting
  • Graph earth prediction

Format of the lab works

  1. Create a .pynb or .py file Surname2022Lab in the folder
  2. The report also could be in the .tex file.
  3. Find the format of your report above.
  4. The computational experiment contains common part and individual part.
  5. Common part:
    1. use four short sample set [airplane], [electricity], [accelerometer hand motion], [video hand motion],
    2. prepare the design matrix and target a scalar/vector for each time sample (in the form time, vecx, vecy),
    3. set the forecast horizon, plot the forecast and estimate the error.
  6. Individual part:
    1. select a lab work and specify your model (you can adopt any code available for),
    2. tune parameters, make your forecast according the horizon,
    3. write the report.
  7. Error analysis is a part of the report:
  8. plot of the forecast,
  9. MAPE error (and your optimization error, if available) and its standard deviation,
  10. prove your model has the optimal structure, try various structure parameters.

Details:

  1. time refers to each sample (in unix or any useful format),
  2. the horizon is an expected fundamental period,
  3. note that the historical time ends before the forecasting period, it means we could use either historical data or the forecasted data (the historical data are not updated after history ends),
  4. the forecasting protocol is in parer, text, slides by Nikita Uvarov.

Examples:

  1. Old format of the report
  2. Code and project
  3. Previous project from Sourceforge.net

Lab work series I

Autoregression models

  1. Time series (collection of examples)
  2. Time series and datasets collection
  3. Временной ряд
  4. Прогнозирование ежедневных цен на электроэнергию (отчет)
  5. Daily electricity price forecasting (report), Example
  6. Прогнозирование временных рядов методом SSA (пример)
  7. Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)
  8. Прогнозирование функциями дискретного аргумента (пример)
  9. Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Группа 874, весна 2011
  10. Руководство исследовательскими проектами (практика, В.В. Стрижов)
  11. Выделение периодической компоненты временного ряда (пример)
  12. Сравнение временных рядов при авторегрессионном прогнозе (пример)
  13. Прогнозирование финансовых пузырей (пример)
  14. Прогнозирование объемов продаж групп товаров (отчет)
  15. Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)
  16. Обнаружение жизненного цикла товаров (отчет)
  17. Непараметрическая регрессия
  18. Непараметрическая регрессия: ядерное сглаживание

Lab 101 Kernel smoothing

Метод ядерного сглаживания временного ряда, как один из видов непараметрической регрессии. Он восстанавливает функцию времени взвешенной линейной комбинацией точек из некоторой окрестности. Непрерывную ограниченную симметричную вещественную весовую функцию называют ядром. Полученная ядерная оценка используется для прогнозирования следующей точки ряда. Исследуется зависимость качества прогнозирования от параметров ядра и наложенного шума см. Хардле. Select an optimal kernel to forecast a point of a phase trajectory in multivariate time series. Example

Lab 102 Exponential smoothing

Алгоритм экспоненциального сглаживания для прогнозирования временных рядов. Он учитывает предыдущие значения ряда с весами, убывающими по мере удаления от исследуемого участка временного ряда. Изучить поведение алгоритма на модельных данных в различных моделях весов. Проанализировать работу алгоритма на биржевых индексах. Select points of phase trajectory to smooth. Модели экспоненциального сглаживания:

  1. Модель Брауна — экспоненциальное сглаживание
  2. Модель Хольта — учитываются линейный тренд без сезонности
  3. Модель Хольта-Уинтерса — учитываются мультипликативный тренд и сезонность
  4. Модель Тейла-Вейджа — учитываются аддитивный тренд и сезонность
  5. Модель Тригга-Лича — следящий контрольный сигнал используется для адаптации параметров адаптации
  6. Сезонность

Example

Lab 103 Local forecasting

Временной ряд делится на отдельные участки, каждому из которых сопоставляется точка в n-мерном пространстве признаков. Локальная модель рассчитывается в три последовательных этапа. Первый – находит k-ближайших соседей наблюдаемой точки. Второй – строит простую модель, используя только этих k соседей. Третий – используя данную модель, по наблюдаемой точке прогнозирует следующую. Многие исследователи, используют эвклидову метрику для измерения расстояний между точками. Данная работа призвана сравнить точность прогнозирования при использовании различных метрик, в первую очередь Махаланобиса. В частности, требуется исследовать оптимальный набор весов во взвешенной метрике для максимизации точности прогнозирования. Example

Lab 103a Local forecasting with invariants

Find invariant translation in time (linear or non-linear) and in phase space (shift and scale). В проекте используются локальные методы прогнозирования временных рядов. В этих методах не находится представления временного ряда в классе заданных функций от времени. Вместо этого прогноз осуществляется на основе данных о каком-то участке временного ряда (используется локальная информация). В данной работе подробно исследован следующий метод (обобщение классического «ближайшего соседа»).

Пусть имеется временной ряд, и стоит задача продолжить его. Предполагается, что такое продолжение определяется предысторией, т.е. в ряде нужно найти часть, которая после некоторого преобразования A становится схожа с той частью, которую мы стремимся прогнозировать. Поиск такого преобразования A и есть цель данного проекта. Для определения степени сходства используется функция B – функция близости двух отрезков временного ряда (подробнее об этом см. здесь). Так мы находим ближайшего соседа к нашей предыстории. В общем случае ищем несколько ближайших соседей. Продолжение запишется в виде их линейной комбинации.

Lab 104 Singular spectrum analysis

В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры.

(Old variant Метод содержит четыре этапа - представление временного ряда в виде матрицы при помощи сдвиговой процедуры, вычисление ковариационной матрицы выборки и сингулярное ее разложение, отбор главных компонент,относящихся к различным составляющим ряда (от медленно меняющихся и периодических до шумовых), и, наконец, восстановление ряда. Областью применения алгоритма являются задачи как метеорологии и геофизики, так и экономики и медицины. Целью данной работы является выяснение зависимости эффективности алгоритма от выбора временных рядов, используемых в его работе.) Example, Example, Example

Lab 104a Singular spectrum analysis

Forecast a multivariate series, the target time series are subset of the design.

Lab 105 Simple neural network

Forecast a (multivariate) time series with 2-NN. Find the optimal number of neurons. (Old variant Исследование зависимости качества прогнозирования нейронными сетями без обратной связи (одно- и многослойными перцептронами) от выбранной функции активации нейронов в сети, а также от параметров этой функции. Результат – оценка качества прогнозирования нейронными сетями в зависимости от типа и параметров функции активации.) Example, Example

Lab 106 ARIMA

Find the optimal p,d,q. ARIMA model examples [1] , [2] , [3] , [4] , [5] !!!!!! , [6] , [7] , [8] , [9] , [10]. Example

Lab 106a GARCH

Plot the forecast and error(t).

Lab 107 Vector autoregression

Forecast a multivariate time series. Find an optimal structure of VAR-model.

Lab 108 Discrete functions to forecast MIDI

Прогнозирование музыкальных произведений. Прогнозирование функциями дискретного аргумента (пример) В работе исследуются короткие временные ряды на примере монофонических музыкальных мелодий. Происходит прогнозирование одной ноты экспоненциальным сглаживанием, локальным методом, а также методом поиска постоянных закономерностей. Вычислительный эксперимент проводится на двух мелодиях, одна из которых имеет точно повторяющиеся фрагменты. Example

Lab 109 Spline approximation and forecasting

The description and code is here.

Lab 110: SVN–regression and forecasting

Use a linear model with or without kernel trick with quadratic or SVN error function.

Lab 111: Flexible Least Squares

Example

Lab 112: Event forecasting

Event and change-point forecasting models Example

Lab 106b: Histogram forecasting

Example and error correction (Uvarov's paper)

RESUME of Lab series I

Golden rules of forecasting

  1. The forecast horizon is a segment in the time-scale (there is no one-point forecast).
  2. Multivariate time series only (there are no single-variate ones). Sometimes the time series are spatial.

Lab Series II

Tensor low-rank approximation

  1. Коренев, Г.В. Тензорное исчисление, 2000, 240 с., lib.mipt.ru.
  2.  Roger Penrose, "Applications of negative dimensional tensors," in Combinatorial Mathematics and its Applications, Academic Press (1971). See Vladimir Turaev, Quantum invariants of knots and 3-manifolds (1994), De Gruyter, p. 71 for a brief commentary PDF.
  3. Tai-Danae Bradley, At the Interface of Algebra and Statistics, 2020, ArXiv.
  4. Oseledets, I.V. Tensor-Train Decomposition //SIAM Journal on Scientific Computing, 2011, 33(5): 2295–2317, DOI, RG, lecture, GitHub, Tutoiral.
  5. Wikipedia: SVD, Multilinear subspace learning, HOSVD.
  6. Seminar 4 in 2021
  7. HOTTBOX: Higher Order Tensors ToolBOX is the entrance point
  8. TensorLy: Fast & Simple Tensor Learning In Python
  9. Tensor Toolbox for MATLAB
  10. Examples and links 2021
  11. AlphaTensor by DeepMind explained

Lab 201

Tensor approximation. Approximate the 2, 3 and 4 index matrices using low-rank decompositions, linear and nonlinear. The data sets are: a picture, a short animation movie (basic variant), a sound spectrogram, an fMRI. Plot the sequence of data approximations with ranks 1,..,n. Plot the error: x-axis is the rank, y-axis is the approximation error. Plot the variance of the error for various samples of data, if possible.

  • Code [Tucker, PARAFAC-CANDECOMP, Tensor-train, and variants]
  • Data sets [Cartoon, Sound, fMRI, and variants]

Lab 202

PCA on higher orders. Construct a linear map of pairwise distance matrix to a space of lower dimensionality and plot the data. There are two possibilities: high-rank dimensional reduction and order reduction. If you could demonstrate the order reduction, it would be great. The pictures are appreciated.

  • Code [Tucker, Tensor-train, and variants]
  • Data sets [Cartoon, Sound, fMRI, and variants]

Lab 203

Three-dimensional image reconstruction. Use sinograms of the computed tomography scans. Show the sequential approximation like in the lab work 1 with plots.

  • Code [linear and NN]
  • Data [Sinogram to fMRI]

Lab 204

Formalize the set of low-rank approximation quality criterions (for multilinear operators with pseudo-inverses): precision, stability, computational complexity. Compare the decomposition methods from hottbox.

  • Code [Hottbox]
  • Data [Synthetic data with a simple visual/geometric visualization, like TF logo]

Lab 205

Construct a phase trajectory of a spatial time series (a video, cartoon) and make a forecast with the higher order singular structure analysis.

  • Code [SSA, HOSVD]
  • Data [Cartoon with a walking hero]

Lab 206

Construct two phase trajectories of spatial time series and discover a casualty with the higher order convergent cross mapping.

  • Code [CCM, HOSVD]
  • Data [Cartoon with a walking hero]

Lab 207

Reduction an index on the tensor representation of the data, along with dimensionality reduction. The data is synthetic video, in more than 4D space, visualised by 3D projections.

  • Code [HOSVD, HOPCA]
  • Data [Synthetic 4D+ video]

Lab 208

Higher order spectra analysis versus (higher order) Fourier transform on six-dimensional gyrokinetic data. Reduce number of indexes in tensor data.

  • Code [HOSVD]
  • Data [Gyrokinetic data 10.1016/j.jcp.2012.02.007]

Lab 209

Combine higher-order PLS with CCN to predict eye-movement.

  • Code [HOPLS]
  • Data [Systhesic video and eye-movement]

Lab 210

Higher order PLS for multiway data

  • Code [HOPLS]
  • Data [Accelerometer under various conditions to predict gyro data]

Lab 211

Tensor caterpillar (see paper)

  • Code [HOSSA]
  • Data [Energy] cut with two or three periodics

RESUME of Lab series II

Golden rules of forecasting

  1. The periods, frequencies, spaces, and all cartesian-product-dependencies, which could be represented as multi-way matrix, must be represented like that.
  2. The number of ways must be optimal.

Lab Series III

This series goes to the BCI-ML library. You have to upload an algorithm in py and its usage in (pynb) along with the example data. The series require the data from IMU: accelerometer and gyroscope. These data must acquire some periodic activity from one of more sensors with common time. Examples:

  • two phones in a pocket of a walking person,
  • two phones in a pocket and an opposite hand of a walking person,
  • phones in pockets of several dancing persons.

For some tasks the the time series must be splitted in-phase or randomly in a set of segments. For some tasks the trajectory matrix is the main object to model.

Each set of time series includes three components (x,y,z) for accelerometer and for gyroscope.

Lab 301

Use IMU time series. Cut randomly one or two periods from time-series data (x,y,z of accelerometer) to make a segment. Collect a set of the segments. Variate sizes are welcome. Make the pairwise DTW alignment. Plot the results. Suggest a model of a linear path of minimum cost with a free time-ending (use weighted distance). W-DTW, paper,paper, toolbox, PwC.

Lab 302

Use IMU time series. Cut in-phase one or two periods from time-series data (x,y,z of accelerometer) to make a set of segments. Find the barycenter using DBA algorithm. Plot the result. W-DTW, paper,paper, toolbox, PwC-hard.

Lab 303

Reconstruct the phase of a time series. The Nadaraya-Watson algorithm is basic. For a quasi-periodic stationary time series make its phase trajectory. Recover regression for each sample of the phase. Show the convergence along the time. Plot the time series and its phase.

Basic code by Denis Tikhonov. See also example

Lab 304

Reconstruct the directional regression pynb, txt. Use IMU time series for walking. Basic code by Denis Tikhonov, Karina Usmanova.

Lab 306

Reconstruct the spherical regression. Use IMU time series for walking. Basic code by Denis Tikhonov.

Lab 307

Detect if two time series describe one dynamic system. There given two time series, accelerometers and gyroscopes of two dancers (waltz preferred). Show that these two persons are a single dynamic system. Convergence cross-mapping. text. Basic code by Denis Tikhonov.

Lab 308

Granger test: if the forecasting error decrease after the model appends new time series, consider previous and new time series related. Show that accelerations of two hands of a walking persons are related. W, paper, p. 51

Lab 309

A person walks with two phones. One in a hand and the other in the opposite pocket. The problem is to forecast the hand movement with the pocket movement only. W PLS, W CCA, paper Roman Isachenko. Ask for the PLS code.

Lab 309a

Run the QPFS model selection algorithms to find an optimal subset of the model components.

Lab 310

There given a low-resolution video of a pendulum as the source. And two time series, angle and acceleration, of this pendulum as the target. Given a point of the phase trajectory in the source space (4-way matrix), we have to forecast the angle and acceleration of the pendulum. See HOPLS, text. Ask for code.

Lab 311

SEMOR, the self-modeling regression is the reminder of the umbrella alignment in the latent, analysed space of the sinal decoding model. We analyse

  1. Granger, causality
  2. CCM, relation
  3. DTW, DBA, time-alignment
  4. SEMOR itself, scale-alignment
  5. PLS, dimensionality alignment
  6. HOPLS, index alignment

in this space. The reason for analysis of prepared data is the high complexity of the time-series data. So the test of causality and relation should be run in some subspace.

Since SEMOR itself looks trivial, while the whole list looks sophisticated, there is no lab work for this item.



Lab works, Series IV

Continous-time models

The datasets for any lab work (if it is not specified) are 1) synthetic, are generated from the explicit solution of some differential equation, 2) from existing datasets, but not too long, 3) the self-made measurements are welcome. All of us have accelerometer, microphone, photo-video camera in the mobile phone.

  • Latent ODEs for Irregularly-Sampled Time Series textCode Rubanova
  • Replacing Neural Networks with Black-Box ODE Solvers slides Rubanova
  • Neural Controlled Differential Equations for Irregular Time Series textcode Kridger see his video
  • Go with the Flow: Adaptive Control for Neural ODEs paper Mathieu Chalvidal
  • Neural Ordinary Differential Equations by Ricky T. Q. Chen, Yulia Rubanova, Jesse Bettencourt, David K. Duvenaud // NeurIPS 2018 [11]
  • Learning neural event functions for ordinary differential equations by Ricky T. Q. Chen, Brandon Amos, Maximilian Nickel // ICLR 2021, arXiv:2011.03902v4
  • Interpolation Technique to Speed Up Gradients Propagation in Neural ODEs by Talgat Daulbaev, Alexandr Katrutsa, Larisa Markeeva, Julia Gusak, Andrzej Cichocki, Ivan Oseledets // 2020, arXiv:2003.05271v2
  • Dynamical Systems with Applications using Python by Stephen Lynch, 2018
  • How To Train Your Neural ODE ChrisFinlay et al. [12] or [13]

Neural Controlled DE

  • Explained by Patrick Kidger and his code
  • Neural Controlled Differential Equations for Online Prediction Tasks by James Morrill, Patrick Kidger, Lingyi Yang, Terry Lyons, 2021 [14] and code
  • Forecasting the outcome of spintronic experiments with Neural Ordinary Differential Equations by Xing Chen, Flavio Abreu Araujo, Mathieu Riou, Jacob Torrejon, Dafiné Ravelosona, Wang Kang, Weisheng Zhao, Julie Grollier & Damien Querlioz, 2022 Nature, PDF
  • collection Neural Controlled Differential Equations for Irregular Time Series by Patrick Kidger, James Morrill, James Foster, Terry Lyons, 2020
  • Continuous-Time Modeling of Counterfactual Outcomes Using Neural Controlled Differential Equations by Nabeel Seedat, Fergus Imrie, Alexis Bellot, Zhaozhi Qian, Mihaela van der Schaar, 2022 [15]
  • Attentive Neural Controlled Differential Equations for Time-series Classification and Forecasting by Sheo Yon Jhin, Heejoo Shin, Seoyoung Hong, Solhee Park, Noseong Park, 2021 [16]
  • Graph Neural Controlled Differential Equations for Traffic Forecasting by Jeongwhan Choi, Hwangyong Choi, Jeehyun Hwang, Noseong Park, 2021 [17]
  • Implicit energy regularization of neural ordinary-differential-equation control by Lucas Böttcher, Nino Antulov-Fantulin, Thomas Asikis, 2021 [18]

Code

  • PyTorch Implementation of Differentiable ODE Solvers by Ricky Chen [19]
  • Neural Controlled Differential Equations for Irregular Time Series by Patrick Kidger [20]
  • A PyTorch library dedicated to neural differential equations and implicit models (the simplest implement, 100 lines). Maintained by DiffEqML [21]
  • Neural Ordinary Differential Equations by Mikhail Surtsukov (Russian explanation)
  • Meta-Solver for Neural Ordinary Differential Equations by Julia Gusak [22], [23]
  • Neural ODE Processes code paper
  • PyTorch Implementation of Differentiable ODE Solvers [github.com/rtqichen/torchdiffeq]
  • Jupyter notebook with Pytorch implementation of Neural Ordinary Differential Equations [github.com/msurtsukov/neural-ode]
  • DiffEqFlux.jl – A Julia Library for Neural Differential Equations Julia [24]

Lab 401

Plot the direction field and approximation by ODE-Net near the special points for simple ODEs like y’=y/x (uniform/узел), y’=-y/x saddle, y’=-x/y center, y’=(x+y)/(x-y) spiral.

Lab 402

Plot the stable and unstable phase portraits and approximations for simple ODE.

Lab 403

Find the ODE and plot the solution and ODE-Net approximation to compare and show difference between ODEsolvers: Euler, RK4 and others.

Lab 404

Approximate and plot the electricity consumption time series. Compare the ODE-Net and LSTM or another model you like.

Lab 405

Plot and approximate by ODE-Net the phase portrait of a pendulum with decay.

Lab 405a

Plot and approximate the phase portrait of coupled pendula.

Lab 406

Approximate an accelerometer (walking time series) by a solution of the pendulum ODE.

Lab 406a

Approximate an accelerometer by a solution of the double-pendulum ODE.

Lab 406b

Approximate an accelerometer and a gyroscope (acceleration and velocity) by a solution of the pendulum ODE.

Lab 407

Lorentz attractor, three ODEs. Compare the forecast LSTM (or any model you like) how it differs from the forecast ODE-Net under different initial conditions and under different noise conditions. An option is to immerse the trajectory in a space of a higher dimension by random rotation.

Lab 408

LSTM и ODE-RNN от от Алины Самохиной раздел 2.2.2, только вместо EEG для упрощения временные ряды потребления электроэнергии.

Lab 409

Compare generated and forecaster electricity electricity consumption consumption time series, see section 5 the arXiv:1806.07366v5 and the [ code]

Lab 410

Re-run the normalizing flows from the paper for various examples and analyse properties.

Exam questions

See the course plan above

Ссылки на материалы курса

Тема Ссылка
Вероятностные прогностические модели Стрижов В.В. Функция ошибки в задачах восстановления регрессии // Заводская лаборатория. Диагностика материалов, 2013, 79(5) : 65-73.
Порождение вероятностных моделей Strijov V.V., Krymova E.A., Weber G.W. Evidence optimization for consequently generated models // Mathematical and Computer Modelling, 2013, 57(1-2) : 50-56.
Оценка гиперпараметров вероятностных моделей Kuznetsov M.P., Tokmakova A.A., Strijov V.V. Analytic and stochastic methods of structure parameter estimation // Informatica, 2016, 27(3) : 607-624.
Проблема мультиколлинеарности в задачах прогнозирования Katrutsa A.M., Strijov V.V. Stresstest procedure for feature selection algorithms // Chemometrics and Intelligent Laboratory Systems, 2015, 142 : 172-183.
Выбор признаков и метод Белсли Нейчев Р.Г., Катруца А.М., Стрижов В.В. Выбор оптимального набора признаков из мультикоррелирующего множества в задаче прогнозирования // Заводская лаборатория. Диагностика материалов, 2016, 82(3) : 68-74.
Квадратичное программирование для выбора признаков Katrutsa A.M., Strijov V.V. Comprehensive study of feature selection methods to solve multicollinearity problem according to evaluation criteria // Expert Systems with Applications, 2017, 76 : 1-11.
Авторегрессионное прогнозирование и метод Гусеница (Singular spectrum analysis) Сандуляну Л.Н., Стрижов В.В. Выбор признаков в авторегрессионных задачах прогнозирования // Информационные технологии, 2012, 7 : 11-15.
Прогнозирование сигналов носимых устройств Карасиков М.Е., Стрижов В.В. Классификация временных рядов в пространстве параметров порождающих моделей // Информатика и ее применения, 2016, 10(4) : 121-131.
Выбор прогностических моделей сигналов носимых устройств Карасиков М.Е., Стрижов В.В. Классификация временных рядов в пространстве параметров порождающих моделей // Информатика и ее применения, 2016, 10(4) : 121-131.

Усманова К.Р., Стрижов В.В. Обнаружение зависимостей во временных рядах в задачах построения прогностических моделей // Системы и средства информатики, 2019, 29(2) : 12-30.

Не вошло в материалы (сферическая регрессия в аппроксимации фазовых траекторий) Usmanova K.R., Zhuravev K.V., Rudakov K.V., Strijov V.V. Approximation of quasiperiodic signal phase trajectory using directional regression // Computational Mathematics and Cybernetics, 2020.
Метод частичных наименьших квадратов и канонический корреляционый анализ Isachenko R.V., Vladimirova M.R., Strijov V.V. Dimensionality reduction for time series decoding and forecasting problems // DEStech Transactions on Computer Science and Engineering, 2018, 27349 : 286-296.
Метод частичных наименьших квадратов (нелинейный вариант) Isachenko R.V., Strijov V.V. Quadratic Programming Optimization with Feature Selection for Non-linear Models // Lobachevskii Journal of Mathematics, 2018, 39(9) : 1179-1187.
Построение моделей нейроинтерфейсов Motrenko A.P., Strijov V.V. Multi-way feature selection for ECoG-based brain-computer interface // Expert Systems with Applications, 2018, 114(30) : 402-413.
Прогнозирование волатильности опционных торгов (прикладной проект) Стрижов В.В., Сологуб Р.А. Индуктивное порождение регрессионных моделей предполагаемой волатильности для опционных торгов // Вычислительные технологии, 2009, 14(5) : 102-113.
Сравнение прогностических моделей Уваров Н.Д., Кузнецов М.П., Малькова А.С., Рудаков К.В., Стрижов В.В. Выбор суперпозиции моделей при прогнозировании грузовых железнодорожных перевозок // Вестник Московского университета. Серия 15. Вычислительная математика и кибернетика, 2018, 4 : 41-48.


Выбор моделей в задачах декодирования

  1. Katrutsa A.M., Strijov V.V. Stresstest procedure for feature selection algorithms // Chemometrics and Intelligent Laboratory Systems, 2015, 142 : 172-183.
  2. Katrutsa A.M., Strijov V.V. Comprehensive study of feature selection methods to solve multicollinearity problem according to evaluation criteria // Expert Systems with Applications, 2017, 76 : 1-11.
  3. Isachenko R.V., Vladimirova M.R., Strijov V.V. Dimensionality reduction for time series decoding and forecasting problems // DEStech Transactions on Computer Science and Engineering, 2018, 27349 : 286-296.
  4. [Isachenko R.A., Strijov V.V. Quadratic programming feature selection for multicorrelated signal decoding with partial least squares // Submitted, 2021.]

Построение моделей нейроинтерфейсов

  1. Motrenko A.P., Strijov V.V. Multi-way feature selection for ECoG-based brain-computer interface // Expert Systems with Applications, 2018, 114(30) : 402-413.
  2. Мотренко А.П. Выбор моделей прогнозирования мультикоррелирующих временных рядов (научный руководитель В.В. Стрижов). Московский физико-технический институт, 2019.
  3. Яушев Ф.Ю., Исаченко Р.В., Стрижов В.В. Модели согласования скрытого пространства в задаче прогнозирования // Системы и средства информатики, 2021, 31(1). 

Прогнозирование волатильности опционов

  1. Karsten Ehrig, Ulrike Prange, Gabriele Taentzer, Hartmut Ehrig. Fundamentals of Algebraic Graph Transformation, 2006.
  2. Сологуб Р.А. Алгоритмы индуктивного порождения и трансформации моделей в задачах нелинейной регрессии, 2014.
  3. Kulunchakov A.S., Strijov V.V. Generation of simple structured Information Retrieval functions by genetic algorithm without stagnation // Expert Systems with Applications, 2017, 85 : 221-230.
  4. Стрижов В.В., Сологуб Р.А. Индуктивное порождение регрессионных моделей предполагаемой волатильности для опционных торгов // Вычислительные технологии, 2009, 14(5) : 102-113.
  5. Рудой Г.И., Стрижов В.В. Алгоритмы индуктивного порождения суперпозиций для аппроксимации измеряемых данных // Информатика и её применения, 2013, 7(1) : 17-26.

Выравнивание DTW

параметрическое и непараметрическое, поиск центроидов временных рядов

  1. Исаченко Р.В., Стрижов В.В. Метрическое обучение в задачах многоклассовой классификации временных рядов // Информатика и ее применения, 2016, 10(2) : 48-57.
  2. Гончаров А.В., Стрижов В.В. Выравнивание декартовых произведении упорядоченных множеств // Информатика и ее применения, 2020, 14(1) : 31-39.
  3. Гончаров А.В., Стрижов В.В. Метрическая классификация временных рядов со взвешенным выравниванием относительно центроидов классов // Информатика и ее применения, 2016, 10(2) : 36-47.
  4. Гончаров А.В., Попова М.С., Стрижов В.В. Метрическая классификация временных рядов с выравниванием относительно центроидов классов // Системы и средства информатики, 2015, 25(4) : 52-64.
  5. Goncharov A.V., Strijov V.V. Analysis of dissimilarity set between time series // Computational Mathematics and Modeling, 2018, 29(3) : 359-366.
  6. Goncharov A.V., Strijov V.V. Continuous time series alignment in human actions recognition // Artificial Intelligence and Natural Language and Information Extraction, Social Media and Web Search FRUCT Conference proceedings // AINL FRUCT: Artificial Intelligence and Natural Language Conference, 2016 : 83-86.

Задачи локального прогнозирования

  1. Карасиков М.Е., Стрижов В.В. Классификация временных рядов в пространстве параметров порождающих моделей // Информатика и ее применения, 2016, 10(4) : 121-131.
  2. Isachenko R.V., Bochkarev А.М., Zharikov I.N., Strijov V.V. Feature generation for physical activity classification // Artificial Intelligence and Decision Making, 2018, 3 : 20-27.
  3. Isachenko R.V., Vladimirova M.R., Strijov V.V. Dimensionality reduction for time series decoding and forecasting problems // DEStech Transactions on Computer Science and Engineering, 2018, 27349 : 286-296.
  4. Isachenko R.V., Strijov V.V. Quadratic Programming Optimization with Feature Selection for Non-linear Models // Lobachevskii Journal of Mathematics, 2018, 39(9) : 1179-1187. 

Рейтинги

Прогнозирование элементов частично-упорядоченных множеств

  1. Слайды
  2. Stenina M.M., Kuznetsov M.P., Strijov V.V. Ordinal classification using Pareto fronts // Expert Systems with Applications, 2015, 42(14) : 5947–5953.
  3. Kuznetsov M.P., Strijov V.V. Methods of expert estimations concordance for integral quality estimation // Expert Systems with Applications, 2014, 41(4-2) : 1988-1996.
  4. Кузнецов М.П. Построение моделей обучения по предпочтениям с использованием порядковых экспертных оценок, 2016.

Вероятностные модели

  1. Стрижов В.В. Функция ошибки в задачах восстановления регрессии // Заводская лаборатория. Диагностика материалов, 2013, 79(5) : 65-73.
  2. Strijov V.V., Krymova E.A., Weber G.W. Evidence optimization for consequently generated models // Mathematical and Computer Modelling, 2013, 57(1-2) : 50-56.
  3. Kuznetsov M.P., Tokmakova A.A., Strijov V.V. Analytic and stochastic methods of structure parameter estimation // Informatica, 2016, 27(3) : 607-624.

Youtube video

Видео-канал

  1. Л1: Анализ ошибки и вероятностные модели
  2. Л2: Примеры прогностических моделей и вероятностная интерпретация
  3. Л3: Свертка и фазовая траектория
  4. Л4: Авторегрессионные модели и учет ошибки
  5. Л5: Динамическое выравнивание, локальное прогнозирование
  6. Л6: Метод проекции в скрытые пространства PLS

Ковариационный анализ

  1. Ковариационный анализ
  2. Canonical correlation
  3. Cross-covariance matrix
  4. Причинность по Грейнджеру

ACF: автокорреляционная функция

Коррелограмма

  1. Autocorrelation
  2. Autocorrelation Matrix
  3. FPCA illustration
  4. An Example of ACF in Two Dimensions
  5. Effect of Windowing Function on Autocorrelation Function
  6. Sample ACF and Properties of AR(1) Model
  7. 2.8 Autocorrelation
  8. Autocorrelation Function of Exponential Sequence
  9. Fast way reduce noise of autocorrelation function in python?

References

Main and supplimentary



Organizational part

Preparing to Lab Series III

Motivation

  • The basic goal is to reduce programming time and boost quality of the code.
  • The long-term goal is to make more complex experiments.

Organization part Ensure:

  1. The author has right to pack external code to the library.
  2. The author shows contribution as the code creator, assembler, and experimenter.
  3. The author’s upload is shareable. Other students can use it.

Todo:

  1. Find a proper source code for the Lab 301-310.
  2. Make an example from an existing student work.
  3. Set a page with list of examples.
  4. Publish a simple manual how to pack a lab-work into the library.

Topics to discuss

  • What are the criterions for criterions index selection?
  • Can we rotate the time as a tensor index?
  • Can we count multi periodicity as a multi-index and HO-SVD?
  • Why we need to reduce the dimensionality?
  • How to sample the case trajectory by sliding and random windows?
  • Time series or a spectrogram (time or frequency domain)?
  • What is the difference between SVD, PLS, CCA?
  • CCM between two phase trajectories with various number of indexes?
  • How to detect a phase of the quasi periodic signal?
  • How the tensor product and SVD are connected?
  • How to align the indexes in HOPLS?
  • How to detect are the time-stamps regular or not?
  • Is the linearity of time important for the convolution?
Личные инструменты