Gráficos de residuos
Parte de la sección Aprendizaje supervisado del Journey de Machine Learning de Coddy. Lección 14 de 58.
Una buena puntuación puede ocultar una forma incorrecta. Esta línea obtiene un R cuadrado de 0.82 en una masa que sube, pero sus errores forman un arco:
Ese gráfico de la derecha es un gráfico de residuos: cada residuo, valor real menos valor predicho, frente a su predicción, sobre una línea en 0:
residuals = y_test - pred
fig, ax = plt.subplots()
ax.scatter(pred, residuals)
ax.axhline(0, color="gray", linestyle="--")
plt.show()Los residuos saludables se dispersan como ruido alrededor de 0. Un patrón significa que al modelo se le escapa algo: aquí, que el aumento se ralentiza.
Con varias características, representa también los residuos frente a cada característica: la que forma un arco oculta la curva.
Desafío
IntermedioUna escuela de conducción ajustó una recta a 80 pruebas de frenado: speed_kmh y braking_m. El código inicial guarda las predicciones de las pruebas en pred y etiqueta el gráfico.
- Calcula los residuos.
- Represéntalos en un diagrama de dispersión frente a las predicciones, sobre una línea gris discontinua en 0; luego, muéstralo.
¿La recta no capta una curva? A la izquierda incluso predice una distancia de frenado negativa.
El gráfico de una recta adecuada, obtenido con otros datos, tiene este aspecto:
Coddy describe tu gráfico.
Pruébalo tú mismo
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
brakes = pd.read_csv("braking.csv")
X_train, X_test, y_train, y_test = train_test_split(brakes[["speed_kmh"]], brakes["braking_m"], test_size=0.25, random_state=0)
model = LinearRegression()
model.fit(X_train, y_train)
pred = model.predict(X_test)
fig, ax = plt.subplots()
ax.set_title("Braking Line Check")
ax.set_xlabel("Predicted braking distance (m)")
ax.set_ylabel("Residual (m)")
# Escribe tu código a continuación
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
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