Mé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.
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.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you explain why lower metrics don't always mean a better model?
What are some other metrics used to evaluate model performance?
Can you give examples of when MAE is preferred over MSE or RMSE?
Incrível!
Completion taxa melhorada para 5.26
Mé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.
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.
Obrigado pelo seu feedback!