Есть несколько способов справиться с нарушениями временных рядов
1) Если отклонения известны , создайте модель классификации. Используйте эту модель для обнаружения аномалий того же типа для данных временных рядов.
2) Если аномалии неизвестны, то , что мы сделали в нашей организации - это комбинация кластеризации и классификации -
Сначала используйте расстояние LOF / K-means / Cook для определения выбросов. Конвертируйте все данные в задачу классификации, так как у нас есть 2 класса: выбросы и нормалы. Теперь создайте модель классификации и получите правила (модель классификации) для выявления отклонений во время выполнения (данные временных рядов).
3) Если отклонения неизвестны , во время моего исследования наиболее распространенным способом выявления отклонений является построение нормальной модели, и любое отклонение от нормальной модели (ошибка) является отклонением от нормы, поэтому в случае, если вы прогнозируете свой временной ряд на следующий час, а затем сравниваете с фактическими значениями. Если ошибка больше ожидаемой, происходит что-то ненормальное.
Я не смог найти ни одного прямого пакета в python или R для этого, поскольку никто не знал, что действительно ненормально: P, во всех случаях это было связано с обнаружением выбросов.
некоторые полезные ссылки
https://machinelearningstories.blogspot.com/2018/12/easiest-way-of-detection-abnormality.html
https://machinelearningstories.blogspot.com/2018/07/anomaly-detection-anomaly-detection-by.html