Aprendizado não supervisionado, supervisionado e semi-supervisionado

27

No contexto do aprendizado de máquina, qual é a diferença entre

  • aprendizado não supervisionado
  • aprendizado supervisionado e
  • aprendizagem semi-supervisionada?

E quais são algumas das principais abordagens algorítmicas a serem observadas?

Ami
fonte
8
Primeiro, duas linhas do wiki: "Na ciência da computação, o aprendizado semi-supervisionado é uma classe de técnicas de aprendizado de máquina que usam dados rotulados e não rotulados para treinamento - normalmente uma pequena quantidade de dados rotulados com uma grande quantidade de dados não rotulados. A aprendizagem semi-supervisionada varia entre a aprendizagem não supervisionada (sem dados de treinamento rotulados) e a aprendizagem supervisionada (com dados de treinamento completamente rotulados). " Isso ajuda?
O que você tem em mente com "abordagens algorítmicas"? Dei alguns exemplos de aplicativos na minha resposta, é isso que você está procurando?
Peter Smit

Respostas:

20

Geralmente, os problemas do aprendizado de máquina podem ser considerados variações na estimativa de funções para classificação, previsão ou modelagem.

No aprendizado supervisionado, é fornecido com entrada ( x1 , x2 , ...,) e saída ( y1 , y2 , ...,) e é desafiado a encontrar uma função que aproxime esse comportamento de maneira generalizável. O resultado pode ser um rótulo de classe (na classificação) ou um número real (em regressão) - estas são a "supervisão" na aprendizagem supervisionada.

No caso de aprendizado não supervisionado , no caso base, você recebe entradas x1 , x2 , ..., mas nem as saídas de destino nem as recompensas de seu ambiente são fornecidas. Com base no problema (classificar ou prever) e seu conhecimento do espaço amostrado, você pode usar vários métodos: estimativa de densidade (estimando um PDF subjacente para previsão), k-means clustering (classificação de dados reais não rotulados), k- modos de agrupamento (classificação de dados categóricos não rotulados), etc.

A aprendizagem semi-supervisionada envolve estimativa de função em dados rotulados e não-rotulados. Essa abordagem é motivada pelo fato de que os dados rotulados costumam ser caros para gerar, enquanto os dados não rotulados geralmente não são. O desafio aqui envolve principalmente a questão técnica de como tratar dados misturados dessa maneira. Consulte esta Pesquisa de literatura de aprendizado semi-supervisionado para obter mais detalhes sobre métodos de aprendizado semi-supervisionados.

Além desses tipos de aprendizado, existem outros, como o aprendizado por reforço, no qual o método de aprendizado interage com seu ambiente, produzindo ações a1 , a2 ,. . .. que produzem recompensas ou punições r1 , r2 , ...

John L. Taylor
fonte
1
Sua resposta implica que o aprendizado supervisionado é preferível ao aprendizado semi-supervisionado, sempre que possível. Isso está correto? Se não, quando o aprendizado semi-supervisionado pode ser melhor?
precisa saber é o seguinte
@ naught101 Como você lê isso da resposta dele? Concordo com o que John diz, mas diria o contrário do que você diz, ou seja, que o aprendizado semi-supervisionado é preferível ao aprendizado supervisionado, sempre que possível. Ou seja, se você tiver alguns dados rotulados e alguns não rotulados (geralmente muito mais que a quantidade de dados rotulados), faria melhor se pudesse usar todos os dados do que se pudesse usar apenas os dados rotulados. O objetivo de usar o aprendizado semi-supervisionado é superar o desempenho obtido com o aprendizado supervisionado ou sem supervisão.
HelloGoodbye
@ HelloGoodbye: porque o único benefício especificado para o aprendizado semi-supervisionado é que, em alguns casos, é mais barato, mas tem a desvantagem de ser mais desafiador. Parece-me razoável que o aprendizado totalmente supervisionado seja mais fácil e mais preciso (todas as outras coisas são iguais), uma vez que são fornecidos mais dados da verdade básica. Então, eu estava apenas pedindo exemplos em que, dada a escolha entre os dois, seria preferida a semi-supervisionada. O seu comentário faz sentido, mas existe um caso em que todos os dados são rotulados e você ainda prefere a semi-supervisão?
precisa saber é o seguinte
@ naught101 Acho que se todos os dados estiverem rotulados, você não ganha muito usando o aprendizado semi-supervisionado em vez de usar o aprendizado supervisionado normal. Quando você tem muitos dados não rotulados e realiza um aprendizado semi-supervisionado, o principal motivo para obter um desempenho aprimorado é porque você transfere o aprendizado e também pode obter experiência com os dados não rotulados.
HelloGoodbye
@ naught101 No entanto, ao dar à rede a tarefa de reproduzir os dados de entrada da melhor forma possível, a partir dos dados de saída (por exemplo, implementar um autoencoder, que é uma espécie de aprendizado não supervisionado), a rede é forçada a aprender boas representações dos dados. Isso pode funcionar como um tipo de regularização, que por sua vez também pode ser benéfica. Portanto, pode haver uma pequena vantagem em usar o aprendizado semi-supervisionado em vez do aprendizado supervisionado normal, mesmo que todos os dados sejam rotulados. Quão grande é esse efeito, eu não sei.
HelloGoodbye
13

Aprendizagem não supervisionada

O aprendizado não supervisionado é quando você não possui dados rotulados disponíveis para treinamento. Exemplos disso são frequentemente métodos de agrupamento.

Aprendizado supervisionado

Nesse caso, seus dados de treinamento existem fora dos dados rotulados. O problema que você resolve aqui costuma prever os rótulos para pontos de dados sem rótulo.

Aprendizagem Semi-Supervisionada

Nesse caso, os dados rotulados e os não rotulados são usados. Por exemplo, isso pode ser usado em redes de crenças profundas, nas quais algumas camadas estão aprendendo a estrutura dos dados (não supervisionada) e uma camada é usada para fazer a classificação (treinada com dados supervisionados)

Peter Smit
fonte
7

Eu não acho que supervisionado / não supervisionado é a melhor maneira de pensar sobre isso. Para mineração de dados básica, é melhor pensar no que você está tentando fazer. Existem quatro tarefas principais:

  1. predição. se você está prevendo um número real, isso é chamado de regressão. se você estiver prevendo um número ou classe inteira, isso será chamado de classificação.

  2. modelagem. modelagem é o mesmo que previsão, mas o modelo é compreensível por humanos. Redes neurais e máquinas de vetores de suporte funcionam muito bem, mas não produzem modelos compreensíveis [1]. as árvores de decisão e a regressão linear clássica são exemplos de modelos fáceis de entender.

  3. semelhança. se você está tentando encontrar grupos naturais de atributos, isso é chamado de análise fatorial. se você está tentando encontrar grupos naturais de observações, isso é chamado de agrupamento.

  4. Associação. é muito parecido com correlação, mas para enormes conjuntos de dados binários.

[1] Aparentemente, o Goldman Sachs criou toneladas de grandes redes neurais para previsão, mas ninguém as entendeu, então elas tiveram que escrever outros programas para tentar explicar as redes neurais.

Neil McGuigan
fonte
você pode dar mais informações sobre a história da GS? (não sei por que eu não posso comentar diretamente sobre o seu comentário)
YA
eu não me lembro exatamente onde eu li isso, mas aqui está mais algumas informações sobre AI @ GS: hplusmagazine.com/2009/08/06/...
Neil McGuigan
Tenho a sensação de que 1,2 descreve a aprendizagem em um ambiente supervisionado e 3,4 residem em um ambiente não supervisionado. Além disso: e se você procurar semelhanças para prever? Isso é considerado modelagem?
Sr. Tsjolder