Uploaded by common.user19191

Kümeleme (K-Means) Algoritması

Burhan ERGEN
Fırat Üniversitesi
Bilgisayar Mühendisliği
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
1
K Ortalamalar (K-means)
 Veri içerisinden rasgele
seçilen K adet noktaya
küme merkezi gözüyle
bakılır. Tüm veri
noktaları bu küme
merkezlerine
uzaklıklarına göre
gruplanır. Her
gruplamadan sonra
küme merkezleri tekrar
hesaplanır.
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
2
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
3
K Ortalamalar (K-means)
 Her gruplama ve küme merkezinin tekrar hesabı
işlemi bir iterasyon içerisinde gerçekleştirilir.
Algoritmanın kaç iterasyon yapacağı çoğu kez J
maliyet fonksiyonu ile tespit edilir.
K 


J


i 1  k


xk  ci 


 Maliyet fonksiyonu tüm küme merkezlerinin en uygun
konumda olduğu durumda minimum değerde
olmalıdır.
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
4
K-means Algoritması
Rasgele K adet küme merkezi belirle.
2. Her veri noktasını en yakın küme merkezine göre bir
gruba yerleştir.
3. Her gruba atanan tüm veri noktalarının ortalamasını
alarak küme merkezini güncelle.
4. Grup üyelerinde değişim olmayana kadar 2. adıma
git.
Bazen değişim, sıfıra yakın bir değerde uzun zaman
sürebilir. O zaman maliyet fonksiyonu belirli bir
değere düşünce veya toplam iterasyon sayısı belirli
bir değere ulaşınca algoritma durdurulur.
1.
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
5
K-means Dezavantajları
 Rasgele noktalar ile başladığından elde edilen her
sonuç kararlı değildir.
 Küme sayısı birçok kümeleme algoritmasında olduğu
gibi dışarıdan istenilir.
 Konkav (konvex olmayan) küme şekillerinde başarılı
değildir.
 Keskin kümeleme yapar. Ama uygulamada gruplar
genelde içiçedir (overlapping).
 Aykırı değerlere (outlier) karşı hassastır.
24.04.2026
BMÜ-531 Örüntü Tanıma Sistemleri
6

Bölümleme Kümeleme Yaklaşımı

yinelemeli olarak bölümlendirerek tipik bir kümeleme analizi yaklaşımı

Birkaç boş olmayan küme üretmek için bir veri kümesinin bir bölümünü
oluşturun (genellikle küme sayısı önceden verilir)

prensip olarak, her kümedeki uzaklığın karesi toplamının en aza indirilmesiyle
elde edilen bölmeler
K
2
E   i 1 xCi || x  mi ||

K verildiğinde , seçilen bölümleme kriterini optimize etmek için K
kümelerinin bir bölümünü bulun

global optimal: tüm bölümleri kapsamlı bir şekilde numaralandırın

buluşsal yöntem: K-ortalamalar algoritması
K-means algoritması (MacQueen'67): her küme, kümenin merkezi tarafından temsil
edilir ve algoritma, kümelerin kararlı merkezlerine yakınsar.
7
K-Ortalama Algoritması
 K küme numarası verildiğinde , K-ortalamalar
algoritması üç adımda gerçekleştirilir:
Başlatma: başlangıç noktalarını
ayarlayın
• Her nesneyi en yakın başlangıç
noktasına sahip kümeye atayın
• Geçerli bölümün kümelerinin
ağırlık merkezleri olarak
çekirdek noktalarını hesaplayın
(merkez merkezi, kümenin
merkezidir, yani ortalama
noktasıdır )
• Adım 1'e geri dönün), yeni
atama kalmadığında durun
8
Örnek
 Sorun
Diyelim ki 4 tür ilacımız var ve her birinin iki özelliği var (pH ve
ağırlık indeksi). Amacımız bu nesneleri K=2 ilaç grubuna
D
İlaç
Ağırlık
pHindeksi
A
1
1
B
2
1
C
4
3
D
5
4
9
C
A
B
Örnek
 Adım 1: Bölümlendirme için başlangıç başlangıç
noktalarını kullanın
c1  A , c 2  B
Öklid mesafesi
d( D , c1 )  ( 5  1) 2  ( 4  1)2  5
d( D , c 2 )  ( 5  2 ) 2  ( 4  1) 2  4.24
Her nesneyi kümeye atayın
en yakın tohum noktasıyla
10
Örnek
 Adım 2: Geçerli bölümün yeni merkezlerini hesaplayın
Her birinin üyelerini tanımak
küme, şimdi yeniyi hesaplıyoruz
her grubun ağırlık merkezi
bu yeni üyelikler.
c1  (1, 1)
 2  4  5 1 3  4 
c2  
,

3
3


 (11 / 3 , 8 / 3)
 ( 3.67 , 2.67 )
11
Örnek
 3. Adım: İlk iki adımı tekrarlayın
Tüm nesnelerin yeni
merkezlere olan mesafesini
hesaplayın
Üyeliği nesnelere atama
12
Örnek
 Adım 3: İlk iki adımı tekrarlayın
Her birinin üyelerini tanımak
küme, şimdi yeniyi hesaplıyoruz
her grubun ağırlık merkezi
bu yeni üyelikler.
1
 1 2 11
c1  
,

(
1
, 1)

2 
2
 2
1
1
45 34
c2  
,
  (4 , 3 )
2 
2
2
 2
13
Örnek
 Adım 3: İlk iki adımı tekrarlayın
Tüm nesnelerin yeni merkezlere
olan mesafesini hesaplayın
Yeni atama olmadığı için
durduruldu
14
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin
k=5)
15
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin K=5)
2. K kümesinin Merkezi
konumlarını rastgele tahmin
edin
16
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin K=5)
2. K kümesinin Merkezi
konumlarını rastgele tahmin
edin
3. Her veri noktası hangi
Merkeze en yakın olduğunu
bulur. (Böylece her Merkez bir
dizi veri noktasına “sahiptir”)
17
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin K=5)
2. K küme merkezi konumunu
rastgele tahmin edin
3. Her veri noktası hangi
merkeze en yakın olduğunu
bulur. (Böylece her Merkez bir
dizi veri noktasına “sahiptir”)
4. Her merkez sahip olduğu
noktaların ağırlık merkezini
bulur
18
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin K=5
)
2. K küme merkezi konumunu
rastgele tahmin edin
3. Her veri noktası hangi
merkeze en yakın olduğunu
bulur. (Böylece her merkez bir
dizi veri noktasına “sahiptir”)
4. Her merkez sahip olduğu
noktaların ağırlık merkezini
bulur
5. …ve oraya atlıyor
19
K-Demo
1. Kullanıcı istediği sayıda
kümeyi ayarlar. (örneğin K=5
)
2. K küme merkezi konumunu
rastgele tahmin edin
3. Her veri noktası hangi
merkeze en yakın olduğunu
bulur. (Böylece her merkez bir
dizi veri noktasına “sahiptir”)
4. Her merkez sahip olduğu
noktaların ağırlık merkezini
bulur
5. …ve oraya atlıyor
6. …Sonlandırılıncaya kadar
tekrarlayın!
20