R-Quadrado
O que é R-quadrado
Já abordamos algumas das métricas mais utilizadas para regressão no capítulo Métricas. São elas: MSE, RMSE e MAE. Essas métricas são úteis para comparar modelos, mas ao construir um único modelo, nem sempre é possível saber se o resultado é bom para o seu conjunto de dados ou se é necessário tentar outros modelos.
Felizmente, existe uma métrica chamada R-quadrado que mede o desempenho do modelo em uma escala de 0 a 1. O R-quadrado calcula a proporção da variância do alvo explicada pelo modelo.
O problema é que não podemos calcular a variância explicada diretamente. Porém, podemos calcular a variância não explicada, então transformamos a equação acima para:
Variância Total
A variância total é simplesmente a variância do alvo, e podemos calcular a variância do alvo utilizando a fórmula da variância amostral da Estatística (ȳ é a média do alvo):
Aqui está um exemplo com visualização. As diferenças entre o valor real do alvo e a média do alvo estão destacadas em laranja. Assim como no cálculo do SSR, pegamos o comprimento de cada linha laranja, elevamos ao quadrado e somamos ao total, mas agora também dividimos o resultado por m-1. Neste exemplo, obtivemos uma variância total de 11.07.
Variância Não Explicada
Agora é necessário calcular a variância que não é explicada pelo modelo. Se o modelo explicasse toda a variância, todos os pontos estariam sobre a linha de regressão construída. Isso raramente acontece, então queremos calcular a variância do alvo, mas agora em relação à linha de regressão em vez da média. Utilizaremos a mesma fórmula, mas substituindo ȳ pelas previsões do modelo.
Aqui está um exemplo com visualização:
Agora sabemos tudo para calcular o R-quadrado:
Obtivemos uma pontuação de R-quadrado de 0,92, que está próxima de 1, portanto temos um ótimo modelo. Também calcularemos o R-quadrado para mais um modelo.
O R-quadrado é menor, pois o modelo subajusta um pouco os dados.
R-quadrado no Python
A classe sm.OLS
calcula o R-quadrado para nós. Podemos encontrá-lo na tabela summary()
aqui.
Resumindo, o R-quadrado é uma métrica para regressão. Pode assumir valores de 0 a 1. Diferente de outras métricas como MSE/MAE, um valor mais alto é melhor (a menos que o modelo esteja superajustado). Você pode encontrar o R-quadrado na tabela summary()
da classe sm.OLS
.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 5.26
R-Quadrado
Deslize para mostrar o menu
O que é R-quadrado
Já abordamos algumas das métricas mais utilizadas para regressão no capítulo Métricas. São elas: MSE, RMSE e MAE. Essas métricas são úteis para comparar modelos, mas ao construir um único modelo, nem sempre é possível saber se o resultado é bom para o seu conjunto de dados ou se é necessário tentar outros modelos.
Felizmente, existe uma métrica chamada R-quadrado que mede o desempenho do modelo em uma escala de 0 a 1. O R-quadrado calcula a proporção da variância do alvo explicada pelo modelo.
O problema é que não podemos calcular a variância explicada diretamente. Porém, podemos calcular a variância não explicada, então transformamos a equação acima para:
Variância Total
A variância total é simplesmente a variância do alvo, e podemos calcular a variância do alvo utilizando a fórmula da variância amostral da Estatística (ȳ é a média do alvo):
Aqui está um exemplo com visualização. As diferenças entre o valor real do alvo e a média do alvo estão destacadas em laranja. Assim como no cálculo do SSR, pegamos o comprimento de cada linha laranja, elevamos ao quadrado e somamos ao total, mas agora também dividimos o resultado por m-1. Neste exemplo, obtivemos uma variância total de 11.07.
Variância Não Explicada
Agora é necessário calcular a variância que não é explicada pelo modelo. Se o modelo explicasse toda a variância, todos os pontos estariam sobre a linha de regressão construída. Isso raramente acontece, então queremos calcular a variância do alvo, mas agora em relação à linha de regressão em vez da média. Utilizaremos a mesma fórmula, mas substituindo ȳ pelas previsões do modelo.
Aqui está um exemplo com visualização:
Agora sabemos tudo para calcular o R-quadrado:
Obtivemos uma pontuação de R-quadrado de 0,92, que está próxima de 1, portanto temos um ótimo modelo. Também calcularemos o R-quadrado para mais um modelo.
O R-quadrado é menor, pois o modelo subajusta um pouco os dados.
R-quadrado no Python
A classe sm.OLS
calcula o R-quadrado para nós. Podemos encontrá-lo na tabela summary()
aqui.
Resumindo, o R-quadrado é uma métrica para regressão. Pode assumir valores de 0 a 1. Diferente de outras métricas como MSE/MAE, um valor mais alto é melhor (a menos que o modelo esteja superajustado). Você pode encontrar o R-quadrado na tabela summary()
da classe sm.OLS
.
Obrigado pelo seu feedback!