Powiedzmy, że mam jakieś dane, a następnie dopasowuję dane do modelu (regresja nieliniowa). Następnie obliczam R-kwadrat ( ).
Kiedy R-kwadrat jest ujemny, co to oznacza? Czy to znaczy, że mój model jest zły? Wiem, że zakres może wynosić [-1,1]. Kiedy wynosi 0, co to oznacza?
regression
goodness-of-fit
r-squared
curve-fitting
RockTheStar
źródło
źródło
Odpowiedzi:
Do ludzi, którzy mówią, że jest między 0 a 1, to nie jest przypadek. Natomiast ujemna wartość czegoś ze słowem „kwadratów” w nim może brzmieć jak łamie zasady matematyki, może się zdarzyć w R 2 modelu bez przecięcia. Aby zrozumieć dlaczego, musimy przyjrzeć się, jak R 2 jest obliczana.R2) R2) R2)
To jest trochę długie - jeśli chcesz uzyskać odpowiedź bez jej zrozumienia, przejdź do końca. W przeciwnym razie próbowałem napisać to prostymi słowami.
Najpierw określić 3 zmienne: , T S S i E S S .R SS. T.S.S. miS.S.
Obliczanie RSS :
Dla każdej niezależnej zmiennej mamy zmienną zależną y . Narysujemy linię liniową najlepszego dopasowania, która przewiduje wartość y dla każdej wartości x . Nazwijmy wartości y linia przewiduje y . Błąd między przewidywaniami linii a rzeczywistą wartością y można obliczyć odejmując. Wszystkie te różnice są sumowane i kwadratu, co daje resztkowa suma kwadratów R S S .x y y x y y^ y R SS.
Umieszczenie że do równania,RSS=∑(y−y^)2
Obliczanie TSS :
Możemy obliczyć średnią wartość , która nazywa się ˉ y . Jeśli mamy wykreślić · y , to tylko poziomą linię przez dane, ponieważ jest stała. Możemy jednak odjąć ˉ y (średnią wartość y ) od każdej rzeczywistej wartości y . Wynik kwadratu i sumują się, co daje łączną sumę kwadratów T S S .y y¯ y¯ y¯ y y TSS
Umieszczenie tego w równaniuTSS=∑(y−y¯)2
Obliczanie ESS :
Różnice między Y (Wartości Y przewidywane linią), a średnia wartość ˉ Y są do kwadratu i dodana. Jest to wyjaśnione suma kwadratów, co odpowiada Ď ( y - ˉ Y ) 2y^ y y¯ ∑(y^−y¯)2
Pamiętać, , ale można dodać + Y - Y do niego, ponieważ kasuje się na zewnątrz. Zatem T S S = Σ ( Y - Y + Y - ˉ Y ) 2 . Rozszerzanie wsporników, otrzymujemy 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
Wtedy i tylko wtedy, gdy linia wykreślona z osią następującą jest zawsze prawdziwe: . Zatem T S S = Σ ( y - y ) 2 + Σ ( Y - ˉ R ) 2 , które można zauważyć, oznacza tylko, że T S S = R S S +2)∗∑(y-y^) (y^-y¯) = 0 T.S.S.= ∑ ( y- y^)2)+ ∑ ( y^- y¯)2) TSS=RSS+ESS . If we divide all terms by TSS and rearrange, we get 1−RSSTSS=ESSTSS .
Here's the important part:
BUT
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.
źródło
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
Teraz z regresją naszym celem jest zrobienie czegoś lepszego niż średnia. Na przykład ta linia regresji da mniejszy błąd kwadratu niż użycie linii poziomej.
Oto równanie błędu kwadratowego sumy regresji
Idealnie byłoby, gdybyś miał zerowy błąd regresji, tzn. Twoja linia regresji idealnie pasowałaby do danych. W takim przypadku otrzymasz wartość R-Squared 1
Ujemne R do kwadratu
Wszystkie powyższe informacje są dość standardowe. A co z ujemnym R-kwadratem?
Okazuje się, że nie ma powodu, aby twoje równanie regresji dawało błąd kwadratowy niższy niż wartość średnia. Powszechnie uważa się, że jeśli nie można dokonać lepszej prognozy niż wartość średnia, wystarczy użyć wartości średniej, ale nic nie przemawia za tym. Możesz na przykład przewidzieć medianę wszystkiego.
W praktyce, przy zwykłej regresji najmniejszych kwadratów, najczęstszym czasem na uzyskanie ujemnej wartości R-kwadratów jest wymuszenie punktu, przez który linia regresji musi przejść. Zazwyczaj odbywa się to przez ustawienie punktu przecięcia, ale można wymusić linię regresji przez dowolny punkt.
Gdy to zrobisz, linia regresji przechodzi przez ten punkt i próbuje uzyskać błąd minimalnej sumy do kwadratu, wciąż przechodząc przez ten punkt.
Domyślnie równania regresji wykorzystują średnią x i średnią y jako punkt, przez który przechodzi linia regresji. Ale jeśli wymusisz to przez punkt, który jest daleko od miejsca, w którym normalnie byłaby linia regresji, możesz otrzymać błąd kwadratu większy niż użycie linii poziomej
Na poniższym obrazie obie linie regresji zostały zmuszone do przechwytywania ay na 0. To spowodowało ujemny kwadrat R dla danych, które są daleko przesunięte od początku.
W przypadku górnego zestawu punktów, czerwonych, linia regresji jest najlepszą możliwą linią regresji, która również przechodzi przez początek. Zdarza się, że ta linia regresji jest gorsza niż użycie linii poziomej, a zatem daje ujemny R-kwadrat.
Niezdefiniowany R-kwadrat
Jest jeden szczególny przypadek, o którym nikt nie wspominał, w którym można uzyskać niezdefiniowany R-Squared. To znaczy, jeśli twoje dane są całkowicie poziome, wtedy twój całkowity błąd kwadratu wynosi zero. W rezultacie miałbyś zero podzielone przez zero w równaniu R-kwadrat, który jest niezdefiniowany.
źródło
Jak zauważa poprzedni komentator, r ^ 2 jest między [0,1], a nie [-1, + 1], więc nie można być ujemnym. Nie możesz obliczyć wartości i uzyskać liczby ujemnej. Być może patrzysz na korelację r? Może wynosić od [-1, + 1], gdzie zero oznacza brak zależności między zmiennymi, -1 oznacza idealną zależność ujemną (gdy jedna zmienna rośnie, druga maleje), a +1 jest doskonałym wynikiem dodatnim związek (obie zmienne idą w górę lub w dół jednocześnie).
Jeśli rzeczywiście patrzysz na r ^ 2, to, jak opisuje poprzedni komentator, prawdopodobnie widzisz skorygowane r ^ 2, a nie rzeczywiste r ^ 2. Zastanów się, co oznacza statystyka: uczę statystyki nauk behawioralnych, a najprostszym sposobem, w jaki nauczyłem moich uczniów, jak rozumieć znaczenie r ^ 2, jest „wyjaśnienie% wariancji”. Więc jeśli masz r ^ 2 = 0,5, model wyjaśnia 50% wariancji zmiennej zależnej (wyniku). Jeśli masz ujemne r ^ 2, oznacza to, że model wyjaśnia ujemny% zmiennej wynikowej, co nie jest intuicyjnie uzasadnioną sugestią. Jednak skorygowane r ^ 2 uwzględnia wielkość próbki (n) i liczbę predyktorów (p). Wzór na jego obliczenie znajduje się tutaj. Jeśli masz bardzo niskie r ^ 2, to dość łatwo jest uzyskać wartości ujemne. To prawda, że skorygowane ujemnie r ^ 2 nie ma bardziej intuicyjnego znaczenia niż zwykłe r ^ 2, ale jak powiedział poprzedni komentator, oznacza to po prostu, że twój model jest bardzo słaby, jeśli nie po prostu bezużyteczny.
źródło