As perguntas a seguir ajudam você a consolidar sua compreensão dos conceitos básicos de ML.
Poder preditivo
Os modelos de ML supervisionados são treinados usando conjuntos de dados com exemplos rotulados. O modelo
aprende a prever o rótulo com base nos atributos. No entanto, nem todos os atributos em
um conjunto de dados têm poder preditivo. Em alguns casos, apenas alguns atributos atuam como
preditores do rótulo. No conjunto de dados abaixo, use o preço como rótulo
e as colunas restantes como atributos.
Quais três atributos você acha que são os maiores preditores
do preço de um carro?
Marca_modelo, ano, quilometragem.
A marca/modelo, o ano e a quilometragem de um carro provavelmente estão entre os
preditores mais fortes do preço.
Cor, altura, marca_modelo.
A altura e a cor de um carro não são preditores fortes do preço.
Quilometragem, caixa_multiplicadora, marca_modelo.
A caixa multiplicadora não é um preditor principal do preço.
Tamanho_do_pneu, distância_entre_eixos, ano.
O tamanho do pneu e a distância entre eixos não são preditores fortes do preço de um carro.
Aprendizado supervisionado e não supervisionado
Com base no problema, você vai usar uma abordagem supervisionada ou não supervisionada.
Por exemplo, se você souber com antecedência 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 o
aprendizado não supervisionado.
Suponha que você tenha um conjunto de dados de usuários de um site de compras on-line, e ele
contenha as seguintes colunas:
Se você quiser entender os tipos de usuários que acessam o site,
usaria o aprendizado supervisionado ou não supervisionado?
Aprendizado não supervisionado.
Como queremos que o modelo agrupe clientes relacionados,
usamos o aprendizado não supervisionado. Depois que o modelo agrupar os usuários,
vamos criar nossos próprios nomes para cada cluster, por exemplo,
"buscadores de descontos", "caçadores de ofertas", "navegadores", "fiéis"
e "indecisos".
Aprendizado supervisionado porque estou tentando prever a qual classe
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.
Suponha que você tenha um conjunto de dados de uso de energia para casas 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 em exemplos rotulados. Nesse conjunto de dados
"quilowatts-hora usados por ano" seria o rótulo, porque é o
valor que você quer que o modelo preveja. Os atributos seriam
"tamanho em metros quadrados", "localização" e "ano de construção".
Aprendizado não supervisionado.
O aprendizado não supervisionado usa exemplos não rotulados. Nesse exemplo,
"quilowatts-hora usados por ano" seria o rótulo, porque é o
valor que você quer que o modelo preveja.
Suponha que você tenha um conjunto de dados de voos com as seguintes colunas:
Se você quiser prever o custo de uma passagem aérea, 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 aérea é
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 aérea como
"alto," "médio," ou "baixo"?
Sim, mas primeiro precisamos converter os valores numéricos na coluna
airplane_ticket_cost em valores categóricos.
É possível criar um modelo de classificação com o 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 constituiriam "alto," "médio,"
e "baixo".
- Compare o custo previsto com os limites e gere a
categoria em que o valor se enquadra.
Não. Não é possível criar um modelo de classificação. Os valores de
airplane_ticket_cost são numéricos, não categóricos.
Com um pouco de trabalho, você pode criar um modelo de classificação
model.
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 atributos que você acredita terem o
maior poder preditivo para o rótulo.
O retreinamento do modelo com menos atributos, mas que têm mais
poder preditivo, pode produzir um modelo que faz previsões melhores.
Não é possível corrigir um modelo cujas previsões estão muito distantes.
É possível corrigir um modelo cujas previsões estão erradas. A maioria dos modelos
exige várias rodadas de treinamento até fazer
previsões úteis.
Retreine o modelo usando um conjunto de dados maior e mais diversificado.
Os modelos treinados em conjuntos de dados com mais exemplos e uma variedade maior de
valores podem produzir previsões melhores, porque o modelo tem uma solução generalizada melhor para a relação entre os atributos e
o rótulo.
Tente uma abordagem de treinamento diferente. Por exemplo, se você usou uma
abordagem supervisionada, tente uma não supervisionada.
Uma abordagem de treinamento diferente não produziria previsões melhores.
Agora você está pronto para a próxima etapa da sua jornada de ML: