• Sonuç bulunamadı

CURE Kümeleme Algoritması (Clustering Using REpresentatives)

2. GENEL BİLGİLER

2.1. Veri Madenciliği ve Kümeleme Analiz

2.1.1. Hiyerarşik Kümeleme Algoritmaları

2.1.1.1. Birleştirici (Toplamalı) Kümeleme Algoritmaları (AGNES, Agglomerative nesting)

2.1.1.1.9. CURE Kümeleme Algoritması (Clustering Using REpresentatives)

Guha, Rastogi ve Shim tarafından ilk olarak SIGMOD 1998 konferansında sunulan CURE algoritması birleştirici bir kümeleme metodudur. Hiyerarşik metotların küresel olmayan ve farklı boyutlu kümeleri bulma konusundaki zayıflıklarını ve aşırı değerlere karşı hassasiyetlerini gidermek üzere ortaya konmuştur12.

Her bir küme için birden fazla temsili nokta belirleyen CURE algoritması merkeze dayalı tekniklerden farklı olarak, küresel olmayan şekillere sahip ve büyüklük olarak çok değişiklik gösteren kümeleri tanımlamada da kullanılmaktadır30,31.

CURE algoritmasının yüksek kaliteli kümeleri bulmak için diğer algoritmalardan farklı olarak uyguladığı iki teknik vardır. Birinci teknik, bir kümeyi temsil etmek için sadece bir adet merkez nokta kullanmak veya kümeyi içinde bulunan tüm noktalarla temsil etmek yerine her

37

kümeyi o küme içinden seçilmiş sabit sayıdaki dağınık (well-scattered) nesnelerle temsil edilmesidir. İkinci teknik ise, seçilen örneklem nesnelerinin, değeri 0 ile 1 arasında değişen bir daraltma katsayısına bağlı olarak ait oldukları küme merkezine doğru yakınlaştırılmasıdır. CURE algoritmasının genel çalışma şekli Şekil 2.1.1.1.9.1’de görülmektedir 12. Öncelikle her girdiyi sanki ayrı bir kümeymiş gibi ele alır ve her adımda bu küme temsilcilerinin birbirine olan yakınlıklarına göre ya birleştirir ya da ayrı kümeler olarak tutar. Öncelikle her bir küme için c adet iyi dağıtılmış temsilci (örneklem) nokta seçilir Seçilen bu noktalar kümelerin fiziksel şeklini geometrik özelliğini ortaya koyar. Daha sonra bu dağıtılmış noktalar bir α katsayısıyla kümenin ortasına, merkezine doğru kaydırılır. Dağıtılmış olan noktalar bu kaydırma işleminden sonra artık o kümenin temsilcileri olarak kabul edilirler. Birleştirme işlemi istenen küme sayısı, k, elde edilene kadar devam eder. Bundan sonra iki küme arasındaki uzaklık, her biri bir kümeye ait olan en yakın temsilci çifti arasındaki uzaklıktır. Dolayısıyla, iki küme arasındaki uzaklık, bu kümelerin örneklem noktaları arasındaki uzaklığa eşittir. Kümeler arası uzaklıkların hesaplanmasında en yaygın kullanılan ölçüt Öklid uzaklığıdır30.

Şekil 2.1.1.1.9.1. CURE algoritmasının genel çalışma şekli

CURE algoritmasının adımlarını aşağıdaki gibi özetlemek mümkündür:

1. Orjinal veri setinden tesadüfi bir örneklem seçilir. 2. Seçilen örneklem, bölmeler setine ayrılır.

38

4. Aykırı değerler elimine edilir ve çok yavaş büyüyen bir küme varsa o küme çıkarılır.

5. Kısmi olarak oluşturulan kümeler yeniden kümelenir. 6. İlgili küme etiketleri ile oluşan kümeler işaretlenir30,32.

CURE algoritmasında seçilen parametrelerin elde edilen kümeler üzerinde etkisi çok fazladır. Küme sayısı (k) programın sonlanma koşulunu oluşturur. Örneklem nokta sayısı (c), algoritmanın şekilsiz ve farklı boyutlardaki kümeleri bulmasını sağlar. c parametresinin küçük değerleri CURE algoritmasının merkez nokta (centroid) temelli algoritmalar gibi çalışmasını sağlarken büyük değerleri de CURE algoritmasının AGNES algoritmasına benzer şekilde sonuçlar vermesine neden olur30.

CURE algoritmasının bir diğer parametresi olan α, uç verilerin etkisini azaltmada da kullanılır. Temsilcilerin bir α katsayısıyla kümenin merkezine kaydırılması kümedeki uç verilerin etkisini de azaltır 33,34. α’nın alacağı değer 0 ile 1 arasındadır. Küçük değerli α dağılmış noktaların çok az yer değiştirmesine neden olurken kümelerin de şekilsel olarak uzunlaşmasına yol açar. α değerinin büyük olması ise dağılmış noktaları küme merkezine oldukça yaklaştıracağı için daha toplu halde kümeler oluşmasına neden olacaktır33.

CURE algoritması ile gerçekleştirilen bilimsel çalışmalar, daraltma çarpanı α’nın 0.2 ile 0.7 arasındaki bir değerinin daima doğru kümeleri bulduğunu göstermektedir. α katsayısı 0 ile 0.1 arasında bir değer aldığında CURE algoritmasının uç noktalara karşı duyarlılığı artar. α katsayısının küçük değerleri uç noktaları daha az yaklaştıracağından uzun kümeleri bulur. α katsayısı 0.8 ile 1.0 aralığında bir değer aldığında ise CURE algoritması BIRCH veya k- means gibi geleneksel merkezi-tabanlı algoritmalara benzer sonuçlar verir. α katsayısının büyük değerleri dağınık noktaları merkeze doğru daha çok yaklaştıracağından bulunan kümeler daha sıkışık olur12,34.

CURE algoritmasının çok büyük veri tabanlarında başarılı olmasını sağlamak için, veri tabanından rasgele bir örneklem seçilir. Kümeleme algoritması bu örneklem veri seti üzerinde uygulanır. Çok büyük veri tabanlarında, kümeler arası ayrıklık ve küme yoğunluğu azaldıkça örneklem boyutları artacaktır. Bu durumda kümeleme işleminin hızını arttırmak için oluşturulan örneklem veri seti parçalara ayrılır ve kümeleme işlemi bu parçalar üzerine uygulanır. Veri tabanındaki diğer nesnelerin oluşturulan kümelerden birine dâhil edilmesinde kümelerin örneklem noktalarına uzaklıkları dikkate alınır. CURE algoritmasının başarılı

39

sonuçlara ulaşabilmesi, parametrelerinin doğru seçilmesine bağlıdır. Bu nedenle en iyi sonucun bulunması için algoritmanın aynı veri seti üzerinde birkaç kez tekrarlanması gerekebilir35. CURE algoritması ile gerçekleştirilen deneysel çalışmalar aşağıdaki sonuçları ortaya koymaktadır.

• CURE farklı şekillerdeki kümeleri bulabilmektedir.

• CURE algoritması sıra dışılıklara karşı çok duyarlı değildir ve bu tip noktaları başarıyla atmaktadır,

• Örnekleme ve bölümleme işlemi küme kalitesinden ödün vermeden veri seti boyutunu azaltmaktadır.

• Kümeler şekilsiz olduğunda dahi, son kümeleme işlemi doğru olarak yapılabilmektedir. • CURE algoritmasının en kötü durumlarda zaman karmaşıklığı O(𝑛2𝑙𝑜𝑔𝑛) olmasına

karşın veri noktalarının boyutu küçük olduğu durumlarda zaman karmaşıklığı O(𝑛2)’dir. Bu algoritmanın yer karmaşıklığı ise O(n) olarak bilinmektedir.

CURE algoritmasının işleyişinin daha iyi anlaşılması için aşağıdaki örnek uygulama verilmiştir. Şekil 2.1.1.1.9.2’ deki gibi gibi ilk olarak tesadüfi olarak örneklem setleri seçilmektedir. Seçilen örneklem setleri içerisinde yer alan uç değerler belirlenir (3 tane h noktası bir tane e noktası). Uç noktalar için daraltma katsayısı kullanılarak noktalar merkeze yaklaştırlır.

40

Şekil 2.1.1.1.9.2. CURE kümeleme algoritmasının örnek uygulamasının şekilsel gösterimi

CURE Algoritmasının avantajlarını aşağıdaki gibi sıralamak mümkündür12,36,37; • Küresel olmayan ve farklı boyutlardaki kümeleri bulur.

• Sıradışı verilere karşı duyarlı değildir.

• Rasgele örnekleme ve bölümleyici metotlar ile birlikte kullanıldığında çok büyük veri tabanlarında ölçeklenebilir zaman karmaşıklığı azalır.

CURE Algoritmasının dezavantajları ise12,36,37;

• Kategorik veriler içeren veri tabanlarında kullanılamaz. Sadece sayısal verilerde etkilidir.

• Seçilen parametrelere çok duyarlıdır.

CURE Algoritması Tablo 2.1.1.1.9.1’de özetlenmiştir38.

41

Algoritma Özet

CURE

 Birleştirici bir kümeleme algoritmasıdır.

 Keyfi şekildeki kümeler için uygundur.

 Seçilen parametrelerin etkisi fazladır.

 Daraltma katsayısı kullanarak noktaları küme merkezlerine yaklaştırır.

 Sadece sayısal veriler için kullanılabilmektedir.

 Benzerlikler hesaplanırken nispi yakınlıkları kullanmaktadır.

 Yer karmaşıklığı O(n)’dir.

 Zaman karmaşıklığı en kötü durumda O(𝑛2𝑙𝑜𝑔𝑛)’dir ancak noktalarının boyutu küçük olduğu durumlarda zaman karmaşıklığı O(𝑛2)’dir.

2.1.1.1.10. BIRCH Kümeleme Algoritması (Balanced Iterative Reducing and Clustering