8 Data Mining Clustering

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 29

Data Mining

Клъстеризация
Съдържание
 Клъстери
 Сравнение на задачите за класификация
и клъстеризация
 Критерии за сходство
 Математически характеристики на
клъстера
 Подходи към задачата за клъстеризация
 Методи на клъстерния анализ
 Йерархични методи на клъстерния анализ
 Нейерархични (итеративни) методи на
клъстерния анализ
(.wav)
Clustering
Въведение
Задачата за клъстеризация е подобна на задачата за
класификация, на която е логично продължение.
Разликата между двете задачи е, че класовете на
изучаваната съвкупност от данни в задачата за
клъстеризация не са предварително известни. Синоними
на задачата за клъстеризция са “автоматична
класификация”, “обучение без учител”, и “таксономия”.
Клъстеризацията е предназначена за разбиване на
съвкупността от обекти на еднородни групи (клъстери
или класове). Ако данните от клъстеризацията бъдат
представени като точки в пространството на признаците,
то клъстеризацията може да се представи чрез
определянето на концентрация на точки.
Целта на клъстеризацията е търсене на съществуващи
структури.
Често клъстеризацията се прилага като предварителна
стъпка в Data Mining-процеса.
Клъстери
Клъстерът може да се характеризира като група
обекти, имащи общи свойства. Два основни
признака характеризират клъстерите:
 Вътрешна еднородност;
 Външна изолираност.
Клъстеризацията първоначално е прилагана в
биологичните науки, антропология и
психология, я в последствие и в решаването
на различни икономически задачи с оглед
организирането и представянето на данните
в нагледни структури и подпомагането на
задачите за вземане на решение.
Сравнение на задачите за
класификация и клъстеризация
Характеристика Класификация Клъстеризация

Контролируемост на Контролирано обучение Неконтролирано обучение


обучението
Стратегия Обучение с учител Обучение без учител

Наличие на етикети на Обучаващата съвкупност Етикетите на класовете в


класовете се съпровожда от етикет, обучаващата съвкупност
който указва класа, към са неизвестни.
който се отнася
наблюдението.
Основание за Новите данни се класират Съвкупността от данни се
класификация въз основа на обработва с цел
обучаващата съвкупност. установяване на класове
или клъстери.
Сравнение на задачите за
класификация и клъстеризация (2)

Класификация: класовете са
определени първоначално.

Клъстеризация: класовете не
са известни предварително.
Извършва се търсене на
групи от еднородни обекти.
Непресекаеми и пресекаеми
клъстери
Клъстерите могат да бъдат непресекаеми (non-
overlapping, exclusive) или пресекаеми (overlapping).

Непресекаеми клъстери Пресекаеми клъстери

Размерът и формата на клъстерите в значителна степен


зависят от избрания метод за клъстеризация.
Спорен обект – който може едновременно да бъде
отнесен към няколко клъстера.
Пример – клъстеризация по два
признака
№ Признак Признак
X Y
1 27 19
2 11 46
3 25 15
4 36 27
5 35 25
6 10 43
7 11 44
8 36 24
9 26 14
10 26 14
11 9 45
12 33 23
Диаграма на разсейването.
13 27 16
14 10 47
Критерии за сходство
Критерий за сходство и различие на клъстерите се използват
различни мерки за подобие, наречени метрики или функции на
разстоянието:
 Евклидово разстояние (най-популярна мярка):

m
d Eucl (x, y )   (x  y )
i 1
i i
2

където x=(x1,…,xm) и y=(y1,…,ym) са два обекта, прдставени чрез


техните m атрибута.
 Манхатънско разстояние:

m
d Manh (x, y )   | xi  yi |
i 1
 Разстояние по Чебишев и др;
 Процент на несъгласие – за категорийни данни.
Подготовка на данните за
клъстеризация
За да бъдат приложени критериите за сходство и ефективно да се
реализират алгоритмите за клъстеризация, стойностите на
атрибутите трябва дабъдат приведени в съпоставими скали и
сравними дименсии. За целта даните трябва да бъдат
нормализирани или стандартизирани.
 Стандартизация от вида:

X  X min
X* 
X max  X min
 Нормализация от вида:

X X
X* 
 (X )
където X* е трансформираната величина, Xmin, Xmax и са нейните
X
минимална, максимална и средна стойности, а σ(X) е
средноквадратичното и отклонение.
Математически характеристики на
клъстера
Клъстерът има следните математически
характеристики:
 Център – обикновено това е
средногеометричното място на точките в
пространството на променливите.
 Радиус –максималното разстояние на
точките от центъра на клъстера
 Средно квадратично отклонение – мярка
за разсейване около центъра
 Размер – брой на обектите в клъстера.
Характеристики на клъстерите
Радиус

Център

Вариация между
клъстерите
Вариация в
клъстерите
Подходи към задачата за
клъстеризация
 Алгоритми, основаващи се на разделянето на данните
(Partitioning algorithms), в т.ч.итеративни:
 Разделяне на обектите на k клъстери;
 Итеративно преразпределение на обектите за подобряване на
клъстеризацията.
 Йерархични алгоритми (Hierarchy algorithms):
 Агломерация: всеки обект първоначално е клъстер, клъстерите се
съединяват един с друг като формират голям клъстер и т.н.
 Методи, основаващи се на концентрация на обекти (Density-
based methods):
 Основаващи се на възможноста за съединяване на обектите;
 Игнориращи шума, намиращи клъстери с произволна форма.
 Грид-методи (Grid-based methods):
 Квантоване на обектите в грид-структури.
 Моделни методи (Model-based):
 Използване на модели за намиране на клъстери, които най-добре
съответстват на данните.
Методи на клъстерния анализ
Терминът “клъстерен анализ” е въведен от Трион
(Tryon) през 1939 г. и включва следните групи
задачи:
 Разработване на топологии и класификации.
 Изследване на полезни концептуални схеми за
групиране на обекти.
 Представяне на хипотези въз основа на изследване
на данните.
 Проверка на хипотези или резултати от
изследване, за да се определи действително ли
типовете (групите), отделени по един или друг
начин присъстват в наличните данни.
На практика при използването на клъстерния анализ
се едновременно се решават няколко задачи.
Особености на клъстерния анализ
 За разлика от задачата за класификация, клъстерния
анализ не изисква априорни предположения за
съвкупността от данните, не налага ограничения върху
представянето на изследваните обекти, позволява да се
анализират показатели от различни типове от данни
(интервални данни, честоти, двоични данни и т.н.).
 Важно е да се вземе под внимание, че променливите
трябва да се представят в сравними скали.
 Клъстерният анализ позволява да се съкрати
размерността на данните и те да се представят в по-
нагледен вид.
 Клъстерният анализ може да се прилага към съвкупности
от динамични редове (time series). Могат да бъдат
определени периоди на сходство на някои от
показателите и да се определят групи от динамични
редове със сходна динамика.
Методи на клъстерния анализ
Две основни групи методи:
 Йерархични – чрез рекурсивно
обединяване или разделяне на
клъстерите се създава дървовидна
структура (изобразена като дендограма)
 Нейерархични
Всяка от групите включва множество
подходи и алгоритми.
Различните методи на клъстерния анализ
могат да дадат различни решения за едни
и същи данни, което се приема за
нормално
Йерархични методи на
клъстерния анализ
Същността на йерархичните методи на клъстерния
анализ е в последователно обединяване на по-
малките клъстери в по-големи или обратно –
разделяне на по-големите клъстери на по-малки:
 Йерархични агломеративни методи
(Agglomerative Nesting, AGNES) – състоят се в
последователно обединение на изходните обекти и
намаляване на броя на клъстерите.
 Йерархични делящи методи (DIvisive ANAlysis,
DIANA) – противоположен подход на
аглмеративния. Първоначално всички обекти
принадлежат на един клъстер, който в
последователни стъпки се разделя на по-малки
клъстери.
Дендограма на йерархичните
методи
Ст.0 Ст.1 Ст.2 Ст.3 Ст.4

а Агломеративни методи
ab
b
abcde
c
cde
d
de
e
Делящи методи

Ст.4 Ст.3 Ст.2 Ст.1 Ст.0


Определяне на разстоянията
между клъстерите
Разстоянията между обектите в йерархичните методи за
определят сравнително просто и недвусмислено.
Определянето на разстоянията между клъстерите, обаче, не
е така еднозначно. Най-разпространените три критерия за
близост на клъстерите са:
 Единична връзка (single link) – наричан понякога “подход
на най-близкия съсед”. Основава се на най-малкото
разстояние между които и да са два записа от сравняваните
клъстери (сходство на най-приличащите си обекти от двата
клъстера).
 Пълна връзка (complete link) – наричан “подход на най-
далечните съседи”. Основава се на най-голямото разстояние
между обектите от сравняваните клъстери (сходство в най-
силно различаващите се клъстери).
 Средна връзка (average link) – критерият за близост е
средното разстояние между обектите в двата сравнявани
клъстера. Подходът намалява зависимостта на критерия за
близост от екстремалните обекти в сравняваните клъстери.
Числен пример за йерархична
клъстеризация

Схема на обединяване на клъстерите и


дендограма за по-горния пример.
Определяне на броя на
клъстерите
В показания пример параметърът Coefficients
съответства на разстоянието между два клъстера,
определено като евклидово, с използване на
стандартизирани стойности на променливите. Този
показател може да бъде използван за определяне
на целесъобразния брой клъстери. Стойността на
показателя в процеса на обединение нараства
постепенно. Критерий за спиране на процеса на
обединение на клъстерите е преходът от силно
свързано към слабо свързано състояние на
обектите. Този преход се характеризира със
скокообразно нарастване на показателя Coefficients
(в случая – от 1.217 на 7.516).
Нейерархични (итеративни)
методи на клъстерния анализ
При голям брой на наблюденията йерархичните методи на
клъстерния анализ са неприложими. В такива случаи се
използват нейерархични методи, основаващи се на
разделяне, които представляват итеративни методи за
раздробяване на изходната съвкупност. В процеса на
разделяне новите клъстери се формират до
изпълнението на правилото за спиране.
Съществуват два подхода за изпълнение на нейерархична
клъстеризация:
 Границите на клъстерите се определят по “най-плътните”
участъци в многомерното пространство на изходните
данни, т.е. клъстерите се опреелят по “точките на
сгъстяване”;
 Вторият подход се изразява в минимизиране на мярката
за различие на обектите.
Алгоритъм на k-средните (k-
means)
Това е най-популярният от нейерархичните алгоритми на
клъстерния анализ. Известен е и под името “бърз
клъстерен анализ”. За разлика от методите, които не
изискват предварителни предположения по отношение
на броя на клъстерите, то за да се приложи този
алгоритъм е необходимо да има хипотеза за най-
вероятния брой клъстери.
Алгоритъмът на k-средните построява k клъстера,
разположени на възможно най-голямо разстояние един
от друг. Основният тип задачи, които решава
алгоритъмът на k-средните е наличие на преположения
(хипотези) по отношение на броя на клъстерите, при
което последните трябва да се различават максимално.
Изборът на числото k може да се основава на резултат от
предишни изследвания, теоретични съображения или
интуиция.
Описание на алгоритъма
1. Първоначално разпределение на обектите по
клъстери.
 Избират се k на брой наблюдения, които в първата
стъпка се приемат за “центрове” на клъстери. На
всеки клъстер съответства един център.
 Изборът на началните центроиди може да стане по
един от следните начини:
 Избор на k наблюдения за максимизиране на
началното разстояние;
 Случаен избор на k наблюдения;
 Избор на първите k наблюдения.
 В резултат на избора на всеки обект е назначен
определен клъстер.
Описание на алгоритъма (2)
2. Итеративен процес.
 Изчисляват се центровете на получените
клъстери като покоординатни средни на
обектите от клъстерите. Обектите отново
се преразпределят.
 Процесът на преизчисляване на
центровете и преразпределяне на
обектите продължава до настъпването на
едно от условията:
 Клъстерните центрове се стабилизират – няма
промяна в състава на клъстерите;
 Достигнат е максимален брой итерации.
Алгоритъм на k-средните -
пример
Произволен избор на
k обекта като изходни
центрове на клъстери (k=2)

2 3

1
Алгоритъм на k-средните -
пример
Стъпки на алгоритъма, показани на
схемата:
1. Назначение на най-подходящ
(сходен) клъстер за всеки обект.
2. Преизчисляване на клъстерните
центрове (покоординатни средни).
3. Преразпределяне на обектите.
Предимства и недостатъци
 Предимства на алгоритъма:
 Простота в използването;
 Бързодействие;
 Разбираемост и прозрачност.
 Недостатъци:
 Алгоритмът е твърде чувствителен към
значителните отклонения, които могат да
изкривят покоординатните средни;
 Възможно е алгоритъмът да работи бавно за
големи съвкупности от данни (проблемът се
решава с ограничена извадка).

You might also like