Bolu Beyi tarafından yazıldı Aralık - 28 - 2016 0 Yorum

Bilişim teknolojilerinin kullanımının artmasıyla birlikte ortaya büyük veriler (big data) çıkmıştır. Özellikle internet ortamında, farklı konularda sayısız dokümanlar yer almakta ve sayısı/boyutu giderek artmaktadır. Bir e-ticaret sitesindeki ürünlerin, kullanıcılar tarafından kolayca incelenebilmesi için kategorize edilmesine ihtiyaç duyulduğu gibi; çeşitli dokümanların, web sitelerinin, haber metinlerinin vb. büyük verilerin de kategorize edilmesine, diğer bir deyişle kümelenmesine ihtiyaç duyulmuştur. Kümeleme işlemi, ekonomi biliminde, doküman sınıflandırmada, desen tanımlamada, görüntü işlemede, market araştırmalarında ve daha birçok alanda kullanılmaktadır. Söz konusu ihtiyaç çerçevesinde de birçok akademik çalışma yapılmış ve kümeleme yapmak için çeşitli yöntemler geliştirilmiştir.

Bu makalede de kümeleme yöntemleri ve çalışma mantıklarından bahsedilmiştir. Her bir kümeleme yönteminin kullanım alanı yöntemin çalışma hızına, doğruluk oranına, eldeki veri setinin türüne göre değişiklik göstermekte, farklı problemlere karşı farklı yöntemler tercih edilmetedir.

Önceden elde edilmiş nesnelerin, farklı kategorilere/gruplara, herhangi bir denetim mekanizması olmadan (denetimsiz öğrenme) sınıflandırılma işlemine “kümeleme” denmektedir. Bir küme içerisinde bulunan veriler, diğer kümelerdeki verilere göre birbirine daha benzerdir. Bir kümeleme metodunun kalitesi bu özelliği sağlaması ile doğru orantılıdır. Kümeleme bir veri setindeki yapı veya doğal grupların, kullanıcılar tarafından kolaylıkla anlaşılmasını sağlamaktadır. Veri seti içerisindeki veriler/nesneler herhangi bir sınıf etiketine sahip değildir.

Kümeleme işlemi nesneler arasındaki uzaklık ve yakınlık ilişkisine dayalıdır. Nesneler arasında bir uzaklı veya yakınlık ilişkisi kurulamıyorsa, kümeleme işlemi yapılamamaktadır. Örnek bir kümeleme gösterimi aşağıdaki şekilde gösterilmiştir:

 

 

 

 

 

 

 

 

Kümeleme algoritmaları genel olarak hiyerarşik ve hiyerarşik olmayan olmak üzere ikiye ayrılmaktadır. Kümeleme yöntemleri şu şekilde listelenebilir:

  1. Bölümleme (Partitioning Method)
  2. Hiyerarşik (Hierarchical Method)
  3. Yoğunluk tabanlı (Density-based Method)
  4. Izgara tabanlı (Grid-Based Method)
  5. Model tabanlı (Model-Based Method)
  6. Kısıtlama tabanlı (Constraint-based Method)

1.Bölümleme (Partitioning Method)

Bu yöntemde “n” adet veriden oluşan bir veritabanının, k≤n olması koşuluyla, “k” parçaya bölünmesi amaçlanır. Her bir bölüm küme olarak temsil edilir ve her bir küme en az bir adet veri içerir. Bir veri sadece bir kümeye dahil olabilmektedir.

Başlangıçta oluşturulan k kadar küme üzerinde, iteratif bir şekilde yeniden konumlandırma tekniği kullanılır. Verilerin bir kümeden diğer kümeye aktarılması sağlanır ve belirlenen iterasyon sayısına ulaşılana kadar optimize edilir. Bölümleme yöntemi “k-means”, “k-medoids”, ve “CLARA-CLARANS” algoritmalarını kullanmaktadır.

2.Hiyerarşik (Hierarchical Method)

Bu metotta verilerin top-down veya bottop-up yaklaşımlar içerisinde, yinelemeli bir şekilde bölümlenerek küme oluşturulması sağlanmaktadır. Bu yöntemde bir “k” değerine ihtiyaç duyulmamakta, bunun yerine ağaç yapısı oluşturma işleminin ne kadar devam edeceğini belirten eşik değerine (threshold) ihtiyaç duyulmaktadır. Bu metot da kendi arasında yığınsal ve ayırıcı olmak üzere ikiye ayrılmaktadır:

Yığınsal (agglomerative) hiyerarşik kümeleme: Bottom-up yaklaşımı olarak bilinir. Her  bir veri başlangıçta bir küme olarak kabul edilir. Daha sonra istenilen küme yapısı elde edilene kadar kümeler ardışık olarak birleştirilir.

Ayırıcı (divisive) Hiyerarşik kümeleme: Top-down yaklaşımı olarak bilinir. Her veri bir araya gelerek başlangıçta bir kümeye ait olarak varsayılır. Sonrasında küme alt kümelere bölünür. Bu süreç istenilen küme yapısı elde edilene kadar devam eder.

3.Yoğunluk tabanlı (Density-based Method)

Yoğunluk kavramına dayalı bu yöntemde temel fikir, nesnelerin ilk dağılımını bir yoğunluk fonksiyonu vasıtasıyla belirlenerek, bir eşik yoğunluğunu aşan bölgelerin küme olarak kabul edilmesidir. Yani belirli bir yarıçap içerisindeki komşuluk, asgari sayıda nesne içerir. Her küme kümenin dışındaki noktalardan önemli ölçüde daha yoğun nokta içermektedir. Örnek gösterim şu şekildedir:

 

 

 

 

Bu yöntemin en büyük avantajları, gürültü ve istisnalardan (sapan veriler) etkilenmemesi ve tek tarama ile sonucun elde edilmesidir. Yoğunluk tabanlı kümeleme algoritmalarına DBSCAN ve OPTICS algoritmaları örnek verilebilir.

4.Izgara tabanlı (Grid-based Method)

Bu metotta nesneler birlikte bir ızgara oluşturur. Yani nesne uzayı, bir ızgara yapısını oluşturan hücreleri sınırlı sayıya nicelendirir. Bu ızgara yapısından dolayı veritabanındaki nesne sayısından bağımsız bir yöntemdir. Bu metotdun en önemli avantajı hızlı işlem yapmasıdır.

5.Model tabanlı (Model-based Method)

Model tabanlı yöntemlerde, verilen bilgi ve bazı matematiksel modeller arasındaki uyumun optimize edilmesi amaçlanmaktadır. Nesne gruplarını tanımlayan geleneksel kümeleme yöntemlerinden farklı olarak; model tabanlı yöntemde her bir grubun sınıf veya kavram olarak temsil edildiği her bir grup için karakteristik özellikler tespit edilir. Bu yöntem yapay zeka yaklaşımı ve istatistik yaklaşımı olmak üzere iki temel yaklaşım kullanmaktadır. Buna örnek olarak karar ağaçları ve yapay sinir ağları örnek verilebilir.

6.Kısıtlama tabanlı (Constrained-based Method)

Bu yöntemde kümeleme, kullanıcının veya uygulama yönelimli (application-oriented) kısıtlayıcıların birleştirilmesi ile gerçekleştirilir. Bir kısıtlayıcı istenilen kümeleme sonuçlarının özelliklerine veya kullanıcı beklentilerine atfedilir. Kısıtlayıcılar uygulama gereksinimi veya kullanıcı tarafından belirlenebilmektedir.


Time limit is exhausted. Please reload CAPTCHA.