Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Métricas | Escolhendo o Melhor Modelo
Quizzes & Challenges
Quizzes
Challenges
/
Regressão Linear com Python

bookMétricas

Ao construir um modelo, precisamos de uma métrica que meça o quão bem ele se ajusta aos dados. Uma métrica fornece um valor numérico que descreve o desempenho do modelo. Neste capítulo, focamos nas mais comuns.

Usaremos a seguinte notação:

Já estamos familiarizados com uma métrica, SSR (Sum of Squared Residuals), que minimizamos para identificar os parâmetros ideais.
Utilizando nossa notação, podemos expressar a fórmula do SSR da seguinte forma:

ou igualmente:

Essa métrica funcionava apenas quando os modelos utilizavam o mesmo número de pontos de dados. Ela não mostra o quão bem um modelo realmente se desempenha. Imagine dois modelos treinados em conjuntos de dados de tamanhos diferentes.

O primeiro modelo se ajusta melhor visualmente, mas possui um SSR maior porque tem mais pontos, então a soma aumenta mesmo com resíduos médios menores. Utilizar a média dos resíduos ao quadrado corrige isso — o Erro Quadrático Médio (MSE).

MSE

ou igualmente:

Calcule o MSE usando NumPy:

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

Ou Scikit-learn:

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

O MSE é elevado ao quadrado, o que dificulta a interpretação. Se o MSE for 49 dólares², queremos o erro em dólares. Tirando a raiz, obtemos 7 — o Erro Quadrático Médio da Raiz (RMSE).

RMSE

Calcule o RMSE usando:

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

Ou Scikit-learn:

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

MAE

Em vez de elevar ao quadrado os resíduos, é possível utilizar seus valores absolutos — isso resulta no Erro Absoluto Médio (MAE).

ou igualmente

MAE se comporta de forma semelhante ao MSE, mas trata grandes erros de maneira mais suave. Por utilizar valores absolutos, é mais robusto a outliers, sendo útil quando valores extremos distorcem o conjunto de dados.

Calcular o MAE:

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

Ou:

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

SSR nos ajudou a derivar a Equação Normal, mas qualquer métrica pode ser utilizada ao comparar modelos.

Note
Nota

SSR, MSE e RMSE sempre classificam os modelos da mesma forma, enquanto MAE pode preferir outro porque penaliza menos os grandes erros. É recomendável escolher uma métrica previamente e otimizar especificamente para ela.

Agora é possível afirmar que o segundo modelo é superior, pois todas as suas métricas são menores. No entanto, métricas mais baixas nem sempre indicam que o modelo é melhor.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookMétricas

Deslize para mostrar o menu

Ao construir um modelo, precisamos de uma métrica que meça o quão bem ele se ajusta aos dados. Uma métrica fornece um valor numérico que descreve o desempenho do modelo. Neste capítulo, focamos nas mais comuns.

Usaremos a seguinte notação:

Já estamos familiarizados com uma métrica, SSR (Sum of Squared Residuals), que minimizamos para identificar os parâmetros ideais.
Utilizando nossa notação, podemos expressar a fórmula do SSR da seguinte forma:

ou igualmente:

Essa métrica funcionava apenas quando os modelos utilizavam o mesmo número de pontos de dados. Ela não mostra o quão bem um modelo realmente se desempenha. Imagine dois modelos treinados em conjuntos de dados de tamanhos diferentes.

O primeiro modelo se ajusta melhor visualmente, mas possui um SSR maior porque tem mais pontos, então a soma aumenta mesmo com resíduos médios menores. Utilizar a média dos resíduos ao quadrado corrige isso — o Erro Quadrático Médio (MSE).

MSE

ou igualmente:

Calcule o MSE usando NumPy:

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

Ou Scikit-learn:

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

O MSE é elevado ao quadrado, o que dificulta a interpretação. Se o MSE for 49 dólares², queremos o erro em dólares. Tirando a raiz, obtemos 7 — o Erro Quadrático Médio da Raiz (RMSE).

RMSE

Calcule o RMSE usando:

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

Ou Scikit-learn:

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

MAE

Em vez de elevar ao quadrado os resíduos, é possível utilizar seus valores absolutos — isso resulta no Erro Absoluto Médio (MAE).

ou igualmente

MAE se comporta de forma semelhante ao MSE, mas trata grandes erros de maneira mais suave. Por utilizar valores absolutos, é mais robusto a outliers, sendo útil quando valores extremos distorcem o conjunto de dados.

Calcular o MAE:

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

Ou:

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

SSR nos ajudou a derivar a Equação Normal, mas qualquer métrica pode ser utilizada ao comparar modelos.

Note
Nota

SSR, MSE e RMSE sempre classificam os modelos da mesma forma, enquanto MAE pode preferir outro porque penaliza menos os grandes erros. É recomendável escolher uma métrica previamente e otimizar especificamente para ela.

Agora é possível afirmar que o segundo modelo é superior, pois todas as suas métricas são menores. No entanto, métricas mais baixas nem sempre indicam que o modelo é melhor.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt