Avaliar diferentes tipos de clustering
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:
- 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.
- 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.
- Cada ponto de dados (nesse caso, uma flor) é atribuído ao seu centroide mais próximo.
- Cada centroide é movido para o centro dos pontos de dados atribuídos a ele com base na distância média entre os pontos.
- 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.
- 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:
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.).
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.