Временная серия Прорыв/изменение/обнаружение помех в R: структура, изменение точки, BreakoutDetection, bfast и т.д.

Я хотел бы, чтобы это стало знаковым постом для различных методов обнаружения прорыва/изменения/нарушения временных рядов в Р. Мой вопрос состоит в том, чтобы описать мотивацию и различия в подходах к каждому из следующих пакетов. То есть, когда имеет смысл использовать один подход над другим, сходства/различия и т.д.

Рассматриваемые пакеты:

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

Ответ 1

Две очень разные мотивации привели к анализу временных рядов:

  • Контроль промышленного качества и обнаружение выбросов, выявление отклонений от стабильного шума.
  • Научное понимание тенденций, где понимание тенденций и их детерминант имеет центральное значение.

Конечно, обе они в значительной степени являются двумя сторонами одной и той же монеты, и обнаружение выбросов может быть важно для очистки временных рядов до анализа тенденций. Тем не менее я попытаюсь использовать это различие как красную линию, чтобы объяснить разнообразие пакетов, предлагаемых R, для изучения временных рядов.

В управлении качеством стабильность среднего и стандартного отклонения имеет большое значение, как показано в истории одного из первые статистические усилия по поддержанию промышленного качества, контрольная диаграмма. В этом отношении qcc является эталонной реализацией наиболее классические диаграммы контроля качества: контроль качества Whuhart, cusum и диаграммы EWMA.

Старый, но все еще активный mvoutlier и более поздний AnomalyDetection сосредоточиться на обнаружении выбросов. mvoutlier в основном использует расстояние Махаланобиса и может работать с двумерными наборами данных (растров) и даже с многомерными наборами данных, используя алгоритм Filzmoser, Maronna и Werner (2007). AnomalyDetection использует декомпозицию временных рядов, чтобы идентифицировать как локальные аномалии (outlyers), так и глобальные аномалии (вариации, не объясненные сезонными шаблонами). и BreakoutDetection

Как AnomalyDetection, BreakoutDetection были открыты с помощью twitter в 2014 году. BreakoutDetection, открытый в 2014 году Twitter, намерен обнаружить прорывы это временные ряды, то есть группы аномалий, используя непараметрическую статистику. Обнаружение прорывов очень близко к обнаружению тенденций и пониманию закономерностей. В подобной оптике пакет brca фокусируется на анализе нерегулярно отобранных временных рядов, в частности для определения поведенческие изменения в движении животных.

Определенное смещение к определению изменений тенденций changepoint реализует несколько (простых) параметрические методы для обнаружения одиночных или множественных разрывов в тенденциях временных рядов. strucchange позволяет подогнать, отобразить и проверить изменения тренда с использованием моделей регрессии. Наконец, bfast основывается на strucchange для анализа временных рядов (например, спутниковых изображений) и обрабатывает отсутствующие данные.