|
…Главное, чтобы все развивалось
систематически. Во всем должна быть система. – Систематическая
система, – заметил старший писарь Ванек, скептически улыбаясь.
– Да, – небрежно обронил вольноопределяющийся, – систематизированная
систематическая система…
Я.Гашек. Похождения бравого солдата Швейка во время мировой войны. Ч.III. Глава III. Из Жатвана на галицийскую границу. Квикег был туземцем с острова Коковоко,
расположенного далеко на юго-западе. На карте этот остров не обозначен
– настоящие места никогда не отмечаются на картах.
Г.Мелвилл. Моби Дик, или Белый Кит. Глава XII. Жизнеописательная. Рассмотрим множество из m элементов wОW. Известно, что разбиением называется совокупность K попарно непересекающихся подмножеств W1,...WK, объединение которых образует исходное множество W. Пусть элементы wi представлены векторами xi = (xi1,…xin) в некотором n-мерном пространстве. В задачах кластер-анализа их называют объектами, расположенными в n-мерном пространстве признаков (измеренных характеристик). Объекты образуют строки матрицы X(m,n), а их разбиение называют кластеризацией (классификацией). В задачах кластер-анализа признаков элементами являются признаки, расположенные в n-мерном пространстве объектов (актов измерений). Очевидно, что признаки образуют столбцы в той же матрице X(m,n). Здесь нам удобно будет считать, что признаки образуют строки другой матрицы X(m,n), полученной после транспонирования исходной матрицы и переобозначения ее размерностей. Разбиение признаков обычно называют группировкой. Сходство пары объектов обычно оценивают евклидовым расстоянием между ними, а сходство пары признаков – их взаимной корреляцией. Пусть матрица D(m,m) является матрицей попарного сходства элементов w в соответствующем пространстве. Пусть выполнено некоторое разбиение множества W. Обычно каждому подмножеству Wi можно сопоставить некоторый элемент vi, который является наиболее типичным для него в некотором смысле. Назовем такой элемент представителем данного множества. В общем случае представитель vi может и не совпадать ни с одним элементов из Wi. Например, в задаче кластеризации представителем часто назначается средний вектор zi по подматрице X(mi,n), а в некоторых задачах группировки (экстремальная группировка) таким представителем назначается первая главная компонента подматрицы D(mi,mi) – в этом случае компоненты представителя вычисляются немного сложнее.
Будем говорить, что представителями назначаются “центры”
соответствующих множеств. Очевидно, что в общем случае смысл центра зависит
от контекста задачи.
Назовем некоторое разбиение несмещенным, если все представители в нем совпадают со своими центрами. Обычно расположение элементов w в соответствующем пространстве оценивают некоторой характеристикой плотности расположения (сгущения). Например, в кластер-анализе плотность разбиения характеризуют дисперсиями кластеров Wi. В задаче экстремальной группировки плотность разбиения характеризуют, например, суммой квадратов (или модулей) корреляций представителя каждой группы Wi со своими признаками. Теперь нам удобно сформулировать базовый алгоритм разбиения некоторого множества W на заранее заданное число K подмножеств Wi. Алгоритм 1. Назначим некоторым способом K представителей, например, как K самых несходных друг с другом элементов. На очередном шаге s выполним разбиение, просматривая все элементы w и относя их к тому множеству Wi, с представителем которого они сходны более всего. Если разбиение оказалось смещенным, то назначим центры множеств Wi представителями и перейдем к шагу s=s+1. Алгоритм останавливается при несмещенном разбиении. Легко видеть, что из этой формулировки сразу же получаются известные базовые алгоритмы кластеризации (алгоритм K–средних) и экстремальной группировки. Подобным же образом можно сформулировать и другие известные варианты данных алгоритмов. Заметим, что при K=2 представители в базовом алгоритме определяются наиболее просто – это пара элементов, соответствующая экстремальному значению в матрице сходства D (максимальное для расстояний и минимальное по модулю для корреляций значения). Построим неиерархический дивизимный алгоритм разбиения. Алгоритм 2. На каждом шаге, начиная с K=1, возьмем наименее плотное подмножество Wk и назначим в нем представителями пару самых непохожих элементов. Алгоритмом 1 разобьем Wk на два подмножества, обозначив их как Wk и WK+1. Для K+1 подмножеств в полученном разбиении назначим представителями K-1 ранее полученных представителей v1,…vk-1, vk+1,…vK и двух новых представителей vk и vK+1. Вновь разобьем все множество W на K+1 подмножеств алгоритмом 1. Перейдем к шагу K=K+1. Алгоритм останавливается при K=m. Данный алгоритм строит полную последовательность разбиений, начиная с единственного множества W1=W и заканчивая одноэлементными множествами W1,...Wm. В общем случае не все разбиения в построенной последовательности являются иерархически вложенными. Очевидно, что два последовательных разбиения на K и K+1 подмножеств образуют иерархию, если разбиение наименее плотного подмножества Wk на два Wk и WK+1 сразу дает несмещенное разбиение W1,...WK+1. В этом случае назовем предыдущее разбиение на K подмножеств устойчивым. Рассмотрим элементы w как объекты. Очевидно, что на множестве W определен граф кратчайшего незамкнутого пути (минимальное покрывающее дерево). Если рассмотреть элементы w как признаки, то также очевидно, что на множестве W определен граф максимального незамкнутого корреляционного пути. Будем говорить, что на множестве W определен незамкнутый граф максимального сходства. Теорема. Пусть неиерархическим дивизимным алгоритмом построено дерево разбиений. Тогда оно эквивалентно незамкнутому графу максимального сходства.
Все построились в кружок,
и Незнайка принялся считать, тыкая каждого пальцем:
Энэ бэнэ рес! Квинтер финтер
жес!
Энэ бэнэ ряба, квинтер финтер жаба… Потом сказал: – Нет, мне эта
считалка не нравится. Не люблю я ее! – И начал другую:
Икете пикете цокото мэ!
Абель фабель доманэ.
Ики пики грамматики… В это время корзина с силой
ударилась о землю и перевернулась… Воздушное путешествие окончилось.
Н.Носов. Приключения Незнайки и его друзей. Гл.10. Авария. Рассмотренный метод неиерархических разбиений сочетает
два существенно разных подхода к построению кластеризации. С одной стороны,
используются хорошо известные алгоритмы, а с другой – результат обработки
столь же нагляден, как и дендрограмма. Мы здесь попытались непосредственно
эксплуатировать интуитивное предположение об “устойчивости” хорошего разбиения.
Очевидно, что в качестве оптимального следует выбрать устойчивое разбиение, входящее в состав одной из подпоследовательностей иерархически вложенных разбиений. Очевидно также, что общую последовательность разбиений можно ограничить, отбросив разбиения с малонаполненными кластерами (группами), начиная с некоторого значения K, приближающегося к размеру выборки m. При малых K можно отбросить разбиения с рыхлыми кластерами. Например, в задаче кластеризации можно отбросить разбиения, у которых средняя дисперсия кластеров превышает дисперсию их центров. Аналогично следует поступить и в задаче группировки. Тогда оставшиеся разбиения будут представлять компактные кластеры, соответствующие одному из общепринятых эвристических определений. В то же время, использование только одного типа представления о компактности кластеров и группировок и отсутствие настраиваемых параметров безусловно сужает область применимости данного метода. Тем не менее, построенный алгоритм оказывается весьма простым и быстрым для получения, по крайней мере, первичной информации о структуре исследуемых данных. Несложно построить и агломеративный вариант алгоритма неиерархических разбиений. Его свойства достаточно очевидны. Ниже мы покажем применение метода неиерархических разбиений в другой важной задаче кластер-анализа – обработке пропусков в данных.
|