Setembro 24, 2019

Aprendizado Supervisionado ou Não Supervisionado

No artigo O que é Machine Learning (Aprendizado de Máquina) comentamos que a máquina irá aprender através dos dados históricos apresentados a ela. Esses dados podem possuir diferentes características, e justamente a partir dessas características é que iremos definir nossos objetivos e abordagens.

Muitas vezes, os dados que estamos trabalhando possuem uma variável target, ou seja, nossa variável de interesse no conjunto de dados em questão. Em outras palavras, essa é a variável que pretendemos prever os resultados finais, e para isso usaremos como parâmetro todos os seus valores no passado, juntamente com as demais variáveis.

Porém há situações onde o conjunto de dados em questão não possuirá essa variável de interesse. Nesse casso, nosso objetivo será agrupar os dados em categorias que ainda não conhecemos, com base nas semelhanças existentes nos dados, que também podemos não saber a priori quais são.

Essas diferenças nos dados e em nossos objetivos nos levam a duas possibilidades de aprendizado: supervisionado e não supervisionado.

Aprendizado Supervisionado

robo aprendizado supervisionado

O aprendizado supervisionado ocorre quando o modelo aprende a partir de resultados pré-definidos, utilizando os valores passados da variável target para aprender quais devem ser seus resultados de saída. Estes mesmos valores servem como “supervisão” destas previsões, permitindo o ajuste nas previsões com base nos erros, conforme comentamos no artigo Algoritmos de Machine Learning.

Isso é considerado aprendizado supervisionado, pois o modelo possui uma referência daquilo que está certo e daquilo que está errado.

Aprendizado não supervisionado

Ao contrário do aprendizado supervisionado que acabamos de discutir, no aprendizado não supervisionado não existem resultados pré-definidos para o modelo utilizar como referência para aprender.

leitura dos dados sem supervisao

Por exemplo, você apresenta para o modelo um conjunto de dados com várias informações sobre plantas (como comprimento do caule, cor da folha, espessura da raiz, etc.) e pede para o modelo separar esses dados em 5 categorias.

Nesse caso, você não especificou para o modelo o que caracteriza cada categoria, o modelo irá sozinho tentar encontrar semelhanças e diferenças entre os dados de maneira que essa separação em 5 categorias seja a melhor possível.

Como não há uma referência (ou critério específico) para o modelo seguir, define-se que esse aprendizado é não supervisionado.

Esse é apenas um exemplo de aprendizado não supervisionado, também chamado de clustering. Existem ainda outros modelos mais complexos de aprendizado não supervisionado como autoencoders, deep belief nets, GANs, entre outros. Explicar cada um deles fugiria do propósito desse artigo, afinal estamos apenas introduzindo o assunto.

Desempenho dos aprendizados

Normalmente estamos muito interessados no desempenho que nosso modelo de machine learning terá, afinal de contas, de nada adianta um modelo extremamente complexo que não nos entregue um resultado confiável.

No aprendizado supervisionado, medir o desempenho de um modelo é muito fácil. Simplesmente separamos os dados em treino e teste e avaliamos os resultados simulando a realidade que o modelo encontrará quando estiver em uso. O desempenho do modelo pode ser verificado de forma bastante objetiva.

Já no aprendizado não supervisionado muitas vezes não temos essa mesma objetividade na avaliação do modelo criado. Afinal, se a referência para o modelo seguir não existe, também não existe uma referência para o avaliar. Portanto, em grande parte das vezes, você (cientista de dados) será responsável por analisar o resultado apresentado, verificando (no caso de clustering, por exemplo) se os grupos criados fazem sentido e se a aplicação final será útil ou não.

Continue sua jornada de aprendizado no artigo: Classificação x Regressão.

Para aprender machine learning do zero, com teoria e prática, conheça nossos cursos completos.