Unter welchen Bedingungen ist K-bedeutet Clustering transformationsinvariant?

8

Bei einer Menge von Datenpunkten X={x1,x2,,xm} wobei xiRd wir K-Mittel auf X und erhalten die Cluster c1,c2,,ck .

Wenn wir nun einen neuen Datensatz wobei und und K-means auf ausführen , um die Cluster .y i = A x i + b y iR d Y g 1 , g 2 , g kY={y1,y2,,ym}yi=Axi+byiRdYg1,g2,gk

Unter welchen Bedingungen von und erhalten wir garantiert die gleichen Cluster?bAb

Nehmen wir an, dass K-means den euklidischen Abstand verwendet und für beide Algorithmen die gleichen Anfangsbedingungen hat wenn die Anfangszentren für X dann sind die Anfangszentren für Y wobei g ^ 0_i = Ac ^ 0_i + b . g 0 1 , , g 0 k g 0 i = A c 0 i + bc10,,ck0g10,,gk0gi0=Aci0+b

Bisher habe ich gedacht, dass den vollen Rang haben muss und b ein beliebiger Vektor sein kann. Ich konnte es jedoch nicht beweisen.bAb

Ana Echavarria
quelle

Antworten:

6

Die Antwort hängt von Ihrem K-Means-Algorithmus ab, aber was folgt, sollte für Standardalgorithmen funktionieren.

Sie erhalten das gleiche Ergebnis, wenn Ihre Transformation zwei Bedingungen erfüllt:T

  1. Es werden Abstände beibehalten: , wobei Ihre Metrik ist, sagen wir.d d ( z , w ) = z - w d(z,w)=d(T(z),T(w))dd(z,w)=zw
  2. Es werden Durchschnittswerte beibehalten: Wenn eine konvexe Kombination ist, ist . T ( i p i z i ) = i p i T ( z i )ipiziT(ipizi)=ipiT(zi)

Sie können dies überprüfen, indem Sie den Algorithmus durchgehen und zeigen, dass er immer die gleichen Entscheidungen trifft.

Yuval Filmus
quelle
Danke Yuval, das macht sehr viel Sinn. Würde dies dann bedeuten, dass A für den euklidischen Abstand eine orthogonale Matrix sein müsste, um eine starre Transformation zu erzeugen?
Ana Echavarria
Es scheint so.
Yuval Filmus