Menu
CoddyTech

Repaso: vecinos del vino

Parte de la sección Aprendizaje supervisado del Journey de Machine Learning de Coddy. Lección 10 de 58.

challenge icon

Desafío

Fácil

Dibuja 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.

  1. Escala ambos conjuntos y ajusta el escalador con los vinos de entrenamiento.
  2. Imprime el valor de k con la mejor precisión de prueba (por ahora: el capítulo 7 tiene un evaluador más justo).
  3. 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 en zz.
  4. 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)

Un mapa del vino a partir del alcohol y los flavonoides, ambos escalados: una región naranja a la izquierda, una región azul en la parte superior derecha y una región verde debajo, con los vinos de entrenamiento de cada clase encima y una leyenda

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

Practica por tu cuenta: Compilador de Python online