Interpretar resultados e ajustar o clustering

Como o clustering não é supervisionado, nenhuma "verdade" está disponível para verificar os resultados. A ausência de verdade complica a avaliação de qualidade. Além disso, os conjuntos de dados reais não se enquadram em clusters óbvios de exemplos, como o conjunto de dados mostrado na Figura 1.

Um gráfico mostrando três grupos claros de pontos de dados
Figura 1: um gráfico de dados ideal. Dados reais raramente são assim.

Infelizmente, os dados reais são mais semelhantes à Figura 2, o que dificulta a avaliação visual da qualidade do clustering.

Um gráfico com pontos de dados aleatórios
Figura 2: um gráfico de dados real

O fluxograma abaixo resume como verificar a qualidade do clustering. Falaremos mais sobre isso nas próximas seções.

Fluxograma visual do processo de verificação
Clique aqui para ver uma versão maior do gráfico.

Etapa 1: qualidade do clustering

Verificar a qualidade do clustering não é um processo rigoroso porque o clustering não tem "verdade". Estas são as diretrizes que podem ser aplicadas iterativamente para melhorar a qualidade do clustering.

Primeiro, realize uma verificação visual para confirmar que os clusters têm a aparência esperada e que exemplos que você considera semelhantes aparecem no mesmo cluster. Em seguida, verifique essas métricas usadas com frequência, conforme descrito nas seções a seguir:

  • Cardinalidade de cluster
  • magnitude do cluster
  • Desempenho do sistema downstream
Um gráfico que mostra a cardinalidade de vários clusters. Alguns dos clusters têm grandes diferenças.
Figura 2: cardinalidade de vários clusters.

Cardinalidade do cluster

A cardinalidade do cluster é o número de exemplos por cluster. Representar a cardinalidade de cluster de todos os clusters e investigar os clusters que são outliers importantes. Por exemplo, na Figura 2, investigue o cluster número 5.

Um gráfico que mostra a magnitude de
          vários clusters. Um cluster tem magnitude significativamente maior
                                            do que os outros.
Figura 3: amplitude de vários clusters.

magnitude do cluster

A magnitude do cluster é a soma das distâncias de todos os exemplos até o centroide do cluster. Assim como na cardinalidade, verifique como a magnitude varia nos clusters e investigue anomalias. Por exemplo, na Figura 3, investigue o número de cluster 0.

Um gráfico de dispersão que mostra a cardinalidade e a magnitude de vários clusters. Um
          cluster é um outlier no gráfico.
Figura 4: cardinalidade vs. Magnitude de vários clusters.

Magnitude x cardinalidade

Observe que uma cardinalidade de cluster mais alta tende a resultar em uma magnitude de cluster maior, o que intuitivamente faz sentido. Os clusters são anômalos quando a cardinalidade não está correlacionada com a magnitude em relação aos outros clusters. Para encontrar clusters anômalos, compare a magnitude com a cardinalidade. Por exemplo, na Figura 4, o ajuste de uma linha nas métricas do cluster mostra que o número de cluster 0 é anômalo.

Desempenho do sistema downstream

Como a saída de clustering geralmente é usada em sistemas de ML downstream, verifique se o desempenho do sistema downstream melhora quando o processo de clustering muda. O impacto no desempenho downstream fornece um teste real para a qualidade do clustering. A desvantagem é que essa verificação é complexa.

Perguntas a serem investigadas em caso de problemas

Se você encontrar problemas, verifique a preparação de dados e a medida de semelhança, fazendo as seguintes perguntas:

  • Seus dados são escalonados?
  • Sua medida de semelhança está correta?
  • Seu algoritmo está realizando operações semanticamente significativas nos dados?
  • As suposições do algoritmo correspondem aos dados?

Etapa 2: desempenho da medida de semelhança

Seu algoritmo de clustering é tão bom quanto sua medida de semelhança. Verifique se sua medida de semelhança retorna resultados razoáveis. A verificação mais simples é identificar pares de exemplos que são conhecidos por serem mais ou menos semelhantes a outros pares. Em seguida, calcule a medida de semelhança para cada par de exemplos. Verifique se a medida de semelhança para exemplos mais semelhantes é maior do que a medida de semelhança para exemplos menos semelhantes.

Os exemplos usados para verificar a medida de semelhança devem representar o conjunto de dados. Verifique se a medida de semelhança é válida para todos os seus exemplos. Essa verificação garante que sua medida de semelhança, seja manual ou supervisionada, seja consistente em todo o conjunto de dados. Caso a medida de semelhança seja inconsistente para alguns exemplos, eles não serão agrupados com exemplos semelhantes.

Caso você encontre exemplos com semelhanças imprecisas, é provável que a medida de semelhança não capture os dados do atributo que distinguem esses exemplos. Teste sua medida de semelhança e determine se você tem semelhanças mais precisos.

Etapa 3: número ideal de clusters

k-means exige que você decida o número de clusters \(k\) antes. Como você determina o valor ideal de \(k\)? Tente executar o algoritmo para aumentar \(k\) e observar a soma das magnitudes do cluster. À medida que \(k\) aumenta, os clusters ficam menores, e a distância total diminui. Considere essa distância em relação ao número de clusters.

Conforme mostrado na figura 4, em um determinado \(k\), a redução de perda se torna margem com o aumento de \(k\). Matematicamente, isso é aproximadamente o \(k\) em que a inclinação cruza acima de -1 (\(\theta > 135^{\circ}\)). Esta diretriz não indica um valor exato para o ideal \(k\) , mas apenas um valor aproximado. Para o gráfico exibido, o ideal \(k\) é aproximadamente 11. Se você preferir clusters mais granulares, escolha um mais alto \(k\) usando este gráfico como orientação.

Um gráfico mostrando a perda em comparação com os clusters usados. A perda diminui à medida que o número de clusters aumenta até
eles nivelarem cerca de 10 clusters
Figura 4: perda vs. número de clusters