Agrupamento Fuzzy K-Means no Mahout



Este blog fornece uma introdução ao clustering Fuzzy K-Means no Apache Mahout.

Fuzzy K-Means é exatamente o mesmo algoritmo que K-means, que é uma técnica popular de agrupamento simples. A única diferença é que, em vez de atribuir um ponto exclusivamente a apenas um cluster, ele pode ter algum tipo de imprecisão ou sobreposição entre dois ou mais clusters. A seguir estão os pontos-chave, descrevendo Fuzzy K-Means:





  • Ao contrário do K-Means, que busca o cluster rígido, em que cada um dos pontos pertence a um cluster, o Fuzzy K-Means busca os clusters mais suaves para sobreposição.
  • Um único ponto em um cluster flexível pode pertencer a mais de um cluster com um determinado valor de afinidade para cada um dos pontos.
  • A afinidade é proporcional à distância desse ponto ao centróide do cluster.
  • Semelhante ao K-Means, Fuzzy K-Means funciona nos objetos que têm a medida de distância definida e podem ser representados no n- espaço vetorial dimensional.

Fluxo de MapReduce de K-Means difuso

Não há muita diferença entre o fluxo de MapReduce de K-Means e Fuzzy K-Means. A implementação de ambos no Mahout é semelhante.

implementação de classificação de mesclagem c ++

A seguir estão os parâmetros essenciais para a implementação de Fuzzy K-Means:



  • Você precisa de um conjunto de dados vetoriais para entrada.
  • Deve haver o RandomSeedGenerator para propagar os k clusters iniciais.
  • Para medir a distância, SquaredEuclideanDistanceMeasure é necessário.
  • Um grande valor de limite de convergência, como –cd 1.0, se o valor quadrado da medida de distância foi usado
  • Um valor para maxIterations, o valor padrão é -x 10.
  • O coeficiente de normalização ou o fator de nebulosidade, com um valor maior que -m 1,0

Tem alguma questão para nós? Mencione-os na seção de comentários e entraremos em contato com você.

c c # c ++

Postagens Relacionadas



quando usar este java

Aprendizagem supervisionada no Apache Mahout