Ajustar e prever
Parte da seção Aprendizado supervisionado do Journey de Machine Learning da Coddy. Lição 3 de 58.
Todo modelo do scikit-learn funciona com duas chamadas. fit estuda as linhas de treinamento com seus rótulos; predict rotula linhas que o modelo nunca viu:
O modelo da primeira lição desta jornada é k-vizinhos mais próximos: ele classifica uma linha como as linhas de treinamento mais próximas dela. Animais de estimação por peso (kg) e comprimento da orelha (cm):
from sklearn.neighbors import KNeighborsClassifier
X_train = np.array([[4, 6], [5, 7], [3, 5], [30, 10], [25, 12], [35, 11]])
y_train = np.array(["cat", "cat", "cat", "dog", "dog", "dog"])
model = KNeighborsClassifier()
model.fit(X_train, y_train)
print(model.predict([[6, 6], [28, 11]]))Isso imprime ['cat' 'dog']. Novas linhas são inseridas como uma tabela, uma linha por animal de estimação.
Criar, ajustar, prever: todos os modelos desta seção seguem estas três etapas.
Desafio
FácilO aplicativo de um clube de observação de aves identifica as aves pela envergadura e pelo peso. O código inicial divide o birds.csv do clube e lê as aves de hoje à noite na tabela spotted.
- Crie um modelo de k-vizinhos mais próximos e ajuste-o usando as aves de treinamento.
- Preveja todas as aves avistadas em uma única chamada.
- Imprima uma linha por ave, como abaixo.
Para três aves em outra caminhada:
Bird 1: sparrow
Bird 2: blackbird
Bird 3: robinExperimente você mesmo
import pandas as pd
from sklearn.model_selection import train_test_split
# Uma linha para cada ave que o clube identificou: envergadura em cm, peso em gramas
birds = pd.read_csv("birds.csv")
X = birds[["wingspan_cm", "weight_g"]]
y = birds["species"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
# Passeio desta noite: quantas aves, depois a envergadura e o peso de cada uma
count = int(input())
spans = []
weights = []
for i in range(count):
spans.append(float(input()))
weights.append(float(input()))
spotted = pd.DataFrame({"wingspan_cm": spans, "weight_g": weights})
# Escreva seu código abaixo
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Aprendizado supervisionado
1Seu primeiro modelo
Aprendendo com exemplosConjuntos de treino e testeAjustar e preverAvaliar um modeloRecapitulação: classificador de sementes4Regressão logística
Previsões de sim ou nãoO limiar de decisãoPesos como evidênciasVárias classesRevisão: filtro de spam2Vizinhos Mais Próximos
Como o k-NN DecideEscolhendo kLimites de DecisãoEscalonamento para VizinhosRevisão: Vizinhos do Vinho5Avaliando Classificadores
A Matriz de ConfusãoPrecisão e RevocaçãoA Pontuação F1Classes DesbalanceadasCurvas ROCRecapitulação: Teste de Triagem8Validação Cruzada
Validação K-FoldComparando Modelos de Forma JustaBusca em GradeRevisão: Consertos de Skate11Projeto: Espécies de Pinguins
Conheça os PinguinsPrepare os DadosEscolha um ModeloAjuste o VencedorColoque o Modelo em Produção3Regressão Linear
Prevendo númerosVárias característicasMedindo errosGráficos de resíduosRevisão: aluguel de bicicletas6Árvores de Decisão
Árvores fazem perguntasLendo uma árvoreProfundidade da árvoreImportância das característicasRevisão: decisões de empréstimoPratique por conta própria: Compilador de Python online