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
Regressão Linear com Python

Métricas

Deslize para mostrar o menu

Ao construir um modelo, é necessário um métrico 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, o foco está nas métricas mais comuns.

Será utilizada a seguinte notação:

Notação

Já estamos familiarizados com uma métrica, SSR (Soma dos Resíduos Quadrados), que minimizamos para identificar os parâmetros ideais.
Usando nossa notação, podemos expressar a fórmula do SSR da seguinte forma:

Fórmula do SSR

ou igualmente:

SSRsum

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

SSRCompare

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 resolve isso — o Erro Quadrático Médio (MSE).

MSE

Fórmula do MSE

ou igualmente:

MSEsum

Calcular 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

RMSEsum

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 os resíduos ao quadrado, podemos tomar seus valores absolutos — isso resulta no Erro Absoluto Médio (MAE).

Fórmula do MAE

ou igualmente

MAEsum

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 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 usada ao comparar modelos.

Note
Nota

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

ModelCompare

Agora você certamente pode afirmar que o segundo modelo é melhor, já que todas as suas métricas são menores. No entanto, métricas mais baixas nem sempre significam 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

Métricas

Ao construir um modelo, é necessário um métrico 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, o foco está nas métricas mais comuns.

Será utilizada a seguinte notação:

Notação

Já estamos familiarizados com uma métrica, SSR (Soma dos Resíduos Quadrados), que minimizamos para identificar os parâmetros ideais.
Usando nossa notação, podemos expressar a fórmula do SSR da seguinte forma:

Fórmula do SSR

ou igualmente:

SSRsum

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

SSRCompare

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 resolve isso — o Erro Quadrático Médio (MSE).

MSE

Fórmula do MSE

ou igualmente:

MSEsum

Calcular 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

RMSEsum

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 os resíduos ao quadrado, podemos tomar seus valores absolutos — isso resulta no Erro Absoluto Médio (MAE).

Fórmula do MAE

ou igualmente

MAEsum

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 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 usada ao comparar modelos.

Note
Nota

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

ModelCompare

Agora você certamente pode afirmar que o segundo modelo é melhor, já que todas as suas métricas são menores. No entanto, métricas mais baixas nem sempre significam que o modelo é melhor.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

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