Repaso: vecinos del vino
Parte de la sección Aprendizaje supervisado del Journey de Machine Learning de Coddy. Lección 10 de 58.
Desafío
FácilDibuja un mapa como el primero de este capítulo, para el vino. El código inicial divide 178 vinos (dos características, cultivares de 0 a 2), enumera ks y etiqueta el gráfico.
- Escala ambos conjuntos y ajusta el escalador con los vinos de entrenamiento.
- Imprime el valor de k con la mejor precisión de prueba (por ahora: el capítulo 7 tiene un evaluador más justo).
- Con ese valor de k, completa el mapa: cuadrícula
xx,yy, de 100 por 100, de -3 a 3 en ambas direcciones, con las respuestas enzz. - Representa encima los vinos de entrenamiento escalados, etiquetados a partir de
names; añade una leyenda.
A partir del alcohol y los flavonoides:
Best k: 13 (test accuracy 0.956)Coddy describe tu mapa.
Pruébalo tú mismo
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_wine
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import StandardScaler
# 178 vinos de tres cultivares, clases 0, 1, 2
wine = load_wine()
# columnas 6 y 12: flavanoids y prolina
X = wine.data[:, [6, 12]]
y = wine.target
names = ["cultivar A", "cultivar B", "cultivar C"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
ks = range(1, 32, 2) # k = 1, 3, 5, ..., 31
fig, ax = plt.subplots()
ax.set_title("Wine Neighbors")
ax.set_xlabel("flavanoids (scaled)")
ax.set_ylabel("proline (scaled)")
# Escribe tu código a continuación
Todas las lecciones de Aprendizaje supervisado
1Tu primer modelo
Aprender de ejemplosConjuntos de entrenamiento y pruebaAjustar y predecirEvaluar un modeloRepaso: clasificador de semillas4Regresión logística
Predicciones de sí o noEl umbral de decisiónLos pesos como evidenciaVarias clasesRepaso: filtro de spam2Vecinos más cercanos
Cómo decide k-NNCómo elegir kFronteras de decisiónEscalado para los vecinosRepaso: vecinos del vino5Medición de clasificadores
La matriz de confusiónPrecisión y exhaustividadLa puntuación F1Clases desequilibradasCurvas ROCRepaso: prueba de detección8Validación cruzada
Validación K-FoldComparación justa de modelosBúsqueda en cuadrículaRepaso: reparaciones de monopatines11Proyecto: especies de pingüinos
Conoce a los pingüinosPrepara los datosElige un modeloAjusta el modelo ganadorPublica el modelo3Regresión lineal
Predicción de númerosVarias característicasMedición de erroresGráficos de residuosRepaso: alquiler de bicicletas6Árboles de decisión
Los árboles hacen preguntasLeer un árbolProfundidad del árbolImportancia de las característicasRepaso: decisiones de préstamosPractica por tu cuenta: Compilador de Python online