Top Banner
ve Algoritmalar ve Algoritmalar Kümeleme Analizi: Temel Kavramlar
41

Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Aug 22, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

ve Algoritmalarve Algoritmalar

Kümeleme Analizi: Temel Kavramlar

Page 2: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Kümeleme Analizi Nedir?

� Her biri bir dizi öznitelik ile, veri noktalarının bir kümesi venoktalar arasındaki benzerliği ölçen bir benzerlik ölçümüverilmiş olsun, kümelemenin amacı; aşağıdaki özelliklerisağlayan kümeleri bulmaktır.

Kümeler arası

uzaklıklar

maksimize edilir

Küme içi

uzaklıklar maksimize ediliruzaklıklar

minimize edilir

Page 3: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Kümeleme Analizi Ne Değildir?

� Denetimli sınıflandırma– Sınıf etiketi bilgisine sahip

� Basit bölümleme – Soyadına göre farklı kayıt gruplarının alfabetik olarak

bölünmesibölünmesi

� Bir sorgunun sonuçları– Bir şarta göre gruplamaların elde edilmesi

Page 4: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Kümeleme tipleri

� Bölümlemeli Kümeleme� Bölümlemeli Kümeleme– Veri nesnelerinin, birbirini kapsamayan alt kümelere

ayrılmasıdır. Her bir veri nesnesi altkümelerden sadece birindeyer alır.

� Hiyerarşik Kümeleme– Bir hiyerarşik ağaç gibi iç içe kümelerin dizisidir.

Page 5: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Bölümlemeli Kümeleme

Orijinal noktalar Bir bölümlemeli kümeleme

Page 6: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme

p4

p1 p3

p2

p4p1 p2 p3

Geleneksel Hiyerarşik Kümeleme Geleneksel Dendrogram

p4

p1p3

p2

p4p1 p2 p3

Geleneksel Hiyerarşik Kümeleme

Geleneksel olmayan Hiyerarşik Kümeleme

Geleneksel olmayan Dendrogram

Geleneksel Dendrogram

Page 7: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Kümelerin Tipleri

� İyi dağıtılmış kümeler (Well-separated clusters)

� Merkez tabanlı kümeler(Center-based clusters)

� Bitişik Kümeler (Contiguous clusters)

� Yoğunluk tabanlı kümeler (Density-based clusters)

Page 8: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

� İyi dağıtılmış kümeler: – Her bir nokta; kendi kümesindeki diğer noktalara daha yakın,

başka kümeden noktalara ise daha uzaktır. Böylesi kümeler iyidağıtılmış kümelerdir.

3 iyi dağıtılmış küme

İyi dağıtılmış kümeler

Page 9: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

� Merkez tabanlı– Küme içindeki bir nokta, kendi küme merkezine diğer küme

merkezlerine oranla daha yakın (veya daha benzer) ise buküme merkez tabanlı bir kümedir.

– Bir kümenin merkezi sıklıkla, ya kümedeki bütün noktaların birortalaması olan centroid ile yada kümeyi sunmak için en uygunnokta olan medoid ile sunulur.nokta olan medoid ile sunulur.

4 center-based clusters

Merkez tabanlı

Page 10: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

� Yoğunluk tabanlı– Daha düşük yoğunluklu bölgelerden ayrılan daha yüksek

yoğunluklu noktaların bir kümesidir.

– Kümeler; düzensiz, birbirine karışmış veya gürültülü olduğunda kullanılır.

6 density-based clusters

Yoğunluk tabanlı

Page 11: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Kümeleme Algoritmaları

� K-means ve onun çeşitleri

� Hiyerarşik kümeleme

� Yoğunluk tabanlı kümeleme � Yoğunluk tabanlı kümeleme

Page 12: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

K-means Kümeleme

� Bölümlemeli kümeleme yaklaşımıdır

� Her bir küme bir centroid ile uyumludur (merkez nokta)

� Her bir nokta kendisine en yakın centroid ile uyumlu kümeye atanır

� Kümelerin sayısı, K, belirlenmelidir

� Temel algoritma çok basittir � Temel algoritma çok basittir

Page 13: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

K-means Kümeleme – Detaylar

� Başlangıç merkez noktaları sıklıkla rastgele seçilir.– Kümeler bir çalıştırmadan diğerine değişebilir.

� Centroid tipik olarak kümedeki noktaların bir ortalamasıdır.

� ‘Yakınlık’ Euclidean uzaklığı, cosine benzerliği, correlation, v.s. ile hesaplanabilir.

� K-means yukarıdaki benzerlik ölçümlerini bir noktada bir araya getirecektir.araya getirecektir.

� Hesaplamalar centroid sabit kalana kadar devam eder.

Page 14: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Alttaki veri setini k=2 şeklinde iki ayrı guruba ayırmaya çalıştığımızı varsayalım.

ÖRNEK

Page 15: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Adım 1- İki farklı guruba ayırmak istediğimiz için. C1 ve C2 adında rastgele iki sınıf merkezi belirleriz.Adım 2- Her bir kaydın(noktanın) bu noktalara uzunluğunu hesaplayarak C1’nolu merkeze yakın ise “1”, C2 nolu merkeze yakın ise altta görüldüğü gibi “2” şeklinde etiketleriz.

Page 16: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Adım 3- Daha sonra • mavi noktaların ağırlık merkezi bulunur ve bu nokta yeni merkez olur. • Kırmızı noktaların ağırlık merkezi bulunur ve bu nokta yeni merkez kabul

edilir.bu işlemler yeniden yapılır ve üyeler bu yeni merkezlere göre yeniden kümelere ayrılır. Bu merkez güncelleme işlemi alttaki gibi resmedilebilir.

Page 17: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 2

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 3

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 4

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 6

K-means Örnek

Page 18: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

K-means algoritmasının avantajları-dezavantajları

Gerçeklemesi kolay

Karmaşıklığı diğer kümeleme yöntemlerine göre az

K-Means algoritması bazı durumlarda iyi sonuç vermeyebilir Veri grupları farklı boyutlarda ise

Veri gruplarının yoğunlukları farklı ise

Veri gruplarının şekli küresel değilse

Veri içinde aykırılıklar varsa

Page 19: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Original Points K-means (3 Clusters)

Sınırlılıklar - 1

Page 20: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Original Points K-means (2 Clusters)

Sınırlılıklar - 2

Page 21: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme

Hiyerarşik ağaç şeklinde organize edilmiş iç içe

kümeler üretir.

Dendrogram olarak görselleştirilebilir.

– Birleşme veya ayrılma sıralarını kaydeden ağaç

benzeri diyagrama denir.

1 3 2 5 4 60

0.05

0.1

0.15

0.2

1

2

3

4

5

6

1

23 4

5

Page 22: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümelemenin Güçlü Yanları

Küme sayısının belirlenmesine gerek yoktur

– Uygun bir seviyeden dendrogramı keserek istenilen sayıda küme bulunabilir

Anlamlı taksonomilere karşılık gelebilir

– Biyolojik bilimlerdekiler örnek verilebilir (örnek, hayvanlar alemi, filogeni rekonstrüksiyon, …)

Page 23: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme

Hiyerarşik kümelemenin iki ana çeşidi vardır

– Aglomeratif (Agglomerative):

Herbir nokta küme kabul edilerek başlanır

Herbir adımda, en sonda tek küme (veya k küme) kalacak şekilde en

yakın küme çiflerini birleştir

– Bölücü (Divisive):

Tek küme ile başla

Herbir adımda, herbir kümede tek nokta kalana kadar (veya k küme

kalana kadar) kümeyi böl.

Geleneksel hiyerarşik algoritmalar benzerlik veya uzaklık

matrisi kullanırlar.

– Her adımda bir küme birleştir veya böl

Page 24: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Aglomeratif Kümeleme Algoritması

En pobüler hiyerarşik kümeleme tekniğidir.

Temel algoritma basittir

1. Yakınlık matrisini hesapla

2. Herbir noktayı bir küme olarak alcluster

3. Tekrar

4. En yakın iki kümeyi birleştir

5. Yakınlık matrisini güncelle

6. tek küme kalana kadar

İki kümenin yakınlığını hesaplamak önemli işlemdir.

– Kümeler arasındaki mesafeyi tanımlamada kullanılan farklı yaklaşımlar algoritmaları birbirlerinden ayırır

Page 25: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Başlangıç Durumu

Herbir noktanın kendi kümesi ile ve yakınlık

matrisi ile başla

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

. Yakınlık Matrisi

...p1 p2 p3 p4 p9 p10 p11 p12

Page 26: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Ara Durum

Birkaç birleştirme adımından sonra, bazı kümeler oluşur

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Yakınlık Matrisi

...p1 p2 p3 p4 p9 p10 p11 p12

Page 27: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Ara Durum

İki en yakın kümeyi (C2 ve C5) birleştirmek ve yakınlık

matrisini güncellemek istiyoruz.

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Yakınlık Matrisi

...p1 p2 p3 p4 p9 p10 p11 p12

Page 28: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Birleştirmeden Sonra

Soru “Yakınlık matrisinin nasıl güncelleneceğidir?”

C1

C4

C2 U C5

C3

? ? ? ?

?

?

?

C2

U

C5C1

C1

C3

C4

C2 U C5

C3 C4

Yakınlık Matrisi

...p1 p2 p3 p4 p9 p10 p11 p12

Page 29: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Küme-arası Mesafe Nasıl Tanımlanır

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.

Benzerlik?

MİN

MAX

Grup Ortalama

Ağırlık Merkezleri Arasındaki Mesafe

Yakınlık Matrisi

Page 30: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Küme-arası Benzerlik Nasıl Tanımlanır

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Yakınlık Matrisi

MİN

MAX

Grup Ortalama

Ağırlık Merkezleri Arasındaki Mesafe

Page 31: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Küme-arası Benzerlik Nasıl Tanımlanır

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Yakınlık Matrisi

MİN

MAX

Grup Ortalama

Ağırlık Merkezleri Arasındaki Mesafe

Page 32: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Küme-arası Benzerlik Nasıl Tanımlanır

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Yakınlık Matrisi

MİN

MAX

Grup Ortalama

Ağırlık Merkezleri Arasındaki Mesafe

Page 33: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Küme-arası Benzerlik Nasıl Tanımlanır

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Yakınlık Matrisi

MIN

MAX

Grup Ortalama

Ağırlık Merkezleri Arasındaki Mesafe

Page 34: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme: MİN

İçiçe kümeler Dendrogram

1

2

3

4

5

6

1

2

3

4

5

3 6 2 5 4 10

0.05

0.1

0.15

0.2

Page 35: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme: MAX

İçiçe Kümeler Dendrogram

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

1

2

3

4

5

6

1

2 5

3

4

Page 36: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşik Kümeleme: Grup Ortalaması

İçiçe Kümeler Dendrogram

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

1

2

3

4

5

6

1

2

5

3

4

Page 37: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

Hiyerarşık Kümeleme: Problemler ve Eksiklikler

İki kümenin birleştirilmesine karar verildikten

sonra geri al yapılamaz.

Aşağıdakilerin biri veya birkaçı için farklı

durumlarda problem oluşabilir:

– Gürültü ve aykırılıklara duyarlıdır.

– Büyük kümeleri bölebilir

Page 38: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

DBSCAN

DBSCAN yoğunluk-tabanlı algoritmadır.– Yoğunluk = Verilen bir yarıçap (Eps) içerisinde olan nokta

sayısıdır

– Eğer bir noktanın Eps yarıçapında verilen minimum nokta sayısından (MinPts) daha fazla nokta varsa o noktaya merkez nokta denir.

Bu noktalar kümenin iç bölgelerinde bulunan noktalardır.

– Eğer bir noktanın Eps yarıçapında verilen minimum nokta sayısından (MinPts) daha az nokta varsa ve o nokta bir merkez noktanın komşuluğunda ise noktaya sınır nokta denir.

– Ne merkez nokta ne de sınır nokta olan noktaya gürültü nokta denir.

Page 39: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

DBSCAN

merkez

sınır

gürültü

Eps = 1cm

MinPts = 5

Page 40: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

DBSCAN: Merkez, Sınır ve Gürültü Noktaları

Orjinal Noktalar Nokta tipleri: merkez,

sınır ve gürültü

Eps = 10, MinPts = 4

Page 41: Kümeleme Analizi: Temel Kavramlar ve Algoritmalar · 2016. 6. 19. · Kümeleme Analizi Nedir? Her biri bir dizi öznitelik ile, ... Temel algoritma çok basittir . K-means Kümeleme

DBSCAN iyi çalıştığı zaman

Orjinal Noktalar Kümeler

•Gürültüye dirençlü

• Farklı şekil ve boyutlardaki kümeleri bulabilir.