Avaliar diferentes tipos de clustering

Concluído

Treinando um modelo de clustering

Há vários algoritmos que você pode usar para clustering. Um dos algoritmos mais usados é o cluster K-Means, que, em sua forma mais simples, consiste nas etapas a seguir:

  1. Os valores de recurso são vetorizados para definir a criação de coordenadas n-dimensionais (em que n é o número de recursos). No exemplo da flor, temos duas características: número de pétalas e número de folhas. Portanto, o vetor de recursos tem duas coordenadas que podemos usar para plotar conceitualmente os pontos de dados no espaço bidimensional.
  2. Você decide quantos clusters deseja usar para agrupar as flores - chame esse valor k. Por exemplo, para criar três clusters, você usaria um valor de k de 3. Em seguida, os pontos k são plotados em coordenadas aleatórias. Esses se tornam os pontos centrais de cada cluster e são chamados de centroides.
  3. Cada ponto de dados (nesse caso, uma flor) é atribuído ao seu centroide mais próximo.
  4. Cada centroide é movido para o centro dos pontos de dados atribuídos a ele com base na distância média entre os pontos.
  5. Depois que o centroide é movido, os pontos de dados podem estar mais próximos de um centroide diferente, portanto, os pontos de dados são reatribuídos aos clusters com base no novo centroide mais próximo.
  6. As etapas de movimentação de centroide e realocação de cluster são repetidas até que os clusters se tornem estáveis ou um número máximo de iterações predeterminado seja atingido.

A seguinte animação mostra esse processo:

Ilustração mostrando uma coleção de flores com diferentes números de pétalas e folhas.

Clustering hierárquico

O clustering hierárquico é outro tipo de algoritmo de clustering no qual os próprios clusters pertencem a um grupo maior, que pertencem a grupos ainda maiores e assim por diante. O resultado é que os pontos de dados podem ser clusters em graus diferentes de precisão: com um grande número de grupos muito pequenos e precisos ou um pequeno número de grupos maiores.

Por exemplo, se aplicarmos o clustering aos significados das palavras, poderemos obter um grupo que contém adjetivos específicos às emoções (como "bravo" ou "feliz"). Esse grupo pertence a um grupo que contém todos os adjetivos relacionados a seres humanos ("feliz", "bonito", "jovem"), que pertence a um grupo ainda maior com todos os adjetivos ("feliz", "verde", "bonito", "duro" etc.).

Ilustração mostrando agrupamento hierárquico.

O clustering hierárquico é útil não só para dividir dados em grupos, mas também para entender as relações entre esses grupos. Uma grande vantagem do cluster hierárquico é que ele não exige que o número de clusters seja definido antecipadamente. E, às vezes, ele pode fornecer resultados mais interpretáveis do que abordagens não hierárquicas. A grande desvantagem é que essas abordagens podem demorar mais para serem computadas do que as abordagens mais simples e às vezes não são adequadas para grandes conjuntos de dados.