Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Métricas | Elegir el Mejor Modelo
Regresión Lineal con Python

Métricas

Desliza para mostrar el menú

Al construir un modelo, necesitamos una métrica que mida qué tan bien se ajusta a los datos. Una métrica proporciona un valor numérico que describe el rendimiento del modelo. En este capítulo, nos enfocamos en las más comunes.

Usaremos la siguiente notación:

Notación

Ya estamos familiarizados con una métrica, SSR (Suma de los Residuos al Cuadrado), que minimizamos para identificar los parámetros óptimos.
Usando nuestra notación, podemos expresar la fórmula de SSR de la siguiente manera:

Fórmula SSR

o de manera equivalente:

SSRsum

Esta métrica solo funcionaba cuando los modelos utilizaban la misma cantidad de puntos de datos. No muestra cuán bien realmente funciona un modelo. Imagina dos modelos entrenados con conjuntos de datos de diferentes tamaños.

SSRCompare

El primer modelo se ajusta mejor visualmente, pero tiene un SSR más alto porque tiene más puntos, por lo que la suma aumenta incluso con residuos promedio más pequeños. Utilizar el promedio de los residuos al cuadrado soluciona esto: el Error Cuadrático Medio (MSE).

MSE

Fórmula de MSE

o de manera equivalente:

MSEsum

Calcular el MSE usando NumPy:

mse = np.mean((y_true - y_pred)**2)

O Scikit-learn:

from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)

El MSE está al cuadrado, lo que dificulta su interpretación. Si el MSE es 49 dólares², se desea el error en dólares. Tomar la raíz da 7 — el Error Cuadrático Medio de la Raíz (RMSE).

RMSE

Suma de RMSE

Calcular RMSE usando:

rmse = np.sqrt(np.mean((y_true - y_pred)**2))

O Scikit-learn:

rmse = mean_squared_error(y_true, y_pred, squared=False)

MAE

En lugar de elevar al cuadrado los residuos, podemos tomar sus valores absolutos — esto da el Error Absoluto Medio (MAE).

Fórmula de MAE

o de manera equivalente

MAEsum

MAE se comporta como MSE pero trata los errores grandes de manera más suave. Debido a que utiliza valores absolutos, es más robusto frente a valores atípicos, lo que lo hace útil cuando los valores extremos sesgan el conjunto de datos.

Calcular MAE:

mae = np.mean(np.fabs(y_true - y_pred))

O bien:

from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)

SSR nos ayudó a derivar la Ecuación Normal, pero se puede utilizar cualquier métrica al comparar modelos.

Note
Nota

SSR, MSE y RMSE siempre clasifican los modelos de la misma manera, mientras que MAE puede preferir uno diferente porque penaliza menos los errores grandes. Se debe elegir una métrica de antemano y optimizar específicamente para ella.

Comparación de modelos

Ahora seguramente puedes decir que el segundo modelo es mejor ya que todas sus métricas son más bajas. Sin embargo, métricas más bajas no siempre significan que el modelo sea mejor.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Métricas

Al construir un modelo, necesitamos una métrica que mida qué tan bien se ajusta a los datos. Una métrica proporciona un valor numérico que describe el rendimiento del modelo. En este capítulo, nos enfocamos en las más comunes.

Usaremos la siguiente notación:

Notación

Ya estamos familiarizados con una métrica, SSR (Suma de los Residuos al Cuadrado), que minimizamos para identificar los parámetros óptimos.
Usando nuestra notación, podemos expresar la fórmula de SSR de la siguiente manera:

Fórmula SSR

o de manera equivalente:

SSRsum

Esta métrica solo funcionaba cuando los modelos utilizaban la misma cantidad de puntos de datos. No muestra cuán bien realmente funciona un modelo. Imagina dos modelos entrenados con conjuntos de datos de diferentes tamaños.

SSRCompare

El primer modelo se ajusta mejor visualmente, pero tiene un SSR más alto porque tiene más puntos, por lo que la suma aumenta incluso con residuos promedio más pequeños. Utilizar el promedio de los residuos al cuadrado soluciona esto: el Error Cuadrático Medio (MSE).

MSE

Fórmula de MSE

o de manera equivalente:

MSEsum

Calcular el MSE usando NumPy:

mse = np.mean((y_true - y_pred)**2)

O Scikit-learn:

from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)

El MSE está al cuadrado, lo que dificulta su interpretación. Si el MSE es 49 dólares², se desea el error en dólares. Tomar la raíz da 7 — el Error Cuadrático Medio de la Raíz (RMSE).

RMSE

Suma de RMSE

Calcular RMSE usando:

rmse = np.sqrt(np.mean((y_true - y_pred)**2))

O Scikit-learn:

rmse = mean_squared_error(y_true, y_pred, squared=False)

MAE

En lugar de elevar al cuadrado los residuos, podemos tomar sus valores absolutos — esto da el Error Absoluto Medio (MAE).

Fórmula de MAE

o de manera equivalente

MAEsum

MAE se comporta como MSE pero trata los errores grandes de manera más suave. Debido a que utiliza valores absolutos, es más robusto frente a valores atípicos, lo que lo hace útil cuando los valores extremos sesgan el conjunto de datos.

Calcular MAE:

mae = np.mean(np.fabs(y_true - y_pred))

O bien:

from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)

SSR nos ayudó a derivar la Ecuación Normal, pero se puede utilizar cualquier métrica al comparar modelos.

Note
Nota

SSR, MSE y RMSE siempre clasifican los modelos de la misma manera, mientras que MAE puede preferir uno diferente porque penaliza menos los errores grandes. Se debe elegir una métrica de antemano y optimizar específicamente para ella.

Comparación de modelos

Ahora seguramente puedes decir que el segundo modelo es mejor ya que todas sus métricas son más bajas. Sin embargo, métricas más bajas no siempre significan que el modelo sea mejor.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 1
some-alt