Clustering em Machine Learning: 3 tipos de clustering explicados

Publicados: 2020-11-30

Índice

Introdução

Machine Learning é uma das tecnologias mais quentes em 2020, pois os dados estão aumentando dia a dia, a necessidade de Machine Learning também está aumentando exponencialmente. Machine Learning é um tópico muito vasto que possui diferentes algoritmos e casos de uso em cada domínio e indústria. Um deles é o Aprendizado Não Supervisionado no qual podemos ver o uso do Clustering.

O aprendizado não supervisionado é uma técnica na qual a máquina aprende a partir de dados não rotulados. Como não conhecemos os rótulos, não há uma resposta certa para a máquina aprender com isso, mas a própria máquina encontra alguns padrões a partir dos dados fornecidos para encontrar as respostas para o problema de negócios.

Clustering é uma técnica de Aprendizado Não Supervisionado de Aprendizado de Máquina que envolve o agrupamento de dados não rotulados fornecidos. Em cada conjunto de dados limpo, usando o algoritmo de agrupamento, podemos agrupar os pontos de dados fornecidos em cada grupo. O algoritmo de agrupamento pressupõe que os pontos de dados que estão no mesmo cluster devem ter propriedades semelhantes, enquanto os pontos de dados em diferentes clusters devem ter propriedades altamente diferentes.

Neste artigo, vamos aprender a necessidade de clustering, diferentes tipos de clustering, juntamente com seus prós e contras.

Leia: Pré-requisito de Machine Learning

Qual é a necessidade de Clustering?

O clustering é um algoritmo de ML amplamente usado que nos permite encontrar relacionamentos ocultos entre os pontos de dados em nosso conjunto de dados.

Exemplos:

1) Os clientes são segmentados de acordo com as semelhanças dos clientes anteriores e podem ser usados ​​para recomendações.

2) Com base em uma coleção de dados de texto, podemos organizar os dados de acordo com as semelhanças de conteúdo para criar uma hierarquia de tópicos.

3) Processamento de imagens principalmente na pesquisa em biologia para identificação dos padrões subjacentes.

4) Filtragem de spam.

5) Identificação de atividades fraudulentas e criminosas.

6) Também pode ser usado para futebol de fantasia e esportes.

Tipos de agrupamento

Existem muitos tipos de algoritmos de clustering no aprendizado de máquina. Vamos discutir os três algoritmos abaixo neste artigo:

1) Agrupamento de K-Means.

2) Agrupamento de deslocamento médio.

3) DBSCAN.

1. Agrupamento de K-Means

K-Means é o algoritmo de clustering mais popular entre os outros algoritmos de clustering em Machine Learning. Podemos ver esse algoritmo usado em muitas indústrias importantes ou mesmo em muitos cursos de introdução. É um dos modelos mais fáceis de começar tanto na implementação quanto na compreensão.

Passo-1 Primeiro selecionamos um número aleatório de k para usar e inicializamos aleatoriamente seus respectivos pontos centrais.

Etapa 2 Cada ponto de dados é então classificado calculando a distância (euclidiana ou Manhattan) entre esse ponto e cada centro do grupo e, em seguida, agrupando o ponto de dados para estar no cluster cujo centro está mais próximo a ele.

Passo 3 Nós recalculamos o centro do grupo tomando a média de todos os vetores do grupo.

Etapa 4 Repetimos todas essas etapas por várias iterações ou até que os centros do grupo não mudem muito.

Prós

1) Muito rápido.

2) Muito poucos cálculos

3) Complexidade Linear O(n).

Contras

1) Selecionando o valor k.

2) Diferentes centros de agrupamento em diferentes execuções.

3) Falta de consistência.

2. Agrupamento de deslocamento médio

O agrupamento de deslocamento médio é um algoritmo baseado em janela deslizante que tenta identificar as áreas densas dos pontos de dados. Sendo um algoritmo baseado em centroides, o que significa que o objetivo é localizar os pontos centrais de cada classe que, por sua vez, funciona atualizando candidatos para pontos centrais para serem a média dos pontos na janela deslizante.

Essas janelas candidatas selecionadas são então filtradas em uma etapa de pós-processamento para eliminar duplicatas que ajudarão na formação do conjunto final de centros e suas classes correspondentes.

Passo-1 Começamos com uma janela deslizante circular centrada em um ponto C (selecionado aleatoriamente) e tendo o raio r como kernel. O deslocamento médio é um tipo de algoritmo de escalada que envolve a mudança desse kernel iterativamente para uma região de densidade mais alta em cada etapa até atingirmos a convergência.

Passo 2 Após cada iteração, a janela deslizante é deslocada para regiões de maior densidade, deslocando o ponto central para a média dos pontos dentro da janela. A densidade dentro da janela deslizante aumenta com o aumento do número de pontos dentro dela. Deslocar a média dos pontos na janela moverá gradualmente para áreas de maior densidade de pontos.

Etapa 3 Nesta etapa, continuamos a deslocar a janela deslizante com base no valor médio até que não haja direção na qual um deslocamento possa obter mais pontos dentro do kernel selecionado.

Passo-4 Os Passos 1-2 são feitos com muitas janelas deslizantes até que todos os pontos estejam dentro de uma janela. Quando várias janelas deslizantes tendem a se sobrepor, a janela que contém o maior número de pontos é selecionada. Os pontos de dados agora são agrupados de acordo com a janela deslizante em que residem.

Prós

1) Não há necessidade de selecionar o número de clusters.

2) Se encaixa bem em um sentido naturalmente orientado a dados

Contras

1) A única desvantagem é que a seleção do tamanho da janela (r) pode não ser trivial.

3. Agrupamento Espacial de Aplicativos com Ruído Baseado em Densidade (DBSCAN)

O DBSCAN é como o agrupamento Mean-Shift, que também é um algoritmo baseado em densidade com algumas alterações.

Passo-1 Começa com um ponto de partida arbitrário, a vizinhança deste ponto é extraída usando uma distância chamada épsilon.

Etapa 2 O agrupamento será iniciado se houver pontos suficientes e o ponto de dados se tornar o primeiro novo ponto em um agrupamento. Se não houver dados suficientes, o ponto será rotulado como ruído e o ponto visitado.

Passo 3 Os pontos dentro do épsilon tendem a se tornar parte do cluster. Este procedimento é repetido para todos os pontos dentro do cluster.

Etapa 4 As etapas 2 e 3 são repetidas até que os pontos do cluster sejam visitados e rotulados.

Passo 5 Ao completar o cluster atual, um novo ponto não visitado é processado em um novo cluster levando a classificá-lo em um cluster ou como um ruído.

Prós

1) Não há necessidade de definir o número de clusters.

2) Define outliers como ruído.

3) Ajuda a encontrar muito bem os clusters de tamanho arbitrário e de forma arbitrária.

Contras

1) Não funciona bem em clusters de densidade variável.

2) Não funciona bem com dados de alta dimensão.

Leia também: Ideias de projetos de aprendizado de máquina

Conclusão

Neste artigo, conhecemos a necessidade do clustering no mercado atual, diferentes tipos de algoritmos de clustering e seus prós e contras. Clustering é realmente um tópico muito interessante em Machine Learning e existem muitos outros tipos de algoritmos de clustering que valem a pena aprender.

Se você estiver interessado em aprender mais sobre aprendizado de máquina, confira o PG Diploma in Machine Learning & AI do IIIT-B e upGrad, projetado para profissionais que trabalham e oferece mais de 450 horas de treinamento rigoroso, mais de 30 estudos de caso e atribuições, IIIT- B Status de ex-aluno, mais de 5 projetos práticos práticos e assistência de trabalho com as principais empresas.

O que significa agrupamento de mistura gaussiana?

Os modelos de mistura gaussiana são geralmente usados ​​no caso de dados de consulta para realizar agrupamentos rígidos ou flexíveis. Os modelos de mistura gaussiana fazem algumas suposições para realizar bem o agrupamento. Com base nas suposições, o modelo agrupa os pontos de dados que pertencem a uma única distribuição. Esses são modelos probabilísticos e usam uma abordagem de agrupamento suave para realizar o processo de agrupamento com eficiência.

Qual é o coeficiente de silhueta no agrupamento?

Para medir o quão bem o agrupamento foi realizado, usamos o coeficiente de silhueta. Basicamente, a distância média entre dois clusters é medida e, em seguida, a largura da silhueta é calculada usando uma fórmula. Dessa forma, podemos medir facilmente o número ótimo de clusters presentes nos dados fornecidos e, assim, descobrir a eficiência do clustering realizado.

O que significa cluster difuso no aprendizado de máquina?

Quando os dados fornecidos estão em mais de um cluster ou grupo, um método de agrupamento fuzzy é usado, que funciona em um algoritmo fuzzy C-mean ou algoritmo fuzzy K-mean. É um método de agrupamento suave. De acordo com a distância entre o centro do cluster e o ponto da imagem, o método atribui valores de pertinência a cada ponto da imagem associado a cada centro do cluster.