क्योंकि randomForest सुविधाओं की एक यादृच्छिक सबसेट पर प्रशिक्षित स्वतंत्र गाड़ियों का एक संग्रह है और इसे समानांतर करने के लिए उधार देता है। combine()
RandomForest पैकेज में समारोह एक साथ स्वतंत्र रूप से प्रशिक्षित जंगलों जोड़ देगा। यहाँ एक खिलौना उदाहरण है। जैसा कि @mpq का उत्तर बताता है कि आपको सूत्र संकेतन का उपयोग नहीं करना चाहिए, लेकिन चर के डेटाफ्रेम / मैट्रिक्स और परिणामों के वेक्टर में पास होना चाहिए। मैंने बेशर्म को डॉक्स से उठा लिया।
library("doMC")
library("randomForest")
data(iris)
registerDoMC(4) #number of cores on the machine
darkAndScaryForest <- foreach(y=seq(10), .combine=combine ) %dopar% {
set.seed(y) # not really needed
rf <- randomForest(Species ~ ., iris, ntree=50, norm.votes=FALSE)
}
मैंने समान रूप से नामांकित .combine पैरामीटर (जो लूप के आउटपुट पर फ़ंक्शन को नियंत्रित करता है) को रैंडम फ़ॉरेस्ट कंबाइन फ़ंक्शन पास किया। नीचे की ओर आपको कोई ओओबी त्रुटि दर या अधिक दुखद रूप से चर महत्व नहीं मिलता है।
संपादित करें:
पोस्ट को पुन: प्रकाशित करने के बाद मुझे एहसास होता है कि मैं 34+ कारक मुद्दे के बारे में कुछ भी नहीं बोलता हूं। एक बिना विचार वाला उत्तर बाइनरी चर के रूप में उनका प्रतिनिधित्व करने के लिए हो सकता है। वह प्रत्येक कारक एक स्तंभ है जो एन्कोडेड है 0/1 -वेवल फैक्टर इसकी उपस्थिति / गैर-उपस्थिति के बारे में। महत्वहीन कारकों पर कुछ परिवर्तनशील चयन करके और उन्हें हटाकर आप फ़ीचर को बहुत बड़े होने से रोक सकते हैं।