Классификация методов кластеризации. Что происходит, если не проводить кластеризацию

Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

Подписаться

Кластеризация семантического ядра - это разделение множества разнородных запросов на группы по смыслу.


Больше видео на нашем канале - изучайте интернет-маркетинг с SEMANTICA

Чтобы лучше понять, что такое кластеризация , можно представить подготовку белья перед стиркой. Чтобы стирка прошла быстро и продуктивно, вещи разделяют на несколько групп по цветам. А опытные хозяйки проводят сортировку белья с более подробной детализацией. В каждой цветовой группе найдутся вещи, которые нуждаются в особом температурном режиме. Их выделяют в отдельные группы. Нечто подобное происходит и при кластеризации ключевых слов. Это процесс, который превращает сотни и тысячи пользовательских запросов в упорядоченную структуру.

В идеале кластеризация ключей должна осуществляться на базе перечня свойств объектов, которые характеризуют данные ключи, а также контекста их применения. Однако на данный момент не существует открытых баз, хранящих такие сведения. По этой причине группировка ключевых слов проводится на основе поисковой выдачи.

Этапы кластеризации:

  1. Получение выборки объектов для группировки.
  2. Задание перечня критериев оценки объектов в выборке.
  3. Определение степени сходства между анализируемыми объектами.
  4. Проведение кластерного анализа для формирования групп объектов.
  5. Представление результатов кластеризации.

Зачем нужно проводить кластеризацию СЯ

С помощью грамотных инструментов можно в минимальные сроки и группировать большие семантические ядра. Если в прошлом на создание ядра уходили целые месяцы, то сейчас эта работа занимает всего пару часов. Одним из преимуществ кластеризации является распределение поисковых запросов по страницам таким образом, чтобы их продвижение происходило одновременно.

Кластеризация семантического ядра позволяет получить:

  • Существенную экономию времени за счет сокращения рутинной работы.
  • Информационный гид по темам, популярным среди пользователей.
  • План продвижения.
  • Представление структуры разрабатываемого сайта.
  • Объективную оценку популярности продукцию в указанной нише.
  • Перечень ключей для оптимизации ресурса.
  • Осуществление корректной переадресации веб-страниц.
  • Создание большого хвоста поисковых запросов.

Что происходит, если не проводить кластеризацию

Если пренебречь разбиением семантического ядра сайта на кластеры, то его владелец не получит полной картины продвижения своего ресурса. Подобный результат можно получить и вследствие неправильного распределения поисковых фраз.

Вот перечень проблем, которые возникнут после некорректной группировки ключей:

  • Теряется позиция в ТОПе поисковой выдачи;
  • Происходит каннибализация и, как следствие, в индексах поисковиков возникает множество дублей;
  • Происходит дезориентация поведенческих факторов, мешающая продвижению ресурса;
  • Расходуются большие средства на создание "лишнего" контента.

Устранение и предупреждение подобных проблем - это главный ответ на вопрос: "зачем делать кластеризацию ся".

Алгоритмы кластеризации

SEO-специалисты выделяют два типа классификации алгоритмов кластеризации:

Иерархические и плоские

Иерархические алгоритмы (еще их называют алгоритмами-таксонами) формируют не одно разделение множества на пересекающиеся кластеры, а многоуровневую структуру вложенных разбиений. В результате формируется дерево кластеров. В качестве его корня выступает общая выборка, а в качестве листьев - самые мелкие группы.

Плоские алгоритмы формируют одно разделение объектов на группы.

Четкие и нечеткие

Четкие алгоритмы связывают каждый элемент выборки с номером кластера. Нечеткие алгоритмы связывают каждый элемент выборки с комбинацией вещественных значений, отражающих меру принадлежности элемента к кластерам. Таким образом каждый элемент выборки относится к каждой группе с определенной долей вероятности.

Как провести кластеризацию запросов вручную

Для ручной кластеризации семантического ядра сайта достаточно самостоятельно проанализировать ключевики и разделить их на группы. Эту работу можно облегчить с помощью инструментов Excel, LibreOffice, OpenOffice. Эти приложения позволяют работать с таблицами данных, выполнять сортировку и фильтрование по определенным параметрам.

Представленные инструменты имеют ряд достоинств:

  • Универсальность - производят группировку с учетом множества разных критериев;
  • Высокая точность обработки;
  • LibreOffice, OpenOffice - бесплатные.

В числе их недостатков:

  • Необходимость периодических бекапов;
  • Низкая скорость обработки;
  • Лицензионный Excel - платный.

Ручная кластеризация семантического ядра сайта более сложная и длительная по сравнению с автоматизированной. Зато можно лично проконтролировать весь процесс. Если этому уделить должное внимание, то результат качественно превзойдет автоматическую кластеризацию ся.

Автоматизированная кластеризация ся

Разделение семантического ядра на группы происходит автоматически.

Вебмастеру достаточно оценить полученные результаты. Единственным минусом такого подхода является периодически возникающее несоответствие машинной логики представлениям пользователя.

Обойти эту проблему может полуавтоматический способ группировки поисковых запросов. Для этого специалисту необходимо самостоятельно подобрать группы по полученным запросам. А автоматизированная система сама разделит запросы по указанным пользователем группам. Такой подход позволяет существенно минимизировать ошибки машинного алгоритма.

Как провести кластеризацию запросов с помощью Key Collector

Одним из лучших приложений для проведения кластеризации считается Key Collector. Программа позволяет быстро получить ключи, на основании которых будет сформировано семантическое ядро. Система может оценить конкурентность, эффективность и стоимость ключей, а также проанализировать ресурс на соответствие его контента полученному ядру.

Схема работы Key Collector достаточно проста. Чтобы разделить все полученные запросы, необходимо воспользоваться опцией «Анализ групп». При этом системе нужно указать режим кластеризации ("по отдельным словам", "по составу фраз", "по поисковой выдаче", "по составу фраз и поисковой выдаче"). Режим "по отдельным словам" группирует поисковые запросы, у которых присутствует совпадение даже по одному слову. Режим "по составу фраз" ориентируется на строение ключевых фраз. Это наиболее подходящий способ разбиения большого количества запросов. Режим "по поисковой выдаче" группирует ключевые фразы по количеству совпавших ссылок в результатах поиска. Режим "по составу фраз и поисковой выдаче" сочетает в себе два предыдущих критерия.

Пример кластеризации семантического ядра в системе Key Collector:

Чтобы оценить группы, которые получились, их можно выгрузить в табличный редактор (например в Excel).

Типы входных данных

  • Признаковое описание объектов. Каждый объект описывается набором своих характеристик, называемых признаками . Признаки могут быть числовыми или нечисловыми.
  • Матрица расстояний между объектами. Каждый объект описывается расстояниями до всех остальных объектов обучающей выборки.

Цели кластеризации

  • Понимание данных путём выявления кластерной структуры. Разбиение выборки на группы схожих объектов позволяет упростить дальнейшую обработку данных и принятия решений, применяя к каждому кластеру свой метод анализа (стратегия «разделяй и властвуй »).
  • Сжатие данных . Если исходная выборка избыточно большая, то можно сократить её, оставив по одному наиболее типичному представителю от каждого кластера.
  • Обнаружение новизны (англ. novelty detection ). Выделяются нетипичные объекты, которые не удаётся присоединить ни к одному из кластеров.

В первом случае число кластеров стараются сделать поменьше. Во втором случае важнее обеспечить высокую степень сходства объектов внутри каждого кластера, а кластеров может быть сколько угодно. В третьем случае наибольший интерес представляют отдельные объекты, не вписывающиеся ни в один из кластеров.

Во всех этих случаях может применяться иерархическая кластеризация, когда крупные кластеры дробятся на более мелкие, те в свою очередь дробятся ещё мельче, и т. д. Такие задачи называются задачами таксономии .

Результатом таксономии является древообразная иерархическая структура. При этом каждый объект характеризуется перечислением всех кластеров, которым он принадлежит, обычно от крупного к мелкому.

Классическим примером таксономии на основе сходства является биноминальная номенклатура живых существ, предложенная Карлом Линнеем в середине XVIII века. Аналогичные систематизации строятся во многих областях знания, чтобы упорядочить информацию о большом количестве объектов.

Методы кластеризации

Формальная постановка задачи кластеризации

Пусть - множество объектов, - множество номеров (имён, меток) кластеров. Задана функция расстояния между объектами . Имеется конечная обучающая выборка объектов . Требуется разбить выборку на непересекающиеся подмножества, называемые кластерами , так, чтобы каждый кластер состоял из объектов, близких по метрике , а объекты разных кластеров существенно отличались. При этом каждому объекту приписывается номер кластера .

Алгоритм кластеризации - это функция , которая любому объекту ставит в соответствие номер кластера . Множество в некоторых случаях известно заранее, однако чаще ставится задача определить оптимальное число кластеров, с точки зрения того или иного критерия качества кластеризации.

Литература

  1. Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д. Прикладная статистика: классификация и снижение размерности. - М.: Финансы и статистика, 1989.
  2. Журавлев Ю. И., Рязанов В. В., Сенько О. В. «Распознавание». Математические методы. Программная система. Практические применения. - М.: Фазис, 2006. ISBN 5-7036-0108-8.
  3. Загоруйко Н. Г. Прикладные методы анализа данных и знаний. - Новосибирск: ИМ СО РАН, 1999. ISBN 5-86134-060-9.
  4. Мандель И. Д. Кластерный анализ. - М.: Финансы и статистика, 1988. ISBN 5-279-00050-7.
  5. Шлезингер М., Главач В. Десять лекций по статистическому и структурному распознаванию. - Киев: Наукова думка, 2004. ISBN 966-00-0341-2.
  6. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. - Springer, 2001. ISBN 0-387-95284-5.
  7. Jain, Murty, Flynn Data clustering: a review . // ACM Comput. Surv. 31 (3) , 1999

Внешние ссылки

На русском языке

  • www.MachineLearning.ru - профессиональный вики-ресурс, посвященный машинному обучению и интеллектуальному анализу данных
  • С. Николенко. Слайды лекций по алгоритмам кластеризации

На английском языке

  • COMPACT - Comparative Package for Clustering Assessment . A free Matlab package, 2006.
  • P. Berkhin, Survey of Clustering Data Mining Techniques , Accrue Software, 2002.
  • Jain, Murty and Flynn: Data Clustering: A Review , ACM Comp. Surv., 1999.
  • for another presentation of hierarchical, k-means and fuzzy c-means see this introduction to clustering . Also has an explanation on mixture of Gaussians.
  • David Dowe, Mixture Modelling page - other clustering and mixture model links.
  • a tutorial on clustering
  • The on-line textbook: Information Theory, Inference, and Learning Algorithms , by David J.C. MacKay includes chapters on k-means clustering, soft k-means clustering, and derivations including the E-M algorithm and the variational view of the E-M algorithm.
  • "The Self-Organized Gene" , tutorial explaining clustering through competitive learning and self-organizing maps.
  • kernlab - R package for kernel based machine learning (includes spectral clustering implementation)
  • Tutorial - Tutorial with introduction of Clustering Algorithms (k-means, fuzzy-c-means, hierarchical, mixture of gaussians) + some interactive demos (java applets)
  • Data Mining Software - Data mining software frequently utilizes clustering techniques.
  • Java Competitve Learning Application A suite of Unsupervised Neural Networks for clustering. Written in Java. Complete with all source code.

Приветствую!

В своей дипломной работе я проводил обзор и сравнительный анализ алгоритмов кластеризации данных. Подумал, что уже собранный и проработанный материал может оказаться кому-то интересен и полезен.
О том, что такое кластеризация, рассказал в статье . Я частично повторю слова Александра, частично дополню. Также в конце этой статьи интересующиеся могут почитать материалы по ссылкам в списке литературы.

Так же я постарался привести сухой «дипломный» стиль изложения к более публицистическому.

Понятие кластеризации

Кластеризация (или кластерный анализ) - это задача разбиения множества объектов на группы, называемые кластерами. Внутри каждой группы должны оказаться «похожие» объекты, а объекты разных группы должны быть как можно более отличны. Главное отличие кластеризации от классификации состоит в том, что перечень групп четко не задан и определяется в процессе работы алгоритма.

Применение кластерного анализа в общем виде сводится к следующим этапам:

  1. Отбор выборки объектов для кластеризации.
  2. Определение множества переменных, по которым будут оцениваться объекты в выборке. При необходимости – нормализация значений переменных.
  3. Вычисление значений меры сходства между объектами.
  4. Применение метода кластерного анализа для создания групп сходных объектов (кластеров).
  5. Представление результатов анализа.
После получения и анализа результатов возможна корректировка выбранной метрики и метода кластеризации до получения оптимального результата.

Меры расстояний

Итак, как же определять «похожесть» объектов? Для начала нужно составить вектор характеристик для каждого объекта - как правило, это набор числовых значений, например, рост-вес человека. Однако существуют также алгоритмы, работающие с качественными (т.н. категорийными) характеристиками.

После того, как мы определили вектор характеристик, можно провести нормализацию, чтобы все компоненты давали одинаковый вклад при расчете «расстояния». В процессе нормализации все значения приводятся к некоторому диапазону, например, [-1, -1] или .

Наконец, для каждой пары объектов измеряется «расстояние» между ними - степень похожести. Существует множество метрик, вот лишь основные из них:

Выбор метрики полностью лежит на исследователе, поскольку результаты кластеризации могут существенно отличаться при использовании разных мер.

Классификация алгоритмов

Для себя я выделил две основные классификации алгоритмов кластеризации.
  1. Иерархические и плоские.
    Иерархические алгоритмы (также называемые алгоритмами таксономии) строят не одно разбиение выборки на непересекающиеся кластеры, а систему вложенных разбиений. Т.о. на выходе мы получаем дерево кластеров, корнем которого является вся выборка, а листьями - наиболее мелкие кластера.
    Плоские алгоритмы строят одно разбиение объектов на кластеры.
  2. Четкие и нечеткие.
    Четкие (или непересекающиеся) алгоритмы каждому объекту выборки ставят в соответствие номер кластера, т.е. каждый объект принадлежит только одному кластеру. Нечеткие (или пересекающиеся) алгоритмы каждому объекту ставят в соответствие набор вещественных значений, показывающих степень отношения объекта к кластерам. Т.е. каждый объект относится к каждому кластеру с некоторой вероятностью.

Объединение кластеров

В случае использования иерархических алгоритмов встает вопрос, как объединять между собой кластера, как вычислять «расстояния» между ними. Существует несколько метрик:
  1. Одиночная связь (расстояния ближайшего соседа)
    В этом методе расстояние между двумя кластерами определяется расстоянием между двумя наиболее близкими объектами (ближайшими соседями) в различных кластерах. Результирующие кластеры имеют тенденцию объединяться в цепочки.
  2. Полная связь (расстояние наиболее удаленных соседей)
    В этом методе расстояния между кластерами определяются наибольшим расстоянием между любыми двумя объектами в различных кластерах (т.е. наиболее удаленными соседями). Этот метод обычно работает очень хорошо, когда объекты происходят из отдельных групп. Если же кластеры имеют удлиненную форму или их естественный тип является «цепочечным», то этот метод непригоден.
  3. Невзвешенное попарное среднее
    В этом методе расстояние между двумя различными кластерами вычисляется как среднее расстояние между всеми парами объектов в них. Метод эффективен, когда объекты формируют различные группы, однако он работает одинаково хорошо и в случаях протяженных («цепочечного» типа) кластеров.
  4. Взвешенное попарное среднее
    Метод идентичен методу невзвешенного попарного среднего, за исключением того, что при вычислениях размер соответствующих кластеров (т.е. число объектов, содержащихся в них) используется в качестве весового коэффициента. Поэтому данный метод должен быть использован, когда предполагаются неравные размеры кластеров.
  5. Невзвешенный центроидный метод
    В этом методе расстояние между двумя кластерами определяется как расстояние между их центрами тяжести.
  6. Взвешенный центроидный метод (медиана)
    Этот метод идентичен предыдущему, за исключением того, что при вычислениях используются веса для учета разницы между размерами кластеров. Поэтому, если имеются или подозреваются значительные отличия в размерах кластеров, этот метод оказывается предпочтительнее предыдущего.

Обзор алгоритмов

Алгоритмы иерархической кластеризации
Среди алгоритмов иерархической кластеризации выделяются два основных типа: восходящие и нисходящие алгоритмы. Нисходящие алгоритмы работают по принципу «сверху-вниз»: в начале все объекты помещаются в один кластер, который затем разбивается на все более мелкие кластеры. Более распространены восходящие алгоритмы, которые в начале работы помещают каждый объект в отдельный кластер, а затем объединяют кластеры во все более крупные, пока все объекты выборки не будут содержаться в одном кластере. Таким образом строится система вложенных разбиений. Результаты таких алгоритмов обычно представляют в виде дерева – дендрограммы. Классический пример такого дерева – классификация животных и растений.

Для вычисления расстояний между кластерами чаще все пользуются двумя расстояниями: одиночной связью или полной связью (см. обзор мер расстояний между кластерами).

К недостатку иерархических алгоритмов можно отнести систему полных разбиений, которая может являться излишней в контексте решаемой задачи.

Алгоритмы квадратичной ошибки
Задачу кластеризации можно рассматривать как построение оптимального разбиения объектов на группы. При этом оптимальность может быть определена как требование минимизации среднеквадратической ошибки разбиения:

Где c j - «центр масс» кластера j (точка со средними значениями характеристик для данного кластера).

Алгоритмы квадратичной ошибки относятся к типу плоских алгоритмов. Самым распространенным алгоритмом этой категории является метод k-средних. Этот алгоритм строит заданное число кластеров, расположенных как можно дальше друг от друга. Работа алгоритма делится на несколько этапов:

  1. Случайно выбрать k точек, являющихся начальными «центрами масс» кластеров.
  2. Отнести каждый объект к кластеру с ближайшим «центром масс».
  3. Пересчитать «центры масс» кластеров согласно их текущему составу.
  4. Если критерий остановки алгоритма не удовлетворен, вернуться к п. 2.
В качестве критерия остановки работы алгоритма обычно выбирают минимальное изменение среднеквадратической ошибки. Так же возможно останавливать работу алгоритма, если на шаге 2 не было объектов, переместившихся из кластера в кластер.

К недостаткам данного алгоритма можно отнести необходимость задавать количество кластеров для разбиения.

Нечеткие алгоритмы
Наиболее популярным алгоритмом нечеткой кластеризации является алгоритм c-средних (c-means). Он представляет собой модификацию метода k-средних. Шаги работы алгоритма:

Этот алгоритм может не подойти, если заранее неизвестно число кластеров, либо необходимо однозначно отнести каждый объект к одному кластеру.
Алгоритмы, основанные на теории графов
Суть таких алгоритмов заключается в том, что выборка объектов представляется в виде графа G=(V, E) , вершинам которого соответствуют объекты, а ребра имеют вес, равный «расстоянию» между объектами. Достоинством графовых алгоритмов кластеризации являются наглядность, относительная простота реализации и возможность вносения различных усовершенствований, основанные на геометрических соображениях. Основными алгоритмам являются алгоритм выделения связных компонент, алгоритм построения минимального покрывающего (остовного) дерева и алгоритм послойной кластеризации.
Алгоритм выделения связных компонент
В алгоритме выделения связных компонент задается входной параметр R и в графе удаляются все ребра, для которых «расстояния» больше R . Соединенными остаются только наиболее близкие пары объектов. Смысл алгоритма заключается в том, чтобы подобрать такое значение R , лежащее в диапазон всех «расстояний», при котором граф «развалится» на несколько связных компонент. Полученные компоненты и есть кластеры.

Для подбора параметра R обычно строится гистограмма распределений попарных расстояний. В задачах с хорошо выраженной кластерной структурой данных на гистограмме будет два пика – один соответствует внутрикластерным расстояниям, второй – межкластерным расстояния. Параметр R подбирается из зоны минимума между этими пиками. При этом управлять количеством кластеров при помощи порога расстояния довольно затруднительно.

Алгоритм минимального покрывающего дерева
Алгоритм минимального покрывающего дерева сначала строит на графе минимальное покрывающее дерево, а затем последовательно удаляет ребра с наибольшим весом. На рисунке изображено минимальное покрывающее дерево, полученное для девяти объектов.

Путём удаления связи, помеченной CD, с длиной равной 6 единицам (ребро с максимальным расстоянием), получаем два кластера: {A, B, C} и {D, E, F, G, H, I}. Второй кластер в дальнейшем может быть разделён ещё на два кластера путём удаления ребра EF, которое имеет длину, равную 4,5 единицам.

Послойная кластеризация
Алгоритм послойной кластеризации основан на выделении связных компонент графа на некотором уровне расстояний между объектами (вершинами). Уровень расстояния задается порогом расстояния c . Например, если расстояние между объектами , то .

Алгоритм послойной кластеризации формирует последовательность подграфов графа G , которые отражают иерархические связи между кластерами:

,

Где G t = (V, E t) - граф на уровне с t ,
,
с t – t-ый порог расстояния,
m – количество уровней иерархии,
G 0 = (V, o) , o – пустое множество ребер графа, получаемое при t 0 = 1,
G m = G , то есть граф объектов без ограничений на расстояние (длину ребер графа), поскольку t m = 1.

Посредством изменения порогов расстояния {с 0 , …, с m }, где 0 = с 0 < с 1 < …< с m = 1, возможно контролировать глубину иерархии получаемых кластеров. Таким образом, алгоритм послойной кластеризации способен создавать как плоское разбиение данных, так и иерархическое.

Сравнение алгоритмов

Вычислительная сложность алгоритмов

Сравнительная таблица алгоритмов
Алгоритм кластеризации Форма кластеров Входные данные Результаты
Иерархический Произвольная Число кластеров или порог расстояния для усечения иерархии Бинарное дерево кластеров
k-средних Гиперсфера Число кластеров Центры кластеров
c-средних Гиперсфера Число кластеров, степень нечеткости Центры кластеров, матрица принадлежности
Выделение связных компонент Произвольная Порог расстояния R
Минимальное покрывающее дерево Произвольная Число кластеров или порог расстояния для удаления ребер Древовидная структура кластеров
Послойная кластеризация Произвольная Последовательность порогов расстояния Древовидная структура кластеров с разными уровнями иерархии

Немного о применении

В своей работе мне нужно было из иерархических структур (деревьев) выделять отдельные области. Т.е. по сути необходимо было разрезать исходное дерево на несколько более мелких деревьев. Поскольку ориентированное дерево – это частный случай графа, то естественным образом подходят алгоритмы, основанными на теории графов.

В отличие от полносвязного графа, в ориентированном дереве не все вершины соединены ребрами, при этом общее количество ребер равно n–1, где n – число вершин. Т.е. применительно к узлам дерева, работа алгоритма выделения связных компонент упростится, поскольку удаление любого количества ребер «развалит» дерево на связные компоненты (отдельные деревья). Алгоритм минимального покрывающего дерева в данном случае будет совпадать с алгоритмом выделения связных компонент – путем удаления самых длинных ребер исходное дерево разбивается на несколько деревьев. При этом очевидно, что фаза построения самого минимального покрывающего дерева пропускается.

В случае использования других алгоритмов в них пришлось бы отдельно учитывать наличие связей между объектами, что усложняет алгоритм.

Отдельно хочу сказать, что для достижения наилучшего результата необходимо экспериментировать с выбором мер расстояний, а иногда даже менять алгоритм. Никакого единого решения не существует.

Типы входных данных

  • Признаковое описание объектов. Каждый объект описывается набором своих характеристик, называемых признаками . Признаки могут быть числовыми или нечисловыми.
  • Матрица расстояний между объектами. Каждый объект описывается расстояниями до всех остальных объектов обучающей выборки.

Цели кластеризации

  • Понимание данных путём выявления кластерной структуры. Разбиение выборки на группы схожих объектов позволяет упростить дальнейшую обработку данных и принятия решений, применяя к каждому кластеру свой метод анализа (стратегия «разделяй и властвуй »).
  • Сжатие данных . Если исходная выборка избыточно большая, то можно сократить её, оставив по одному наиболее типичному представителю от каждого кластера.
  • Обнаружение новизны (англ. novelty detection ). Выделяются нетипичные объекты, которые не удаётся присоединить ни к одному из кластеров.

В первом случае число кластеров стараются сделать поменьше. Во втором случае важнее обеспечить высокую степень сходства объектов внутри каждого кластера, а кластеров может быть сколько угодно. В третьем случае наибольший интерес представляют отдельные объекты, не вписывающиеся ни в один из кластеров.

Во всех этих случаях может применяться иерархическая кластеризация, когда крупные кластеры дробятся на более мелкие, те в свою очередь дробятся ещё мельче, и т. д. Такие задачи называются задачами таксономии .

Результатом таксономии является древообразная иерархическая структура. При этом каждый объект характеризуется перечислением всех кластеров, которым он принадлежит, обычно от крупного к мелкому.

Классическим примером таксономии на основе сходства является биноминальная номенклатура живых существ, предложенная Карлом Линнеем в середине XVIII века. Аналогичные систематизации строятся во многих областях знания, чтобы упорядочить информацию о большом количестве объектов.

Методы кластеризации

Формальная постановка задачи кластеризации

Пусть - множество объектов, - множество номеров (имён, меток) кластеров. Задана функция расстояния между объектами . Имеется конечная обучающая выборка объектов . Требуется разбить выборку на непересекающиеся подмножества, называемые кластерами , так, чтобы каждый кластер состоял из объектов, близких по метрике , а объекты разных кластеров существенно отличались. При этом каждому объекту приписывается номер кластера .

Алгоритм кластеризации - это функция , которая любому объекту ставит в соответствие номер кластера . Множество в некоторых случаях известно заранее, однако чаще ставится задача определить оптимальное число кластеров, с точки зрения того или иного критерия качества кластеризации.

Литература

  1. Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д. Прикладная статистика: классификация и снижение размерности. - М.: Финансы и статистика, 1989.
  2. Журавлев Ю. И., Рязанов В. В., Сенько О. В. «Распознавание». Математические методы. Программная система. Практические применения. - М.: Фазис, 2006. ISBN 5-7036-0108-8.
  3. Загоруйко Н. Г. Прикладные методы анализа данных и знаний. - Новосибирск: ИМ СО РАН, 1999. ISBN 5-86134-060-9.
  4. Мандель И. Д. Кластерный анализ. - М.: Финансы и статистика, 1988. ISBN 5-279-00050-7.
  5. Шлезингер М., Главач В. Десять лекций по статистическому и структурному распознаванию. - Киев: Наукова думка, 2004. ISBN 966-00-0341-2.
  6. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. - Springer, 2001. ISBN 0-387-95284-5.
  7. Jain, Murty, Flynn Data clustering: a review . // ACM Comput. Surv. 31 (3) , 1999

Внешние ссылки

На русском языке

  • www.MachineLearning.ru - профессиональный вики-ресурс, посвященный машинному обучению и интеллектуальному анализу данных
  • С. Николенко. Слайды лекций по алгоритмам кластеризации

На английском языке

  • COMPACT - Comparative Package for Clustering Assessment . A free Matlab package, 2006.
  • P. Berkhin, Survey of Clustering Data Mining Techniques , Accrue Software, 2002.
  • Jain, Murty and Flynn: Data Clustering: A Review , ACM Comp. Surv., 1999.
  • for another presentation of hierarchical, k-means and fuzzy c-means see this introduction to clustering . Also has an explanation on mixture of Gaussians.
  • David Dowe, Mixture Modelling page - other clustering and mixture model links.
  • a tutorial on clustering
  • The on-line textbook: Information Theory, Inference, and Learning Algorithms , by David J.C. MacKay includes chapters on k-means clustering, soft k-means clustering, and derivations including the E-M algorithm and the variational view of the E-M algorithm.
  • "The Self-Organized Gene" , tutorial explaining clustering through competitive learning and self-organizing maps.
  • kernlab - R package for kernel based machine learning (includes spectral clustering implementation)
  • Tutorial - Tutorial with introduction of Clustering Algorithms (k-means, fuzzy-c-means, hierarchical, mixture of gaussians) + some interactive demos (java applets)
  • Data Mining Software - Data mining software frequently utilizes clustering techniques.
  • Java Competitve Learning Application A suite of Unsupervised Neural Networks for clustering. Written in Java. Complete with all source code.

Задачи кластеризации в Data Mining

Введение в кластерный анализ

Из всей обширной области применения кластерного анализа,например, задачи социально-экономического прогнозирования.

При анализе и прогнозировании социально-экономических явлений исследователь довольно часто сталкивается с многомерностью их описания. Этопроисходит при решении задачи сегментирования рынка, построении типологии стран по достаточно большому числу показателей, прогнозирования конъюнктуры рынка отдельных товаров, изучении и прогнозировании экономической депрессии и многих других проблем.

Методы многомерного анализа - наиболее действенный количественный инструмент исследования социально-экономических процессов, описываемых большимчислом характеристик. К ним относятся кластерный анализ, таксономия, распознавание образов, факторный анализ.

Кластерный анализ наиболее ярко отражает черты многомерного анализа в классификации, факторный анализ – в исследовании связи.

Иногда подход кластерного анализа называют в литературе численной таксономией, численной классификацией, распознаванием с самообучением и т.д.

Первое применение кластерный анализ нашел в социологии. Название кластерный анализ происходит от английского слова cluster – гроздь, скопление. Впервые в 1939 был определен предмет кластерного анализа и сделано его описание исследователем Трионом. Главное назначение кластерного анализа – разбиение множества исследуемых объектов и признаков на однородные в соответствующем понимании группы или кластеры. Это означает, что решается задача классификации данных и выявления соответствующей структуры в ней. Методы кластерного анализа можно применять в самых различных случаях, даже в тех случаях, когда речь идет о простой группировке, в которой все сводится к образованию групп по количественному сходству.

Большое достоинство кластерного анализа в том, что он позволяет производить разбиение объектов не по одному параметру, а по целому набору признаков. Кроме того, кластерный анализ в отличие от большинства математико-статистических методов не накладывает никаких ограничений на вид рассматриваемых объектов, и позволяет рассматривать множество исходных данных практически произвольной природы. Это имеет большое значение, например, для прогнозирования конъюнктуры, когда показатели имеют разнообразный вид, затрудняющий применение традиционных эконометрических подходов.

Кластерный анализ позволяет рассматривать достаточно большой объем информации и резко сокращать, сжимать большие массивы социально-экономической информации, делать ихкомпактными и наглядными.

Важное значение кластерный анализ имеет применительно к совокупностям временных рядов, характеризующих экономическое развитие (например, общехозяйственной и товарной конъюнктуры). Здесь можно выделять периоды, когда значения соответствующих показателей были достаточно близкими, а также определять группы временных рядов, динамика которых наиболее схожа.

Кластерный анализ можно использовать циклически. В этом случае исследование производится до тех пор, пока не будут достигнуты необходимые результаты. При этом каждый цикл здесь может давать информацию, которая способна сильно изменить направленность и подходы дальнейшего применения кластерного анализа. Этот процесс можно представить системой с обратной связью.

В задачахсоциально-экономического прогнозирования весьма перспективно сочетание кластерного анализас другими количественными методами (например, с регрессионным анализом).

Как и любой другой метод, кластерный анализ имеет определенные недостаткии ограничения : В частности, состави количество кластеров зависит отвыбираемых критериев разбиения. При сведении исходного массива данных к более компактному виду могут возникать определенные искажения, а также могут теряться индивидуальные черты отдельных объектов за счетзамены их характеристиками обобщенных значений параметров кластера. При проведении классификации объектов игнорируется очень часто возможность отсутствия в рассматриваемойсовокупности каких-либо значений кластеров.

В кластерном анализе считается, что:

а) выбранные характеристики допускают в принципе желательное разбиение на кластеры;

б) единицы измерения (масштаб) выбраны правильно.

Выбор масштаба играет большую роль. Как правило, данные нормализуют вычитанием среднего и делением на стандартное отклоненение, так что дисперсия оказывается равной единице.

1.Задача кластеризации

Задача кластеризации заключается в том, чтобы на основании данных, содержащихся во множестве Х , разбить множество объектов G на m (m – целое) кластеров (подмножеств) Q 1 , Q 2 , …, Q m , так, чтобы каждый объект G j принадлежал одному и только одному подмножеству разбиения и чтобы объекты, принадлежащие одному и тому же кластеру, были сходными, в то время, как объекты, принадлежащие разным кластерам были разнородными.

Например, пусть G включает n стран, любая из которых характеризуется ВНП на душу населения (F 1 ), числом М автомашин на 1 тысячу человек (F 2 ), душевым потреблением электроэнергии (F 3 ), душевым потреблением стали (F 4 ) и т.д. Тогда Х 1 (вектор измерений) представляет собой набор указанных характеристик для первой страны, Х 2 - для второй, Х 3 для третьей, и т.д. Задача заключается в том, чтобы разбить страны по уровню развития.

Решением задачи кластерного анализа являются разбиения, удовлетворяющие некоторому критерию оптимальности. Этот критерий может представлять собой некоторый функционал, выражающий уровни желательности различных разбиений и группировок, который называют целевой функцией. Например, в качестве целевой функции может быть взята внутригрупповая сумма квадратов отклонения:

где x j - представляет собой измерения j -го объекта.

Для решениязадачи кластерного анализа необходимо определить понятие сходства и разнородности.

Понятно то, что объекты i -ый и j -ый попадали бы в один кластер, когда расстояние (отдаленность) между точками Х i и Х j было бы достаточно маленьким и попадали бы в разные кластеры, когда это расстояние было бы достаточно большим. Таким образом, попадание в один или разные кластеры объектов определяется понятием расстояния между Х i и Х j из Ер , где Ер - р -мерное евклидово пространство. Неотрицательная функция d(Х i , Х j) называется функцией расстояния (метрикой), если:

а) d(Х i , Х j) ³ 0 , для всех Х i и Х j из Ер

б) d(Х i , Х j) = 0 , тогда и только тогда, когда Х i = Х j

в) d(Х i , Х j) = d(Х j , Х i )

г) d(Х i , Х j) £ d(Х i , Х k) + d(Х k , Х j), где Х j ; Х i и Х k - любые три вектора из Ер .

Значение d(Х i , Х j) для Х i и Х j называется расстоянием между Х i и Х j и эквивалентно расстоянию между G i и G j соответственно выбранным характеристикам (F 1 , F 2 , F 3 , ..., F р).

Наиболее часто употребляются следующие функции расстояний:

1. Евклидово расстояние d 2 (Х i , Х j) =

2. l 1 - нормаd 1 (Х i , Х j) =

3. Супремум - норма d ¥ i , Х j) = sup

k = 1, 2, ..., р

4. l p - норма d р (Х i , Х j) =

Евклидова метрика является наиболее популярной. Метрика l 1 наиболее легкая для вычислений. Супремум-норма легко считается и включает в себя процедуру упорядочения, а l p - норма охватывает функции расстояний 1, 2, 3,.

Пусть n измерений Х 1 , Х 2 ,..., Х n представлены в виде матрицы данных размером p ´ n :

Тогда расстояние между парами векторов d(Х i , Х j) могут быть представлены в виде симметричной матрицы расстояний:

Понятием, противоположным расстоянию, является понятие сходства между объектами G i . и G j . Неотрицательная вещественная функция S(Х i ; Х j) = S i j называется мерой сходства, если:

1) 0 £ S(Х i , Х j) < 1 для Х i ¹ Х j

2) S( Х i , Х i ) = 1

3) S( Х i , Х j ) = S(Х j , Х i )

Пары значений мер сходства можно объединить в матрицу сходства:

Величину S ij называют коэффициентом сходства.

2. Методы кластеризации

Сегодня существует достаточно много методов кластерного анализа. Остановимся на некоторых из них (ниже приводимые методы принято называть методами минимальной дисперсии).

Пусть Х - матрица наблюдений: Х = (Х 1 , Х 2 ,..., Х u) и квадрат евклидова расстояния между Х i и Х j определяется по формуле:

1) Метод полных связей.

Суть данного метода в том, что два объекта, принадлежащих одной и той же группе (кластеру), имеют коэффициент сходства, который меньше некоторого порогового значения S . В терминах евклидова расстояния d это означает, что расстояние между двумя точками (объектами) кластера не должно превышать некоторого порогового значения h . Таким образом, h определяет максимально допустимый диаметр подмножества, образующего кластер.

2) Метод максимального локального расстояния.

Каждый объект рассматривается как одноточечный кластер. Объекты группируются по следующему правилу: два кластера объединяются, если максимальное расстояние между точками одного кластера и точками другого минимально. Процедура состоит из n - 1 шагов и результатом являются разбиения, которые совпадают со всевозможными разбиениями в предыдущем методе для любых пороговых значений.

3) Метод Ворда .

В этом методе в качестве целевой функции применяют внутригрупповую сумму квадратов отклонений, которая есть ни что иное, как сумма квадратов расстояний между каждой точкой (объектом) и средней по кластеру, содержащему этот объект. На каждом шаге объединяются такие два кластера, которые приводят к минимальному увеличению целевой функции, т.е. внутригрупповой суммы квадратов. Этот метод направлен на объединение близко расположенных кластеров.

4) Центроидный метод.

Расстояние между двумя кластерами определяется как евклидово расстояние между центрами (средними) этих кластеров:

d 2 ij =(` X – ` Y) Т (` X – ` Y) Кластеризация идет поэтапно на каждом из n–1 шагов объединяют два кластера G и p , имеющие минимальное значение d 2 ij Если n 1 много больше n 2 , то центры объединения двух кластеров близки друг к другу и характеристикивторого кластера при объединении кластеров практически игнорируются. Иногда этот метод иногда называют еще методом взвешенных групп.

3. Алгоритм последовательной кластеризации

Рассмотрим Ι = (Ι 1 , Ι 2 , … Ι n ) как множество кластеров {Ι 1 } , {Ι 2 },…{Ι n } . Выберем два из них, например, Ι i и Ι j , которые в некотором смысле более близки друг к другу и объединим их в один кластер. Новое множество кластеров, состоящее уже из n -1 кластеров, будет:

{Ι 1 }, {Ι 2 }…, i , Ι j }, …, {Ι n } .

Повторяя процесс, получим последовательные множества кластеров, состоящие из (n -2), (n -3), (n –4) и т.д. кластеров. В конце процедуры можно получить кластер, состоящий из n объектов и совпадающий с первоначальным множеством Ι = (Ι 1 , Ι 2 , … Ι n ) .

В качестве меры расстояния возьмем квадрат евклидовой метрикиd i j 2 . и вычислим матрицу D = {d i j 2 }, где d i j 2 - квадрат расстояния между

Ι i и Ι j:

….

Ι n

d 12 2

d 13 2

….

d 1n 2

d 23 2

….

d 2n 2

….

d 3n 2

….

….

….

Ι n

Пусть расстояние между Ι i и Ι j будет минимальным:

d i j 2 = min {d i j 2 , i ¹ j}. Образуем с помощью Ι i и Ι j новый кластер

i , Ι j } . Построим новую ((n-1), (n-1)) матрицу расстояния

{ Ι i , Ι j }

….

Ι n

{ Ι i ; Ι j }

d i j 2 1

d i j 2 2

….

d i j 2 n

d 12 2

d 1 3

….

d 1 2 n

….

d 2 n

….

d 3n

(n -2) строки для последней матрицы взяты из предыдущей, а первая строка вычислена заново. Вычисления могут быть сведенык минимуму, если удастся выразить d i j 2 k ,k = 1, 2,…, n ; (k ¹ i ¹ j) через элементы первоначальной матрицы.

Исходно определено расстояние лишь между одноэлементными кластерами, но надо определять расстояния и между кластерами, содержащими более чем один элемент. Это можно сделать различными способами, и в зависимости от выбранного способа мы получают алгоритмы кластер анализа с различными свойствами. Можно, например, положить расстояние между кластером i + j и некоторым другим кластером k , равным среднему арифметическому из расстояний между кластерами i и k и кластерами j и k :

d i+j,k = ½ (d i k + d j k).

Но можно также определить d i+j,k как минимальное из этих двух расстояний:

d i+j,k = min (d i k + d j k).

Таким образом, описан первый шаг работы агломеративного иерархического алгоритма. Последующие шаги аналогичны.

Довольно широкий класс алгоритмов может быть получен, если для перерасчета расстояний использовать следующую общую формулу:

d i+j,k = A(w) min(d ik d jk) + B(w) max(d ik d jk), где

A(w) = , если d ik £ d jk

A(w) = , если d ik > d jk

B(w) = , если d i k £ d jk

B (w ) = , если d ik > d jk

где n i и n j - число элементов в кластерах i и j , а w – свободный параметр, выбор которого определяет конкретный алгоритм. Например, при w = 1 мы получаем, так называемый, алгоритм «средней связи», для которого формула перерасчета расстояний принимает вид:

d i+j,k =

В данном случае расстояние между двумя кластерами на каждом шаге работы алгоритма оказывается равным среднему арифметическому из расстояний между всеми такими парами элементов, что один элемент пары принадлежитк одному кластеру, другой - к другому.

Наглядный смысл параметра w становится понятным, если положить w ® ¥ . Формула пересчета расстояний принимает вид:

d i+j,k = min (d i ,k d jk)

Это будеттак называемый алгоритм «ближайшего соседа», позволяющий выделять кластеры сколь угодно сложной формы при условии, что различные части таких кластеров соединены цепочками близких друг к другу элементов. В данном случае расстояние между двумя кластерами на каждом шаге работы алгоритма оказывается равным расстоянию между двумя самыми близкими элементами, принадлежащими к этим двум кластерам.

Довольно часто предполагают, что первоначальные расстояния (различия) между группируемыми элементамизаданы. В некоторыхзадачах это действительно так. Однако, задаются только объекты и их характеристики и матрицу расстояний строят исходя из этих данных. В зависимости от того, вычисляются ли расстояния между объектами или между характеристиками объектов, используются разные способы.

В случае кластер анализа объектов наиболее часто мерой различия служит либо квадрат евклидова расстояния

(где x ih , x jh - значения h -го признака для i -го и j -го объектов, а m - число характеристик), либо само евклидово расстояние. Если признакам приписывается разный вес, то эти веса можно учесть при вычислении расстояния

Иногда в качестве меры различияиспользуется расстояние, вычисляемое по формуле:

которые называют: "хэмминговым", "манхэттенским" или "сити-блок" расстоянием.

Естественноймерой сходства характеристик объектов во многих задачах является коэффициент корреляции между ними

где m i ,m j , d i , d j - соответственно средние и среднеквадратичные отклонения для характеристик i и j . Мерой различия между характеристиками может служить величина1 - r . В некоторых задачахзнак коэффициента корреляции несуществен и зависит лишь отвыбора единицы измерения. В этом случае в качестве меры различиямежду характеристиками используется ô 1 - r i j ô

4. Число кластеров

Очень важным вопросом является проблема выбора необходимого числа кластеров. Иногда можно m число кластеров выбирать априорно. Однако в общем случае это число определяется в процессе разбиениямножества на кластеры.

Проводились исследования Фортьером и Соломоном, и было установлено, что число кластеров должно быть принято для достижения вероятности a того, что найдено наилучшее разбиение. Таким образом, оптимальное число разбиений является функцией заданной доли b наилучших или в некотором смысле допустимых разбиений во множествевсех возможных. Общее рассеяние будет тем больше, чем выше доля b допустимых разбиений. Фортьер и Соломон разработали таблицу, по которой можно найти число необходимых разбиений. S(a , b ) в зависимости от a и b (где a - вероятность того, что найдено наилучшее разбиение, b - доля наилучших разбиений в общем числе разбиений) Причем в качестве меры разнородности используется не мера рассеяния, а мера принадлежности, введенная Хользенгером и Харманом. Таблица значений S( a , b ) приводится ниже.

Таблица значений S( a , b )

b \ a

0.20

0.10

0.05

0.01

0.001

0.0001

0.20

8

11

14

21

31

42

0.10

16

22

29

44

66

88

0.05

32

45

59

90

135

180

0.01

161

230

299

459

689

918

0.001

1626

2326

3026

4652

6977

9303

0.0001

17475

25000

32526

55000

75000

100000

Довольно часто критерием объединения (числа кластеров) становится изменение соответствующей функции. Например, суммы квадратов отклонений:

Процессу группировки должно соответствовать здесь последовательное минимальное возрастание значения критерия E . Наличие резкого скачка в значении E можно интерпретировать как характеристику числа кластеров, объективно существующих в исследуемой совокупности.

Итак, второй способ определения наилучшего числа кластеров сводится к выявлению скачков, определяемых фазовым переходом от сильно связанного к слабосвязанному состоянию объектов.

5. Дендограммы

Наиболее известный метод представления матрицы расстояний или сходства основан на идее дендограммы или диаграммы дерева. Дендограмму можно определить как графическое изображение результатов процессапоследовательной кластеризации, которая осуществляется в терминах матрицы расстояний. С помощью дендограммы можно графически или геометрически изобразить процедуру кластеризации при условии, что эта процедура оперирует толькос элементами матрицы расстояний или сходства.

Существуетмного способов построения дендограмм. В дендограмме объектырасполагаются вертикально слева, результатыкластеризации – справа. Значения расстояний или сходства, отвечающие строению новых кластеров, изображаются по горизонтальной прямой поверх дендограмм.

Рис1

На рисунке 1 показан один из примеровдендограммы. Рис 1 соответствует случаю шести объектов ( n =6) и k характеристик (признаков). Объекты А и С наиболее близки и поэтому объединяются в один кластер на уровне близости, равном 0,9. Объекты D и Е объединяютсяпри уровне 0,8. Теперь имеем 4 кластера:

(А, С), ( F ), ( D , E ), ( B ) .

Далее образуются кластеры (А, С, F ) и ( E , D , B ) , соответствующие уровню близости, равному 0,7 и 0,6. Окончательно все объекты группируются в один кластер при уровне 0,5.

Вид дендограммы зависит от выбора меры сходстваили расстояния между объектоми кластером и метода кластеризации. Наиболее важным моментом является выбор меры сходства или меры расстояния между объектом и кластером.

Число алгоритмов кластерного анализа слишком велико. Все их можноподразделить на иерархическиеи неиерархические.

Иерархические алгоритмы связаны с построением дендограмм и делятся на:

а) агломеративные, характеризуемые последовательным объединениемисходных элементов и соответствующим уменьшением числа кластеров;

б) дивизимные (делимые), в которых число кластеров возрастает, начиная с одного, в результате чего образуется последовательностьрасщепляющих групп.

Алгоритмы кластерного анализа имеют сегодня хорошую программную реализацию, которая позволяет решить задачи самой большой размерности.

6. Данные

Кластерный анализ можно применять к интервальным данным, частотам, бинарным данным. Важно, чтобы переменные изменялись в сравнимых шкалах.

Неоднородность единиц измерения и вытекающая отсюда невозможность обоснованного выражения значений различных показателей в одном масштабе приводит к тому, что величина расстояний между точками, отражающими положение объектов в пространстве их свойств, оказывается зависящей от произвольно избираемого масштаба. Чтобы устранить неоднородность измерения исходных данных, все их значения предварительно нормируются, т.е. выражаются через отношение этих значенийк некоторой величине, отражающей определенные свойства данного показателя. Нормирование исходных данных для кластерного анализа иногда проводится посредством деления исходных величин на среднеквадратичное отклонение соответствующих показателей. Другой способ сводиться к вычислению, так называемого, стандартизованного вклада. Его еще называют Z -вкладом.

Z -вклад показывает, сколько стандартных отклонений отделяет данное наблюдение от среднего значения:

Где x i – значение данного наблюдения, – среднее, S – стандартное отклонение.

Среднее для Z -вкладов является нулевым и стандартное отклонение равно 1.

Стандартизация позволяет сравнивать наблюдения из различных распределений. Если распределение переменной является нормальным (или близким к нормальному), и средняя и дисперсия известны или оцениваются по большим выборным, то Z -вклад для наблюдения обеспечивает более специфическую информацию о его расположении.

Заметим, что методы нормирования означают признание всех признаков равноценными с точки зрения выяснения сходства рассматриваемых объектов. Уже отмечалось, что применительно к экономике признание равноценности различных показателей кажется оправданным отнюдь не всегда. Было бы, желательным наряду с нормированием придать каждому из показателей вес, отражающий его значимость в ходе установления сходств и различий объектов.

В этой ситуации приходится прибегать к способу определения весов отдельных показателей – опросу экспертов. Например, при решении задачи о классификации стран по уровню экономического развития использовались результаты опроса 40 ведущих московских специалистов по проблемам развитых стран по десятибалльной шкале:

обобщенные показатели социально-экономического развития – 9 баллов;

показатели отраслевого распределения занятого населения – 7 баллов;

показатели распространенности наемного труда – 6 баллов;

показатели, характеризующие человеческий элемент производительных сил – 6 баллов;

показатели развития материальных производительных сил – 8 баллов;

показатель государственных расходов – 4балла;

«военно-экономические» показатели – 3 балла;

социально-демографические показатели – 4 балла.

Оценки экспертов отличались сравнительно высокой устойчивостью.

Экспертные оценки дают известное основание для определения важности индикаторов, входящих в ту или иную группу показателей. Умножение нормированных значений показателей на коэффициент, соответствующий среднему баллу оценки, позволяет рассчитывать расстояния между точками, отражающими положение стран в многомерном пространстве, с учетом неодинакового веса их признаков.

Довольно часто при решенииподобных задач используют не один, а два расчета: первый, в котором все признаки считаются равнозначными, второй, где им придаются различные веса в соответствии со средними значениями экспертных оценок.

7. Применение кластерного анализа

Рассмотрим некоторые приложения кластерного анализа.

1. Деление стран на группы по уровню развития.

Изучались 65 стран по 31 показателю (национальный доход на душу населения, доля населения занятого в промышленности в %, накопления на душу населения, доля населения, занятого в сельском хозяйстве в %, средняя продолжительность жизни, число автомашин на 1 тыс. жителей, численность вооруженных сил на 1 млн. жителей, доля ВВП промышленности в %, доля ВВП сельского хозяйства в %, и т.д.)

Каждая из стран выступает в данном рассмотрении как объект, характеризуемый определенными значениями 31 показателя. Соответственно они могут быть представлены в качестве точек в 31-мерном пространстве. Такое пространство обычно называется пространством свойств изучаемых объектов. Сравнениерасстояния между этими точками будет отражать степень близости рассматриваемых стран, их сходство друг с другом. Социально-экономический смысл подобного понимания сходства означает, что страны считаются тем более похожими, чем меньше различия между одноименными показателями, с помощью которых они описываются.

Первый шаг подобного анализа заключается в выявлении пары народных хозяйств, учтенных в матрице сходства, расстояние между которыми является наименьшим. Это, очевидно, будут наиболее сходные, похожие экономики. В последующем рассмотрении обе эти страны считаются единой группой, единым кластером. Соответственно исходная матрица преобразуется так, что ее элементами становятся расстояния между всеми возможными парами уже не 65, а 64 объектами – 63 экономики и вновь преобразованного кластера – условного объединения двух наиболее похожих стран. Из исходной матрицы сходства выбрасываются строки и столбцы, соответствующие расстояниям от пары стран, вошедших в объедение, до всех остальных, но зато добавляются строка и столбец, содержащие расстояние между кластером, полученным при объединении и прочими странами.

Расстояние между вновь полученным кластером и странами полагается равным среднему из расстояний между последними и двумя странами, которые составляют новый кластер. Иными словами, объединенная группа стран рассматривается как целоес характеристиками, примерно равными средним из характеристик входящих в него стран.

Второй шаг анализа заключается в рассмотрении преобразованной таким путем матрицы с 64 строками и столбцами. Снова выявляется пара экономик, расстояние между которыми имеет наименьшее значение, и они, так же как в первом случае, сводятся воедино. При этом наименьшее расстояниеможет оказаться как между парой стран, таки между какой-либо странойи объединением стран, полученным на предыдущем этапе.

Дальнейшие процедуры аналогичны описанным выше: на каждом этапе матрица преобразуется так, что из нее исключаются два столбца и две строки, содержащие расстояние до объектов (пар стран или объединений – кластеров), сведенных воедино на предыдущей стадии; исключенные строки и столбцы заменяются столбцоми строкой, содержащими расстояния от новых объединений до остальных объектов; далее в измененной матрице выявляется пара наиболее близких объектов. Анализ продолжается до полного исчерпания матрицы (т. е. до тех пор, пока все страны не окажутся сведенными в одно целое). Обобщенные результаты анализа матрицы можно представить в виде дерева сходства (дендограммы), подобного описанному выше, с той лишь разницей, что дерево сходства, отражающее относительную близость всех рассматриваемых нами 65 стран, много сложнее схемы, в которой фигурирует только пять народных хозяйств. Это дерево в соответствиис числом сопоставляемых объектов включает 65 уровней. Первый (нижний) уровень содержит точки, соответствующие каждых стране в отдельности. Соединение двух этих точек на втором уровне показывает пару стран, наиболее близких по общему типу народных хозяйств. На третьем уровне отмечается следующее по сходству парное соотношение стран (как уже упоминалось, в таком соотношении может находиться либо новая пара стран, либо новая странаи уже выявленная пара сходных стран). И так далее до последнего уровня, на котором все изучаемые страны выступают как единая совокупность.

В результате применения кластерного анализа были получены следующие пять групп стран:

· афро-азиатская группа;

· латино-азиатская группа;

· латино-среднеземнаморская группа;

· группа развитых капиталистических стран (без США)

· США

Введение новых индикаторов сверх используемого здесь 31 показателя или замена их другими, естественно, приводят к изменению результатов классификации стран.

2. Деление стран по критерию близости культуры.

Как известно маркетинг должен учитывать культуру стран (обычаи, традиции, и т.д.).

Посредством кластеризации были получены следующие группы стран:

· арабские;

· ближневосточные;

· скандинавские;

· германоязычные;

· англоязычные;

· романские европейские;

· латиноамериканские;

· дальневосточные.

3. Разработка прогноза конъюнктуры рынка цинка.

Кластерный анализ играет важную рольна этапе редукции экономико-математической модели товарной конъюнктуры, способствуя облегчению и упрощению вычислительных процедур, обеспечению большей компактности получаемых результатов при одновременном сохранении необходимой точности. Применение кластерного анализа дает возможность разбить всю исходную совокупность показателей конъюнктуры на группы (кластеры) по соответствующим критериям, облегчая тем самым выбор наиболее репрезентативных показателей.

Кластерный анализ широко используется для моделирования рыночной конъюнктуры. Практически основное большинство задач прогнозирования опирается наиспользование кластерного анализа.

Например, задача разработки прогноза конъюнктуры рынка цинка.

Первоначально было отобрано 30 основных показателей мирового рынка цинка:

Х 1 - время

Показатели производства:

Х 2 - в мире

Х 4 - Европе

Х 5 - Канаде

Х 6 - Японии

Х 7 - Австралии

Показатели потребления:

Х 8 - в мире

Х 10 - Европе

Х 11 - Канаде

Х 12 - Японии

Х 13 - Австралии

Запасы цинка у производителей:

Х 14 - в мире

Х 16 - Европе

Х 17 - других странах

Запасы цинка у потребителей:

Х 18 - в США

Х 19 - в Англии

Х 10 - в Японии

Импорт цинковых руд и концентратов (тыс. тонн)

Х 21 - в США

Х 22 - в Японии

Х 23 - в ФРГ

Экспорт цинковых руд и концентратов (тыс. тонн)

Х 24 - из Канады

Х 25 - из Австралии

Импорт цинка (тыс. тонн)

Х 26 - в США

Х 27 - в Англию

Х 28 - в ФРГ

Экспорт цинка (тыс. Тонн)

Х 29 -из Канады

Х 30 - из Австралии

Для определения конкретныхзависимостей был использован аппарат корреляционно-регрессионногоанализа. Анализ связей производился на основе матрицы парных коэффициентов корреляции. Здесь принималась гипотеза о нормальном распределении анализируемых показателей конъюнктуры.Ясно, что r ij являются не единственно возможным показателем связи используемых показателей. Необходимость использования кластерного анализа связано в этой задачес тем, что число показателей влияющих нацену цинка очень велико. Возникает необходимость их сократить по целому ряду следующих причин:

а) отсутствие полных статистических данных по всем переменным;

б) резкое усложнение вычислительных процедур при введении в модель большого числа переменных;

в) оптимальное использование методов регрессионного анализа требует превышения числа наблюдаемых значений над числом переменных не менее, чем в 6-8 раз;

г) стремление к использованию в модели статистически независимых переменных и пр.

Проводить такой анализ непосредственно на сравнительно громоздкой матрице коэффициентов корреляции весьма затруднительно. С помощью кластерного анализа всю совокупность конъюнктурных переменных можно разбить на группы таким образом, чтобы элементы каждого кластера сильно коррелировали между собой, а представители разных групп характеризовались слабой коррелированностью.

Для решения этой задачи был применен один из агломеративных иерархических алгоритмов кластерного анализа. На каждом шаге число кластеров уменьшается на один за счет оптимального, в определенном смысле, объединения двух групп. Критерием объединения является изменение соответствующей функции. В качестве функции такой были использованы значения сумм квадратов отклонений вычисляемые по следующим формулам:

(j = 1, 2, …, m ),

где j - номер кластера, n - число элементов в кластере.

r ij -коэффициент парной корреляции.

Таким образом, процессу группировки должно соответствовать последовательное минимальное возрастание значения критерия E .

На первом этапе первоначальный массив данных представляется в виде множества, состоящего из кластеров, включающих в себя по одному элементу. Процесс группировки начинается с объединения такой пары кластеров, которое приводит к минимальному возрастанию суммы квадратов отклонений. Это требует оценки значений суммы квадратов отклонений для каждогоиз возможных объединений кластеров. На следующем этапе рассматриваются значения сумм квадратов отклонений уже для кластеров и т.д. Этот процесс будет остановлен на некотором шаге. Для этого нужно следить за величиной суммы квадратов отклонений. Рассматривая последовательность возрастающих величин, можно уловить скачок (один или несколько) в ее динамике, который можно интерпретировать как характеристику числа групп «объективно» существующих в исследуемойсовокупности. В приведенном примере скачки имели место при числе кластеров равном 7 и 5. Далее снижать число групп не следует, т.к. это приводит к снижению качества модели. После получения кластеров происходит выбор переменных наиболее важных в экономическом смысле и наиболее тесно связанных с выбранным критерием конъюнктуры - в данном случае с котировками Лондонской биржи металлов на цинк. Этот подход позволяет сохранить значительную часть информации, содержащейся в первоначальном наборе исходных показателей конъюнктуры.