क्या रैंडम फ़ॉरेस्ट ओवरफ़िट है?


24

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

हो सकता है कि मुझसे ज्यादा एक्सपर्ट कोई और अधिक ठोस जवाब दे सके या समस्या को बेहतर ढंग से समझने के लिए मुझे सही दिशा में इशारा कर सके।


3
सभी एल्गोरिदम कुछ हद तक ओवरफिट करेंगे। यह किसी ऐसी चीज को लेने के बारे में नहीं है जो ओवरफिट नहीं करता है, यह ओवरफिटिंग की मात्रा और अधिक प्रासंगिक मीट्रिक को अधिकतम करने के लिए आपके द्वारा हल की जाने वाली समस्या के रूप पर ध्यान से विचार करने के बारे में है।
संकेत

1
ISTR कि बड़ी संख्या के कानून के आधार पर ब्रेमन के पास एक सबूत था। क्या किसी ने उस प्रमाण में कोई दोष खोजा है?
JENSCDC

जवाबों:


22

उच्च जटिलता के साथ प्रत्येक एमएल एल्गोरिथ्म ओवरफिट कर सकता है। हालांकि, ओपी पूछ रहा है कि क्या जंगल में पेड़ों की संख्या बढ़ने पर एक आरएफ ओवरफिट नहीं होगा।

सामान्य तौर पर, पहनावा तरीकों की सटीकता में सुधार करते हुए, पहनावा के तरीकों में लगभग कुछ भी नहीं होने की भविष्यवाणी का विचलन कम हो जाता है। यदि हम किसी व्यक्ति यादृच्छिक मॉडल के अपेक्षित सामान्यीकरण त्रुटि के विचरण को परिभाषित करते हैं:

से यहाँ , के लिए एक कलाकारों की टुकड़ी मेल खाती की उम्मीद सामान्यीकरण त्रुटि के विचरण:

जहां p(x)दो स्वतंत्र बीजों से एक ही डेटा पर प्रशिक्षित दो यादृच्छिक मॉडल की भविष्यवाणियों के बीच पियर्सन का सहसंबंध गुणांक है। यदि हम RF में DT की संख्या बढ़ाते हैं, तो बड़ा M, पहनावा का विचलन घटता है जब ρ(x)<1। इसलिए, एक पहनावा का विचरण एक व्यक्तिगत मॉडल के विचरण से कड़ाई से छोटा होता है।

संक्षेप में, एक पहनावा में व्यक्तिगत यादृच्छिक मॉडल की संख्या में वृद्धि सामान्यीकरण त्रुटि को कभी नहीं बढ़ाएगी।


1
यह निश्चित रूप से लियो ब्रेमन और सिद्धांत कहता है, लेकिन आनुभविक रूप से ऐसा लगता है कि वे निश्चित रूप से ओवरफिट करते हैं। उदाहरण के लिए मेरे पास वर्तमान में 0.02 के 10 गुना सीवी एमएसई के साथ एक मॉडल है, लेकिन जब जमीनी सच्चाई के खिलाफ मापा जाता है तो सीवी एमएसई होता है ।4। OTOH अगर मैं पेड़ की गहराई और पेड़ की संख्या को कम कर देता हूं तो मॉडल प्रदर्शन में काफी सुधार होता है।
हैक-आर

4
यदि आप पेड़ की गहराई कम करते हैं तो यह एक अलग मामला है क्योंकि आप नियमितिकरण जोड़ रहे हैं, जिससे ओवरफिटिंग में कमी आएगी। जब आप बाकी मापदंडों को अपरिवर्तित रखते हैं तो पेड़ों की संख्या में वृद्धि करने पर एमएसई को प्लॉट करने की कोशिश करें। तो, आपके पास x- अक्ष में y- अक्ष और num_tress में MSE है। आप देखेंगे कि जब अधिक पेड़ जोड़ते हैं, तो त्रुटि तेजी से घट जाती है, और फिर इसमें एक पठार होता है; लेकिन यह कभी नहीं बढ़ेगा।
ताशुहा

9

आप मशीन-लर्निंग सहित कई चीज़ों के लिए क्रॉस- वेलिडेटेड - एक स्टैचेनचेंज वेबसाइट की जाँच कर सकते हैं ।

विशेष रूप से, इस सवाल (बिल्कुल एक ही शीर्षक के साथ) को पहले ही कई बार उत्तर दिया जा चुका है। इन लिंक की जाँच करें: /stats//search?q=random+forest+overfit

लेकिन मैं आपको इसका संक्षिप्त उत्तर दे सकता हूं: हां, यह ओवरफिट करता है, और कभी-कभी आपको अपने जंगल में पेड़ों की जटिलता को नियंत्रित करने की आवश्यकता होती है, या यहां तक ​​कि जब वे बहुत अधिक बढ़ते हैं, तो भी prune करते हैं - लेकिन यह आपके द्वारा उपयोग किए जाने वाले पुस्तकालय पर निर्भर करता है जंगल का निर्माण। जैसे randomForestR में आप केवल जटिलता को नियंत्रित कर सकते हैं


3
  1. रैंडम फ़ॉरेस्ट ओवरफ़िट करता है।
  2. रैंडम फ़ॉरेस्ट सामान्यीकरण त्रुटि नहीं बढ़ाता है जब मॉडल में अधिक पेड़ जोड़े जाते हैं। उपयोग किए जाने वाले अधिक वृक्षों के साथ सामान्यकरण का विचलन शून्य होने जा रहा है।

मैंने एक बहुत ही सरल प्रयोग किया है। मैंने सिंथेटिक डेटा उत्पन्न किया है:

y = 10 * x + noise

मैंने दो रैंडम फ़ॉरेस्ट मॉडल प्रशिक्षित किए हैं:

  • पूरे पेड़ों के साथ
  • एक कांटेदार पेड़ों के साथ

पूर्ण पेड़ों वाले मॉडल में कम ट्रेन त्रुटि है लेकिन छंटे पेड़ों वाले मॉडल की तुलना में उच्च परीक्षण त्रुटि है। दोनों मॉडलों की प्रतिक्रियाएं:

प्रतिक्रियाओं

यह ओवरफिटिंग का स्पष्ट प्रमाण है। तब मैंने ओवरफीड मॉडल के हाइपर-मापदंडों को लिया और प्रत्येक चरण 1 पेड़ पर जोड़ते समय त्रुटि की जांच की। मुझे निम्नलिखित प्लॉट मिला:

बढ़ते पेड़

जैसा कि आप देख सकते हैं कि अधिक पेड़ों को जोड़ने पर ओवरफिट की त्रुटि नहीं बदल रही है लेकिन मॉडल ओवरफेड है। यहाँ मैंने प्रयोग के लिए लिंक दिया है।


1

संरचित डैटस -> मिस् ओबोरिंग एरोबर्स

मैंने अपने कार्य अभ्यास में आरएफ ओवरफ़िटिंग का दिलचस्प मामला पाया है। जब डेटा संरचित RF ओवरफिट OOB टिप्पणियों पर होते हैं।

विस्तार से:

मैं प्रत्येक एक घंटे के लिए बिजली की जगह के बाजार पर बिजली की कीमतों की भविष्यवाणी करने की कोशिश करता हूं (डेटासेट की प्रत्येक पंक्ति में उस एक घंटे के लिए मूल्य और सिस्टम पैरामीटर (लोड, क्षमता आदि) होते हैं)।
बिजली की कीमतें बैचों में बनाई जाती हैं (एक समय में एक फिक्सिंग में बिजली बाजार पर बनाई गई 24 कीमतें)।
तो प्रत्येक पेड़ के लिए ओओबी अवलोकन घंटों के सेट के यादृच्छिक उपसमुच्चय हैं, लेकिन यदि आप अगले 24 घंटों की भविष्यवाणी करते हैं तो आप इसे एक ही बार में करते हैं (पहले पल में आप सभी सिस्टम पैरामीटर प्राप्त करते हैं, फिर आप 24 कीमतों की भविष्यवाणी करते हैं, फिर एक फिक्सिंग होती है जो उत्पादन करती है उन कीमतों), तो OOB भविष्यवाणियां करना आसान है, फिर पूरे अगले दिन के लिए। ओओबी अवलोकन 24-घंटे के ब्लॉक में समाहित नहीं है, लेकिन समान रूप से छितरी हुई है, क्योंकि भविष्यवाणी की त्रुटियों का एक स्वतःसंबंध है जो एकल घंटे के लिए मूल्य की भविष्यवाणी करना आसान है जो लापता घंटों के पूरे ब्लॉक के लिए गायब है।

त्रुटि के मामले में भविष्यवाणी करना आसान है:
ज्ञात, ज्ञात, भविष्यवाणी, ज्ञात, भविष्यवाणी - OBB मामला
कठिन एक:
ज्ञात, ज्ञात, ज्ञात, भविष्यवाणी, भविष्यवाणी - वास्तविक विश्व भविष्यवाणी का मामला

मुझे इसकी दिलचस्प उम्मीद है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.