Поделиться через


Алгоритм кластеризации (Microsoft)

Алгоритм кластеризации (Microsoft) представляет собой алгоритм сегментации, предоставляемый службами Microsoft SQL Server 2005 Analysis Services (SSAS). Алгоритм использует итерационные методы для группировки вариантов в наборы данных в кластерах, содержащих подобные характеристики. Такое группирование полезно использовать для просмотра данных, выявления в них аномалий и создания прогнозов.

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

Шаблон кластера тенденций местного сообщения

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

Пример

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

Принцип работы алгоритма

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

Точечная диаграмма вариантов набора данных

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

Алгоритм кластеризации (Microsoft) предлагает два метода для вычисления, насколько хорошо точки соответствуют кластерам: Максимизация ожиданий (EM) и K-среднее. Для кластеризации EM алгоритм использует вероятностный метод для определения вероятности, что точки данных существуют в кластере. Для метода K-среднее алгоритм использует меру расстояния для назначения точки данных ближайшему кластеру.

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

Дополнительные сведения о работе алгоритма кластеризации (Microsoft) см. в разделе Масштабирование кластеризации EM (максимизация ожидания) под большие базы данных.

Использование алгоритма

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

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

Типы содержимого входных столбцов

Непрерывные, циклические, дискретные, дискретизированные, ключевые, табличные и упорядоченные

Типы содержимого прогнозируемых столбцов

Непрерывные, циклические, дискретные, дискретизированные, табличные и упорядоченные

Флаги моделирования

MODEL_EXISTENCE_ONLY и NOT NULL

Все алгоритмы Microsoft поддерживают общий набор функций. Алгоритм кластеризации (Microsoft) также поддерживает дополнительные функции, представленные в следующей таблице.

Cluster

PredictCaseLikelihood

ClusterProbability

PredictNodeId

IsDescendant

PredictProbability

IsInNode

PredictStdev

PredictAdjustedProbability

PredictSupport

PredictAssociation

PredictVariance

PredictHistogram

 

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

Алгоритм кластеризации (Microsoft) поддерживает использование языка разметки прогнозирующих моделей (PMML) для создания моделей интеллектуального анализа данных.

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

Параметр Описание

CLUSTERING_METHOD

Указывает метод кластеризации, используемый алгоритмом. Доступны следующие методы кластеризации: Масштабируемая EM (1), немасштабируемая EM (2), масштабируемые K-средние (3) или немасштабируемые K-средние (4).

Значение по умолчанию равно 1.

CLUSTER_COUNT

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

Значение по умолчанию равно 10.

CLUSTER_SEED

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

Значение по умолчанию равно 0.

MINIMUM_SUPPORT

Указывает минимальное число вариантов в каждом кластере.

Значение по умолчанию равно 1.

MODELLING_CARDINALITY

Указывает число образцов моделей, создаваемое в процессе кластеризации.

Значение по умолчанию равно 10.

STOPPING_TOLERANCE

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

Значение по умолчанию равно 10.

SAMPLE_SIZE

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

Значение по умолчанию равно 50 000.

MAXIMUM_INPUT_ATTRIBUTES

Указывает максимальное количество входных атрибутов, которые алгоритм может обработать перед вызовом выбора функции. Значение 0 указывает, что количество атрибутов не ограничено.

Значение по умолчанию равно 255.

MAXIMUM_STATES

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

Значение по умолчанию равно 100.

См. также

Основные понятия

Алгоритмы интеллектуального анализа данных
Мастер интеллектуального анализа данных
Выбор компонентов в интеллектуальном анализе данных
Использование средств интеллектуального анализа данных
Просмотр модели интеллектуального анализа данных при помощи средства просмотра кластеров (Microsoft)

Другие ресурсы

CREATE MINING MODEL (расширения интеллектуального анализа данных)

Справка и поддержка

Получение помощи по SQL Server 2005