происходит минимизация статистического расстояния между классами S , вычисляемого по формуле
|
nl nm |
|
|
|
|
T |
|
|
|
|
|
S |
|
|
|
X Y |
X Y . |
||||||
|
|
|
|
||||||||
nl |
nm |
|
|||||||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
||
Рассмотрим работу иерархического алгоритма кластеризации на простом примере.
Пример. Провести кластеризацию четырех объектов методами одиночной связи (Single Linkage) и полной связи (Complete Linkage). Каждый объект определяется двумя признаками (табл. 4)
|
|
|
|
|
|
Таблица 4 |
|
Определение объекта двумя признаками |
|
|
|||||
Признак |
|
Объект |
|
|
|
|
|
|
1 |
2 |
|
3 |
|
4 |
|
xi |
0 |
-1 |
|
1 |
|
4 |
|
yi |
-2 |
0 |
|
2 |
|
0 |
|
|
|
|
|
|
|
|
|
Решение: |
|
|
|
|
|
|
|
|
|
|
Расстояние между объектами |
|
Xi и |
X j определим как |
|||||||
квадрат евклидовой метрики |
|
|
|
|
|
|
|
|||
ij |
x |
x |
2 |
y |
i |
y |
2 |
, |
i, j |
1,2,3,4; i j . |
i |
|
j |
|
|
j |
|
|
|
||
Таким образом, расстояние между первым и вторым объектами равно:
12=(0 + 1 ) 2 + ( - 2 - 0 ) 2 = 5 , а между первым и третьим
объектами
13( 0 - 1 ) 2 + ( - 2 - 2 ) 2 =17 и т. д.
На первом шаге матрица расстояний между объектами D1 , имеет вид
|
0 |
5 |
17 |
20 |
D1 |
5 |
0 |
8 |
25 . |
|
17 |
8 |
0 |
13 |
|
20 |
25 |
13 |
0 |
24
Наиболее близки первый и второй объекты: 12 = 5,
следовательно, эти объекты объединяются в один кластер. На втором шаге имеем следующие кластеры (табл. 5):
Таблица 5
|
Объединение объектов в кластеры |
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
Кластеры |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
3 |
|
|
|
|
||||||||
|
Объекты |
|
|
|
|
|
|
|
|
|
(1,2) |
|
|
|
|
|
3 |
|
|
4 |
|
|
|
|
|||||||||||
Определяем расстояние между кластерами по методу |
|||||||||||||||||||||||||||||||||||
«ближайшего соседа»: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
2 |
|
|
|
min |
13; |
|
|
|
min(17;8)=8 |
|
|||||||||||||||||||||||||
12 |
1,2 ,3 |
23 |
|
|
|
||||||||||||||||||||||||||||||
2 |
|
|
min |
|
|
14 ; |
|
|
min(20;25)=20; |
|
|||||||||||||||||||||||||
13 |
1,2 ,4 |
|
|
|
24 |
|
|||||||||||||||||||||||||||||
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
13 . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
23 |
|
|
|
3,4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
Для вычисления расстояния между кластерами можно |
|||||||||||||||||||||||||||||||||||
воспользоваться формулой (1): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
Sl , S m,q |
|
|
lm |
|
|
|
|
|
lq |
|
mq |
|
|
lm |
|
|
|
lq |
|
. |
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
Расстояние по принципу «ближайшего соседа» |
|||||||||||||||||||||||||||||||||||
определяется при |
|
|
|
|
1 |
, |
|
|
0, |
|
|
|
|
1 |
. |
|
|
Таким образом, |
|||||||||||||||||
|
|
|
2 |
|
|
|
2 |
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
например, расстояние между первым и вторым кластерами |
2 |
||||||||||||||||||||||||||||||||||
12 |
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
по формуле (1) равно |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
2 |
|
|
|
1 |
|
|
|
|
|
|
1 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
12 |
1,2 3 |
2 |
|
|
|
13 |
2 |
|
23 |
2 |
|
|
12 |
|
23 |
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
1 |
17 |
|
1 |
|
8 |
|
1 |
17 |
8 |
|
|
|
|
8. |
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
2 |
2 |
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
Матрица расстояний D2 между тремя кластерами на
втором шаге имеет вид |
|
|
0 |
8 |
20 |
D2 8 |
0 |
13 |
20 |
13 |
0 |
Как следует из матрицы расстояний D2 наиболее близки |
||
первый и второй кластеры: |
2 |
8 , следовательно, эти |
12 |
||
25
кластеры объединяются в один кластер.
Таким образом, на третьем шаге имеем следующие кластеры (табл. 6):
|
|
|
|
|
|
|
Таблица 6 |
||
Объединение объектов в кластеры |
|||||||||
Номера кластеров |
|
|
|
|
|
1 |
2 |
|
|
|
|
|
|
||||||
Состав кластеров (в скобках указаны номера |
(1,2) |
3 |
|
||||||
кластеров на втором шаге) |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
||||
Состав кластеров (в скобках |
|
указаны номера |
(1,2,3) |
4 |
|
||||
исходных объектов) |
|
|
|
|
|
|
|
|
|
3 |
2 |
min |
(2) |
; |
(2) |
min(20;13)=13. |
|||
12 |
1,2 ,3 |
|
13 |
|
23 |
|
|
|
|
Матрица |
расстояний |
D3 |
|
между двумя кластерами на |
|||||
третьем шаге |
|
|
|
|
|
|
|
|
|
|
|
|
D3 |
|
0 |
13 |
|
|
|
|
|
|
|
13 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
||
На последнем, четвертом шаге, оба кластера объединяются.
Теперь рассмотрим работу алгоритма, в случае, когда
расстояние между кластерами |
определяется по принципу |
||||||
«дальней связи» - Complete Linkage. |
|
|
|
||||
На первом шаге объединяются наиболее близкие |
|||||||
первый и второй объекты: 12 |
5. . |
|
|
|
|
||
На втором шаге имеем следующие кластеры (табл. 7): |
|||||||
|
|
|
|
|
|
|
Таблица 7 |
|
Объединение объектов в кластеры |
||||||
|
Кластеры |
1 |
|
2 |
3 |
|
|
|
Объекты |
(1,2) |
3 |
4 |
|
||
Далее определяем расстояние между объектами по |
|||||||
принципу «дальней связи»: |
|
|
|
|
|
||
2 |
|
max |
13; |
|
max(17;8)=17. |
||
12 |
1,2 ,3 |
23 |
|||||
2 |
|
max |
14 ; |
|
max(20;25)=25. |
||
13 |
1,2 ,4 |
24 |
|||||
26
2 |
|
13 . |
|
23 |
3,4 |
||
|
Матрица расстояний D2 между тремя кластерами на втором шаге имеет вид
0 17 25
D2 17 0 13 . 25 13 0
Таким образом наиболее близки второй и третий кластеры: 322
=13. Эти кластеры объединяются и на третьем шаге имеем следующие кластеры (табл. 8):
|
|
|
|
|
|
|
Таблица 8 |
|
|
Объединение объектов в кластеры |
|
|
|||||
Номера кластеров |
|
|
|
|
1 |
2 |
|
|
|
|
|
|
|||||
Состав кластеров (в скобках указаны номера |
1 |
(2,3) |
|
|||||
кластеров на втором шаге) |
|
|
|
|
|
|
||
|
|
|
|
|||||
Состав кластеров (в скобках указаны номера |
(1,2) |
(3,4) |
|
|||||
исходных объектов) |
|
|
|
|
|
|
|
|
Определяем расстояние между кластерами |
|
|
||||||
2 |
|
max |
2 |
2 |
max(17;25)=25. |
|||
12 |
1,(2,3) |
12 ; |
23 |
|||||
Матрица расстояний |
|
|
|
|
|
|
||
|
|
D3 |
|
0 |
25 . |
|
|
|
|
|
|
|
25 |
0 |
|
|
|
На последнем, четвертом шаге, оба кластера объединяются.
Выполнение иерархических процедур в пакете
STATISTICA
Для реализации любого метода кластеризации из группы иерархических процедур Joining (tree clustering) необходимо сделать следующие установки:
1)выбрать переменные для анализа (Variables);
2)определить вид входных данных (Input): можно
27
вводить таблицу с координатами объектов (Raw data) либо сразу матрицу расстояний между объектами (Distance matrix);
3)определить объекты кластеризации: это могут быть переменные (столбцы) (Variables (columns) либо наблюдения (строки) — Cases (rows). В последнем случае каждая строка таблицы исходных данных есть объект;
4)выбрать метрику, определяющую расстояние между кластерами — Amalgamation (linkage) rule;
5)выбрать метрику, определяющую расстояние между объектами — Distance measure.
Результаты кластеризации имеют следующий вид:
1)строится горизонтальная или вертикальная дендрограмма — график, на котором определены расстояния между объектами и кластерами при их последовательном объединении. Древовидная структура графика позволяет определить кластеры в зависимости от выбранного порога — заданного расстояния между кластерами;
2)выводится матрица расстояний между исходными объектами (Distance matrix);
3)выводятся средние и среднеквадратичные отклонения для каждого исходного объекта (Distiptive statistics).
Рассмотрим решение примера в пакете STATISTICA. Нажмите кнопку Module Switcher на панели
инструментов, в появившемся окне выберете модуль Cluster Analysis, а затем Joining (tree clustering). В новом окне выполните следующие настройки:
а) нажмите на кнопку Variables и введите имена двух переменных х и у, в которых записаны исходные данные примера ;
б) в разделе Input введите Raw data (исходные данные); в) в разделе Cluster выберите Cases (rows). При этой установке объекты кластеризации — двумерные наблюдения с
координатами xi и yi , i=1,2, 3, 4;
г) в разделе Amalgamation (linkage) rule выберите
Single Linkage (метод одиночной связи);
28