Вычислительные технологии
Том 20, № 2, 2015
Метод кластерного анализа разнотипных временных рядов
В. Б. Бериков1, И. А. Пестунов2'*, М.К. Герасимов1
1 Институт математики СО РАН, Новосибирск, Россия
2Институт вычислительных технологий СО РАН, Новосибирск, Россия
*Контактный e-mail: [email protected]
Рассматривается задача разбиения множества многомерных временных рядов на группы похожих подмножеств (кластеров). Каждый временной ряд представляет собой описание характеристик некоторых объектов, изменяющихся с течением времени, при этом характеристики могут быть как количественными, так и качественными. В работе предложен способ задания меры различия между временными рядами с использованием деревьев решений. Также предложен алгоритм кластеризации временных рядов, использующий полученные матрицы различий.
Ключевые слова: многомерный временной ряд, кластерный анализ, деревья решений.
Введение
Одной из актуальных задач математического моделирования на основе анализа данных является задача кластеризации объектов, информация о которых представлена в виде многомерных разнотипных временных рядов. Под разнотипными рядами понимаются ряды, которые содержат наборы измерений вещественных (количественных), порядковых, номинальных или булевых (качественных) переменных. Такого рода задачи возникают при построении моделей объектов в трудноформализуемых областях исследований, например в медицине, когда требуется дать описание типичных групп пациентов со сходной динамикой развития заболевания на основе данных об изменениях клинических показателей и диагностических признаков. Типизация пациентов позволяет, в частности, разрабатывать методики лечения, оптимальные для каждой группы.
В задаче кластерного анализа требуется разбить множество объектов, описываемых набором некоторых переменных (либо матрицей попарных расстояний), на относительно небольшое число кластеров так, чтобы критерий качества группировки принял наилучшее значение. Число кластеров может быть как выбрано заранее, так и не задано (в последнем случае оптимальное количество групп должно быть определено автоматически). Под критерием качества обычно понимается некоторый функционал, зависящий от разброса объектов внутри группы и расстояний между группами.
В широко распространенных алгоритмах кластеризации (алгоритм к-средних, алгоритм построения дендрограммы и т. д.) так или иначе используются различные способы задания расстояния или меры различия между объектами и их группами. При выборе
© ИВТ СО РАН, 2015
конкретного способа определения расстояния исследователь, как правило, полагается на свои знания и опыт решения аналогичных задач. Определение расстояния или меры различия между временными рядами имеет дополнительные трудности: ряды могут быть разной длины, состоять из разнотипных компонентов, иметь большую размерность. Кроме того, предполагается наличие зависимостей между наблюдаемыми характеристиками в различные моменты времени.
Существует несколько основных подходов к кластеризации временных рядов [1]. Первый подход к определению расстояния/различия между временными рядами основан на простом сравнении наблюдений, в том числе и с помощью трансформации временной шкалы — ВТШ-алгоритмы [2], или некоторых статистик (среднего значения, коэффициентов корреляции), вычисленных по данным. Особенность другого направления состоит в сравнении параметров моделей процессов, реализацией которых являются наблюдаемые временные ряды (см., например, [3, 4]). В случае разнотипных данных применение этих подходов затруднительно из-за невозможности введения метрики в разнотипном пространстве.
В настоящей работе предлагается метод определения меры различия между временными рядами, основанный на деревьях решений в качестве аппроксимирующих функций. Данный подход дает возможность решения указанных выше проблем. Методы анализа временных рядов, основанные на деревьях решений [5], обладают положительными особенностями: не требуют априорных предположений о данных, могут обрабатывать как количественные, так и качественные характеристики, просты для понимания и интерпретации, могут сочетаться с другими методами принятия решений, такими как регрессионный и кластерный анализ. Методы кластеризации разнотипных объектов с использованием деревьев решений впервые предложены в работах [6, 7]. В работе [8] на основе байесовского подхода проведено теоретическое обоснование критерия качества таксономического дерева решений. В предлагаемой работе методы, основанные на деревьях решений, применяются для кластеризации разнотипных временных рядов.
Статья организована следующим образом. В разд. 1 дана постановка задачи и представлена мера различия между временными рядами, использующая деревья решений. В разд. 2 рассмотрены некоторые теоретические свойства предлагаемой меры. В разд. 3 описан алгоритм кластеризации временных рядов и приведены результаты численных экспериментов. В заключении изложены основные результаты работы и сформулированы направления дальнейших исследований.
1. Мера различия между временными рядами, основанная на деревьях решений
Пусть наблюдаются N объектов а1,..., ам, изменяющихся во времени. Предположим, что в последовательные моменты времени Ьг,... ,Тг для объекта аг проведены измерения значений количественной переменной У. Обозначим через у1 значение переменной У для объекта аг в момент времени Ь.
Также предполагается, что наблюдения за объектами представлены некоторым набором переменных X = (Х1,...,ХП), которые, возможно, влияют на целевую переменную У. Объединим измерения значений этих переменных для объекта аг в момент времени Ь в набор х.\. В общем случае компоненты X могут быть количественными,
принимающими значения в Р или качественными переменными с конечным числом значений. Другими словами, имеются N разнотипных временных рядов
У1 = (Х^ , У^ , ... , , , г ) .
Через пг обозначим длину временного ряда Уг: пг = Тг — £г + 1, г = 1,..., N. Отметим, что в общем случае пг = П для г = з.
В данной работе предполагается, что процессы, генерирующие данные, неизвестны и различны для отдельных временных рядов в том смысле, что существуют неизвестные функции /1,..., ¡к, такие что
у = ¡кг) (У-1,..., У\-ь, Х,..., Х-ь) + £,
где г = 1,... N; Ь — известный лаг; £ = £г + Ь,... ,Тг; ^(г) Е {1,..., К}; шумы £ являются независимыми непрерывными случайными величинами с нулевыми математическими ожиданиями и дисперсиями В(е\) = а2.
Задача состоит в определении подходящей меры различия между временными рядами и ее обосновании. Требуется также разработать алгоритм группировки временных рядов на основе введенного расстояния.
Зафиксируем индекс г и рассмотрим временной ряд Уг. Обозначим
4 = (Уг-1 ,...,У\-ь, Х х\-ь).
Тогда
у = ¡кг) (4г)+ £.
Используя обучающую выборку Vг = {(4,у\)}, где £ = £г + Ь,... ,Тг, мы можем построить аппроксимацию дг функции /ф). Для этого используем деревья решений [5, 9]; пример дерева изображен на рис. 1.
В вершинах дерева проверяются высказывания относительно некоторых переменных в определенный отсчет времени назад (относительно текущего момента). Цепочка проверяемых высказываний ведет из корня дерева в терминальную вершину, которой приписано прогнозируемое значение. Детали алгоритма построения дерева решений для прогнозирования временного ряда по его предыстории можно найти в [5, 9].
7 = 1.5 7 = 10 7 = 6.7 7 = 19
Рис. 1. Пример дерева решений
Аналогично для временного ряда У3 имеется обучающая выборка V3 = {(¿3 ,у3)}, где Ь = Ь3+Ь,... ,Т3. Применим построенное решающее дерево дг на обучающей выборке V3. Рассмотрим среднеквадратическую ошибку решающего дерева дг:
Е {дг(4) - у3)2 ^гз = г-гз+ь_ (1)
пз — L
Используем следующее предположение: ошибка прогноза ^гз будет меньше, если временные ряды Yг и Yз порождены одной и той же функцией, чем если бы они были порождены различными функциями. Следовательно, чем меньше ошибка ^гз, тем более вероятно, что временные ряды Yг и Yз порождены одной и той же функцией и, значит, могут быть отнесены к одному кластеру.
Определим меру различия между временными рядами Yг и Yз как среднее значение величин ^гз и ^зг:
Цгз + j . . .
P(i,j) = { , если * = j
0, иначе.
2. Свойства меры различия
Введенная мера различия обладает следующими очевидными свойствами:
1) неотрицательность p(i,j) > 0;
2) тождественность p(i,i) = 0;
3) симметрия p(i,j) = p(j,i).
Введем обозначения: r- — максимальное математическое ожидание меры различия между временными рядами, принадлежащими одному кластеру:
r- = max E [p(i,j)];
i,3lv{i)=v(3)
r+ — минимальное математическое ожидание меры различия между временными рядами, принадлежащими разным кластерам:
r+ = mn E [p(i,j)];
г,зМг)=¥{з)
C(z) — ошибка аппроксимации функции f^) деревом дг в точке z:
f(z) = g(z) — иф); Пгз (z) — разница между функциями fф) и f^j) в точке z:
Пгз (z) = f^(€)(z) — Uu)(z).
Заметим, что если i) = p(j), то пгз(z) = 0 ^z.
Утверждение 1. Пусть sup |C(z)| = С, inf 1пгз(z)| = П- Тогда если п > 2£,
г,х г,з,г1у(ъ)=у(з)
то r- < r+.
Доказательство. Слагаемые в числителе (1) обозначим как & = ) — у?)2.
Тогда
& = И**) — /кЖ) — 4 )2 = ) — ) + ) — /^ ^) — ^ )2 =
= ш) + (г/) — е/ )2 = ) + (г/ ))2 — 2е/ (е(г/) + п^ (г/)) + (е/ )2. Рассмотрим математическое ожидание случайной величины
Е [&] = Е [(е ) + ^ (г/ ))2 ] — 2Е [^ (Ш) + (г/))] + Е )2].
Так как е^ и еЧ^/) — независимые случайные величины, то
Е [4СЫ)] = Е [4]Е [е)] =0.
Аналогично, е^ и пч (¿^) — независимые случайные величины, следовательно,
Е [е/ (г/)] = Е [е/ ]Е (г/)] = 0.
Отсюда получаем
Е [&] = Е [(е ) + пу (г/ ))2] + а2.
Предположим, что <^(г) = <^(з). Тогда пч) = 0. Поэтому
Е[&] = Е[(еЧ^))2] + а2 < е2 + а2.
Следовательно,
Е Е [&]
Е[^] = з— Ь < е2 + а2 ^ Е[р(г, з)] < е2 + а2 Уг,^Иг) = ).
В результате имеем г- < е2 + а2.
Теперь предположим, что <^(г) = <^(з). В этом случае, учитывая цепочку неравенств 1п4'(г/)| > П > 2е > 2|ег(г/)| > |ег(г/)|, получим
|ег(г/) + (г/)| > | (г/)| — )|| = (г/)| — Ш)| > п — е > е ^ ^ Е[&] > е2 + а2 ^ Е[р(г,7)] > е2 + а2 Уг,зИг) = ).
В результате имеем г+ > е2 + а2.
Объединяя полученные неравенства, получим г- < г+. Утверждение доказано. Из утверждения следует, что если решающие деревья достаточно точно аппроксимируют исходные порождающие функции, при этом сами порождающие функции достаточно сильно различаются между собой, то временные ряды из одного кластера будут в среднем более похожи друг на друга (с точки зрения предложенной меры различия), чем временные ряды из разных кластеров.
3. Алгоритм кластеризации временных рядов
После вычисления мер различия между всеми парами временных рядов получим N х N-матрицу М = (ш^), где = р(г,з). Далее матрица М используется на входе иерархического агломеративного алгоритма кластеризации для итогового разбиения на кластеры. Требуемое число кластеров — заданный параметр К.
Итак, общая схема алгоритма кластеризации временных рядов выглядит следующим образом:
• Для каждого временного ряда Уг на основе обучающей выборки Vх строится решающее дерево дг.
• Для каждого решающего дерева дг вычисляются среднеквадратические ошибки
на обучающих выборках V3.
• Для всех временных рядов вычисляются попарные меры различия р(г,]). Определяется матрица М.
• Используя матрицу попарных мер различия М, стандартным алгоритмом иерархической кластеризации строим разбиение исходных временных рядов на кластеры.
Эффективность предложенного подхода была исследована методами статистического моделирования. Использовалась следующая схема моделирования.
• Фиксируется число кластеров К, число объектов N, начальные и конечные моменты времени измерений каждого временного ряда Ьг и Тг, истинное разбиение на кластеры рг, г = 1,..., N, порождающие функции Г\, ... , Г к, тип шума и его дисперсия а2.
• Генерируются N временных рядов.
• Предложенным в работе способом строится разбиение временных рядов на кластеры.
• Определяется качество группировки.
В качестве примера приведем результаты серии экспериментов со следующими параметрами: число кластеров К = 3, число временных рядов N = 15, Ьг = 1, Тг = 30, Рг = [г/5] для всех г. Использовались линейные порождающие функции от трех переменных: /к(п1,п2,щ) = акП\ + Ъки2 + окп3 + ¿к, к = 1, 2, 3; коэффициенты приведены в таблице.
Распределение шума еI — стандартное нормальное. Дисперсия шума изменялась от 0.1 до 0.9 с шагом 0.01. Для каждого фиксированного значения дисперсии эксперимент повторялся 40 раз, затем результаты усреднялись.
Временные ряды генерировались по формуле
у = аф)у-1 + Ъф)Уг~2 + ОФ)Уг-з + ¿ф) + е\.
Построены аппроксимирующие решающие деревья для каждого временного ряда, вычислены попарные меры различия временных рядов, из них составлена матрица М.
Коэффициенты
к ак Ьк Ск 4
1 0.2 0.3 0.4 0.5
2 0.1 -0.3 0.4 0.1
3 -0.2 0.3 0.4 0.5
Рис. 2. Результаты эксперимента: ошибка для различных вариантов расстояния между кластерами (1 — по ближайшему соседу, 2 — по дальнему соседу, 3 — по среднему расстоянию)
В качестве алгоритма кластеризации использовался иерархический агломеративный алгоритм с различными вариантами вычисления расстояния между кластерами (метод ближайшего соседа, метод дальнего соседа, среднее расстояние).
Качество метода оценивалось исходя из доли пар рядов, ошибочно причисленных к одному кластеру или к разным кластерам. На рис. 2 представлены результаты эксперимента. Видно, что при умеренном уровне шума ошибка кластеризации достаточно мала и слабо зависит от варианта определения расстояния между группами.
Заключение
Предложен метод кластеризации многомерных временных рядов, основанный на деревьях решений, которые использованы в качестве аппроксимирующих функций при определении меры различия между рядами. Исследованы свойства введенного расстояния. В частности, доказано, что если решающие деревья достаточно точно аппроксимируют порождающие ряды функции и при этом сами порождающие функции сильно различаются между собой, то временные ряды из одного кластера будут в среднем более похожи друг на друга, чем временные ряды из разных кластеров.
Разработанный метод, в отличие от других существующих, позволяет анализировать многомерные разнотипные временные ряды, состоящие из количественных и качественных характеристик, изменяющихся с течением времени и влияющих друг на друга.
В качестве направлений дальнейших исследований можно указать рассмотрение различных вариантов расстояния между рядами. Перспективным представляется использование дополнительной информации о задаче, имеющей вид экспертных логических высказываний, получаемых из некоторой базы знаний, с последующим вычислением расстояний между высказываниями [10]. Для улучшения качества ("устойчивости") решений планируется использовать ансамбль алгоритмов кластеризации [11].
Благодарности. Работа выполнена при финансовой поддержке РФФИ (проекты № 14-07-00249а, 14-07-00851а), РНФ (грант №14-14-00453) и фонда В. Потанина.
Список литературы / References
[1] Aggarwal, C., Reddy, C. Data Clustering: Algorithms and Applications. CRC Press, 2013. 652 p.
[2] Meesrikamolkul, W., Niennattrakul, V., Ratanamahatana, C. Shape-based clustering for time series data // Proc. 16th Pacific-Asia Conf., PAKDD 2012, Kuala Lumpur, Malaysia, May 29-June 1, 2012. Part I. P. 530-541.
[3] Corduas, M., Piccolo, D. Time series clustering and classification by the autoregressive metric // Comput. Statistics & Data Analysis. 2008. Vol. 52(4). P. 1860-1872.
[4] Ghassempour, S., Girosi, F., Maeder, A. Clustering Multivariate Time Series Using Hidden Markov Models // Intern. J. Environ. Res. Publ. Health. 2014. Vol. 11(3). P. 2741-2763.
[5] Лбов Г.С., Бериков В.Б. Устойчивость решающих функций в задачах распознавания образов и анализа разнотипной информации. Новосибирск: Изд-во Ин-та математики, 2005. 218 с.
Lbov, G.S., Berikov, V.B. Stability of decision functions in problems of pattern recognition and analysis of heterogeneous information. Novosibirsk: Izd-vo In-ta Matematiki, 2005. 218 p. (in Russ.)
[6] Лбов Г.С., Пестунова Т.М. Группировка объектов в пространстве разнотипных признаков // Анализ нечисловой информации в социологических исследованиях. М.: Наука, 1985. С. 141-149.
Lbov, G.S., Pestunova, T.M. Grouping of objects in the space of heterogeneous features // Analysis of Non-numeric Information in Sociological Researches. Moskow: Nauka, 1985. P. 141-149. (in Russ.)
[7] Лбов Г.С., Пестунова Т.М. Построение дерева разбиений в задаче группировки объектов с использованием логических функций // Вычисл. системы. 1986. Вып. 117. С. 63-77. Lbov, G.S., Pestunova, T.M. Construction of partition tree in the problem of grouping of objects with use of logical functions // Vychisl. Sistemy. 1986. Vyp. 117. P. 63-77. (in Russ.)
[8] Berikov, V.B. Grouping of objects in a space of heterogeneous variables with the use of taxonomic decision trees // Pattern Recognition and Image Analysis. 2011. Vol. 21, No. 4. P. 591-598.
[9] Бериков В.Б., Пестунов И.А., Герасимов М.К. Анализ совокупности разнотипных временных рядов с использованием логических решающих функций // Вычисл. технологии. 2012. Т. 17, №. 5. С. 12-22.
Berikov, V.B., Pestunov, I.A., Gerasimov, M.K. Analysis of a set of heterogeneous time series with use logical decision functions // Comput. Technologies. 2012. Vol. 17, No. 5. P. 12-22. (in Russ.)
[10] Vikent'ev, A.A. Distances and degrees of uncertainty in many-valued propositions of experts and application of these concepts in problems of pattern recognition and clustering // Pattern Recognition and Image Analysis. 2014. Vol. 24, No. 4. P. 489-501.
[11] Berikov, V.B. Weighted ensemble of algorithms for complex data clustering // Pattern Recognition Letters. 2014. Vol. 38. P. 99-106.
Поступила в 'редакцию 30 декабря 2014 г.
28
E. B. BepHKOB, M. A. necTyHOB, M. K. repacuMOB
Method for clustering of heterogeneous time series
Berikov, Vladimir B.1, Pestunov, Igor A.2'*, Gerasimov, Maxim K.1
1Sobolev Institute of Mathematics of the SB RAS, Novosibirsk, 630090, Russia 2Institute of Computational Technologies SB RAS, Novosibirsk, 630090, Russia * Corresponding author: Pestunov, Igor A., e-mail: [email protected]
Purpose. The paper addresses the problem of partitioning of a set of multidimensional time series on groups of similar subsets (clusters). Each time series represents characteristics (qualitative or quantitative) of an object that changes in time. By assumptions, the data generating mechanism is unknown and may vary across the set of time series in the sense that the observed values of individual time series depend on one of the unobserved generative functions.
Methodology. In this paper, we suggest a way to define a measure of difference between time series with the help of decision trees as approximation functions. The proposed dissimilarity measure satisfies some useful properties such as non-negativity, identity, and symmetry.
Findings. We suggest a mathematical model of data generating mechanism and prove that if we have good approximations of initial well-distinguished generative functions then time series from same clusters are more similar to each other (in the sense of the proposed dissimilarity measure) than series from different clusters.
Originality\value. The suggested approach makes it possible to determine distance/dissimilarity measure between time series with heterogeneous components, different lengths, large sizes and dimensions along with the interdependencies between observation values at different time points. The approach does not rely on prior assumptions about the data. It is simple to understand and interpret and can be combined with other decision making techniques such as regression analysis and clustering. The algorithm of time series clustering that utilizes the obtained dissimilarity matrix is also suggested.
Keywords: multidimensional heterogeneous time series, cluster analysis, decision trees.
Acknowledgements. This work was financially supported by RFBR (projects No. 14-07-00249a, 14-07-00851a), RSF (grant No. 14-14-00453) and V. Potanin Foundation.
Received 30 December 2014
© ICT SB RAS, 2015