As perguntas a seguir ajudam a entender melhor os conceitos básicos de ML.
Poder preditivo
Os modelos de ML supervisionados são treinados com conjuntos de dados que têm exemplos rotulados. O modelo
aprende a prever o rótulo com base nos atributos. No entanto, nem todos os recursos em um conjunto de dados têm poder preditivo. Em alguns casos, apenas alguns recursos atuam como
preditivos do rótulo. No conjunto de dados abaixo, use o preço como rótulo e as colunas restantes como os recursos.
Quais três características você acha que são os melhores preditores do preço de um carro?
Make_model, year, miles.
A marca/modelo, ano e quilometragem de um carro provavelmente estão entre os principais fatores de previsão do preço.
Cor, altura, make_model.
A altura e a cor de um carro não são bons indicadores do preço dele.
Miles, caixa multiplicadora, make_model.
A caixa de engrenagens não é um indicador principal de preço.
Tire_size, wheel_base, year.
O tamanho dos pneus e a distância entre eixos não são bons indicadores do preço de um carro.
Aprendizado supervisionado e não supervisionado
Dependendo do problema, você vai usar uma abordagem supervisionada ou não supervisionada.
Por exemplo, se você souber de antemão o valor ou a categoria que quer prever,
use o aprendizado supervisionado. No entanto, se você quiser saber se o conjunto de dados
contém segmentações ou agrupamentos de exemplos relacionados, use
a aprendizagem não supervisionada.
Digamos que você tenha um conjunto de dados de usuários de um site de compras on-line com as seguintes colunas:
Se você quisesse entender os tipos de usuários que visitam o site, usaria o aprendizado supervisionado ou não supervisionado?
Aprendizado não supervisionado.
Como queremos que o modelo agrupe grupos de clientes relacionados, vamos usar o aprendizado não supervisionado. Depois que o modelo agrupa os usuários, criamos nossos próprios nomes para cada cluster, por exemplo, "procuradores de descontos", "procuradores de ofertas", "navegadores", "fiéis" e "vagabundos".
Supervisão, porque estou tentando prever a classe
a que um usuário pertence.
No aprendizado supervisionado, o conjunto de dados precisa conter o rótulo que você está tentando prever. No conjunto de dados, não há um rótulo que se refira a uma categoria de usuário.
Digamos que você tenha um conjunto de dados de uso de energia para residências com as seguintes colunas:
Que tipo de ML você usaria para prever os quilowatts-hora usados por ano em uma casa recém-construída?
Aprendizado supervisionado.
O aprendizado supervisionado é treinado com exemplos rotulados. Nesse conjunto de dados, "kilowatt-hora usados por ano" seria o rótulo, porque é o valor que você quer que o modelo preveja. Os atributos seriam "metros quadrados", "localização" e "ano de construção".
Aprendizado não supervisionado.
O aprendizado não supervisionado usa exemplos não rotulados. Neste exemplo, "kilowatt-hora usados por ano" seria o rótulo, porque é o valor que você quer que o modelo preveja.
Digamos que você tenha um conjunto de dados de voos com as seguintes colunas:
Se você quisesse prever o custo de uma passagem de ônibus, usaria regressão ou classificação?
Regressão
A saída de um modelo de regressão é um valor numérico.
Classificação
A saída de um modelo de classificação é um valor discreto,
normalmente uma palavra. Nesse caso, o custo de uma passagem de ônibus é um valor numérico.
Com base no conjunto de dados, você poderia treinar um modelo de classificação
para classificar o custo de uma passagem de ônibus como
"alta", "média" ou "baixa"?
Sim, mas primeiro precisamos converter os valores numéricos na coluna coach_ticket_cost
em valores categóricos.
É possível criar um modelo de classificação com base no conjunto de dados.
Você faria algo como o seguinte:
- Encontre o custo médio de uma passagem do aeroporto de partida para o aeroporto de destino.
- Determine os limites que seriam considerados "altos", "médios"
e "baixos".
- Compare o custo previsto com os limites e mostre a
categoria em que o valor se enquadra.
Não. Não é possível criar um modelo de classificação. Os valores de coach_ticket_cost
são numéricos, não categóricos.
Com um pouco de trabalho, você pode criar um modelo de classificação.
Não. Os modelos de classificação só preveem duas categorias, como
spam
ou not_spam
. Esse modelo precisaria prever três categorias.
Os modelos de classificação podem prever várias categorias. Eles são chamados de modelos de classificação multiclasse.
Treinamento e avaliação
Depois de treinar um modelo, avaliamos usando um conjunto de dados com exemplos rotulados
e comparamos o valor previsto do modelo com o valor real do rótulo.
Selecione as duas melhores respostas para a pergunta.
Se as previsões do modelo estiverem muito distantes, o que você pode fazer para melhorá-las?
Treine o modelo novamente, mas use apenas os recursos que você acredita ter o maior poder de previsão para o rótulo.
O treinamento do modelo com menos atributos, mas com mais poder de previsão, pode produzir um modelo que faça previsões melhores.
Não é possível corrigir um modelo com previsões muito distantes.
É possível corrigir um modelo com previsões incorretas. A maioria dos modelos exige várias rodadas de treinamento até fazer previsões úteis.
Treine o modelo novamente usando um conjunto de dados maior e mais diverso.
Os modelos treinados em conjuntos de dados com mais exemplos e uma faixa mais ampla de valores podem produzir previsões melhores porque têm uma solução mais generalizada para a relação entre os recursos e o rótulo.
Tente uma abordagem de treinamento diferente. Por exemplo, se você usou uma abordagem supervisionada, tente uma abordagem não supervisionada.
Uma abordagem de treinamento diferente não produziria previsões melhores.
Agora você está pronto para dar o próximo passo na sua jornada de ML:
Guia Pessoas + IA. Se você
procura um conjunto de métodos, práticas recomendadas e exemplos apresentados por
Googlers, especialistas do setor e pesquisas acadêmicas para usar a ML.
Definição do problema. Se você está procurando
uma abordagem testada em campo para criar modelos de ML e evitar armadilhas comuns
no caminho.
Curso intensivo de machine learning. Se você estiver
pronto para uma abordagem prática e detalhada para aprender mais sobre ML.