Введение 2
1 Расстояние, основанное на характеристиках временных рядов 4
1.1 Обзор методов библиотеки «TSclust» пакета R 5
1.2 Описание метода 9
1.3 Эксперимент 14
1.4 Выводы 18
2 Задача кластеризации районов Санкт-Петербурга по показателю заболеваемости 19
2.1 Основные понятия 20
2.2 Кластеризация одномерных временных рядов 23
2.3 Кластеризация многомерных временных рядов 26
2.4 Выводы 29
3 Определение состава кластера в спорных ситуациях 31
3.1 Критерии качества кластеризации 31
3.2 Построение нескольких кластеризаций районов по показателю детской заболеваемости 35
3.3 Эвристический алгоритм распределения спорных объектов по кластерам 37
3.4 Выводы 42
Заключение 44
Литература 46
Приложения 50
В связи с ростом вычислительных мощностей и возможностей собирать и хранить данные, одна из наиболее актуальных областей современного мира — это анализ данных. Активное развитие получили методы машинного обучения, так как они способны «учиться» на тестовых данных и призваны решать самые разнообразные задачи: классификация данных, прогнозирование (в частности, построение регрессионной модели), кластеризация, поиск аномалий и др. Люди всегда стремились предсказывать будущее или поведение других людей по имеющимся данным, особенно актуальна эта задача в области страхования и финансов. Однако сегодня методы машинного обучения используются в диагностике заболеваний, при изучении био-физических особенностей организма, в распознавании изображений и речи, автоматизации труда и т.д.
Наиболее сложными являются методы, которые работают «без учителя». В таких задачах нет тестовой выборки, по которой можно подобрать параметры или проверить результат. Кластеризация данных относится именно к этой группе. Задача состоит в распределении объектов (данных) по группам таким образом, чтобы внутри каждой группы оказались объекты, обладающие высокой степенью сходства в некотором отношении, которое является принципиально важным для рассматриваемой задачи, а между различными группами обнаруживались бы существенные различия. Для выделения кластеров используются только сами данные, количество кластеров является неизвестной величиной. Процедура распределения по кластерам (подход) может проходить по разному. Здесь выделяют вероятностные, теоретико-графовые, иерархические, нечеткие подходы, эта классификация условная, существуют и другие алгоритмы. Результат будет зависеть не только от выбора подхода, но и от способа определения количества кластеров и выбора метрики.
Работа посвящена кластерному анализу временных рядов, который выделен из общей задачи кластеризации в связи с тем, что даннвхе зависят от времени. Это требует подбора специалвнвхх метрик, учитвхвающих временнвхе особенности. Ввхбор темвх обусловлен не толвко ее актуальноствю, но и наличием практической задачи, рассмотрение которой также приводится в работе. Постановка проблемах и данные предоставлены медицинским информационно-аналитическим центром.
В области кластеризации временных рядов была проделана большая работа: описано применение алгоритма динамической трансформации шкалы в кластерном анализе [1], [2]; этот же алгоритм, но с помощью теории скрытых марковских моделей предложен в [3]; использование коэффициентов автокорреляции, спектральных характеристик, вейвлет- коэффициентов отмечено в работах [4], [5], более полный обзор существующих методов представлен в статье [6].
В первой главе дан обзор существующих метрик и приведено описание новой метрики, разработанной для кластеризации коротких временных рядов. Во второй главе показан кластерный анализ районов Санкт- Петербурга по показателю заболеваемости с 1999 по 2014 гг., получено несколько моделей, по которым построены стабильные кластеры. В том числе, рассмотрен многомерный анализ. В третьей главе рассмотрен метод работы с объектами, которые потенциально могут относиться к нескольким кластерам, работа алгоритма показана на примере детской заболеваемости.
Задача кластеризации временных рядов выделена отдельно в связи с тем, что применение классических метрик приводит к потере важных корреляций между наблюдениями. Чтобы определить являются ли временные рядвх схожими, нужно учитвхватв не толвко их геометрическую отдаленноств, но и характер динамики и изменчивости ряда. В области поиска нужнвхх метрик проделана болвшая работа, описание наиболее ис- полвзуемвхх расстояний представлено в Главе 1. Эти методах показывают хорошие результаты при кластеризации больших данных, однако на коротких временных рядах они работают хуже. В связи с этим предложена новая метрика для кластеризации временных рядов, которая находит расстояние между характеристиками ряда (геометрическими, динамическими и характеристиками изменчивости). Эксперименты на искусственных и реальных данных показывают целесообразность использования алгоритма.
В следующем разделе представлено применение методов кластерного анализа временных рядов в решении прикладной задачи. Медицинским информационно - аналитическим центром предоставлены данные по заболеваемости жителей Санкт-Петербурга в возрастной разбивке: дети (до 14 лет), подростки (15-17 лет), взрослые (старше 18 лет) за период с 1999 по 2014 гг. Стоит вопрос являются ли районы города схожими относительно изменения показателя заболеваемости. В работе представлен анализ как одномерных временных рядов, так и многомерных. Задача многомерной кластеризации временных рядов является особенно сложной. Методы условно делятся на два подхода: алгоритмы первой группы учитывают корреляции между переменными, но являются сложными для интерпретации, большая часть из них основана на методе главных компонент; алгоритмы второй группы агрегируют информацию, которая получена при кластеризации каждой переменной отдельно.
Применение разных метрик и подходов кластеризации приводит к противоречивым резулвтатам, поэтому в Главе 2 получена карта «стабильных» кластеров, то еств тех районов, которые оказалисв в одной группе при исполвзовании различнвхх методов. Однако существуют объектах, которые могут быть отнесены к нескольким кластерам. Для решения проблем такого рода обычно используют индексы, которые показывают на сколько ближе оказываются объекты, принадлежащие одному кластеру, относительно объектов, взятых из разных кластеров. Но при выборе модели по индексу качества кластеризации также можно столкнуться с противоречием, так как их большое количество. Поэтому в Главе 3 предложен новый эвристический метод, позволяющий однозначно распределить объекты по кластерам. Идея алгоритма состоит в том, что выбор нужного кластера — это игра голосования, где кандидатами являются различные варианты распределения объектов, а голосующими — критерии качества кластеризации, которые формулируются для каждой задачи отдельно.
Таким образом, в работе представлен обзор современных методов кластерного анализа временных рядов и предложены новые, описаны эксперименты на искусственных и реальных данных и рассмотрена прикладная задача по выявлению однородных групп районов Санкт-Петербурга по уровню заболеваемости.
[1] Sankoff D., Kruskal J. Time warps, string edits, and macromolecules: the theory and practice of sequence comparison. Ontario: Addison Wesley Publ. Company, 1983. 382 p.
[2] Berndt D. J., Clifford J. Using dynamic time warping to find patterns in time series // KDD workshop on knowledge discovery in databases. 1994. P. 359-370.
[3] Oates T., Firoiu L., Cohen P. R. Clustering time series with hidden Markov models and dynamic time warping // Proceedings of the IJCAI- 99 workshop on neural, symbolic and reinforcement learning methods for sequence learning. 1999. P. 17-21.
[4] Maharaj E. A. A significance test for classifying arma models // Journal of Statistical Computation and Simulation. 1996. Vol. 54, no. 4. P. 305-331.
[5] Corduas M., Piccolo D. Time series clustering and classification by the autoregressive metric // Computational Statistics & Data Analysis. 2008. Vol. 52, no. 4. P. 1860-1872.
[6] Fu T. C. A Review on Time Series Data Mining // Engineering Applications of Artificial Intelligence. 2011. Vol. 24, no. 1. P. 164-181.
[7] Goodfellow I., Bengio Y., Courville A. Deep Learning. Cambridge, MA : The MIT Press, 2016. 775 p.
[8] Староверова К. К)., Буре В. М. Мера различия временных рядов, основанная на их характеристиках // Вестник Санкт-Петербургского университета. Серия 10: Прикладная математика. Информатика. Процессы управления. 2017. No 1. С. 51-60.
[9] Montero P., Vilar J. TSclust: An R package for time series clustering // Journal of Statistical Software. 2015. No. 62.1. P. 1-43.
[10] Montero P. M., Vilar J. A. Time Series Clustering Utilities. Feb. 2015, URL: https://cran.r-project.org/web/packages/TSclust/TSclust.pdf. (дата обращения 1.11.2016).
[11] Fan J., Zhang W. Generalised Likelihood Ratio Tests for Spectral Density // Biometrika. 2004. Vol. 91, no. 1. P. 195-209.
[12] Cilibrasi R., Vitanyi P. M. Clustering by compression // IEEE Transactions on Information Theory. 2005. Vol. 51, no. 4. P. 1523-1545.
[13] Alcock R. J., Manolopoulos Y. Time-Series Similarity Queries Employing a Feature-Based Approach // 7th Hellenic Conference on Informatics. 1999. P. 27-29.
[14] Сивоголовко E. В. Методы оценки качества четкой кластеризации // Компвютерные инструменты в образовании. 2011. No 4. С. 14-31.
[15] Keogh Е., Leonard! S., Ratanamahatana С. A. Towards parameter-free data mining // Proceedings of the Tenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. 2004. P. 206-215.
...