Diferença entre algoritmos k-médias padrão e esféricos


28

Eu gostaria de entender, qual é a principal diferença de implementação entre os algoritmos de agrupamento padrão e esférico de k-means.

Em cada etapa, k-means calcula as distâncias entre vetores de elementos e centróides do cluster e reatribui o documento a esse cluster, cujo centróide é o mais próximo. Então, todos os centróides são recalculados.

Nas médias k esféricas, todos os vetores são normalizados e a medida da distância é dissimilaridade do cosseno.

Isso é tudo, ou há algo mais?

Respostas:


23

A questão é:

Qual é a diferença entre os meios k clássicos e os meios k esféricos?

K-significa clássico:

Nos meios k clássicos, procuramos minimizar a distância euclidiana entre o centro do cluster e os membros do cluster. A intuição por trás disso é que a distância radial do centro do cluster até a localização do elemento deve "ter uniformidade" ou "ser semelhante" para todos os elementos desse cluster.

O algoritmo é:

  • Definir número de clusters (também conhecido como contagem de clusters)
  • Inicialize atribuindo pontos aleatoriamente no espaço para agrupar índices
  • Repita até convergir
    • Para cada ponto, encontre o cluster mais próximo e atribua o ponto ao cluster
    • Para cada cluster, encontre a média dos pontos membros e a média do centro de atualização
    • Erro é norma de distância de clusters

Meios K esféricos:

Nos meios esféricos k, a idéia é definir o centro de cada aglomerado, de maneira a uniformizar e minimizar o ângulo entre os componentes. A intuição é como olhar para estrelas - os pontos devem ter espaçamento consistente entre si. Esse espaçamento é mais simples de quantificar como "semelhança de cosseno", mas significa que não há galáxias "de via láctea" formando grandes faixas brilhantes no céu dos dados. (Sim, estou tentando falar com a vovó nesta parte da descrição.)

Versão mais técnica:

Pense em vetores, as coisas que você representa graficamente como setas com orientação e comprimento fixo. Pode ser traduzido para qualquer lugar e ter o mesmo vetor. ref

insira a descrição da imagem aqui

A orientação do ponto no espaço (seu ângulo a partir de uma linha de referência) pode ser calculada usando álgebra linear, particularmente o produto escalar.

Se movermos todos os dados para que sua cauda esteja no mesmo ponto, podemos comparar "vetores" pelo ângulo e agrupar os semelhantes em um único cluster.

insira a descrição da imagem aqui

Para maior clareza, os comprimentos dos vetores são redimensionados, para facilitar a comparação do "globo ocular".

insira a descrição da imagem aqui

Você poderia pensar nisso como uma constelação. As estrelas em um único aglomerado estão próximas umas das outras em algum sentido. Estes são os meus olhos considerados constelações.

insira a descrição da imagem aqui

O valor da abordagem geral é que ela permite criar vetores que, de outra forma, não teriam dimensão geométrica, como no método tf-idf, onde os vetores são frequências de palavras em documentos. Duas palavras "e" adicionadas não são iguais a "o". As palavras são não contínuas e não numéricas. Eles não são físicos em um sentido geométrico, mas podemos inventá-los geometricamente e, em seguida, usar métodos geométricos para lidar com eles. Os meios k esféricos podem ser usados ​​para agrupar com base em palavras.

[x1y1x2y2grovocêp0 0-0,8-0,2013-0,7316B-0,80,1-0,95240,3639UMA0,20,30,2061-0,1434C0,80,10,47870,153B-0,70,2-0,72760,3825UMA0,90,90,7480.6793C]

Alguns pontos:

  • Eles projetam em uma esfera unitária para explicar as diferenças no comprimento do documento.

Vamos trabalhar com um processo real e ver como (ruim) meus "olhos" foram.

O procedimento é:

  1. (implícito no problema) conectar vetores caudas na origem
  2. projeto na esfera da unidade (para considerar as diferenças no comprimento do documento)
  3. use agrupamento para minimizar a " dissimilaridade de cosseno "

J=Eud(xEu,pc(Eu))

d(x,p)=1-cos(x,p)=x,p__x____p__

(mais edições em breve)

Ligações:

  1. http://epub.wu.ac.at/4000/1/paper.pdf
  2. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.111.8125&rep=rep1&type=pdf
  3. http://www.cs.gsu.edu/~wkim/index_files/papers/refinehd.pdf
  4. https://www.jstatsoft.org/article/view/v050i10
  5. http://www.mathworks.com/matlabcentral/fileexchange/32987-the-spherical-k-means-algorithm
  6. https://ocw.mit.edu/courses/sloan-school-of-management/15-097-prediction-machine-learning-and-statistics-spring-2012/projects/MIT15_097S12_proj1.pdf

Em arquivos de texto, eu acho que a função "diff" que alinha caracteres, ou indica mudanças com pesos, pode ser pré-processamento útil de "close-juntos" textos a fim de melhorar o agrupamento significativa
EngrStudent - Reintegrar Monica

Eu recebo "Acesso Proibido" no link # 1 ( sci.utah.edu/~weiliu/research/clustering_fmri/… )
David Doria

@ David - eu também. Sempre em movimento é a ... internet? Um momento por favor.
EngrStudent - Restabelece Monica

1
Depois de alguma hesitação, optei por rebaixar esta resposta atualmente. Não é apenas uma explicação muito "vovó", é imprecisa. radial distance from the cluster-center to the element location should "have sameness" or "be similar" for all elements of that clusterparece simplesmente incorreto ou sem corte. Em both uniform and minimal the angle between components"componentes" não está definido. Espero que você possa melhorar a resposta potencialmente ótima se a fizer um pouco mais rigorosa e estendida.
ttnphns
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.