Математические методы прогнозирования/Осень 2022
Материал из MachineLearning.
(→Lab works) |
(→Continous-time models) |
||
(144 промежуточные версии не показаны) | |||
Строка 2: | Строка 2: | ||
{{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}} | {{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}} | ||
- | __NOTOC__ | + | {{TOCright}} |
+ | <!-- __NOTOC__ --> | ||
Ведущие '''Алина Самохина, Денис Тихонов, Святослав Панченко''' | Ведущие '''Алина Самохина, Денис Тихонов, Святослав Панченко''' | ||
+ | |||
+ | Короткая ссылка [https://bit.ly/3QAOYPd bit.ly/3QAOYPd] | ||
=Mathematical forecasting= | =Mathematical forecasting= | ||
Строка 11: | Строка 14: | ||
==Schedule== | ==Schedule== | ||
- | *[Sep] 6, 13, 20, 27 | + | *[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 | + | *[Oct] 4, 14, 18, 25 – lab 2, 3 |
- | *[Nov] 8, 15, 22, 29 | + | *[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== | ||
+ | * [https://t.me/is_mmp Telegram MMP] | ||
+ | * [https://github.com/intsystems/MathematicalForecastingMethods GitHub] | ||
==Lab works== | ==Lab works== | ||
Строка 33: | Строка 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 == | ||
+ | See PhD thesis by [http://www.frccsc.ru/sites/default/files/docs/ds/002-073-05/diss/31-isachenko/ds05_31-isachenko_main.pdf?18 Roman Isachenko] | ||
+ | See also | ||
+ | *Tensor terminology in the PhD thesis by [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/PhDThesis/Motrenko/doc/Motrenko2018Thesis.pdf Anastasia Motrenko] | ||
+ | *Model selection terminology in the PhD theses by [http://www.frccsc.ru/sites/default/files/docs/ds/002-073-05/diss/26-bahteev/ds05-26-bahteev_main.pdf?28 Oleg Bakhteev] and by [https://www.frccsc.ru/sites/default/files/docs/ds/002-073-05/diss/35-grabovoy/ds05-35-grabovoy_main.pdf?90 Andery Grabovoy] | ||
==Lecture topics== | ==Lecture topics== | ||
Строка 59: | Строка 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 | ||
Строка 73: | Строка 94: | ||
==Format of the lab works== | ==Format of the lab works== | ||
- | + | # Create a .pynb or .py file Surname2022Lab [http://is-mipt.site in the folder] | |
- | + | # The report also could be in the .tex file. | |
- | # | + | # Find the format of your report above. |
- | # | + | # The computational experiment contains common part and individual part. |
- | # | + | # Common part: |
- | # | + | ## use four short sample set [airplane], [electricity], [accelerometer hand motion], [video hand motion], |
- | # | + | ## prepare the design matrix and target a scalar/vector for each time sample (in the form time, vecx, vecy), |
- | # | + | ## set the forecast horizon, plot the forecast and estimate the error. |
- | # | + | # Individual part: |
+ | ## select a lab work and specify your model (you can adopt any code available for), | ||
+ | ## tune parameters, make your forecast according the horizon, | ||
+ | ## write the report. | ||
+ | # Error analysis is a part of the report: <!-- Three functions: model, quality criterion, forecast, parameter optimization (and model selection)--> | ||
+ | # plot of the forecast, | ||
+ | # MAPE error (and your optimization error, if available) and its standard deviation, | ||
+ | # '''prove your model has the optimal structure''', try various structure parameters. | ||
- | + | Details: | |
- | # | + | # time refers to each sample (in unix or any useful format), |
- | # ''' | + | # 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: | ||
- | # [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/KernelSmoothing/Kuznetsov11Smoothing.pdf?format=raw | + | # [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/KernelSmoothing/Kuznetsov11Smoothing.pdf?format=raw Old format of the report] |
- | # [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/KernelSmoothing/ | + | # [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/KernelSmoothing/ Code and project] |
# Previous project [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/ from Sourceforge.net] | # Previous project [https://sourceforge.net/p/mlalgorithms/code/HEAD/tree/TSForecasting/ from Sourceforge.net] | ||
==Lab work series I== | ==Lab work series I== | ||
- | === | + | ===Autoregression models=== |
- | [http:// | + | #[[Временной ряд (библиотека примеров)|'''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]] | ||
+ | #[[Руководство исследовательскими проектами (практика, В.В. Стрижов)]] | ||
+ | #[[Выделение периодической компоненты временного ряда (пример)]] | ||
+ | #[[Сравнение временных рядов при авторегрессионном прогнозе (пример)]] | ||
+ | #[[Прогнозирование финансовых пузырей (пример)]] | ||
+ | #[[Прогнозирование объемов продаж групп товаров (отчет)]] | ||
+ | #[[Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)]] | ||
+ | #[[Обнаружение жизненного цикла товаров (отчет)]] | ||
+ | #[[Непараметрическая регрессия]] | ||
+ | #[[Непараметрическая регрессия: ядерное сглаживание]] | ||
- | === | + | === 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] | |
- | + | ||
- | + | ||
- | = | + | |
- | + | ||
- | === | + | === 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] | ||
- | === | + | ===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 === | ||
В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры. | В работе описывается метод гусеницы и его применение для прогнозирования временных рядов. Алгоритм основан на выделении из изучаемого временного ряда его информативных компонент и последующего построения прогноза. Исследуется зависимость точности прогнозов от выбора длины гусеницы и числа ее компонент. В вычислительном эксперименте приводятся результаты работы алгоритма на периодических рядах с разным рисунком внутри периода, на рядах с нарушением периодичности, а так же на реальных рядах почасовой температуры. | ||
- | + | (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. | |
- | === | + | ===Lab 105 Simple neural network === |
- | + | Forecast a (multivariate) time series with 2-NN. Find the optimal number of neurons. | |
- | + | (Old variant Исследование зависимости качества прогнозирования нейронными сетями без обратной связи (одно- и многослойными перцептронами) от выбранной функции активации нейронов в сети, а также от параметров этой функции. Результат – оценка качества прогнозирования нейронными сетями в зависимости от типа и параметров функции активации.) [http://jmlda.org/papers/doc/2011/JMLDA2011no1.pdf Example], [http://jmlda.org/papers/doc/2011/JMLDA2011no2.pdf Example] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===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). | |
- | + | ||
- | + | ||
- | + | ||
- | === | + | ===Lab 107 Vector autoregression === |
+ | Forecast a multivariate time series. Find an optimal structure of [http://strijov.com/papers/macro1.pdf VAR-model]. | ||
- | [[ | + | ===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. | ||
- | === | + | ===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) | ||
- | === | + | ===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. | ||
- | === | + | ==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] | ||
- | + | ===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 | |
- | # | + | # 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. | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | # | + | |
- | == | + | ==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). [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:// | + | |
- | , [https:// | + | |
- | === | + | === 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]. | |
- | + | ||
- | + | ||
- | + | ||
- | === | + | === Lab 303=== |
- | + | 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 | ||
==Ссылки на материалы курса== | ==Ссылки на материалы курса== | ||
Строка 311: | Строка 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=== | ||
Строка 320: | Строка 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: автокорреляционная функция=== | ||
Строка 340: | Строка 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] 1 – s7, 8, 15, 22, 29 – lab 3, 4
- [Dec] 6, 13 exam
Discussion and course page
Lab works
Lab work contains report in the notebook and talk with discussion
- Title and motivated abstract
- Problem statement
- Model, problem solution
- Code, analysis and illustrative plots
- 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
- Tensor terminology in the PhD thesis by Anastasia Motrenko
- Model selection terminology in the PhD theses by Oleg Bakhteev and by Andery Grabovoy
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
- Create a .pynb or .py file Surname2022Lab in the folder
- The report also could be in the .tex file.
- Find the format of your report above.
- The computational experiment contains common part and individual part.
- Common part:
- use four short sample set [airplane], [electricity], [accelerometer hand motion], [video hand motion],
- prepare the design matrix and target a scalar/vector for each time sample (in the form time, vecx, vecy),
- set the forecast horizon, plot the forecast and estimate the error.
- Individual part:
- select a lab work and specify your model (you can adopt any code available for),
- tune parameters, make your forecast according the horizon,
- write the report.
- Error analysis is a part of the report:
- plot of the forecast,
- MAPE error (and your optimization error, if available) and its standard deviation,
- prove your model has the optimal structure, try various structure parameters.
Details:
- time refers to each sample (in unix or any useful format),
- 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 parer, text, slides by Nikita Uvarov.
Examples:
- Old format of the report
- Code and project
- Previous project from Sourceforge.net
Lab work series I
Autoregression models
- Time series (collection of examples)
- Time series and datasets collection
- Временной ряд
- Прогнозирование ежедневных цен на электроэнергию (отчет)
- Daily electricity price forecasting (report), Example
- Прогнозирование временных рядов методом SSA (пример)
- Многомерная гусеница, выбор длины и числа компонент гусеницы (пример)
- Прогнозирование функциями дискретного аргумента (пример)
- Численные методы обучения по прецедентам (практика, В.В. Стрижов)/Группа 874, весна 2011
- Руководство исследовательскими проектами (практика, В.В. Стрижов)
- Выделение периодической компоненты временного ряда (пример)
- Сравнение временных рядов при авторегрессионном прогнозе (пример)
- Прогнозирование финансовых пузырей (пример)
- Прогнозирование объемов продаж групп товаров (отчет)
- Долгосрочное прогнозирование ежедневных цен на электроэнергию (пример)
- Обнаружение жизненного цикла товаров (отчет)
- Непараметрическая регрессия
- Непараметрическая регрессия: ядерное сглаживание
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. Модели экспоненциального сглаживания:
- Модель Брауна — экспоненциальное сглаживание
- Модель Хольта — учитываются линейный тренд без сезонности
- Модель Хольта-Уинтерса — учитываются мультипликативный тренд и сезонность
- Модель Тейла-Вейджа — учитываются аддитивный тренд и сезонность
- Модель Тригга-Лича — следящий контрольный сигнал используется для адаптации параметров адаптации
- Сезонность
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
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
- 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.
Lab Series II
Tensor low-rank approximation
- Коренев, Г.В. Тензорное исчисление, 2000, 240 с., 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 PDF.
- Tai-Danae Bradley, At the Interface of Algebra and Statistics, 2020, ArXiv.
- Oseledets, I.V. Tensor-Train Decomposition //SIAM Journal on Scientific Computing, 2011, 33(5): 2295–2317, DOI, RG, lecture, GitHub, Tutoiral.
- Wikipedia: SVD, Multilinear subspace learning, HOSVD.
- Seminar 4 in 2021
- HOTTBOX: Higher Order Tensors ToolBOX is the entrance point
- TensorLy: Fast & Simple Tensor Learning In Python
- Tensor Toolbox for MATLAB
- Examples and links 2021
- 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
- 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.
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
- 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 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. |
Не вошло в материалы (сферическая регрессия в аппроксимации фазовых траекторий) | 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. |
Выбор моделей в задачах декодирования
- Katrutsa A.M., Strijov V.V. Stresstest procedure for feature selection algorithms // Chemometrics and Intelligent Laboratory Systems, 2015, 142 : 172-183.
- 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.
- 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.]
Построение моделей нейроинтерфейсов
- 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.
- Мотренко А.П. Выбор моделей прогнозирования мультикоррелирующих временных рядов (научный руководитель В.В. Стрижов). Московский физико-технический институт, 2019.
- Яушев Ф.Ю., Исаченко Р.В., Стрижов В.В. Модели согласования скрытого пространства в задаче прогнозирования // Системы и средства информатики, 2021, 31(1).
Прогнозирование волатильности опционов
- Karsten Ehrig, Ulrike Prange, Gabriele Taentzer, Hartmut Ehrig. Fundamentals of Algebraic Graph Transformation, 2006.
- Сологуб Р.А. Алгоритмы индуктивного порождения и трансформации моделей в задачах нелинейной регрессии, 2014.
- 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.
- Стрижов В.В., Сологуб Р.А. Индуктивное порождение регрессионных моделей предполагаемой волатильности для опционных торгов // Вычислительные технологии, 2009, 14(5) : 102-113.
- Рудой Г.И., Стрижов В.В. Алгоритмы индуктивного порождения суперпозиций для аппроксимации измеряемых данных // Информатика и её применения, 2013, 7(1) : 17-26.
Выравнивание DTW
параметрическое и непараметрическое, поиск центроидов временных рядов
- Исаченко Р.В., Стрижов В.В. Метрическое обучение в задачах многоклассовой классификации временных рядов // Информатика и ее применения, 2016, 10(2) : 48-57.
- Гончаров А.В., Стрижов В.В. Выравнивание декартовых произведении упорядоченных множеств // Информатика и ее применения, 2020, 14(1) : 31-39.
- Гончаров А.В., Стрижов В.В. Метрическая классификация временных рядов со взвешенным выравниванием относительно центроидов классов // Информатика и ее применения, 2016, 10(2) : 36-47.
- Гончаров А.В., Попова М.С., Стрижов В.В. Метрическая классификация временных рядов с выравниванием относительно центроидов классов // Системы и средства информатики, 2015, 25(4) : 52-64.
- Goncharov A.V., Strijov V.V. Analysis of dissimilarity set between time series // Computational Mathematics and Modeling, 2018, 29(3) : 359-366.
- 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.
Задачи локального прогнозирования
- Карасиков М.Е., Стрижов В.В. Классификация временных рядов в пространстве параметров порождающих моделей // Информатика и ее применения, 2016, 10(4) : 121-131.
- 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.
- 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.
Рейтинги
Прогнозирование элементов частично-упорядоченных множеств
- Слайды
- Stenina M.M., Kuznetsov M.P., Strijov V.V. Ordinal classification using Pareto fronts // Expert Systems with Applications, 2015, 42(14) : 5947–5953.
- 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.
- Кузнецов М.П. Построение моделей обучения по предпочтениям с использованием порядковых экспертных оценок, 2016.
Вероятностные модели
- Стрижов В.В. Функция ошибки в задачах восстановления регрессии // Заводская лаборатория. Диагностика материалов, 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.
Youtube video
- Л1: Анализ ошибки и вероятностные модели
- Л2: Примеры прогностических моделей и вероятностная интерпретация
- Л3: Свертка и фазовая траектория
- Л4: Авторегрессионные модели и учет ошибки
- Л5: Динамическое выравнивание, локальное прогнозирование
- Л6: Метод проекции в скрытые пространства PLS
Ковариационный анализ
- Ковариационный анализ
- Canonical correlation
- Cross-covariance matrix
- Причинность по Грейнджеру
ACF: автокорреляционная функция
- Autocorrelation
- Autocorrelation Matrix
- FPCA illustration
- An Example of ACF in Two Dimensions
- Effect of Windowing Function on Autocorrelation Function
- Sample ACF and Properties of AR(1) Model
- 2.8 Autocorrelation
- Autocorrelation Function of Exponential Sequence
- Fast way reduce noise of autocorrelation function in python?
References
Main and supplimentary
- Математические методы прогнозирования (лекции, В.В. Стрижов)/Группы 674, 774, весна 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?