Digamos que eu tenho alguns dados e, em seguida, encaixo os dados em um modelo (uma regressão não linear). Então eu calculo o R ao quadrado ( ).
Quando R ao quadrado é negativo, o que isso significa? Isso significa que meu modelo é ruim? Eu sei que a gama de pode ser [-1,1]. Quando é 0, o que isso significa também?
regression
goodness-of-fit
r-squared
curve-fitting
RockTheStar
fonte
fonte
Respostas:
pode ser negativo, isso significa apenas que:R2
Para as pessoas dizendo que é entre 0 e 1, este não é o caso. Enquanto que um valor negativo para algo com a palavra 'quadrado' em que pode soar como ele quebra as regras da matemática, que pode acontecer em um R 2 modelo sem uma interceptação. Para entender o porquê, precisamos olhar como R 2 é calculado.R2 R2 R2
Isso é um pouco longo - se você quiser a resposta sem entendê-la, pule para o final. Caso contrário, tentei escrever isso em palavras simples.
Primeiro, vamos definir 3 variáveis: , T S S e E S S .RSS TSS ESS
Calculando RSS :
Para cada variável independente , temos a variável dependente y . Plotamos uma linha linear de melhor ajuste, que prevê o valor de y para cada valor de x . Vamos chamar os valores de y a linha prediz y . O erro entre o que sua linha prevê e qual é o valor y real pode ser calculado como subtração. Todas estas diferenças são elevados ao quadrado e somados, o que dá o residual Soma dos Quadrados R S S .x y y x y y^ y R SS
Colocando em que uma equação,R SS= ∑ ( y- y^)2
Calculando TSS :
Podemos calcular o valor médio de , que é chamado ˉ y . Se plotarmos y , é apenas uma linha horizontal através dos dados, porque é constante. O que podemos fazer com isso, porém, é subtrairy y¯ y¯ (o valor médio dey) de cada valor real doy. O resultado é elevado ao quadrado e somados, o que dá a soma total dos quadradosTSS.y¯ y y TSS
Colocando isso em uma equaçãoTSS=∑(y−y¯)2
Cálculo do ESS :
As diferenças entre y (os valores de y , previstos pela linha) e o valor médio ˉ y são elevados ao quadrado e adicionado. Esta é a soma explicada dos quadrados, que é igual a ∑ (y^ y y¯ ∑(y^−y¯)2
Lembre-se, , mas podemos adicionar um + y - y para ele, porque ele se anula. Portanto, T S S = Σ ( y - y + y - ˉ y ) 2 . Expandindo esses suportes, temos T S S = Σ ( y - y ) 2 +TSS=∑(y−y¯)2 +y^−y^ TSS=∑(y−y^+y^−y¯)2 TSS=∑(y−y^)2+2∗∑(y−y^)(y^−y¯)+∑(y^−y¯)2
Quando, e apenas quando a linha é traçada com uma intercepção, o seguinte é sempre verdadeira: . Portanto, T S S = Σ ( y - y ) 2 + Σ ( y - ˉ y ) 2 , o que poderá notar que apenas meios T S S = R S S +2∗∑(y−y^)(y^−y¯)=0 TSS=∑(y−y^)2+∑(y^−y¯)2 . Se dividirmos todos os termos por T S S e reorganizarmos, obtemos 1 - R S STSS=RSS+ESS TSS .1−RSSTSS=ESSTSS
Aqui está a parte importante :
é definido como o quanto da variância é explicada por seu modelo (como bom seu modelo é). Em forma de equação, isso é R 2 = 1 - R S SR2 . Parece familiar? Quando a linha é plotada com uma interceptação, podemos substituí-la comoR2=ESSR2=1−RSSTSS R2=ESSTSS R2
MAS
Dividing all terms byTSS , we get 1−RSSTSS=ESS+2∗∑(y−y^)(y^−y¯)TSS .
Finally, we substitute to getR2=ESS+2∗∑(y−y^)(y^−y¯)TSS . This time, the numerator has a term in it which is not a sum of squares, so it can be negative. This would make R2 negative. When would this happen? 2∗∑(y−y^)(y^−y¯) would be negative when y−y^ is negative and y^−y¯ is positive, or vice versa. This occurs when the horizontal line of y¯ actually explains the data better than the line of best fit.
Here's an exaggerated example of whenR2 is negative (Source: University of Houston Clear Lake)
Put simply:
You also asked aboutR2=0 .
I commend you for making it through that. If you found this helpful, you should also upvote fcop's answer here which I had to refer to, because it's been a while.
fonte
Neither answer so far is entirely correct, so I will try to give my understanding of R-Squared. I have given a more detailed explanation of this on my blog post here "What is R-Squared"
Sum Squared Error
The objective of ordinary least squared regression is to get a line which minimized the sum squared error. The default line with minimum sum squared error is a horizontal line through the mean. Basically, if you can't do better, you can just predict the mean value and that will give you the minimum sum squared error
R-Squared is a way of measuring how much better than the mean line you have done based on summed squared error. The equation for R-Squared is
Now SS Regression and SS Total are both sums of squared terms. Both of those are always positive. This means we are taking 1, and subtracting a positive value. So the maximum R-Squared value is positive 1, but the minimum is negative infinity. Yes, that is correct, the range of R-squared is between -infinity and 1, not -1 and 1 and not 0 and 1
What Is Sum Squared Error
Sum squared error is taking the error at every point, squaring it, and adding all the squares. For total error, it uses the horizontal line through the mean, because that gives the lowest sum squared error if you don't have any other information, i.e. can't do a regression.
As an equation it is this
Now with regression, our objective is to do better than the mean. For instance this regression line will give a lower sum squared error than using the horizontal line.
The equation for regression sum squared error is this
Ideally, you would have zero regression error, i.e. your regression line would perfectly match the data. In that case you would get an R-Squared value of 1
Negative R Squared
All the information above is pretty standard. Now what about negative R-Squared ?
Well it turns out that there is not reason that your regression equation must give lower sum squared error than the mean value. It is generally thought that if you can't make a better prediction than the mean value, you would just use the mean value, but there is nothing forcing that to be the cause. You could for instance predict the median for everything.
In actual practice, with ordinary least squared regression, the most common time to get a negative R-Squared value is when you force a point that the regression line must go through. This is typically done by setting the intercept, but you can force the regression line through any point.
When you do that the regression line goes through that point, and attempts to get the minimum sum squared error while still going through that point.
By default, the regression equations use average x and average y as the point that the regression line goes through. But if you force it through a point that is far away from where the regression line would normally be you can get sum squared error that is higher than using the horizontal line
Na imagem abaixo, ambas as linhas de regressão foram forçadas a ter um intercepto de 0. Isso causou um quadrado R negativo para os dados que estão muito afastados da origem.
Para o conjunto de pontos superior, os vermelhos, a linha de regressão é a melhor linha de regressão possível que também passa pela origem. Acontece que essa linha de regressão é pior do que usar uma linha horizontal e, portanto, fornece um R-quadrado negativo.
Undefined R-Squared
Há um caso especial que ninguém mencionou, em que você pode obter um R-quadrado indefinido. Ou seja, se seus dados estiverem completamente horizontais, o erro total da soma ao quadrado será zero. Como resultado, você teria um zero dividido por zero na equação do quadrado R, que é indefinida.
fonte
Como observa o comentarista anterior, r ^ 2 está entre [0,1], não [-1, + 1], por isso é impossível ser negativo. Você não pode colocar um valor ao quadrado e obter um número negativo. Talvez você esteja olhando r, a correlação? Pode estar entre [-1, + 1], onde zero significa que não há relação entre as variáveis, -1 significa que há uma relação negativa perfeita (à medida que uma variável aumenta, a outra diminui) e +1 é um positivo perfeito relacionamento (ambas as variáveis sobem ou descem concordantemente).
Se, de fato, você está olhando r ^ 2, então, como o comentarista anterior descreve, provavelmente você está vendo o r ^ 2 ajustado, não o r ^ 2 real. Considere o que a estatística significa: ensino aulas de ciências comportamentais, e a maneira mais fácil que aprendi para ensinar meus alunos sobre o significado de r ^ 2 é "% de variação explicada". Portanto, se você tiver r ^ 2 = 0,5, o modelo explica 50% da variação da variável dependente (resultado). Se você tiver um r ^ 2 negativo, isso significa que o modelo explica uma% negativa da variável de resultado, o que não é uma sugestão intuitivamente razoável. No entanto, r ^ 2 ajustado leva em consideração o tamanho da amostra (n) e o número de preditores (p). Uma fórmula para o cálculo é aqui. Se você tem um r ^ 2 muito baixo, é razoavelmente fácil obter valores negativos. É verdade que um r ^ 2 ajustado negativo não tem um significado mais intuitivo que o r ^ 2 comum, mas, como diz o comentarista anterior, significa apenas que seu modelo é muito pobre, se não apenas inútil.
fonte