K-araçlarının yakınsaklığının kanıtı


20

Bir ödev için, k-anlamına gelen sonlu sayıda adımda yakınsadığına dair bir kanıt sunmam istendi.

Ben yazdım:

C

E(C)=xmini=1kxci2
E(C)

Adım 2, her bir veri noktasını en yakın küme merkezine göre etiketleyen adıma atıfta bulunur ve adım 3, merkezlerin bir ortalama alınarak güncellendiği adımdır.

Bu, sınırlı sayıda adımda yakınsamayı kanıtlamak için yeterli değildir. Enerji gittikçe küçülmeye devam edebilir, ancak merkez noktalarının enerjiyi fazla değiştirmeden atlayabilme olasılığını ortadan kaldırmaz. Başka bir deyişle, çoklu enerji minimaları olabilir ve algoritma aralarında atlayabilir, değil mi?


5
İpucu: Kaç olası merkez noktası koleksiyonu olabilir?
whuber

Yanıtlar:


35

İlk olarak, veri noktalarını bölmenin en fazla yolu vardır.kNNk kümelerine ; bu bölümlerin her birine "kümeleme" denebilir. Bu büyük ama sonlu bir sayıdır. Algoritmanın her bir yinelemesi için, yalnızca eski kümelemeye dayalı yeni bir kümeleme üretiyoruz . Dikkat edin

  1. eski kümeleme yeni ile aynı ise, bir sonraki kümeleme yine aynı olacaktır.
  2. Yeni kümelenme eskisinden farklıysa, yenisi daha düşük bir maliyete sahiptir

Algoritma, etki alanı sonlu bir küme olan bir işlevi yinelediğinden, yineleme sonunda bir döngü girmelidir. Döngüsü daha uzunluğa sahip olamaz aksi halde (2) tarafından imkansız başına daha düşük bir maliyeti olan bir kümeleme sahip olurdu. Dolayısıyla çevrimin uzunluğu tam olarak olmalıdır . Dolayısıyla k-aracı, sınırlı sayıda yinelemede birleşir.11


Nk

{nk}{nk} kN-

6

Bir şey eklemek için: Algoritmanın birleşip birleşmediği de durdurma kriterinize bağlıdır. Küme atamaları artık değişmediğinde algoritmayı durdurursanız, aslında algoritmanın tam olarak birleşmediğini kanıtlayabilirsiniz (birden fazla sentroidin aynı mesafeye sahip olması durumunda küme atamasının deterministik bir bağ kırıcıya sahip olmaması şartıyla).

resim açıklamasını buraya girin

Burada 8 veri noktası (nokta) ve iki centroid (kırmızı çarpı) var. Şimdi yeşil veri noktaları hem sol hem de sağ sentroid ile aynı mesafeye sahip. Aynı şey mavi veri noktaları için de geçerlidir. Bu durumda atama işlevinin deterministik olmadığını varsayalım. Ayrıca, yineleme 1'de yeşil noktaların sol kümeye ve mavi noktaların da sağ kümeye atandığını varsayıyoruz. Sonra sentroidleri güncelliyoruz. Aslında aynı yerde kaldıkları ortaya çıkıyor. (bu kolay bir hesaplamadır. Sol sentroid için, iki sol siyah noktanın ve iki yeşil noktanın koordinatlarını ortalaması alırsınız -> (0, 0.5). Sağ sentroid için aynı).

Daha sonra yineleme 2'de durum tekrar aynı görünüyor, ancak şimdi (bağlar durumunda) deterministik olmayan atama fonksiyonumuzun yeşil noktaları sağ kümeye ve mavi noktaları sol kümeye atadığını varsayıyoruz. Yine sentroidler değişmez.

Yineleme 3 yine yineleme 1 ile aynıdır. Dolayısıyla, küme atamalarının sürekli olarak değiştiği ve algoritmanın (bu durma ölçütüyle) birleşmediği bir durumumuz vardır.

<

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.