Kümeleme algoritmaları

Makine öğrenimi veri kümelerinde milyonlarca örnek bulunabilir ancak tüm küme oluşturma algoritmaları verimli bir şekilde ölçeklendirilemez. Birçok küme oluşturma algoritması, tüm örnek çiftleri arasındaki benzerliği hesaplar. Bu, çalışma sürelerinin, karmaşıklık gösterimindeki \(O(n^2)\) olarak gösterilen örnek sayısının karesi olarak arttığı anlamına gelir. \(O(n^2)\) algoritmaları, milyonlarca örnek içeren veri kümeleri için kullanışlı değildir. \(n\)

k-ortalama algoritmasının karmaşıklığı \(O(n)\)'tir. Bu, algoritmanın \(n\)ile doğrusal olarak ölçeklendiği anlamına gelir. Bu algoritma, bu kursun odak noktası olacaktır.

Kümelenme türleri

Küme oluşturmaya yönelik farklı yaklaşımların kapsamlı bir listesi için A Comprehensive Survey of Clustering Algorithms (Xu, D.) başlıklı makaleyi inceleyin. ve Tian, Y. Ayça. Veri. Sci. (2015) 2: 165. Her yaklaşım belirli bir veri dağılımına en uygundur. Bu kursta, yaygın olarak kullanılan dört yaklaşım kısaca ele alınmaktadır.

Kütle merkezine dayalı kümeleme

Bir kümenin orta noktası, kümedeki tüm noktaların aritmetik ortalamasıdır. Merkez noktasına dayalı kümeleme, verileri hiyerarşik olmayan kümeler halinde düzenler. Orta noktaya dayalı kümeleme algoritmaları etkilidir ancak başlangıç koşullarına ve aykırı değerlere karşı hassastır. Bunlardan en yaygın olarak kullanılanı k-ortalama yöntemidir. Kullanıcıların merkez noktalarının sayısını (k) tanımlamasını gerektirir ve yaklaşık olarak eşit boyutlu kümelerle iyi çalışır.

Orta noktaya dayalı küme oluşturma yöntemi kullanılarak kümelere ayrılmış örnekler.
           Çizgiler, kümeler arasındaki sınırları gösterir.
Şekil 1: Orta noktaya dayalı kümelenme örneği.

Yoğunluğa dayalı kümeleme

Yoğunluğa dayalı kümeleme, örnek yoğunluğu yüksek olan bitişik alanları kümelere bağlar. Bu sayede, herhangi bir biçimdeki herhangi bir sayıda küme keşfedilebilir. Sapmalar kümelere atanmaz. Bu algoritmalar, farklı yoğunluktaki kümelerle ve yüksek boyutlu verilerle ilgili zorluklarla karşılaşır.

Yoğunluğa dayalı küme oluşturma yöntemi kullanılarak iki kümeye ayrılmış örnekler.
      Kümeler doğrusal olarak ayrılamaz.
Şekil 2: Yoğunluğa dayalı küme oluşturma örneği.

Dağılıma dayalı kümeleme

Bu küme oluşturma yaklaşımı, verilerin Gauss dağılımı gibi olasılık dağılımlarından oluştuğunu varsayar. Şekil 3'te, dağılım tabanlı algoritma verileri üç Gauss dağılımına ayırır. Dağılımın merkezine olan mesafe arttıkça bir noktanın dağılıma ait olma olasılığı azalır. Bantlar, olasılıktaki bu azalmayı gösterir. Verilerin belirli bir temel dağılımı olduğunu varsaymak istemediğinizde farklı bir algoritma kullanmanız gerekir.

Dağıtım tabanlı kümeleme kullanılarak kümelenmiş örnekler. Her kümedeki örneklerin yoğunluğuyla ilgili gölgelendirme, kümelerin dağılımlarla nasıl eşleştiğini gösterir.
Şekil 3: Dağılıma dayalı küme oluşturma örneği.

Hiyerarşik kümeleme

Hiyerarşik kümeleme, küme ağacı oluşturur. Hiyerarşik kümeleme, şaşırtıcı olmayan bir şekilde sınıflandırmalar gibi hiyerarşik verilere çok uygundur. Örnek olarak Oksana Lukjancenko, Trudy Wassenaar ve Dave Ussery tarafından yazılan Comparison of 61 Sequenced Escherichia coli Genomes (61 dizili Escherichia coli genomunun karşılaştırması) makalesine bakın. Ağaç doğru seviyede kesilerek herhangi bir sayıda küme seçilebilir.

Hiyerarşik bir ağaç kullanılarak kümelenmiş hayvanlar.
Şekil 4: Hayvanları hiyerarşik ağaç kümelerine ayıran örnek.