Использование Holt-Winters для прогнозирования в Python

Я пытался использовать эту реализацию алгоритма Холта-Винтерса для прогнозирования временных рядов в Python, но столкнулся с препятствием ... в основном, для некоторых серий (положительных) входных данных, иногда он прогнозирует отрицательные числа, чего явно не должно быть. Даже если прогнозы не отрицательные, они иногда бывают совершенно неточными - на порядки выше / ниже, чем должны быть. Предоставление алгоритму большего количества периодов данных для работы, похоже, не помогает, а на самом деле часто ухудшает прогноз.

Данные, которые я использую, имеют следующие характеристики, которые могут вызывать проблемы:

  • Очень часто выборка (одна точка данных каждые 15 минут, в отличие от данных за месяц, как в примере) - но из того, что я читайте, алгоритм Холта-Винтерса не должен иметь с этим проблем. Возможно, это указывает на проблему с реализацией?

  • Имеет несколько периодичностей - есть дневные пики (т.е. каждые 96 точек данных), а также еженедельный цикл данных по выходным, которые значительно ниже, чем данные по будням - например, будние дни могут достигать пика около 4000, а выходных - 1000 - но даже когда я даю им данные только по будним дням, я сталкиваюсь с отрицательными - номер проблемы.

Что-то мне не хватает при реализации или использовании алгоритма Холта-Винтерса в целом? Я не статистик, поэтому я использую значения по умолчанию для альфа, бета и гаммы, указанные в приведенной выше ссылке - это может быть проблемой и есть ли лучший способ вычислить эти значения?

Или ... есть ли здесь алгоритм лучше, чем Холт-Винтерс? В конечном итоге я просто хочу создать здесь разумные прогнозы на основе исторических данных. Я'

мой код был упрощен для удобства чтения

int * getNums()
{
    int nums[8];
    nums = {1,2,3,4,5,6,7,8};
    return nums;
}

Я понимаю, что когда функция завершается, указатель теряется, но будет ли массив отправлен? Если нет, как лучше вернуть этот массив целых чисел без аргументов в вызове функции?

Заранее благодарю за помощь!

Ура

7
задан Community 23 May 2017 в 12:29
поделиться