वहाँ एक सूत्र या यादृच्छिक यादृच्छिक के लिए सही sampSize का निर्धारण करने के लिए नियम है?


13

मैं एक randomForest के साथ खेल रहा हूँ और पाया है कि आम तौर पर sampSize बढ़ने से बेहतर प्रदर्शन होता है। क्या कोई नियम / सूत्र / आदि है जो बताता है कि इष्टतम sampSize क्या होना चाहिए या क्या यह परीक्षण और त्रुटि है? मुझे लगता है कि इसे दोहराने का एक और तरीका है; मेरे छोटे या बहुत बड़े आकार के जोखिम क्या हैं?


यह प्रश्न randomForestपैकेज में यादृच्छिक वन के आर कार्यान्वयन का उल्लेख कर रहा है । फ़ंक्शन randomForestमें एक पैरामीटर है sampSizeजिसे प्रलेखन के रूप में वर्णित किया गया है

आकर्षित करने के लिए नमूने का आकार। वर्गीकरण के लिए, यदि नमूना लंबाई की संख्या का एक वेक्टर है, तो नमूने को समता द्वारा स्तरीकृत किया जाता है, और नमूना के तत्व संख्या को तार से खींचे जाने का संकेत देते हैं।

जवाबों:


21

सामान्य तौर पर, एक यादृच्छिक वन के लिए नमूना आकार "यादृच्छिकता की डिग्री" पर नियंत्रण के रूप में कार्य करता है, और इस प्रकार पूर्वाग्रह-विचरण व्यापार को समायोजित करने के तरीके के रूप में। नमूना आकार बढ़ाने से "कम यादृच्छिक" वन में परिणाम होता है, और इसलिए ओवरफिट करने की प्रवृत्ति होती है। नमूना आकार को कम करने से जंगल के भीतर व्यक्तिगत पेड़ों में भिन्नता बढ़ जाती है, जिससे ओवरफिटिंग को रोका जा सकता है, लेकिन आमतौर पर मॉडल प्रदर्शन की कीमत पर। एक उपयोगी दुष्परिणाम यह है कि कम नमूना आकार मॉडल को प्रशिक्षित करने के लिए आवश्यक समय को कम कर देता है।

सर्वश्रेष्ठ नमूना आकार के लिए अंगूठे का सामान्य नियम एक "बूटस्ट्रैप नमूना" है, जो मूल डेटासेट के आकार का एक नमूना है, लेकिन प्रतिस्थापन के साथ चुना जाता है, इसलिए कुछ पंक्तियों का चयन नहीं किया जाता है, और अन्य को एक से अधिक बार चुना जाता है। यह आमतौर पर पास-इष्टतम प्रदर्शन प्रदान करता है, और मानक आर कार्यान्वयन में डिफ़ॉल्ट है। हालाँकि, आप वास्तविक दुनिया के अनुप्रयोगों में पा सकते हैं जो नमूना आकार को समायोजित कर बेहतर प्रदर्शन कर सकते हैं। जब संदेह हो, तो क्रॉस-वैलिडेशन का उपयोग करके उचित नमूना आकार (और अन्य मॉडल पैरामीटर) का चयन करें।


2

मैंने कुछ यादृच्छिक पैरामीटर-सेटिंग्स के साथ रात भर में 4500 यादृच्छिक वन चलाए:

प्रतिगमन समस्या Ysignal = x1^2+sin(x2*pi) + x3 * x4 + x5 जहां किसी xको सामान्य वितरण से स्वतंत्र किया जाता है, एसडी = 1, माध्य = 1

Ytotal = Ysignal + Yerror

कहाँ पे Yerror = rnorm(n.observations,sd=sd(Ysignal))*noise.factor

theoretical.explainable.variance"TEV" = var(Ysignal= / var(Ytotal)

randomForest.performance = explained.variance(OOB cross-validation) / TEV

डेटासेट को प्रतिगमन समस्या से नमूना लिया n.obsगया था और जोड़ा गया शोर 1000 और 5000 के n.extra.dummy.variablesबीच 1 और 20 के बीच एक यादृच्छिक संख्या थी

ntree हमेशा 1000

sample_replacement हमेशा true

mtry5 से 25 है, n.obs noise.factor0 और 9 के बीच सीमित है

samplesize.ratio 10% और 100% के बीच एक यादृच्छिक संख्या, प्रत्येक बूटस्ट्रैप का अनुपात आकार

सभी मॉडलों की तरह प्रशिक्षित किया गया rfo = randomForest(x=X, y=Ytotal, <more args>)

randomForest.performance, के उच्चतम अंश की व्याख्या करने की क्षमता TEVसामान्य रूप में बढ़ जाती है जब samplesizeजब कम हो TEV50% से कम है और कम हो जब TEV50% से अधिक है।

इस प्रकार, यदि आपकी randomForest-modelfitरिपोर्ट्स जैसे कि 15% ने ओओबी-सीवी द्वारा विचरण को समझाया, और यह आपके लिए एक स्वीकार्य मॉडल-सटीक है, तो आप संभवतः sampsizeटिप्पणियों की एक तिहाई संख्या को कम करके प्रदर्शन को थोड़ा अधिक कर सकते हैं , दिए गए हैं ntree > 1000

मनोबल : बहुत शोर के आंकड़ों के लिए, अधिक से अधिक आकार के पेड़ उगाने से निचले पूर्वाग्रह की तुलना में पेड़ों को अलग करना बेहतर होता है।


1

यादृच्छिक जंगलों के लिए नए डेटा के साथ-साथ प्रशिक्षण डेटा में काम करने के लिए, आवश्यक नमूना आकार बहुत बड़ा है, अक्सर उम्मीदवार सुविधाओं की संख्या 200 गुना होती है। देखें यहाँ


2
डॉ। हरेल, मुझे लगता है कि ओपी डेटा सेट के कुल आकार के बजाय प्रत्येक व्यक्तिगत पेड़ के निर्माण के लिए उपयोग किए जाने वाले पुन: नमूने के आकार के बारे में पूछ रहा है।
साइकोरैक्स का कहना है कि मोनिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.