Sob quais condições o K-significa clustering invariante de transformação?


8

Dado um conjunto de pontos de dados X={x1,x2,,xm} Onde xEuRd corremos K-significa em Xe obtenha os clusters .c1,c2,,ck

Agora, se criar um novo conjunto de dados onde e e executar K-means em para obter aglomerados .Y={y1,y2,,ym}yEu=UMAxEu+byEuRdYg1,g2,gk

Em que condições de e temos a garantia de obter os mesmos agrupamentos?UMAb

Vamos supor que K-means esteja usando a distância euclidiana e tenha as mesmas condições iniciais em ambos os algoritmos, ou seja, se os centros iniciais de X forem , os centros iniciais de Y serão onde .c10 0,,ck0 0g10 0,,gk0 0gEu0 0=UMAcEu0 0+b

Até agora, pensei que tivesse que ter classificação completa possa ser qualquer vetor. No entanto, não pude provar isso.UMAb

Respostas:


6

A resposta depende do seu algoritmo K-means, mas o que se segue deve funcionar para algoritmos padrão.

Você obterá o mesmo resultado se sua transformação atender a duas condições:T

  1. Ele preserva as distâncias: , onde é sua métrica, diga.d(z,w)=d(T(z),T(w))dd(z,w)=zw
  2. Ele preserva as médias: se é uma combinação convexa que .ipEuzEuT(EupEuzEu)=EupEuT(zEu)

Você pode verificar isso revisando o algoritmo, mostrando que ele sempre faz as mesmas escolhas.


Obrigado Yuval, isso faz muito sentido. Isso significaria então que, para a distância euclidiana, A teria que ser uma matriz ortogonal para criar uma transformação rígida?
Ana Echavarria

Parece mesmo.
Yuval Filmus
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.