नकारात्मक आर-वर्ग का क्या अर्थ है?


17

मान लीजिए कि मेरे पास कुछ डेटा है, और फिर मैं मॉडल (एक गैर-रेखीय प्रतिगमन) के साथ डेटा फिट करता हूं। फिर मैं आर-स्क्वेर्ड ( आर2 ) की गणना करता हूं ।

जब आर-स्क्वेर नकारात्मक है, तो इसका क्या मतलब है? क्या इसका मतलब है कि मेरा मॉडल खराब है? मुझे पता है कि की रेंज आर2[-1,1] हो सकती है। जब आर2 0 है, तो इसका क्या मतलब है?


4
इसका मतलब है कि आपने कुछ गलत किया है क्योंकि परिभाषा में [ 0 , 1 ] है। दूसरी ओर समायोजित आर 2 नकारात्मक हो सकता है, जिसे आप सुरक्षित रूप से मान सकते हैं कि आपका मॉडल डेटा के लिए बहुत खराब है। जब आर 2 वास्तव में इसका मतलब है कि शून्य है ˉ y सिर्फ अच्छे के एक कारक के रूप में है y कम से कम वर्गों प्रतिगमन लाइन ही के रूप में। R2[0,1]R2 R2y¯y
dsaxton

1
यह संभव है के लिए एक अवरोधन के बिना एक प्रतिगमन जैसे देखने stats.stackexchange.com/questions/164586/...



@ मैं यह सुझाव देने वाला था कि यह संभवतः उस प्रश्न का एक डुप्लिकेट था ... क्या आपको लगता है कि वे पर्याप्त रूप से अलग हैं? (अगर यह सवाल दूसरे की तुलना में अधिक अच्छी तरह से लगता है क्योंकि इसमें कोई विचलित करने वाला एसपीएसएस सिंटैक्स नहीं है, लेकिन दूसरे धागे के उत्तर बहुत अच्छे हैं और इस प्रश्न को भी कवर करते हैं।)
सिल्वरफ़िश

जवाबों:


37

ऋणात्मक हो सकता है, इसका मतलब है कि:R2

  1. मॉडल आपके डेटा को बहुत बुरी तरह से फिट करता है
  2. आपने इंटरसेप्ट सेट नहीं किया

लोगों को यह कहते हुए कि 0 और 1 के बीच है, यह मामला नहीं है। जबकि 'चुकता' शब्द के साथ कुछ के लिए एक नकारात्मक मूल्य यह लग सकता है जैसे यह गणित के नियमों को तोड़ता है, यह एक आर 2 मॉडल में एक अवरोधन के बिना हो सकता है । यह समझने के लिए कि, हमें यह देखने की आवश्यकता है कि R 2 की गणना कैसे की जाती है।R2R2R2

यह थोड़ा लंबा है - यदि आप इसे समझे बिना उत्तर चाहते हैं, तो अंत तक छोड़ दें। अन्यथा, मैंने इसे सरल शब्दों में लिखने की कोशिश की है।

: सबसे पहले, के 3 चर निर्धारित करते हैं , टी एस एस और एस एसRएसएसटीएसएसएसएस

RSS की गणना :

प्रत्येक स्वतंत्र चर , हमारे पास आश्रित चर y है । हम सर्वश्रेष्ठ फिट की एक रैखिक रेखा की साजिश करते हैं, जो x के प्रत्येक मूल्य के लिए y के मूल्य की भविष्यवाणी करता है । चलो के मूल्यों फोन y लाइन भविष्यवाणी y । आपकी लाइन क्या भविष्यवाणी करती है और वास्तविक y मान की गणना की जा सकती है, के बीच की त्रुटि को घटाया जा सकता है। इन सभी मतभेदों को चुकता और जोड़ा है, जो वर्गों की बची हुई राशि देता है कर रहे हैं आर एस एसएक्सyyएक्सyy^yआरएसएस

एक समीकरण में लाना है कि, आरएसएस=Σ(y-y^)2

TSS की गणना :

हम के औसत मूल्य की गणना कर सकते हैं , जिसे value y कहा जाता है । यदि हम we y की साजिश करते हैं , तो यह डेटा के माध्यम से एक क्षैतिज रेखा है क्योंकि यह स्थिर है। क्या हम इसके साथ क्या कर सकते हैं, हालांकि, घटाना है ˉ y (के औसत मूल्य y के हर वास्तविक मूल्य से) y । परिणाम चुकता किया गया है और एक साथ जोड़ा गया है, जो वर्गों का कुल योग टी एस एस देता हैyy¯y¯y¯yyटीएसएस

एक समीकरण में लाना है कि टीएसएस=Σ(y-y¯)2

ईएसएस की गणना :

के बीच मतभेद y (के मूल्यों y लाइन द्वारा भविष्यवाणी की) और औसत मूल्य ˉ y चुकता और जुड़ जाते हैं। इस वर्ग के समझाया योग है, जो बराबर होती है Σ ( y - ˉ y ) 2y^yy¯Σ(y^-y¯)2

याद रखें, , लेकिन हम एक जोड़ सकते हैं + y - y इसे में, क्योंकि वह खुद को बाहर रद्द। इसलिए, टी एस एस = Σ ( y - y + y - ˉ y ) 2 । इन कोष्ठक का विस्तार करने पर हम पाते टी एस एस = Σ ( y - y ) 2 +टीएसएस=Σ(y-y¯)2+y^-y^टीएसएस=Σ(y-y^+y^-y¯)2टीएसएस=Σ(y-y^)2+2*Σ(y-y^)(y^-y¯)+Σ(y^-y¯)2

करते हैं, और केवल जब लाइन एक अवरोधन के साथ साजिश रची है, निम्नलिखित हमेशा सत्य है: । इसलिए, टी एस एस = Σ ( y - y ) 2 + Σ ( y - ˉ y ) 2 , जिससे आप बस का अर्थ है देख सकते हैं कि टी एस एस = आर एस एस +2*Σ(y-y^)(y^-y¯)=0टीएसएस=Σ(y-y^)2+Σ(y^-y¯)2टीएसएस=आरएसएस+एसएस. If we divide all terms by टीएसएस and rearrange, we get 1-आरएसएसटीएसएस=एसएसटीएसएस.

Here's the important part:

आर2 is defined as how much of the variance is explained by your model (how good your model is). In equation form, that's आर2=1-आरएसएसटीएसएस. Look familiar? When the line is plotted with an intercept, we can substitute this as आर2=एसएसटीएसएस. Since both the numerator and demoninator are sums of squares, आर2 must be positive.

BUT

2*Σ(y-y^)(y^-y¯) does not necessarily equal 0. This means that TSS=RSS+ESS+2(yy^)(y^y¯).

Dividing all terms by TSS, we get 1RSSTSS=ESS+2(yy^)(y^y¯)TSS.

Finally, we substitute to get R2=ESS+2(yy^)(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(yy^)(y^y¯) would be negative when yy^ 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 when R2 is negative (Source: University of Houston Clear Lake)

R ^ 2 नकारात्मक होने पर एक अतिरंजित उदाहरण (स्रोत: ह्यूस्टन क्लीयर यूनिवर्सिटी विश्वविद्यालय)

Put simply:

  • When R2<0, a horizontal line explains the data better than your model.

You also asked about R2=0.

  • When R2=0, a horizontal line explains the data equally as well as your model.

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.


5
Seriously fantastic answer! The only thing missing for me is the intuition behind why 2(yy^)(y^y¯)=0 when, and only when, there is an intercept set?
Owen

6

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

r-squared के लिए समीकरण

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

1 का r चुकता मूल्य

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.

स्थिर केंद्र

डिफ़ॉल्ट रूप से, प्रतिगमन समीकरण औसत x और औसत y का उपयोग करते हैं, क्योंकि प्रतिगमन रेखा गुजरती है। लेकिन अगर आप इसे एक ऐसे बिंदु के माध्यम से बाध्य करते हैं, जहां से प्रतिगमन रेखा सामान्य रूप से दूर होगी, तो आपको राशि चुकता त्रुटि मिल सकती है, जो क्षैतिज रेखा का उपयोग करने से अधिक है

नीचे दी गई छवि में, दोनों प्रतिगमन लाइनों को 0. के ay अवरोधन के लिए मजबूर किया गया था। इसने डेटा के लिए एक नकारात्मक आर-वर्ग उत्पन्न किया जो मूल से बहुत दूर है।

नकारात्मक आर चुकता

अंकों के शीर्ष सेट के लिए, लाल वाले, प्रतिगमन रेखा सबसे अच्छा संभव प्रतिगमन रेखा है जो मूल से भी गुजरती है। यह सिर्फ ऐसा होता है कि प्रतिगमन रेखा एक क्षैतिज रेखा का उपयोग करने से भी बदतर है, और इसलिए एक नकारात्मक आर-स्क्वेर्ड देता है।

अपरिभाषित R- चुकता

एक विशेष मामला है जिसका कोई उल्लेख नहीं किया गया है, जहां आप एक अपरिभाषित आर-स्क्वेर्ड प्राप्त कर सकते हैं। यदि आपका डेटा पूरी तरह से क्षैतिज है, तो आपकी कुल राशि चुकता त्रुटि शून्य है। परिणामस्वरूप आपको R-squared समीकरण में शून्य से विभाजित किया जाएगा, जो अपरिभाषित है।

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें


एक बहुत ही ज्वलंत उत्तर, इस प्रकार के और अधिक उत्तर देखना चाहेंगे!
बेन

0

पिछले टिप्पणीकार नोट के रूप में, r ^ 2 के बीच [0,1] है, न कि [-1, + 1], इसलिए इसका नकारात्मक होना असंभव है। आप मान को वर्गाकार नहीं कर सकते और एक ऋणात्मक संख्या प्राप्त कर सकते हैं। शायद आप r को देख रहे हैं, सहसंबंध? यह [-1, + 1] के बीच हो सकता है, जहां शून्य का मतलब चर के बीच कोई संबंध नहीं है, -1 का अर्थ है एक पूर्ण नकारात्मक संबंध (जैसा कि एक चर बढ़ता है, दूसरा घटता है), और +1 एक पूर्ण सकारात्मक है संबंध (दोनों चर समवर्ती रूप से ऊपर या नीचे जाते हैं)।

यदि वास्तव में आप r ^ 2 को देख रहे हैं, तो, जैसा कि पिछले टिप्पणीकार का वर्णन है, आप शायद समायोजित r ^ 2 देख रहे हैं, वास्तविक r ^ 2 नहीं। विचार करें कि सांख्यिकीय का क्या अर्थ है: मैं व्यवहार विज्ञान के आँकड़े सिखाता हूं, और मैंने अपने छात्रों को r ^ 2 के अर्थ के बारे में सिखाने का सबसे आसान तरीका "% विचरण समझाया" है। इसलिए यदि आपके पास r ^ 2 = 0.5 है, तो मॉडल निर्भर (परिणाम) चर की भिन्नता का 50% बताता है। यदि आपके पास ऋणात्मक r ^ 2 है, तो इसका मतलब होगा कि मॉडल परिणाम चर का नकारात्मक% बताता है, जो कि सहज ज्ञान युक्त उचित सुझाव नहीं है। हालाँकि, समायोजित r ^ 2 नमूना आकार (n) और भविष्यवक्ताओं की संख्या (p) को ध्यान में रखता है। इसकी गणना करने का एक सूत्र यहां है। यदि आपके पास बहुत कम आर ^ 2 है, तो नकारात्मक मान प्राप्त करना काफी आसान है। दी, एक नकारात्मक समायोजित r ^ 2 का नियमित r ^ 2 की तुलना में कोई अधिक सहज अर्थ नहीं है, लेकिन जैसा कि पिछले टिप्पणीकार कहते हैं, इसका मतलब है कि आपका मॉडल बहुत खराब है, अगर सिर्फ सादा बेकार नहीं है।


3
विचरण के प्रतिशत के बारे में बताया गया है, शायद अगर मॉडल इतना खराब है कि विचरण (ESS> TSS) को बढ़ाया जाए, तो एक नकारात्मक हो सकता हैआर2, कहाँ पे आर2वास्तविक और सज्जित मूल्यों के बीच वर्गबद्ध सहसंबंध के बजाय विचरण के% के रूप में परिभाषित किया गया है। यह ओएलएस द्वारा अनुमानित अवरोधन के साथ एक प्रतिगमन में नहीं हो सकता है, लेकिन यह अवरोधन या शायद अन्य मामलों के बिना प्रतिगमन में हो सकता है।
रिचर्ड हार्डी

4
आर2 होना असंभव है <0 नमूना में, लेकिन नकारात्मक हो सकता है जब नमूना से बाहर की गणना की जाती है , अर्थात सभी प्रतिगमन गुणांकों को ठीक करने के बाद एक होल्डआउट नमूना पर। जैसा कि ऊपर बताया गया है यह यादृच्छिक भविष्यवाणियों से भी बदतर है।
फ्रैंक हरेल

@FrankHarrell, क्या आप सुनिश्चित हैं कि इसे नमूने में होना चाहिए? दी, आपको एक मॉडल को उत्पन्न करने के लिए डेटा को दृढ़ता से अनदेखा करना होगा जो कि औसत से भी बदतर है, लेकिन मैं यह नहीं देख रहा हूं कि आप केवल इन-सैंपल डेटा के साथ ऐसा क्यों नहीं कर सकते।
मैट क्राउज

मैं मान रहा हूं कि नमूना का मतलब नमूना है जिस पर गुणांक का अनुमान लगाया गया था। फिर नकारात्मक नहीं हो सकता।
फ्रैंक हार्ले

1
@FrankHarrell, मान लीजिए कि मॉडल वास्तव में अत्याचारी है - आप कुछ इंटरसेप्ट-कम फ़ंक्शन जैसे फिट करते हैंपाप(ω*एक्स+φ)एक विकर्ण लाइन के लिए। नहीं होना चाहिएआर2यहाँ भी नकारात्मक हो, यहाँ तक कि इन-सैंपल डेटा के लिए भी? जब मैं ऐसा करता हूं तो
मैट क्रैस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.