• Sonuç bulunamadı

2. GENEL BİLGİLER

2.1. Veri Madenciliği ve Kümeleme Analiz

2.1.2. Yoğunluğa Dayalı Kümeleme Algoritmaları (density based clustering algorithms) Yoğunluğa dayalı algoritmalar noktalar arasındaki uzaklıklar yardımıyla kümeleri tespit

2.1.2.2. DENCLUE Kümeleme Algoritması (Density Based Clustering)

Çeşitli kümeleme yöntemleri çok boyutlu veriler olduğunda kullanılabilmektedir. Ancak bu kümeleme yöntemlerinin etkinliği gürültülü veriler çok sayıda olduğunda ve yüksek boyutlu veriler mevcut olduğu durumlarda oldukça sınırlıdır. Bu dezavantajları giderebilmek için Hinneburg ve Keim tarafından KDD’98 konferansında yoğunluğa dayalı bir kümeleme algoritması olan DENCLUE yöntemi önerilmiştir12. Sunulan bu yöntem yüksek boyutlu ve gürültülü verilere karşı oldukça iyi sonuçlar üretmektedir.

DENCLUE algoritmasının temelinde yoğunluk çekici ve etki fonksiyonu olmak üzere iki kavram vardır. Kümeler matematiksel olarak yoğunluk çekiciler kavramları ile hesaplanmaktadır. Dolayısıyla DENCLUE kümeleme algoritmasının yoğun bir matematiksel alt yapısı vardır. Yöntem aslında tüm kümeleme yöntemlerinin genelleştirilmiş hali olarak düşünülebilir12,30,33,56.

Algoritmanın işleyişine geçmeden önce birkaç kavram üzerinde durulacaktır. DENCLUE yöntemi kümeleme işlemlerini gerçekleştirirken temel olarak etki fonksiyonundan yararlanmaktadır12,30,33,56.

Etki fonksiyonu, her bir veri noktasına ait etkinin matematiksel fonksiyonlar kullanılarak

modellenmesidir. Fd, d boyutlu uzay olarak tanımlandığında, her hangi bir noktadaki x∈Fd

yoğunluk fonksiyonu olarak gösterilir. Bir veri nesnesinin y∈Fd olan etki fonksiyonu 𝑓

𝐵 𝑦

: Fd 𝑅0+ olarak tanımlanmaktadır12,30,33,56.

59

𝑓𝐵𝑦(x)=fB(x,y)’dir.

Etki fonksiyonu, bir veri noktasının komşuları içindeki etkisini tanımlamaktadır. Etki fonksiyonu her bir veri noktası için uygulanmaktadır. Bu fonksiyona örnek olarak kare dalga fonksiyonu veya Gauss fonksiyonu verilebilmektedir 12. Bu fonksiyonlar sırasıyla aşağıdaki gibi tanımlanmaktadır12,30,33,56.

Kare dalga fonksiyonu

fkare(x,y)=0 eğer d(x,y) > σ

=1 diğer durumda

Formülde yer alan σ değeri, bir noktanın kendi komşuluğunda olan etkisini göstermektedir.

Gauss baskınlık fonksiyonu

FGauss(x,y)=𝑒− 𝑑(𝑥,𝑦)2

2𝜎2

Fonksiyonda yer alan d(x,y), Öklid uzaklığı gibi simetrik bir fonksiyondur12,30,33,56.

Şekil 2.1.2.2.1’de iki boyutlu bir uzayda yer alan veri noktaları seti için, kare dalga ve gauss etki fonksiyonu kullanıldığında elde edilen genel yoğunluk fonksiyonu yer almaktadır12,30,33,56.

Şekil 2.1.2.2.1. İki boyutlu bir uzayda Kare dalga ve Gauss etki fonksiyonu

Genel yoğunluk fonksiyonu ise tüm veri noktalarının toplanması ile hesaplanmaktadır. Bir başka ifadeyle yoğunluk fonksiyonu, tüm veri noktalarının etki fonksiyonlarının toplamından

60

oluşmaktadır. D={x1,….xN} özellik vektörü tanımlanan N veri nesnesi için genel yoğunluk

fonksiyonu aşağıdaki gibi tanımlanmaktadır12,30,33,56.

𝑓𝐵𝐷(x)=∑𝑁𝑖=1𝑓𝐵𝑥𝑝(𝑥)

Genel yoğunluk fonksiyonunun matematiksel formu, keyfi yapıdaki kümeleri bulmaya olanak sağlamaktadır. Ancak birçok veri noktası genel yoğunluk fonksiyonuna katkıda bulunmamaktadır. Bu yüzden de DENCLUE algoritması genel yoğunluk fonksiyonuna katkı sağlayan veri noktalarını göz önüne alan lokal bir genel yoğunluk fonksiyonu kullanmaktadır12,30,33,56.

Genel yoğunluk fonksiyonu hesaplandıktan sonra yoğunluk çekiciler matematiksel olarak belirlenmektedir. Yoğunluk çekiciler, genel yoğunluk fonksiyonunun lokal maksimumudur. Eğer genel yoğunluk fonksiyonu sürekli ve herhangi bir noktada değişebilir özelliğe sahip ise, genel yoğunluk fonksiyonu gradiyenti kullanılarak yoğunluk çekiciler bulunmaktadır. Dolayısıyla yoğunluk çekicilerin hesaplanabilmesi için öncelikle genel yoğunluk fonksiyonunun gradiyentinin tanımlanması gerekmektedir. 𝑓𝐵𝐷(x)’nin gradiyent fonksiyonu aşağıdaki gibi tanımlanmaktadır12,30,33,56.

∇𝑓𝐵𝐷(x)=∑ (𝑥 𝑖− 𝑥) 𝑁 𝑖=1 𝑓𝐵 𝑥𝑝 (𝑥)

Gauss etki fonksiyonu durumunda gradiyent aşağıdaki gibi tanımlanmaktadır.

∇𝑓𝐺𝑎𝑢𝑠𝑠𝐷 (x)=∑𝑁𝑖=1(𝑥𝑖− 𝑥)𝑒−𝑑(𝑥,𝑥𝑖) 2 2𝜎2

Etki fonksiyonu simetrik ve sürekli yapıda iken, gradiyent fonskyionu bu özelliklerden bağımsızdır12,30,33,56.

x*, 𝑓𝐵𝐷 yoğunluk fonksiyonunun lokal maksimumu ise, x*∈Fd noktası yoğunluk çekici olarak

adlandırılır. Şekil 2.1.2.2.2’de tek boyutlu bir uzayda, yoğunluk çekiciliğe örnek verilmiştir. Şekilde sürekli bir etki fonksiyonu için x ekseni veri uzayını, y ekseni ise yoğunlukları göstermektedir. Bu yoğunlukların maksimumu ise çarpı işareti ile (x) belirtilmiştir. Bu x işaretleri, yoğunluk çekicileri ifade etmektedir12,30,33,56.

61

Şekil 2.1.2.2.2. Yoğunluk çekici için örnek grafik

DENCLUE algoritması σ ve ξ olmak üzere iki parametre kullanmaktadır. ξ parametresi yoğunluk çekicilerin anlamlı olup olmadıklarını ifade etmektedir. Bir başka ifadeyle yoğunluk çekicilerin önemli olacağı en düşük yoğunluk seviyesidir. Bu parametre yoğunluk çekici sayısının azalmasına ve performansın artmasına neden olmaktadır. σ paremetresi ise bir veri noktasının kendi çevresine (komşularına) olan etkisini göstermektedir. ξ parametresi MinPts,

σ paremetresi ise Eps olarak düşünülebilir12,30,33,56.

DENCLUE algoritması diğer kümeleme yöntemlerinin genelleştirilmiş halidir. Örneğin, keyfi şekillere sahip kümeler bulunurken σ = Eps ve ξ= MinPts olacak şekilde kare dalga fonksiyonu kullanıldığında DBSCAN algoritması ile aynı sonuçlar ve kümeler elde edilmektedir. Bu durum Şekil 2.1.2.2.3’de gösterilmiştir. Seçilen uygun parametreler ve fonsiyonlar sonucunda bu iki algoritmanın benzer kümeleme sonuçları verdiği görülmektedir. Ancak şu da belirtilmelidir ki bu iki algoritma kare dalga fonksiyonu kullanıldığı için benzer sonuçlar üretmiştir. Dolaysıyla DENCLUE algoritmasının genelleştirilmesinde seçilen parametrelerin ve fonksiyon türlerinin de çok önemli etkileri olmaktadır12,30,33,56.

Şekil 2.1.2.2.3. DBSCAN ve DENCLUE algoritmaları sonucunda elde edilen küme yapıları

σ ve ξ parametrelerinin seçimi kümeleme sonuçlarını ve yoğunluk çekici sayısını

62

olduğu durumdaki minimum değerdir. 𝜎min ise, fonksiyonun N yoğunluk çekicisi olduğundaki maksimum değeridir. Eğer σ değeri 𝜎min değerine eşit ise, her bir noktanın kendisi bir küme olarak belirlenmektedir. Yoğunluk çekici σ’nın artması ile birlikte noktaları birbirleri ile birleştirmektedir. σ değeri 𝜎maks değerine eşit olduğunda tüm noktalar tek bir küme olarak kabul edilir. Dolayısıyla kullanıcı uygun kümeler elde edebilmek için σ parametresini ayarlamaktadır. Veri tabanı gürültülü verileri içermediğinde D veri tabanının tüm yoğunluk çekicileri önemlidir ve ξ parametresi 0≤ ξ≤ 𝑚𝑖𝑛𝑥∈𝑋{fD(x*)} aralığında belirlenmelidir. Ancak birçok durumda veri tabanları gürültülü veriler içermektedir (D=DC∪DN). Gürültü

seviyesi ise ||DN||√2𝜋𝜎2

𝑑

ile tanımlanır ve bu durumda ξ parametresi aşağıda tanımlanan aralıklar arasında seçilmelidir12,30,33,56.

||DN||√2𝜋𝜎2

𝑑

≤ ξ≤ 𝑚𝑖𝑛𝑥∈𝑋{𝑓𝐷𝐶 (x*)}

Yukarıdaki formülde yer alan DC terimi kümeleri, DN terimi ise gürültüleri içermektedir.

Tanımlamalar ışığında DENCLUE algoritması iki adımda gerçekleşmektedir. Birinci aşama ön kümeleme aşamasıdır. Bu aşamada, veri alanı ile ilgili bölümün bir haritası oluşturulmaktadır. Bu haritalama işlemi ise, yoğunluk fonksiyonu hesabının hızlandırılmasında kullanılmaktadır. İkinci aşama ise, asıl kümeleme aşamasıdır. Bu aşamada, algoritma yoğunluk çekicileri ve yoğunluk çekicilere karşılık gelen yoğunluk çekilen noktaları tanımlamaktadır12,30,33,56.

DENCLUE algoritması yüksek miktarda gürültülü verilere karşı değişmez yapıdadır. Bir başka ifadeyle gürültülü verilerden etkilenmemektedir. Ayrıca DENCLUE algoritması yüksek boyutlu veriler içinde çok başarılı sonuçlar üretmektedir. Algoritma matematiksel bir yapıya sahip olmakla birlikte diğer kümeleme algoritmasının genelleştirilmiş hali olarak bilinmektedir. Ancak DENCLUE algoritması uygulanırken başlangıç parametrelerinin seçiminin dikkatli bir şekilde yapılması gerekmektedir. Algoritmanın hesaplama karmaşıklığı ise O(nlogn)’dir. Burada n, nesne sayısını göstermektedir12,30,33,56.

2.1.2.3. OPTICS Kümeleme Algoritması (Ordering Points to Identify Clustering