k-significa vs k-mediana?

14

Eu sei que existe algoritmo de agrupamento k-means e mediana k. Um que usa a média como o centro do cluster e o outro usa a mediana. Minha pergunta é: quando / onde usar qual?

Jack Twain
fonte
Você terá que definir medianas (e talvez calculá-las) se tiver mais de uma dimensão; se você pegar a mediana em cada valor, perderá as propriedades rotacionais. Uma outra possibilidade é k -medoids
Henry

Respostas:

14

O k-mean minimiza a variação dentro do cluster, que é igual a distâncias euclidianas ao quadrado.

Em geral, a média aritmética faz isso. Ele faz não distâncias otimizar, mas desvios quadrados da média.

medianas k minimiza desvios absolutos, o que é igual à distância de Manhattan.

Em geral, a mediana por eixo deve fazer isso. É um bom estimador para a média, se você deseja minimizar a soma dos desvios absolutos (ou seja, sum_i abs (x_i-y_i)), em vez dos quadrados.

Não é uma pergunta sobre precisão. É uma questão de correção. ;-)

Então aqui está sua árvore de decisão:

  • Se a sua distância é a distância euclidiana ao quadrado , use k-means
  • Se sua distância for métrica de táxi , use k-medianas
  • Se você tiver qualquer outra distância , use k-medoids

Algumas exceções: até onde eu sei, maximizar a similaridade do cosseno está relacionado à minimização da distância euclidiana quadrada nos dados normalizados por L2. Portanto, se seus dados forem normalizados em L2; e você normaliza seus meios a cada iteração, então pode usar k-meios novamente.

Tem QUIT - Anony-Mousse
fonte
Eu discordo um pouco da afirmação de que a mediana minimiza a distância de manhattan, uma vez que não existe um conceito único acordado de uma mediana para dados multidimensionais. Não é falso, mas acho uma afirmação enganosa a ser feita em um contexto multidimensional. Existem múltiplas generalizações multidimensionais de medianas, muitas das quais não têm conexão com a minimização das distâncias de Manhattan.
precisa saber é o seguinte
1
Eu mudo isso para mediana por eixo. Espero que você esteja mais feliz agora.
QuIT - Anony-Mousse
2

Se você deseja fazer uma análise não relacionada ao possível efeito de valores extremos, use k significa, mas se quiser ser mais preciso, use k mediana

Raf
fonte
5
Você pode apoiar e / ou explicar essas afirmações de alguma forma?
Jona
Sim, você pode elaborar mais, por favor? com exemplos?
21714 Jack Twain
2
Eu acho que é porque "Mediana" pode tolerar os discrepantes, mas "Média" é totalmente afetada por eles. Por exemplo: se tivermos os pontos de dados {1,2,3,5,78}, é óbvio que 78 é mais externo. A mediana desses dados é 3 e a média é 17,8. Portanto, a mediana é a melhor maneira de resumir esses dados.
Fadwa