Data Science

Soft Clustering – Yumuşak Kümelenme Nedir ?

 

Kümelenme veri madenciliğinde neredeyse her alanda, gerçek yaşam içinde ki problemlerde kullanılan yaklaşımlardan birisidir.  Bu nedenle kümelenme yöntemlerine duyulan ilgide artmış ve yeni yöntemler geliştirilmeye başlanmıştır. Ben de bu yazımda sizlere hard kümelenmenin yanı sıra soft kümelenme mantığı hakkında bilgiler vermeye çalışacağım.

softcluster

Yumuşak kümelemede geleneksel kümeleme tekniklerinde veri kümesi içerisindeki her bir noktayı bir kümeye dahil etme veya gürültü olarak nitelendirme mantığı kullanılmaktadır.  Bu oldukça zor bir aşamadır ve karışık üyelik yoktur. Bir kümenin dış kenarına yakın bir nokta(border) aynı zamanda diğer bir kümeye de yakın olabilir ama kümeleme mantığında veriyi gürültü olarak tanımlama varsa o elaman iki kümeyede dahil olma şansını kaybedip gürültü olarak atanabilir (outlier).

outliercluster

Bu soruna çözüm olarak ta yumuşak kümeleme mantığı ortaya çıkmıştır.  Bu yaklaşımda noktalara küme etiketleri atanmaz, bunun yerine bir olasılık vektörü atanır. Vektörün uzunluğu bulunan kümelerin sayısına eşittir. Vektörün i. girişindeki olasılık değeri, bu noktanın i. kümenin bir üyesi olması olasılığıdır. Bu da, noktaların potansiyel olarak kümelerin bir karışımı olmasını sağlar. Bir veri bilimcisi, vektöre bakarak, bir noktanın bir kümede bulunma olasılığının ne kadar güçlü olduğunu ve hangi kümelerle ilişkili olduğunu ayırt edebilir.

Aşağıda soft clustering mantığını daha iyi anlayabilmek için bir örnek yapacağım.

HDBSCAN Algoritması için Yumuşak Kümelenme Örneği

  • Yumuşak kümeleme, hdbscan modelinin yeni bir özelliğidir.
  • Rakamlardan oluşan bir veri setimizi sciket-learn üzerinden ele alalım, bu veri setini 2 boyutlu uzaya aktararak t-SNE ile görselleştirelim.


softc1

  • Yumuşak kümeleme işlemine devam edebilmek için, HDBSCAN’ de prediction_data = True seçeneğini kullanmalıyız.
  • Şimdi hdbscan’ı import ediyoruz ve 64 boyutlu uzayda kümelenme yapıyoruz.

softc2

Yukarıdaki şekilde görüldüğü gibi bir takım kümeler bulundu, ancak veriler 64 boyutta oldukça gürültülü, bu yüzden gürültü olarak sınıflandırılan bir dizi nokta var. Bu gürültü noktalarından bazıları hakkında daha fazla bilgi almak için yumuşak bir kümeleme oluşturabiliriz.

  • Orijinal veri kümesindeki tüm noktalar için yumuşak bir kümeleme oluşturmak için, bir küme nesnesini alan all_points_membership_vectors () metodunu kullanırız.
  • Bir dizi yeni görünmeyen nokta için yumuşak küme üyelik değerleri almak istiyorsak, membership_vector() kullanıyoruz.
  • Dönüş değerimiz iki boyutlu bir numpy dizisidir.
  • Giriş verilerinin her bir noktasına bir kümede bulunma olasılıkları bir vektörü atanıyor.
  • Olasılık vektörünün argmax’ına göre kümeleri renklendirerek, en olası kümelenmenin ne olduğuna bakarak verileri görselleştirebiliriz.

softc3

Desature metodunu kullanarak ton/doyum değerlerinin sıfıra çekilmesi ile siyah beyaz yapma fonksiyonu ile kümelenmeyi tekrardan gerçekleştirelim.

softc4

Birçok noktanın aslında kümelenme yapısının içinde olma ihtimalinin düşük olduğunu görüyoruz aslında yumuşak kümelenme bir kümenin içinde de geçerlidir, bu yüzden her kümenin sadece çekirdeklerinin yüksek olasılıkları vardır. Uygulamada desatürasyon oldukça düz bir yöntemdir; görsel olarak çok fazla gri alan görünecektir buda bir elemanı bir kümeye dahil etmek için yeterli değildir bu noktada yumuşak kümelenme yapısı dikkat çekmektedir.

softc5

  • Yumuşak kümelenme mantığında, aynı zamanda 8’in bir kümelenme olmadığı ve diğer kümelenmelerin bir karışımı olarak görüldüğü görülmektedir.

softc6

Özet olarak soft kümeleme mantığı hard kümelemeden farklı olarak, bir eleman net bir şekilde bir kümeye ait olmayabilir, aynı anda 2 kümenin de kümelenme alanında yer alabilir bu şekilde kümeleme yapan yöntemlere GMM, Fuzzy Clustering, DBScan kümeleme algoritmaları örnek verilebilir.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to top button