Я рассматриваю две стратегии «увеличения данных» для прогнозирования временных рядов.
Сначала немного предыстории. Предиктор для прогнозирования следующего шага временного ряда - это функция, которая обычно зависит от двух вещей: прошлых состояний временного ряда, но также и прошлых состояний предиктора:
Если мы хотим настроить / обучить нашу систему для получения хорошего , тогда нам понадобится достаточно данных. Иногда доступных данных будет недостаточно, поэтому мы рассматриваем возможность увеличения данных.
Первый подход
Предположим, у нас есть временной ряд с . И предположим также, что у нас есть , удовлетворяющее следующему условию: .
Мы можем построить новый временной ряд , где - реализация распределения .
Тогда вместо минимизации функции потерь только над , мы делаем это также над . Итак, если процесс оптимизации занимает шагов, мы должны «инициализировать» предиктор раза, и мы вычислим примерно внутренних состояний предиктора.
Второй подход
Мы вычисляем как и раньше, но мы не обновляем внутреннее состояние предиктора, используя , а . Мы используем только две серии во время вычисления функции потерь, поэтому мы вычислим приблизительно внутренних состояний предиктора.
Конечно, здесь меньше вычислительной работы (хотя алгоритм немного уродливее), но пока это не имеет значения.
Сомнение
Проблема в том, что со статистической точки зрения, какой вариант «лучший»? И почему?
Моя интуиция говорит мне, что первый лучше, потому что он помогает «упорядочить» веса, связанные с внутренним состоянием, в то время как второй помогает только упорядочить веса, связанные с наблюдаемым прошлым временным рядом.
Дополнительно:
- Любые другие идеи, чтобы сделать увеличение данных для прогнозирования временных рядов?
- Как взвесить синтетические данные в тренировочном наборе?