typestar

Vecinos más cercanos en Python

El modelo que no trabaja hasta que le haces una pregunta.

from sklearn.neighbors import KNeighborsClassifier
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler

X = [[0.0, 0.0], [0.4, 0.2], [3.0, 3.0], [3.2, 2.8], [6.0, 6.0]]
y = [0, 0, 1, 1, 2]

modelo = make_pipeline(StandardScaler(), KNeighborsClassifier(n_neighbors=3))
modelo.fit(X, y)

print(modelo.predict([[3.1, 3.1]]))
knn = modelo.named_steps["kneighborsclassifier"]
distancias, indices = knn.kneighbors(
    modelo.named_steps["standardscaler"].transform([[3.1, 3.1]]))
print(indices, distancias.round(2))

Cómo funciona

  1. n_neighbors es cuántos votos deciden una etiqueta.
  2. Se basa en distancias, así que escalar no es opcional.
  3. kneighbors muestra qué filas de entrenamiento respondieron.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
546
Tokens
151
Ritmo de tres estrellas
110 tpm

Al ritmo de tres estrellas de 110 tokens por minuto, este intento toma unos 82 segundos.

Escribe este fragmento

Paso 3 de 4 en Modelos; paso 14 de 25 en Machine learning con scikit-learn.

← Anterior Siguiente →