Перейти к содержанию

622 гр., все. Статистическое обучение для моделирования и прогнозирования временных рядов

Место и время проведения: четверг.
Преподаватель: Голяндина Нина Эдуардовна


Соревнования

Kaggle, classification

Kaggle, regression

Kaggle, врем.ряды, модельные

Kaggle, врем.ряды про погоду/климат, с сезонностью

Результаты (баллы)

Здесь находятся дедлайны и баллы.

Занятия 2024

15.02.2024. Короткое резюме по занятию (и задание к 29.02.2024+). Модель ряда - кусочно-линейный тренд плюс броуновское движение. Параметры - интенсивность изломов lambda (время между изломами распределение экспоненциально, в среднем 5 изломов на 1000 точек), дисперсия sigma_a^2 угла наклона тренда, распределенного нормально со средним 0, и дисперсия sigma^2 приращения в броуновском движении. Нужно уметь моделировать такие ряды.

Обсудили, что MSE любого разумного прогноза должно попадать в диапазон от sigma^2 до sigma^2+sigma_a^2. Это проверяется на основе 100 реализаций исходного ряда (алгоритм прогноза строится на основе одной реализации, не заглядывая на остальные ряды и не зная параметров генерации ряда, потом оценивается MSE прогноза, и потом полученные оценки усредняется по реализациям). Можно брать и больше, если позволяет время вычислений.

Нужно реализовать три варианта прогноза - по последнему значению, по известному углу наклона на последнем участке и реальный прогноз с оценкой угла наклона на последнем участке по m точкам. Для реального прогноза есть гиперпараметр m, число точек, по которым оценивается угол наклона. Этот гиперпараметр подбирается на validation (хотя в данном случае отсутствия параметров у прогнозирующего алгоритма можно подбирать параметры на train (включить validation в train).

Метод реализации - построить траекторную матрицу с длиной окна 51 и последний столбец рассматривать как предсказываемые значения. При этом перебирать гиперпараметр от 1 (2) до 50, не перестраивая траекторную матрицу, а просто убирая соотв.число первых столбцов. Гиперпараметр здесь интерпретируется как число значений ряда, по которым строится предсказание последнего столбца.

Для тестирования без подбора m было рекомендовано использовать просто линейный тренд без шума, кусочно-линейный тренд без шума (шум = броуновское движение), броуновское движение без тренда и общий случай - кусочно-линейный тренд с шумом.

Для тестирования подбора m предлагается смотреть, как зависит результат от изменения числа изломов тренда и от размера шума. Для каждого ряда имеет смысл запоминать оптимальное m, чтобы потом выводить статистику по нему.

Во всех случаях, когда выводится средний по реализациям MSE, нужно выводить также доверительный интервал для него.

Договорились, что первые 750 строк в траекторной матрице будут рассматриваться как train, следующие 250 как validation и последние 250 как test. Если validation не нужен, его можно присоединить к train.

Занятия 2023

02.03.2023. К 16.03 нужно (1) доделать предыдущее задание (с доверит.интервалами и добавлением комментариев в rmd), как обсуждали на занятии, и (2) сделать хотя бы одну попытку в классификации и регрессии на kaggle c разумными результатами (пусть ниже нижнего, но немного, а не в разы).

16.02.2023. Короткое резюме по занятию (и задание к 02.03.2023+). Модель ряда - кусочно-линейный тренд плюс броуновское движение. Параметры - интенсивность изломов lambda (время между изломами распределение экспоненциально, в среднем 5 изломов на 1000 точек), дисперсия sigma_a^2 угла наклона тренда, распределенного нормально со средним 0, и дисперсия sigma^2 приращения в броуновском движении. Нужно уметь моделировать такие ряды.

Обсудили, что MSE любого разумного прогноза должно попадать в диапазон от sigma^2 до sigma^2+sigma_a^2. Это проверяется на основе 100 реализаций исходного ряда (алгоритм прогноза строится на основе одной реализации, не заглядывая на остальные ряды и не зная параметров генерации ряда, потом оценивается MSE прогноза, и потом полученные оценки усредняется по реализациям). Можно брать и больше, если позволяет время вычислений.

Нужно реализовать три варианта прогноза - по последнему значению, по известному углу наклона на последнем участке и реальный прогноз с оценкой угла наклона на последнем участке. Для реального прогноза есть гиперпараметр, число точек, по которым оценивается угол наклона. Этот гиперпараметр подбирается на validation (хотя в данном случае отсутствия параметров у прогнозирующего алгоритма можно подбирать параметры на train).

Метод реализации - построить траекторную матрицу с длиной окна 51 и последний столбец рассматривать как предсказываемые значения. При этом перебирать гиперпараметр от 1 (2) до 50, не перестраивая траекторную матрицу, а просто убирая соотв.число первых столбцов. Гиперпараметр здесь интерпретируется как число значений ряда, по которым строится предсказание последнего столбца.

Договорились, что первые 700 строк в траекторной матрице будут рассматриваться как train, следующие 250 как validation и последние 250 как test.