typestar

Validación cruzada en Python

Una sola división es azar; la validación cruzada puntúa cada pliegue y promedia.

from sklearn.datasets import load_iris
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler

X, y = load_iris(return_X_y=True)
modelo = make_pipeline(StandardScaler(), LogisticRegression(max_iter=500))

puntajes = cross_val_score(modelo, X, y, cv=5, scoring="accuracy")
print(puntajes.round(3))
print(f"{puntajes.mean():.3f} +/- {puntajes.std():.3f}")

Cómo funciona

  1. cross_val_score ajusta un clon fresco del estimador por pliegue.
  2. cv=5 significa cinco pliegues, así que regresan cinco puntajes.
  3. La media y la dispersión juntas te dicen cuánto confiar.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
12
Caracteres a escribir
494
Tokens
109
Ritmo de tres estrellas
110 tpm

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

Escribe este fragmento

Paso 1 de 4 en Validación; paso 8 de 25 en Machine learning con scikit-learn.

← Anterior Siguiente →