Обнаружить изменения во временных рядах


11

Я наткнулся на изображение прототипа приложения, которое обнаруживает значительные изменения («тренды», а не всплески / выбросы) в данных трафика:

альтернативный текст

Я хочу написать программу (Java, опционально R), способную делать то же самое, но поскольку мои навыки статистики немного устарели, мне нужно снова углубиться в эту тему.

Какой подход / алгоритм я должен использовать / исследовать поэтому?



Да и ответы тоже будут одинаковыми.
whuber

Ответы:


4

Есть несколько способов, которыми может произойти «структурный разрыв».

Если есть изменение в Перехвате или изменение Тренда в «последней части временного ряда», тогда лучше было бы выполнить Обнаружение вмешательства (примечание: это эмпирическая идентификация значительного влияния неопределенной детерминированной переменной, такой как как сдвиг уровня или изменение тренда или начало сезонного импульса). Обнаружение вмешательства является предварительным курсором для Моделирования вмешательства, где предложенная переменная включена в модель. Вы можете найти информацию в Интернете, прибегая к помощи «АВТОМАТИЧЕСКОЕ ОБНАРУЖЕНИЕ ВМЕШАТЕЛЬСТВА». Некоторые авторы используют термин «ОБНАРУЖЕНИЕ АУТЛИЕРА», но, как и многие статистические формулировки, это может вводить в заблуждение / неточно. Обнаруженные вмешательства могут быть следующими: обнаружение значительного изменения среднего значения остатков;

1-периодное изменение уровня (т. е. импульс), многопериодное непрерывное изменение уровня (т. е. изменение перехватывания), систематический импульс (т. е. сезонный импульс), изменение тренда (т. е. 1,2,3,4,5, 7,9,11,13,15 .....) Эти процедуры легко программируются в R / SAS / Matlab и обычно доступны в ряде коммерчески доступных пакетов временных рядов, однако есть много подводных камней, с которыми вам следует опасаться например, следует ли сначала обнаружить стохастическую структуру или выполнить обнаружение вмешательства на исходной серии. Это похоже на проблему с курицей и яйцом. Ранняя работа в этой области была ограничена типом 1 и, как таковая, вероятно, будет недостаточной для ваших нужд, поскольку ваши примеры иллюстрируют сдвиги уровня.

В Интернете есть много материалов и даже бесплатная программа по адресу http://www.autobox.com/30day.exe, которая даже позволяет вам использовать ваши собственные данные в течение 30 дней. Вы можете многому научиться, «просто наблюдая», как однажды сказал Йог, и повторить их результаты.

Ссылки на веб-сайты с точными уравнениями, которые вы можете использовать, можно найти на странице 134 в http://www.autobox.com/pdfs/autoboxusersguide.pdf . Я один из авторов AUTOBOX.


@stefanos: Подскажите, пожалуйста, название приложения, так как я всегда заинтересован в разработке программных решений для решения этой проблемы. Вы можете написать мне на мою контактную информацию.
IrishStat

1

Попробуйте пакет cpm или changepoint в R. Это бесплатно. Также исследуйте модель изменения точки или обнаружение последовательного изменения.


3
Добро пожаловать на сайт, @Cherese. В настоящее время это больше комментарий, чем ответ. Не могли бы вы немного остановиться на этом?
gung - Восстановить Монику
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.