Aprendizado de máquina não supervisionado: AlgorithmsTipos e exemplos

⚡ Resumo Inteligente

A aprendizagem não supervisionada é uma técnica de aprendizado de máquina que funciona com dados não rotulados, permitindo que o modelo descubra a estrutura por conta própria através de agrupamento, regras de associação e redução de dimensionalidade, em vez de a partir de respostas fornecidas antecipadamente.

  • 🔘 Não são necessários rótulos: O algoritmo busca por estrutura em vez de comparar com respostas conhecidas.
  • ☑️ Três famílias de tarefas: Clustermineração de regras de associação e redução de dimensionalidade.
  • Quatro estilos de agrupamento: Exclusivo, aglomerativo, sobreposiçãoping e probabilístico.
  • 🧪 Algoritmos nomeados: K-means, agrupamento hierárquico, Fuzzy C-Means, PCA, SVD e ICA.
  • 🛠️ Onde se justifica o seu sustento: Segmentação de clientes, detecção de fraudes e anomalias, análise de cesta de compras, pré-processamento de dados.
  • ⚙️ A compensação: A ausência de uma verdade fundamental significa que os resultados devem ser interpretados, validados e nomeados por um ser humano.

Aprendizado de máquina não supervisionado: algoritmos, tipos com exemplos

O que é Aprendizagem Não Supervisionada?

A aprendizagem não supervisionada é uma técnica de aprendizado de máquina na qual o usuário não precisa supervisionar o modelo. Em vez disso, permite que o modelo trabalhe por conta própria para descobrir padrões e informações que antes não eram detectados. Ela lida principalmente com dados não rotulados.

Aprendizagem não supervisionada Algorithms

Aprendizagem não supervisionada Algorithms permitir que os usuários executem tarefas de processamento mais complexas em comparação com aprendizagem supervisionadaA aprendizagem não supervisionada, no entanto, pode ser mais imprevisível do que métodos treinados com base em respostas conhecidas. Os algoritmos de aprendizagem não supervisionada incluem agrupamento, detecção de anomalias, redução de dimensionalidade e redes neurais auto-organizáveis.

Exemplo de aprendizado de máquina não supervisionado

Vamos usar como exemplo a aprendizagem não supervisionada de um bebê e seu cachorro de estimação. A primeira imagem mostra o animal de estimação que o bebê já reconhece.

Um bebê com o cachorro da família, o animal que ela já reconhece.

Ela conhece e identifica esse cachorro. Algumas semanas depois, um amigo da família traz um cachorro e tenta brincar com o bebê. Esse segundo cachorro, desconhecido, é mostrado abaixo.

Um cachorro desconhecido que o bebê nunca tinha visto antes.

O bebê nunca tinha visto esse cachorro antes. Mas ela reconhece que muitas características (duas orelhas, olhos, andar sobre quatro patas) são semelhantes às do seu cachorro de estimação. Ela identifica o novo animal como um cachorro. Isso é aprendizado não supervisionado, onde você não recebe instruções, mas aprende com os dados (neste caso, dados sobre um cachorro). Se fosse aprendizado supervisionado, o amigo da família teria dito ao bebê que era um cachorro, como mostrado no exemplo de aprendizado não supervisionado acima.

Por que aprendizagem não supervisionada?

Aqui estão os principais motivos para usar o aprendizado não supervisionado em Machine Learning:

  • O aprendizado de máquina não supervisionado encontra todos os tipos de padrões desconhecidos nos dados.
  • Os métodos não supervisionados ajudam você a encontrar recursos que podem ser úteis para categorização.
  • Ele pode processar os dados à medida que chegam, de modo que os registros recebidos são analisados ​​e agrupados sem a necessidade de esperar que um humano os rotule primeiro.
  • É mais fácil obter dados não rotulados de um computador do que dados rotulados, que necessitam de intervenção manual.

ClusterTipos de aprendizagem não supervisionada Algorithms

Os problemas de aprendizagem não supervisionada são ainda agrupados em problemas de agrupamento, associação e redução de dimensionalidade. ClusterAgrupar registros semelhantes, a associação encontrar itens que aparecem juntos e a redução de dimensionalidade comprimir muitas características em poucas.

Clustering

Clustering é um conceito importante quando se trata de aprendizagem não supervisionada. Trata principalmente de encontrar uma estrutura ou padrão em uma coleção de dados não categorizados. Aprendizagem não supervisionada ClusterOs algoritmos de agrupamento processarão seus dados e encontrarão agrupamentos naturais (grupos), caso existam. Você também pode modificar a quantidade de agrupamentos que seus algoritmos devem identificar, permitindo ajustar a granularidade desses grupos. O diagrama abaixo mostra registros dispersos resolvidos em grupos distintos.

ClusterDiagrama mostrando pontos de dados não rotulados agrupados em clusters separados.

Existem diferentes tipos de cluster que você pode utilizar:

Exclusivo (particionamento)

Nesse método de agrupamento, os dados são agrupados de forma que um registro possa pertencer a apenas um grupo.

Exemplo: K-significa

Aglomerativo

Nessa técnica de agrupamento, cada registro começa como seu próprio cluster. As uniões iterativas entre os dois clusters mais próximos reduzem o número de clusters.

Exemplo: cluster hierárquico

sobreposiçãoping

Nesta técnica, conjuntos difusos são usados ​​para agrupar dados. Cada ponto pode pertencer a dois ou mais grupos com diferentes graus de pertinência.

Aqui, os dados serão associados a um valor de associação apropriado. Exemplo: Médias C Fuzzy

Probabilístico

Essa técnica utiliza uma distribuição de probabilidade para criar os agrupamentos.

Exemplo: As seguintes palavras-chave

  • “sapato de homem”.
  • “sapato feminino”.
  • “luva feminina”.
  • “luva de homem”.

podem ser agrupados em duas categorias, “sapato” e “luva”, ou “homem” e “mulher”.

ClusterTipos de uso

A seguir, estão os algoritmos mais frequentemente encontrados em Aprendizado de Máquina não supervisionado. Os dois primeiros agrupam registros, os três últimos reduzem a dimensionalidade em vez de formar clusters, e o K-NN está listado porque é frequentemente confundido com o K-means.

  • Agrupamento hierárquico — agrupamento
  • Agrupamento K-means — agrupamento
  • K-NN (k vizinhos mais próximos) — um classificador supervisionado, não um método de agrupamento.
  • Análise de Componentes Principais — redução de dimensionalidade
  • Decomposição em Valores Singulares — redução de dimensionalidade
  • Análise de Componentes Independentes — redução de dimensionalidade

Hierárquico Clustering

O agrupamento hierárquico é um algoritmo que constrói uma hierarquia de clusters. Ele começa com todos os dados atribuídos a um cluster próprio. Nesse processo, dois clusters próximos são mesclados em um único cluster. O algoritmo termina quando resta apenas um cluster. Ele define dois conceitos que merecem ser mencionados separadamente.

Agrupamento aglomerativo

Essa forma de agrupamento hierárquico de baixo para cima não requer o número de clusters K como entrada. O processo de aglomeração começa formando cada registro como um cluster individual.

Este método utiliza alguma medida de distância e reduz o número de clusters (um em cada iteração) por meio de um processo de fusão. Por fim, temos um grande cluster contendo todos os objetos, e o analista corta a árvore na altura que resulta em um número razoável de grupos.

Dendrograma

No método de agrupamento por dendrograma, cada nível representa um possível grupo. A altura do dendrograma mostra o grau de similaridade entre dois grupos unidos. Quanto mais próximos da base do dendrograma, maior a similaridade entre os grupos; a escolha do ponto de corte que define os grupos finais não é automática e é, em grande parte, subjetiva.

K-significa Clustering

O K-means é um algoritmo de agrupamento iterativo que refina o grupo.ping Em cada iteração, inicialmente, seleciona-se o número desejado de clusters. Nesse método de agrupamento, é necessário agrupar os pontos de dados em k grupos. Um valor maior de k significa grupos menores com maior granularidade; um valor menor de k significa grupos maiores com menor granularidade.

O resultado do algoritmo é um conjunto de "rótulos". Ele atribui cada ponto de dados a um dos k grupos. No agrupamento k-means, cada grupo é definido pela criação de um centroide para esse grupo. Os centroides são como o núcleo do cluster, que captura os pontos mais próximos a eles e os adiciona ao cluster.

K- Vizinhos mais próximos

O K-vizinhos mais próximos (K-NN) é o mais simples de todos os classificadores de aprendizado de máquina. Ele difere de outras técnicas de aprendizado de máquina por não produzir um modelo. É um algoritmo simples que armazena todos os casos disponíveis e classifica novas instâncias com base em uma medida de similaridade. Como precisa de casos rotulados para realizar a classificação, o K-NN é um método supervisionado; ele aparece aqui apenas porque sua lógica baseada em distância se assemelha à de agrupamento (clustering).

Funciona muito bem quando há uma distância significativa entre os exemplos. A velocidade de aprendizado é lenta quando o conjunto de treinamento é grande e o cálculo da distância não é trivial.

Análise de Componentes Principais

A Análise de Componentes Principais (PCA) utiliza um espaço de alta dimensão e seleciona uma nova base, keeping Apenas as pontuações mais importantes. Cada direção nessa base é conhecida como um componente principal. O subconjunto que você mantém constitui um novo espaço que é pequeno em comparação com o espaço original. Ele preserva o máximo possível da complexidade dos dados.

Associação

As regras de associação permitem estabelecer relações entre objetos de dados em grandes bancos de dados. Essa técnica não supervisionada busca descobrir relações interessantes entre variáveis ​​em grandes bancos de dados e é um elemento fundamental de... mineração de dadosPor exemplo, pessoas que compram uma casa nova têm maior probabilidade de comprar móveis novos.

Outros exemplos:

  • Um subgrupo de pacientes com câncer agrupados por suas medições de expressão gênica.
  • Grupos de compradores com base em seus históricos de navegação e compras.
  • Filmes agrupados pelas avaliações dos espectadores.

Aprendizado de máquina supervisionado versus não supervisionado

Aqui está a principal diferença entre Aprendizagem supervisionada vs. aprendizagem não supervisionada:

Parâmetros Técnicos Técnica de aprendizado de máquina supervisionado Técnica de aprendizado de máquina não supervisionado
Dados de entrada Algorithms são treinados usando dados rotulados. Algorithms são usados ​​em dados que não estão rotulados
Complexidade computacional A aprendizagem supervisionada é um método mais simples. A aprendizagem não supervisionada é computacionalmente complexa
Precisão A precisão pode ser medida diretamente em comparação com rótulos conhecidos. A precisão não pode ser medida diretamente; os resultados precisam de interpretação.
Saída típica Uma previsão para cada novo recorde Grupos, regras ou recursos compactados

Aplicações de aprendizado de máquina não supervisionado

Algumas aplicações das técnicas de aprendizado não supervisionado são:

  • ClusterO ing divide automaticamente o conjunto de dados em grupos com base em suas semelhanças.
  • A detecção de anomalias pode descobrir pontos de dados incomuns em seu conjunto de dados. É útil para encontrar transações fraudulentas
  • A mineração de associação identifica conjuntos de itens que frequentemente ocorrem juntos em seu conjunto de dados
  • Os modelos de variáveis ​​latentes são amplamente utilizados para o pré-processamento de dados, como a redução do número de atributos em um conjunto de dados ou a decomposição do conjunto de dados em múltiplos componentes.

Desvantagens da aprendizagem não supervisionada

  • Não é possível obter informações precisas sobre a classificação de dados, porque os dados usados ​​na aprendizagem não supervisionada não são rotulados e seu verdadeiro grupo é desconhecido.ping Não é conhecido
  • Less A precisão dos resultados é limitada, pois os dados de entrada não são conhecidos nem rotulados previamente por pessoas. Isso significa que a máquina precisa realizar esse processo por conta própria.
  • As classes espectrais nem sempre correspondem às classes informacionais.
  • O usuário precisa dedicar tempo interpretando e rotulando as classes resultantes da classificação.
  • As propriedades espectrais das classes também podem mudar com o tempo, portanto, não é possível manter as mesmas informações de classe ao passar de uma imagem para outra.

Perguntas Frequentes

O método do cotovelo plota o erro dentro do cluster em função de k e procura a inflexão. A pontuação da silhueta, que varia de −1 a 1, avalia o quão bem cada ponto se ajusta ao seu cluster. Leia ambos em conjunto.

Os algoritmos baseados em distância tratam todas as unidades igualmente, portanto, uma coluna de salário em milhares terá predominância sobre uma coluna de idade em anos. Padronizar cada característica primeiro garante que cada variável tenha uma participação justa no cálculo da distância.

O Apriori é o clássico algoritmo de mineração de regras de associação por trás da análise de cestas de compras. Ele encontra conjuntos de itens frequentes e os transforma em regras classificadas por suporte, confiança e lift. O FP-growth e o Eclat fazem o mesmo, porém mais rapidamente.

A aprendizagem semissupervisionada utiliza um pequeno conjunto de dados rotulados juntamente com um grande conjunto de dados não rotulados. A estrutura encontrada nos dados não rotulados guia o modelo, de modo que a precisão se aproxima de um resultado supervisionado com um custo de rotulagem muito menor.

A PCA é uma transformação linear que preserva a variância global e se aplica a novos registros. O t-SNE é não linear e foi desenvolvido para visualizar vizinhanças locais em duas dimensões; as distâncias entre grupos separados não devem ser interpretadas literalmente.

Isolation Forest, SVM de uma classe, DBSCAN e erro de reconstrução do autoencoder são as opções mais comuns. Cada um deles avalia o quão distante um registro está do restante dos dados, de modo que um limiar define o que é considerado anômalo.

Os fluxos de trabalho automatizados analisam algoritmos, medidas de distância e valores de k, classificando as execuções por meio de pontuações de validade interna. Os modelos de linguagem, cada vez mais, criam nomes em inglês simples para os segmentos resultantes, reduzindo a etapa de interpretação.

Copiloto do GitHub Cria pipelines do scikit-learn, gráficos de cotovelo e gráficos de silhueta a partir de um único comando. Verifique se as características foram dimensionadas e se uma semente aleatória foi definida, o que frequentemente resulta em trechos de código omitidos.

Resuma esta postagem com: