Dalam kondisi apa K-berarti pengelompokan transformasi-invarian?

8

Diberikan sekumpulan titik data X={x1,x2,,xm} mana xsayaRd kita menjalankan K-means pada X dan mendapatkan klaster c1,c2,...,ck .

Sekarang, jika kita membuat dataset baru Y={y1,y2,...,ym} mana ysaya=SEBUAHxsaya+b dan ysayaRd dan menjalankan K-means pada Y untuk mendapatkan kluster g1,g2,...gk .

Dalam kondisi SEBUAH dan b apa kami dijamin mendapatkan kluster yang sama?

Mari kita asumsikan bahwa K-means menggunakan jarak euclidean dan memiliki kondisi awal yang sama pada kedua algoritma, yaitu, jika pusat awal untuk X adalah maka pusat awal untuk Y adalah mana .c10,...,ck0g10,...,gk0gsaya0=SEBUAHcsaya0+b

Sejauh ini saya sudah berpikir bahwa harus peringkat penuh dan dapat berupa vektor apa pun. Namun, saya belum bisa membuktikannya.SEBUAHb

Ana Echavarria
sumber

Jawaban:

6

Jawabannya tergantung pada algoritma K-means Anda, tetapi yang berikut harus bekerja untuk algoritma standar.

Anda akan mendapatkan hasil yang sama jika transformasi Anda memenuhi dua kondisi:T

  1. Ini menjaga jarak: , di mana adalah metrik Anda, katakanlah.d(z,w)=d(T(z),T(w))dd(z,w)=z-w
  2. Ini mempertahankan rata-rata: jika adalah kombinasi cembung yang .sayahalsayazsayaT(sayahalsayazsaya)=sayahalsayaT(zsaya)

Anda dapat memeriksanya dengan memeriksa algoritme, yang menunjukkan bahwa ia selalu membuat pilihan yang sama.

Yuval Filmus
sumber
Terima kasih Yuval, ini sangat masuk akal. Apakah ini berarti bahwa untuk jarak euclidean, A harus menjadi matriks ortogonal untuk menciptakan transformasi yang kaku?
Ana Echavarria
Sepertinya memang begitu.
Yuval Filmus