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
n_neighborses cuántos votos deciden una etiqueta.- Se basa en distancias, así que escalar no es opcional.
kneighborsmuestra qué filas de entrenamiento respondieron.
Palabras clave y builtins usados aquí
print
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.
Paso 3 de 4 en Modelos; paso 14 de 25 en Machine learning con scikit-learn.