• Sonuç bulunamadı

BIRCH Kümeleme Algoritması (Balanced Iterative Reducing and Clustering using Hierarchies)

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.10. BIRCH Kümeleme Algoritması (Balanced Iterative Reducing and Clustering using Hierarchies)

Toplamalı (agglomerative) hiyerarşik kümeleme metodu olan BIRCH algoritması SIGMOD 96 konferansında Zhang, Ramakrishnan ve Livyn tarafından sunulmuştur 30,39. Bu algoritma büyük veri tabanlarının kümelenmesi için geliştirilmiş bir algoritmadır, ayrıca gürültülü verilerin kontrol edilmesi için bu alanda öne sürülen ilk algoritmadır. Bu yöntem bilgisayar belleğinde daha az yer kaplayan bir tekniğe sahip hiyerarşik yapıda bir kümeleme algoritmasıdır 33.Yöntemin temelinde tüm gerekli bilgilere sahip bir ağaç oluşturularak kümeleme işlemleri gerçekleştirilmektedir.

Algoritma iki temel kavram üzerinde durmaktadır. Bu kavramlardan birincisi kümeleme özelliği (Clustering Feature, CF) ikincisi ise kümeleme özelliği ağacı (Clustering Feature Tree CF-tree)’dır. Bu iki özellik, kümelemelerin özetlenmesine ve büyük veri setlerinin ölçeklenebilirliğinin elde edilmesinde yardımcı olmaktadır 30,40.

Veri nesnelerinin alt kümesi hakkında bilgileri özetlemek için üç parametreden (N, L𝑆⃗, SS) yararlanır. Bu parametreler;

N: Kümede bulunan nokta sayısı

L𝑆⃗: Kümedeki noktaların değerlerinin toplamı

L𝑆⃗=∑𝑁𝑖=1𝑋⃗⃗⃗⃗𝚤

SS: Kümedeki noktaların değerlerinin karelerinin toplamıdır.

SS=∑𝑁 𝑋⃗⃗⃗⃗⃗𝚤2 𝑖=1

42

Küme özelliği, veri setindeki tüm nesneleri saklamak yerine nesnelerin altkümeleri hakkındaki istatistiksel bilgileri taşır ve sadece küme içindeki dağılımları özetlemez, ayrıca iki alt küme arasındaki uzaklığın ve kümeleme kalitesinin ölçülmesinde kullanılır12,30,41.

CF ağacı ise, hiyerarşik kümeleme için kümeleme özelliklerini depolayan yüksekliği dengeli

bir ağaçtır 39. Bir CF-tree, dallanma faktörü (branching factor) ve eşik değeri (Threshold) olmak üzere iki parametreye sahiptir. Dallanma katsayısı ağaçta bulunacak maksimum yaprak sayısını, eşik değeri ise yapraklarda oluşturulacak küme sayısının çarpımının alacağı en büyük değeri belirler12,30,41,42.

CF ağaç yapısı Şekil 2.1.1.1.10.1’de verilmiştir.

Şekil 2.1.1.1.10.1. CF ağaç yapısı BIRCH algoritmasının işlem adımları dört tane aşamayı içermektedir.

1. CF ağacı oluşturularak belleğe yükleme (ilk CF ağacı)

2. Daha küçük bir CF ağacı oluşturularak istenen aralıkta yoğunlaştırma (Küçültülmüş CF ağacı)

3. Global Kümeleme (Başarılı Kümeler) 4. Küme İyileştirme (Daha kaliteli kümeler)

Birinci aşamada veri setindeki tüm veri noktaları taranarak önceden belirlenen N sayısı kadar veri noktası içeren altkümeler oluşturulur. Bu alt kümelerin her biri için CF değeri hesaplanır.

43

sabit diskte yer açılmaktadır. Nesneler eklendikçe CF değerleri kullanılarak CF ağacı dinamik olarak oluşur. Bu nedenle metot artandır. Her nesne kendine en yakın olan kümeye eklenir. Alt kümenin yarıçapı CF ağacının eşik değerini geçerse bölümlendirme işlemi gerçekleştirilir. Yeni nesnenin eklenmesinden sonra, o nesne hakkındaki bilgi ağacın köküne iletilir. CF ağacının boyutu eşik değerine bağlı olarak değişmektedir. Oluşturulan CF-ağacı bellek boyutu sınırları içinde verilen veri setinin kümeleme bilgilerini mümkün olduğunca detaylı olarak yansıtmaya çalışır. CF ağacının bellekte kapladığı alan ana bellek boyutundan daha büyükse daha küçük bir eşik değeri tanımlanarak CF ağacı yeniden inşa edilir 41. Birinci aşamada yoğun veri noktaları altkümelerde toplanıp, ayrık veri noktaları sıradışı kabul edilip atılarak bellekte veri setine ait bir özet oluşturulur. İkinci aşama kümeleme için kullanılacak algoritmaya bağlı olarak gerçekleştirilir. CF-ağacının yoğunlaştırılarak küçültülmesini sağlar. Tercihe bağlı bir işlem basamağıdır. Üçüncü aşama ana belleğe yüklenen CF-ağacının yapraklarındaki nesnelerin hiyerarşik veya bölümleme kümeleme metotları kullanılarak kümelendiği işlem basamağıdır. Bu aşamanın sonunda istenen kümeler elde edilmiş olur. Dördüncü aşama, üçüncü aşamada elde edilen kümelerin merkez noktalarını çekirdek noktalar olarak kullanarak veri noktalarını kendilerine en yakın çekirdek noktaya yerleştirir. Böylece yeni kümeler oluşur. Bu işlem bir kümedeki veri noktalarının sadece yerlerini değiştirmez, ayrıca bir veri noktasının tüm örneklerinin aynı kümede yer almasını sağlar12.

BIRCH algoritmasının işleyişini daha iyi anlayabilmek için algoritma adımlarını bir örnek üzerinde inceleyelim. Şekil 2.1.1.1.10.2 dikkate alınarak 6 tane noktanın BIRCH algoritması ile kümeleme işlemini yapalım. Şekil üzerinde görüleceği üzere 1 ve 2. noktalar ile işlemlere başlanarak, 1 nolu noktayı iki nolu noktanın yer aldığı küme ikiye koyduğumuz zaman kümenin çok büyüdüğünü gözlediğimizi varsaydığımızda 1 nolu noktaya küme 1, iki nolu noktaya küme 2 adını verelim. Nokta 3 ise küme 1’e (entry 1) daha yakındır. Ancak eğer nokta 3’ü küme 1’e dahil edersek küme çok büyüyeceğinden nokta 3’ü diğer iki kümeden ayrı bir küme oluşturarak şekilde üçüncü bir kümeye dahil edilir. Nokta 4 ise küme 2’ye daha yakındır. Nokta 4 ‘de kümede aşırı bir büyümeye sebep olmadığından dolayı küme 2’ye dahil edilebilir. Nokta 5, küme 2’ye daha yakındır. Küme 3’e dahil edildiğinde ise kümede aşırı bir büyüme gerçekleşecektir. Ancak düğüm sayısındaki entrylerin sayısındaki kısıtlılıktan dolayı (işlemlerin başında küme sayısı belirlenmiştir) küme 3 bölünememektedir. Bu yüzden yaprak olmayan düğümler oluşur ve iki tane entryde ikişer küme olmak üzere 4 ayrı küme oluşur. Son olarak Nokta 6 ise, küme 3 e yakın olduğundan ve kümeyi aşırı büyütmediğinden dolayı

44

küme 3’e dâhil edilir. Sonuçta nokta 1 küme 1’e; nokta 3 ve 6 küme 3’e; nokta 5 küme 4’e ve nokta 2 ve 4 de küme 2’ye dâhil olmuştur.

Şekil 2.1.1.1.10.2. Altı noktanın BIRCH algoritması ile kümelenmesi

BIRCH Algoritmasının avantajlarını ise şöyle özetleyebiliriz12,30,41.

• Sadece ilk aşamada Girdi (INPUT=I)/Çıktı (OUTPUT=O) işlemleri gerçekleştirilir. Daha sonraki aşamalarda veriler ana bellekten okunur.

• Aykırı değerlerin etkisini azaltmaktadır.

 Veri setini bir kez tarayarak iyi bir kümeleme sağlar.

 Nesne sayısı ile algoritmanın doğrusal ölçeklenebilirliği ve kümeleme güvenilirliği iyidir.

BIRCH Algoritmasının dezavantajları ise12,30,41; • Yalnızca sayısal verilerde kullanılabilir.

45

• Verinin okunma sırasına karşı duyarlıdır.

• Sadece küresel ve boyutları benzer kümeleri bulabilmektedir.

• Bu nedenlerden dolayı araştırmacının doğal küme olarak kabul ettiği küme ile aynı sonuçları vermeyebilir.

Tablo 2.1.1.1.10.1. BIRCH algoritmasının özet tanımlayıcı özellikleri

Algoritma Özet

BIRCH

 Büyük veri tabanları için iyi sonuçlar üretmektedir.

 Gürültülü verilerin kontrol edilmesi için geliştirilmiş ilk algoritmadır.

CF ve CF-tree yardımıyla kümeleme işlemlerini gerçekleştirir.

 Sayısal veri setleri için kullanılmaktadır.

 Küresel kümeler için kullanılmaktadır.

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

2.1.1.1.11. CHAMELEON Kümeleme Algoritması (hierarchical clustering algorithm