Полное раскрытие: я не статистик и не претендую на это. Я скромный ИТ-администратор. Пожалуйста, играйте осторожно со мной. :)
Я отвечаю за сбор и прогнозирование использования дискового пространства для нашего предприятия. Мы собираем данные об использовании хранилища ежемесячно и используем простую скользящую двенадцатимесячную линейную регрессию для прогнозов (другими словами, при составлении прогноза учитываются только данные за предыдущие двенадцать месяцев). Мы используем эту информацию для распределения и планирования капитальных затрат, например: «На основе этой модели нам потребуется приобрести x сумму, если хранение в y месяцах соответствует нашим потребностям». Все это работает достаточно хорошо, чтобы удовлетворить наши потребности.
Периодически мы имеем большие одноразовые движения в наших числах, которые отклоняют прогнозирование. Например, кто-то находит 500 ГБ старых резервных копий, которые больше не нужны, и удаляет их. Хорошо для них, чтобы восстановить пространство! Однако наши прогнозы теперь искажены этим большим падением за один месяц. Мы всегда просто соглашались с тем, что подобное падение занимает 9-10 месяцев, чтобы выйти из моделей, но это может быть очень долго, если мы вступаем в сезон планирования капитальных затрат.
Мне интересно, есть ли способ справиться с этими одноразовыми отклонениями так, чтобы на прогнозируемые значения не оказывалось такого большого влияния (например, наклон линии не меняется так резко), но они учитываются (например, однократное изменение значения y, связанного с конкретным моментом времени). Наши первые попытки решить эту проблему дали некоторые ужасные результаты (например, экспоненциальные кривые роста). Мы выполняем всю нашу обработку в SQL Server, если это имеет значение.