Aprendizado supervisionado

As tarefas de aprendizado supervisionado são bem definidas e podem ser aplicadas a vários cenários, como identificar spam ou prever precipitações.

Conceitos básicos de aprendizado supervisionado

O aprendizado de máquina supervisionado é baseado nos seguintes conceitos principais:

  • Dados
  • Modelo
  • Treinamento
  • Avaliando
  • Inferência

Dados

Os dados são a força motriz do ML. Os dados são apresentados na forma de palavras e números armazenados em tabelas ou como os valores de pixels e formas de onda capturados em imagens e arquivos de áudio. Armazenamos dados relacionados em conjuntos de dados. Por exemplo, podemos ter um conjunto de dados como este:

  • Imagens de gatos
  • Preços de imóveis
  • Informações sobre o clima

Os conjuntos de dados são compostos por exemplos individuais que contêm recursos e um rótulo. Você pode pensar em um exemplo como análogo a uma única linha em uma planilha. Os atributos são os valores que um modelo supervisionado usa para prever o rótulo. O rótulo é a "resposta" ou o valor que queremos que o modelo preveja. Em um modelo meteorológico que prevê chuvas, os recursos podem ser latitude, longitude, temperatura, umidade, cobertura de nuvens, direção do vento e pressão atmosférica. O rótulo seria quantidade de chuva.

Os exemplos que contêm recursos e um rótulo são chamados de exemplos rotulados.

Dois exemplos com rótulos

Imagem do marcador de posição.

Por outro lado, os exemplos não rotulados têm recursos, mas não têm rótulos. Depois que você cria um modelo, ele prevê o rótulo dos atributos.

Dois exemplos sem rótulo

Imagem do marcador de posição.

Características do conjunto de dados

Um conjunto de dados é caracterizado pelo tamanho e pela diversidade. O tamanho indica o número de exemplos. A diversidade indica o intervalo que esses exemplos abrangem. Bons conjuntos de dados são grandes e muito diversos.

Alguns conjuntos de dados são grandes e diversos. No entanto, alguns conjuntos de dados são grandes, mas têm baixa diversidade, e outros são pequenos, mas altamente diversos. Em outras palavras, um conjunto de dados grande não garante diversidade suficiente, e um conjunto de dados muito diverso não garante exemplos suficientes.

Por exemplo, um conjunto de dados pode conter dados de 100 anos, mas apenas para o mês de julho. O uso desse conjunto de dados para prever a precipitação em janeiro produziria previsões ruins. Por outro lado, um conjunto de dados pode abranger apenas alguns anos, mas conter todos os meses. Esse conjunto de dados pode produzir previsões ruins porque não contém anos suficientes para considerar a variabilidade.

Teste seu conhecimento

Quais atributos de um conjunto de dados seriam ideais para usar com ML?
Tamanho grande / alta diversidade
Um grande número de exemplos que abrangem vários casos de uso é essencial para que um sistema de aprendizado de máquina entenda os padrões subjacentes nos dados. Um modelo treinado com esse tipo de conjunto de dados tem mais chances de fazer boas previsões em novos dados.
Grande / baixa diversidade
Os modelos de aprendizado de máquina são tão bons quanto os exemplos usados para treiná-los. Um modelo vai produzir previsões piores em dados novos que nunca foram usados para treinamento.
Tamanho pequeno / alta diversidade
A maioria dos modelos não consegue encontrar padrões confiáveis em um pequeno conjunto de dados. As previsões não terão a confiança que um conjunto de dados maior oferece.
Tamanho pequeno / baixa diversidade
Se o conjunto de dados for pequeno e sem muita variação, talvez você não se beneficie do aprendizado de máquina.

Um conjunto de dados também pode ser caracterizado pelo número de recursos. Por exemplo, alguns conjuntos de dados meteorológicos podem conter centenas de elementos, desde imagens de satélite até valores de cobertura de nuvens. Outros conjuntos de dados podem conter apenas três ou quatro características, como umidade, pressão atmosférica e temperatura. Conjuntos de dados com mais recursos podem ajudar um modelo a descobrir outros padrões e fazer previsões melhores. No entanto, os conjuntos de dados com mais recursos não sempre produzem modelos que fazem previsões melhores, porque alguns recursos podem não ter uma relação causal com o rótulo.

Modelo

No aprendizado supervisionado, um modelo é a coleção complexa de números que definem a relação matemática de padrões específicos de atributos de entrada para valores específicos de rótulos de saída. O modelo descobre esses padrões durante o treinamento.

Treinamento

Antes de fazer previsões, um modelo supervisionado precisa ser treinado. Para treinar um modelo, fornecemos a ele um conjunto de dados com exemplos rotulados. O objetivo do modelo é encontrar a melhor solução para prever os rótulos dos recursos. O modelo encontra a melhor solução comparando o valor previsto com o valor real do rótulo. Com base na diferença entre os valores previstos e reais, definidos como perda, o modelo atualiza gradualmente a solução. Em outras palavras, o modelo aprende a relação matemática entre os recursos e o rótulo para fazer as melhores previsões com dados não vistos.

Por exemplo, se o modelo previu 1.15 inches de chuva, mas o valor real foi .75 inches, o modelo modifica a solução para que a previsão fique mais próxima de .75 inches. Depois que o modelo analisa cada exemplo no conjunto de dados, em alguns casos, várias vezes, ele chega a uma solução que faz as melhores previsões, em média, para cada um dos exemplos.

Confira a seguir como treinar um modelo:

  1. O modelo recebe um único exemplo rotulado e fornece uma previsão.

    Uma imagem de um modelo fazendo uma previsão.

    Figura 1. Um modelo de ML fazendo uma previsão com base em um exemplo rotulado.

     

  2. O modelo compara o valor previsto com o valor real e atualiza a solução.

    Uma imagem de um modelo comparando a previsão com o valor real.

    Figura 2. Um modelo de ML atualizando o valor previsto.

     

  3. O modelo repete esse processo para cada exemplo rotulado no conjunto de dados.

    Uma imagem de um modelo que repete o processo de previsão em relação ao valor real.

    Figura 3. Um modelo de ML que atualiza as previsões para cada exemplo rotulado no conjunto de dados de treinamento.

     

Dessa forma, o modelo aprende gradualmente a relação correta entre os atributos e o rótulo. Esse entendimento gradual também é o motivo pelo qual conjuntos de dados grandes e diversos produzem um modelo melhor. O modelo recebeu mais dados com uma gama mais ampla de valores e aprimorou o entendimento da relação entre os atributos e o identificador.

Durante o treinamento, os profissionais de ML podem fazer ajustes sutis nas configurações e nos recursos que o modelo usa para fazer previsões. Por exemplo, alguns recursos têm mais poder de previsão do que outros. Portanto, os profissionais de ML podem selecionar quais recursos o modelo usa durante o treinamento. Por exemplo, suponha que um conjunto de dados meteorológicos contenha time_of_day como um recurso. Nesse caso, um profissional de ML pode adicionar ou remover time_of_day durante o treinamento para saber se o modelo faz previsões melhores com ou sem ele.

Avaliando

Nós avaliamos um modelo treinado para determinar o quanto ele aprendeu. Ao avaliar um modelo, usamos um conjunto de dados rotulado, mas fornecemos apenas os recursos do conjunto de dados ao modelo. Em seguida, comparamos as previsões do modelo com os valores reais do rótulo.

Uma imagem mostrando um modelo treinado com as previsões comparadas aos valores reais.

Figura 4. Avaliar um modelo de ML comparando as previsões com os valores reais.

 

Dependendo das previsões do modelo, podemos fazer mais treinamento e avaliação antes de implantar o modelo em um aplicativo real.

Teste seu conhecimento

Por que um modelo precisa ser treinado antes de fazer previsões?
Um modelo precisa ser treinado para aprender a relação matemática entre os atributos e o rótulo em um conjunto de dados.
Um modelo não precisa ser treinado. Os modelos estão disponíveis na maioria dos computadores.
Um modelo precisa ser treinado para não precisar de dados para fazer uma previsão.

Inferência

Quando estivermos satisfeitos com os resultados da avaliação do modelo, poderemos usá-lo para fazer previsões, chamadas de inferências, em exemplos sem rótulos. No exemplo do app de clima, fornecemos ao modelo as condições climáticas atuais, como temperatura, pressão atmosférica e umidade relativa, e ele prevê a quantidade de chuva.