Матрица расстояний
На последнем, четвертом шаге, оба кластера объединяются.
Для реализации любого метода кластеризации из группы иерархических процедур Joining (tree clustering) необходимо сделать следующие установки:
выбрать переменные для анализа (Variables);
определить вид входных данных (Input): можно вводить таблицу с координтами объектов (Raw data) либо сразу матрицу расстояний между объектами (Distance matrix);
определить объекты кластеризации: это могут быть переменные (столбцы) (Variables (columns) либо наблюдения (строки) — Cases (rows). В последнем случае каждая строка таблицы исходных данных есть объект;
выбрать метрику, определяющую расстояние между кластерами — Amalgamation (linkage) rule;
выбрать метрику, определяющую расстояние между объектами — Distance measure.
Результаты кластеризации имеют следующий вид:
строится горизонтальная или вертикальная дендрограмма — график, на котором определены расстояния между объектами и кластерами при их последовательном объединении. Древовидная структура графика позволяет определить кластеры в зависимости от выбранного порога — заданного расстояния между кластерами;
выводится матрица расстояний между исходными объектами (Distance matrix);
выводятся средние и среднеквадратичные отклонения для каждого исходного объекта (Distiptive statistics).
Рассмотрим решение примера в пакете STATISTICA.
Нажмите кнопку Module Switcher на панели инструментов, в появившемся окне выберете модуль Cluster Analysis, а затем Joining (tree clustering). В новом окне выполните следующие настройки:
а) нажмите на кнопку Variables и введите имена двух переменных х и у, в которых записаны исходные данные примера ;
б) в разделе Input введите Raw data (исходные данные);
в) в разделе Cluster выберите Cases (rows). При этой установке объекты кластеризации — двумерные наблюдения с координатами и , i=1,2, 3, 4;
г) в разделе Amalgamation (linkage) rule выберите Single Linkage (метододиночной связи);
д) в разделе Distance measure выберите Squared Euclidean distances (квадрат евклидовой метрики) и нажмите ОК.
В появившемся окне нажмите на кнопку Vertical icicle plot. На экране появится дендрограмма (рис. 21), показывающая объединение объектов, расстояние между которыми является наименьшим, в кластеры.
На вертикальной
оси дендрограммы откладываются расстояния
между объектами и между объектами и
кластерами. Так, расстояние между
объектами С, и С2
равно 5 (см. матрицу расстояний
,
в примере 3). Эти объекты объединяются
в один кластер на первом шаге.
Расстояние между
этим кластером и объектом С3
равно 8 (см. матрицу расстояний
).
Объект С3
объединяется с кластером (С1,
С2)
на втором шаге. Наконец, расстояние
между объектом С4
и кластером (С1,
С2,
С3)
равно 13 (см. матрицу расстояний
).
Таким образом, горизонтальные отрезки дендрограммы проводятся на уровнях, соответствующих пороговым значениям расстояний, выбираемым для данного шага кластеризации.
Кластеризация методом одиночной связи (ближайшего соседа) приводит к образованию одного кластера (пороговое расстояние равно 13).
Далее последовательно нажмите Continue... и Cancel и в окне установок процедуры в разделе Amalgamation... выберите Complete Linkage. После выполнения процедуры появится следующая дендрограмма (рис. 22).
|
|
Рис.21. Дендрограмма при методе одиночной связи |
Рис. 22. Дендрограмма при методе полной связи |
Вторая дендрогамма показывает, что кластеризация методом полной связи (дальнего соседа) при таком же пороговом расстоянии равным 13, приводит к образованию двух кластеров. Сравните полученные дендрограммы с результатами решения примера 3.
Метод К-средних
Метод К-средних относится к группе так называемых эталонных методов кластерного анализа. Число кластеров К задается пользователем. Процедура состоит в следующем. На первом шаге определяют К кластеров — эталонов (это могут быть, например, первые К объектов). Далее каждый объект присоединяется к ближайшему эталону. В качестве критерия используется минимальное расстояние внутри кластера относительно среднего. Как только объект включается в кластер, среднее пересчитывается. После пересчета эталона объекты снова распределяются по ближайшим кластерам и т. д. Процедура заканчивается при стабилизации процесса, т. е. при стабилизации центров тяжести.
Пример 4. Провести классификацию п = 10 объектов, каждый из которых характеризуется тремя признаками: х, у и z. Таблица данных приведена на рис. 23.
Рис. 23. Данные для примера 4
1. Визуализация данных (в трехмерном случае).
В меню Graphs выберите 3D XYZ Graphs. В выпадающем меню выберите команду Scatterplots, в появившемся окне нажмите на кнопку Variables и задайте X, Y, Z (рис. 4). Затем нажмите на кнопку Options 1 и включите опцию Display Case labels (имена наблюдений), нажмите ОК.
|
|
Рис. 24. Ввод данных для построения диаграммы рассеяния |
|
На экране появится диаграмма рассеяния для исходных данных (рис. 25). По диаграмме видно, что объекты образуют три кластера.
Рис. 25. Диаграмма рассеяния для примера 4.
2. Проведем кластерный анализ с помощью метода K-средних (K-means clustering). На панели инструментов нажмите кнопку Module Switcher, в по явившемся окне выберите Cluster Analysis и в стартовой панели модуля выберете K-means clustering. В новом окне выполните следующие настройки (рис.26):
|
|
Рис.26. Настройки метода K-средних |
|
Далее:
а) нажмите на кнопку Variables и введите переменные X, Y, Z;
б) в разделе Cluster выберите Cases (rows);
в) в разделе Number of clusters задайте число кластеров, равное трем;
г) задайте число итераций;
д) выберете один из трех методов для начального определения центров кластеров (эталонов): либо выбираются первые К объектов, либо выбираются объекты наиболее отстоящие друг от друга, либо отстоящие друг от друга на одинаковом расстоянии. После выбора установок нажмите ОК.
3. Результаты кластеризации.
a. Analysis of variance — результаты дисперсионного анализа по каждому признаку X, Y, Z (рис. 7): выводятся суммы квадратов отклонения объектов от центров кластеров (SS Within) и суммы квадратов отклонений между центрами кластеров (SS Between), значения K-статистики и уровни значимости р.
Рис. 27. Результаты дисперсионного анализа
б. Выводятся координаты центров и матрицы расстояний между центрами (рис. 28).
Рис. 28. Матрица расстояний между центрами классов
в. График распределения центров кластеров (рис. 29):
Рис. 29. График координат центров классов
г. Статистики для каждого кластера по координатам X, Y, Z: средние центров, стандартные отклонения и дисперсии.
д. Номера объектов, входящих в каждый кластер и расстояния объектов до центра каждого кластера.
В данном примере объекты распределились следующим образом: кластер 1: {4}; кластер 2: {1, 2, 7, 10}; кластер 3: {3, 5, 6, 8, 9}.
1. Используя иерархические алгоритмы проведите кластеризацию данных из примера 4. Сравните результаты с результатами в примере 4.
2. На предприятии существует 16 научно-производственных отделов, занятых выпуском различной продукции, работ, услуг. Поскольку виды деятельности, количество работающих, рентабельность отделов, существенно различаются между собой, было решено сгруппировать отделы в несколько однородных групп, а затем для каждой группы разработать свою систему премирования.
После тщательного
анализа выбрали четыре признака, с
помощью которых описывались важные
(для указанной цели) параметры каждого
отдела:
— стоимость
активной части основных производственных
фондов, тыс. руб.;
— среднемесячный
объем работ отдела, тыс. руб.;
— удельный
вес работ/услуг отдела по внутрифирменной
кооперации, %;
— среднемесячная
прибыль отдела, тыс. руб.
Исходные данные по отделам приведены ниже.
Проведите
кластеризацию отделов используя
иерархические алгоритмы (Joining):
а) используя
исходные данные; используя
стандартизованные данные, т. е. данные,
преобразованные по формуле
где
значение
признака,
№ отдела |
Значения признаков |
|||
|
|
|
|
|
1 |
699 |
190 |
53 |
11 |
2 |
532 |
211 |
19 |
42 |
3 |
650 |
152 |
46 |
14 |
4 |
768 |
216 |
67 |
17 |
5 |
67 |
106 |
0 |
32 |
6 |
322 |
397 |
26 |
52 |
7 |
736 |
180 |
49 |
18 |
8 |
501 |
239 |
11 |
60 |
9 |
293 |
391 |
16 |
66 |
10 |
300 |
396 |
29 |
87 |