Hiyerarşik Kümeleme ile K-means Farkı: Ağaç mı, Sabit Sayıda Merkez mi?
Karşılaştırma

Hiyerarşik Kümeleme ile K-means Farkı: Ağaç mı, Sabit Sayıda Merkez mi?

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 6 dk okuma

K-means veriyi önceden söylediğiniz sayıda merkeze böler ve büyük veride hızlıdır; hiyerarşik kümeleme ise küme sayısını sormadan iç içe bir ağaç kurar ve kararı dendrogramı okuyarak vermenizi sağlar. Seçim, veri büyüklüğüne, küme sayısını bilip bilmediğinize ve yeni kayıtları atamanız gerekip gerekmediğine bağlıdır.

Bir bakışta

  1. K-means küme sayısını sizden ister, hiyerarşik kümeleme sonradan seçtirir. Hiyerarşik yöntemde ağaç bir kez kurulur; küme sayısı ya da bir uzaklık eşiği, ağacın nereden kesileceğine karar verirken belirlenir.
  2. Büyük veride k-means, küçük ve orta veride hiyerarşik yöntem rahattır. Bağlantı kısıtı olmayan birleştirici kümeleme her adımda olası tüm birleşmeleri değerlendirdiği için hesaplama yükü hızla artar.
  3. Yeni kayıt atanacaksa k-means daha uygundur. K-means öğrendiği merkezlerle yeni bir gözlemi en yakın kümeye koyabilir; birleştirici kümeleme yalnız eldeki veriyi gruplar.
  4. Küme biçimi de seçimi etkiler. K-means dışbükey ve her yöne benzer yayılan kümeleri varsayar; uzun ya da düzensiz biçimli kümelerde bağlantı türü seçilebilen hiyerarşik yöntem daha esnektir.
  5. İkisi birlikte kullanılabilir. Bir örneklem üzerinde dendrogramla küme sayısını kestirmek, ardından k-means'i tüm veriye uygulamak yaygın ve pratik bir iş bölümüdür.

Ortak zemin: etiket olmadan benzerleri gruplamak

Hiyerarşik kümeleme ve k-means aynı soruya yanıt arar: elimde hiçbir etiket yokken hangi gözlemler birbirine benziyor? İkisi de denetimsiz öğrenme yöntemidir, ikisi de gözlemler arasındaki uzaklığa dayanır ve ikisi de değişkenlerin ölçeğine duyarlıdır. Bu yüzden iki yöntemde de veri hazırlığı aynıdır: sayısal değişkenler ölçeklenir, aykırı değerler incelenir, çok boyutlu veride gerekirse önce boyut indirgenir. scikit-learn belgeleri, çok yüksek boyutlu uzayda Öklid uzaklıklarının şiştiğini ve k-means öncesinde temel bileşenler analizinin bu sorunu hafifletip hesabı hızlandırabileceğini belirtir.

Fark, grupların nasıl kurulduğundadır. K-means veriyi düz bir bölümlemeye ayırır: her gözlem tam olarak bir kümeye aittir ve kümeler arasında bir üst-alt ilişkisi yoktur. Hiyerarşik kümeleme ise iç içe kümelerden oluşan bir ağaç üretir; hangi düzeyde kesildiğine göre aynı veriden az sayıda büyük ya da çok sayıda küçük küme elde edilir.

İki yöntem nasıl çalışır?

K-means önce belirlenen sayıda merkez seçer, her gözlemi en yakın merkeze atar, sonra her merkezi kendi kümesinin ortalamasına taşır ve bu iki adımı merkezler yerinden oynamayana kadar tekrarlar. Amaç, küme içi kareler toplamını, yani eylemsizliği küçültmektir. Algoritma her zaman bir sonuca yakınsar, ancak bu sonuç yerel bir en iyi olabilir ve başlangıç merkezlerine çok bağlıdır. Bu yüzden hesap farklı başlangıçlarla birkaç kez yapılır ve k-means++ başlatması kullanılır.

Birleştirici hiyerarşik kümeleme ters yönden başlar: her gözlem kendi kümesidir. Her adımda birbirine en yakın iki küme birleştirilir ve tüm gözlemler tek bir kümede toplanana kadar devam edilir. "En yakın" sözcüğünün anlamını bağlantı ölçütü belirler: • Ward bağlantısı, birleşmeden sonra küme içi kareler toplamındaki artışı en küçük tutar; amacı k-means'e benzer ve en düzenli küme büyüklüklerini verir. • Tam bağlantı, iki kümenin en uzak gözlemleri arasındaki uzaklığı ölçü alır. • Ortalama bağlantı, iki kümenin tüm gözlem çiftleri arasındaki uzaklıkların ortalamasını kullanır; Öklid dışı uzaklıklarla çalışmak gerektiğinde iyi bir seçenektir. • Tekli bağlantı, en yakın iki gözleme bakar; zincirleme kümeler bulabilir ama gürültüye en dayanıksız seçenektir.

Sonuç bir dendrogramdır. Ağacın dikey ekseni birleşme uzaklığını gösterir; ağacı belirli bir yükseklikten yatay kestiğinizde altta kalan dallar kümeleriniz olur. SciPy'de bu iş linkage ile ağacı kurup fcluster ile düz kümelere çevirmek, dendrogram ile de çizmek biçiminde yapılır.

Ölçüt ölçüt fark

  • Ölçüt: Küme sayısı. Hiyerarşik: önceden gerekmez; küme sayısı ya da bir uzaklık eşiği ağaç kesilirken verilir. / K-means: başta belirtilmesi zorunludur.
  • Ölçüt: Çıktı. Hiyerarşik: iç içe kümelerden oluşan ağaç ve dendrogram. / K-means: düz bölümleme ve küme merkezleri.
  • Ölçüt: Ölçeklenme. Hiyerarşik: bağlantı kısıtı eklenmezse her adımda tüm olası birleşmeleri değerlendirdiği için hesaplama açısından pahalıdır; komşuluk matrisiyle büyük veriye ölçeklenebilir. / K-means: çok sayıda gözleme iyi ölçeklenir; MiniBatchKMeans daha da hızlıdır, sonuç kalitesi biraz düşebilir.
  • Ölçüt: Tekrarlanabilirlik. Hiyerarşik: aynı veri ve ayarlarla aynı ağacı verir. / K-means: başlangıç merkezlerine bağlıdır, farklı başlangıçlarla farklı sonuç çıkabilir.
  • Ölçüt: Küme biçimi. Hiyerarşik: bağlantı ölçütüne göre değişir; tekli bağlantı uzun, zincirleme kümeleri yakalayabilir. / K-means: dışbükey ve her yöne benzer yayılan kümeleri varsayar, uzun ya da düzensiz biçimlerde zayıflar.
  • Ölçüt: Uzaklık türü. Hiyerarşik: tam, ortalama ve tekli bağlantı Öklid, Manhattan, kosinüs ya da önceden hesaplanmış herhangi bir uzaklıkla çalışır; Ward yalnız Öklid uzaklığıyla. / K-means: merkez ortalaması üzerinden çalıştığı için Öklid uzaklığına dayanır.
  • Ölçüt: Yeni gözlem. Hiyerarşik: birleştirici kümeleme yalnız eldeki veriyi gruplar, yeni bir kayıt için modeli yeniden kurmak gerekir. / K-means: öğrenilen merkezlerle yeni kaydı doğrudan en yakın kümeye atar.

scikit-learn'ün yöntem tablosu bu ayrımı kullanım alanıyla özetler: k-means genel amaçlı, küme büyüklükleri dengeli, çok fazla küme olmayan düz geometriler için; hiyerarşik yöntem çok sayıda küme, bağlantı kısıtları ve Öklid dışı uzaklıklar için önerilir.

Veri büyüklüğü ve küme sayısına göre seçim

Pratikte karar iki soruya indirgenir: veri ne kadar büyük ve kaç küme aradığınızı biliyor musunuz?

Veri büyükse ve küme sayısı iş tarafından belli ise, örneğin pazarlama ekibi müşterileri yönetebileceği sayıda segmente ayırmak istiyorsa, k-means doğal seçimdir. Veri büyük ama küme sayısı belirsizse k-means yine taşıyıcı yöntem olur; farklı küme sayıları denenip siluet ve dirsek gibi ölçütlerle karşılaştırılır ya da küme sayısı bir örneklem üzerinde dendrogramla kestirilir.

Veri küçük ya da orta büyüklükteyse ve küme sayısı belliyse iki yöntem de iş görür; sonuçların tekrarlanabilir olması ya da küme biçimleri belirleyici olur. Veri küçükse ve küme sayısı belirsizse hiyerarşik kümeleme en çok bilgiyi verir: dendrogram, verinin kaç doğal düzeyde gruplandığını gözle okumanızı ve kümelerin birbirine nasıl bağlandığını görmenizi sağlar. Tür sınıflandırması, belge ya da gen ifadesi gruplaması gibi iç içe yapının kendisinin anlamlı olduğu işlerde de hiyerarşik yöntem tercih edilir.

Şekil 1

Veri büyüklüğü ve küme sayısı bilgisi seçimi büyük ölçüde belirler

Küme sayısı belliKüme sayısı belirsiz
Hiyerarşik kümelemeDendrogramı okuyarak kaç doğal grup olduğuna karar verin.
K-means, örneklemle desteklenmişKüme sayısını örneklem dendrogramından ya da siluet ve dirsek ölçütleriyle kestirin.
İkisi de uygunTekrarlanabilirlik ve küme biçimi belirleyici olur.
K-meansBelirli sayıda segmente hızlı ve ölçeklenebilir bölümleme.
Küçük ya da orta veriBüyük veri
Kaynak: Sayfa içeriği; ölçeklenme bilgisi scikit-learn kümeleme belgelerinden.Mindset Institute

Birlikte kullanım: dendrogramdan k-means'e

İki yöntem rakip olmak zorunda değildir. Büyük bir müşteri tablosunda küme sayısını bilmeyen bir analist önce rastgele bir örneklem alır ve Ward bağlantısıyla hiyerarşik kümeleme yapar. Dendrogramda birleşme uzaklığının belirgin biçimde sıçradığı yer, verinin kendiliğinden ayrıştığı düzeye işaret eder; bu düzeydeki küme sayısı aday olarak not edilir. Ardından k-means bu küme sayısıyla tüm veriye uygulanır ve k-means++ başlatmasıyla birkaç kez çalıştırılır. Son adımda kümeler iş anlamı açısından okunur: her kümenin ortalama profili çıkarılır, ilgili ekiple birlikte bir ad verilir.

Bu iş bölümünde hiyerarşik yöntem keşif aracı, k-means ise üretim aracıdır. Ward bağlantısının k-means ile aynı amaç ölçüsünü küçültmesi, iki aşamanın birbirine tutarlı sonuç vermesini kolaylaştırır.

Şekil 2

Örneklemde keşfet, tüm veride k-means ile üret

  1. Örneklem al ve ölçekleTüm veriyi temsil eden rastgele bir alt küme.
  2. Ward ile ağaç kurÖrneklemde birleştirici kümeleme ve dendrogram.
  3. Ağacı okuBirleşme uzaklığının sıçradığı düzeyden aday küme sayısı.
  4. Tüm veride k-meansAday sayıyla, k-means++ ve birkaç başlangıçla.
  5. Kümeleri yorumlaProfil çıkar, iş anlamını ekiple doğrula.
Kaynak: sayfa içeriğiMindset Institute

Sık yapılan hatalar

  • Ölçeklemeyi atlamak: büyük birimli bir değişken, örneğin yıllık harcama, uzaklık hesabını tek başına belirler ve iki yöntem de yalnız o değişkene göre gruplar.
  • K-means'i tek başlatmayla çalıştırmak: kötü bir yerel çözüme takılmış sonuç, gerçek bir yapı gibi raporlanır.
  • Bağlantı ölçütünü varsayılanda bırakmak: tekli bağlantı gürültülü veride tek bir dev küme ve birkaç küçük artık küme üretebilir; birleştirici kümelemenin büyük kümeyi büyüten eğilimi en az Ward'da görülür.
  • Dendrogramı kesin yanıt sanmak: ağacın nereden kesileceği bir yorumdur; aday düzeyleri iş anlamıyla birlikte değerlendirmek gerekir.
  • Hiyerarşik kümelemeyi yeni kayıtları sınıflandırmak için kullanmaya çalışmak: yeni müşteri geldikçe modeli yeniden kurmak gerekir; bu ihtiyaçta k-means merkezleri ya da kümeler üzerinde eğitilmiş bir sınıflandırıcı daha uygundur.

Mindset programlarında nerede çalışılır?

Veri Bilimi Sertifika Programı, kümeleme yöntemlerini denetimsiz öğrenme başlığı altında Python araçlarıyla birlikte ele alır; segmentasyon ya da keşifsel analiz yapacak veri analistleri ve veri bilimine geçiş yapanlar için yöntem seçimini uygulamaya bağlar. Model kurmayı uygulamalı projelerle derinleştirmek isteyenler için Makine Öğrenmesi (Uygulamalı) Programı, denetimsiz öğrenme ve boyut indirgemeyi ayrı bir modülde işler.

İlgili Mindset programı

Veri Bilimi Sertifika Programı

Sık sorulanlar

Sık sorulan sorular

Bölücü (divisive) hiyerarşik kümeleme nedir?

Hiyerarşik kümelemenin iki yönü vardır. Birleştirici yaklaşım her gözlemi ayrı küme olarak başlatıp birleştirir; bölücü yaklaşım ise tüm veriyi tek küme kabul edip adım adım ikiye ayırır. Kütüphanelerde en sık karşılaşılan ve scikit-learn'deki AgglomerativeClustering sınıfının uyguladığı yöntem birleştirici olanıdır. Bölücü yaklaşım, büyük ayrımlar daha önemli olduğunda düşünülebilir.

Hiyerarşik kümeleme ile k-means aynı sonucu verir mi?

Verebilir ama garanti değildir. İyi ayrışmış, yuvarlak ve benzer büyüklükte kümelerde Ward bağlantısıyla yapılan hiyerarşik kümeleme ile k-means çoğu zaman benzer gruplar bulur, çünkü ikisi de küme içi kareler toplamını küçültmeye çalışır. Kümeler uzun, iç içe ya da çok farklı büyüklükteyse sonuçlar ayrışır; bu durumda hangi sonucun iş açısından anlamlı olduğu ayrıca değerlendirilmelidir.

Kategorik veriyle hangisi kullanılır?

K-means ortalama aldığı için kategorik değişkenlerle doğal biçimde çalışmaz. Hiyerarşik kümeleme ise tam, ortalama ya da tekli bağlantıyla önceden hesaplanmış herhangi bir uzaklık matrisini kabul ettiği için kategorik ya da karışık veriye uygun bir uzaklık tanımlayıp kullanılabilir. Ward bağlantısı yalnız Öklid uzaklığıyla çalıştığından bu durumda ortalama bağlantı daha uygun bir seçimdir.

Dendrogram nereden kesilmeli?

Yaygın yaklaşım, ağaçta birleşme uzaklığının belirgin biçimde sıçradığı yere bakmaktır; bu sıçrama, birbirinden gerçekten uzak grupların zorla birleştirildiği noktayı gösterir. Kesim, ya istenen küme sayısı ya da bir uzaklık eşiği verilerek yapılır. Aday düzeyler birden fazlaysa her birinin kümeleri iş açısından yorumlanıp ekiple birlikte en kullanışlı olanı seçilir.

Hiyerarşik Kümeleme mi K-means mi? Seçim Rehberi