रैंडम फॉरेस्ट से प्रेडिक्शन करें
आदर्श पोर्टफोलियो की भविष्यवाणी करने के लिए मशीन लर्निंग मॉडल फिट करने हेतु, हमें परफॉर्मेंस का आकलन करने के लिए train और test सेट बनाने होंगे. हम यह वैसा ही करेंगे जैसा पिछले अध्यायों में किया था: अपने features और targets arrays को लेते हैं और उन्हें हमारे तय किए गए train_size के आधार पर बाँटते हैं. अक्सर train size हमारे डेटा का लगभग 70–90% होता है.
इसके बाद हम अपने मॉडल (यहाँ एक रैंडम फॉरेस्ट) को training डेटा पर फिट करते हैं, और .score() का उपयोग करके train और test पर R\(^2\) स्कोर का मूल्यांकन करते हैं. इस केस में हाइपरपैरामीटर्स आपके लिए सेट कर दिए गए हैं, लेकिन सामान्यतः आप पिछले अध्यायों की तरह ParameterGrid से एक सर्च चलाना चाहेंगे.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Finance के लिए Machine Learning
अभ्यास निर्देश
featuresकी.shapeप्रॉपर्टी का उपयोग करकेtrain_sizeको पूरे training सेट डेटा का 85% सेट कीजिए.- Python indexing का उपयोग करके
targetsसे train और test targets बनाइए. - रैंडम फॉरेस्ट मॉडल को
train_featuresऔरtrain_targetsपर फिट कीजिए.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Make train and test features
train_size = int(0.85 * ____)
train_features = features[:train_size]
test_features = features[train_size:]
train_targets = targets[____]
test_targets = targets[____]
# Fit the model and check scores on train and test
rfr = RandomForestRegressor(n_estimators=300, random_state=42)
rfr.fit(____, ____)
print(rfr.score(train_features, train_targets))
print(rfr.score(test_features, test_targets))