O que são clusters e clustering?

 Matemática

 

Os clusters, na Estatística e na Ciência de Dados, são grupamentos de elementos similares num banco de dados. Identificar clusters permite analisar padrões e estruturas, e até mesmo tirar conclusões que se estendem além.

 

O conjunto de técnicas de formular clusters se chama clustering. O resultado são elementos dentro de um grupo que sejam semelhantes entre si e difiram mais de outros grupos.

 

Isso é importante em várias áreas do conhecimento. Pode-se citar alguns exemplos: estudos de Marketing, definições de espécies na Biologia, Machine Learning e outros tantos.

 

Antes e depois do clustering

[Dados brutos e separados por clusters. Imagem: Google for Developers | Reprodução]


 

DEPOIS, VOCÊ PODE LER TAMBÉM

» Os princípios da regressão linear

 

» Fazendo amostragens

 

» Quais os limites da estimação?

 

O CLUSTERING

 

Clustering é o processo de gerar clusters, ou seja, trata-se da categorização e agrupamento de dados. Não é uma técnica de cálculo simples, sendo necessário usar algoritmos computacionais para sua execução.

 

Os algoritmos de machine learning identificam padrões e características de forma autônoma. Dados coletados são divididos em clusters, que nada mais são do que grupos. Num banco de dados de músicas, por exemplo, esses clusters poderiam ser organizados por gênero ou período, e essa organização muda a percepção sobre cada dado.

 

É importante compreender a diferença entre dados rotulados ou não. Se temos imagens de doces, como brigadeiro, beijinho, bem-casado e cajuzinho, por exemplo. Podemos informar ao programa que o tipo de doce é uma entrada (rótulo) para inserir dados futuros.

 

Em contraponto, podemos não informar rótulos e o algoritmo identifica padrões nos dados. De maneira mais rígida, apenas quando não se definem esses rótulos que se tem clustering. O exemplo anterior, com dados rotulados, seria uma classificação. Em alguns casos, os dados rotulados podem praticamente inexistir e o clustering gerar um pré-processamento.

 

Pelo fato de o clustering e a classificação envolverem o operador ou não, recebem nomes distintos quanto à necessidade de supervisão. Clustering é um método não supervisionado, e classificação, por sua vez, supervisionado.

 

APLICAÇÕES DOS CLUSTERS NA ANÁLISE DE DADOS

 

Existem vários exemplos práticos se usos dos clusters gerados a partir do clustering. Um desses exemplos está no marketing, onde empresas segmentam clientes com base nos comportamentos de compra, preferências e aspectos socioeconômicos e geográficos. Com isso, pode-se produzir campanhas mais eficazes.

 

Já no mercado financeiro, os clusters de ativos permitem melhorar a análise de risco e a tomar decisões de investimento. Na Biologia, a definição de espécies usa as características genéticas ou fenotípicas.

 

AS MEDIDAS DE SIMILARIDADE EM CLUSTERING

 

A base do clustering é medir a similaridade ou não dos dados por medidas de distância. Não existe uma única forma de se medir essa distância, que pode ser:

 

• por distância euclidiana, onde se calcula a distância entre dois pontos num espaço multidimensional;

• por distância de Manhattan, onde se verifica a soma das diferenças absolutas entre coordenadas;

• por similaridade de cosseno, onde é medido o ângulo entre dois vetores, útil em dados de alta dimensão.

 

A escolha da métrica muda bastante os resultados do clustering. Essa decisão é, portanto, crítica no processo

 

TIPOS DE CLUSTERING

 

Há várias formas de fazer clustering, sendo algumas derivadas destes dois métodos tradicionais:

 

• Particionais: forma clusters pela divisão em partes dos dados de um conjunto, com base na similaridade. O programador deve especificar o número de clusters a gerar.

• Hierárquicos: baseiam-se na matriz de distância. No caso de dados brutos, o algoritmo calcula a matriz de distância em segundo plano, faz a mescla entre clusters mais próximos e semelhantes, até apresentar os clusters definitivos. Visualmente, resultam nas chamadas árvores ou dendrogramas.

 

Em resumo, o particional começa da ideia de um conjunto de dados que é subdividido e o hierárquico ou aglomerativo é diferente. No hierárquico, todo elemento é um cluster que se funde, ou seja, vai-se da unidade ao todo.

 

ALGORITMO DE CLUSTERING

 

Existem vários tipos de algoritmos de clustering. O K-means divide os dados em K grupos com base na média dos pontos de cada cluster. A divisão é iterativa, pela minimização da soma dos quadrados das distâncias entre pontos e centroide dos clusters.

 

O pesquisador fornece o número de K grupos. Ele também pode informar os pontos de centroide desses grupos.

 

Também há o DBSCAN (Density-Based Spatial Clustering of Applications with Noise), que identifica clusters de forma densa e reage bem a ruídos e a outliers.  As formas dos clusters podem ser arbitrárias.

 

Já o Hierarchical Clustering cria uma árvore de clusters, mostrando relações entre os dados. É muito importante recorrer aos algoritmos certos conforme os dados e objetivos da análise. 

 

O Mean Shift encontra centroides dos clusters após se deslocar iterativamente nas regiões mais densas em pontos. Ele encontra clusters de formas não lineares e não é tão sensível a hiperparâmetros.

 

O Gaussian Mixture Model ou GMM é o que seu nome diz: que os dados são misturas de distribuições gaussianas. O algoritmo do tipo Expectation-Maximization (EM) permite estimar os parâmetros do modelo e definir quais pontos pertencem a cada cluster. 

 

Outro algoritmo é o Spectral Clustering, por mapear espaços de menor dimensão por técnicas de Álgebra Linear e depois usar outro algorimo tradicional de clustering. Esse algoritmo encontra clusters não convexos e age bem na presença de ruído.

 

REDUÇÃO DE COMPLEXIDADE

 

É possível reduzir a complexidade de grandes conjuntos de dados pela redução das dimensões. Isso simplifica o uso dos dados. Para tanto, pode-se usar técnicas como a PCA.

 

VALIDAÇÃO DE CLUSTERS

 

Para que os grupos criados sejam significativos e úteis, há algumas métricas possíveis para avaliação. Pode-se analisar a coesão interna (o quanto os elementos estão próximos) e a separação externa (o quanto os clusters se diferem). Representando essas métricas tem-se o Silhouette Score e o Índice de Dunn. 

 

FERRAMENTAS PARA CLUSTERING

 

Comentamos que clustering não se faz manualmente. Isso faz com que escolher ferramentas como softwares prontos, ou programar seja necessário.

 

Python e R possuem bibliotecas robustas, como Scikit-learn e R’s cluster, que permitem a execução de algoritmos de clustering. Outros exemplos são as plataformas como Tableau e RapidMiner. A escolha da ferramenta ideal depende das necessidades de análise e da familiaridade do analista com a tecnologia.

 

PARA FAZER ANÁLISES ROBUSTAS

 

Mostramos um tipo de modelagem estatística ao longo deste post, mas vários outros explicam fenômenos para estudo. Na sugestão de post da linha azul 👇🏻, você descobre mais sobre uma ferramenta robusta para análises mais densas de dados:

 

E AINDA MAIS PARA VOCÊ:

👉 Os computadores quânticos

 

 

GOSTOU DESSA POSTAGEM ? USANDO A BARRA DE BOTÕES, COMPARTILHE COM SEUS AMIGOS 😉!

Postar um comentário

0 Comentários