Train और test फीचर बनाएँ
लिनियर मॉडल फिट करने से पहले, हम अपने फीचर्स में एक कॉन्स्टेंट जोड़ना चाहते हैं ताकि हमारे लिनियर मॉडल में एक इंटरसेप्ट हो.
हम train और test फीचर्स भी बनाना चाहते हैं। इससे हम अपने मॉडल को train डेटासेट पर फिट कर सकेंगे और test डेटासेट पर उसका परफॉर्मेंस इवाल्यूएट कर सकेंगे। हमें हमेशा ऐसे डेटा पर परफॉर्मेंस जाँचना चाहिए जिसे मॉडल ने नहीं देखा है, ताकि पक्का हो कि हम overfitting नहीं कर रहे हैं, यानी ट्रेनिंग डेटा के पैटर्न्स को ज़रूरत से ज़्यादा याद नहीं कर रहे हैं.
ऐसी time series में, हम आम तौर पर सबसे पुराना डेटा training सेट के रूप में और सबसे नया डेटा test सेट के रूप में इस्तेमाल करते हैं। इससे हम मॉडल का परफॉर्मेंस सबसे हालिया डेटा पर जाँचते हैं, जो ऐसे डेटा पर प्रिडिक्शन की ज्यादा वास्तविक नकल करता है जिसे हमने अभी तक नहीं देखा है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Finance के लिए Machine Learning
अभ्यास निर्देश
statsmodels.apiलाइब्रेरी कोsmउपनाम (alias) के साथ इम्पोर्ट करें।- statsmodels के
.add_constant()फंक्शन का उपयोग करकेfeaturesवैरिएबल में एक कॉन्स्टेंट जोड़ें। train_sizeको कुल datapoints (rows की संख्या) का 85% सेट करें, इसके लिएfeaturesयाtargetsकी.shape[0]प्रॉपर्टी का उपयोग करें।linear_featuresऔरtargetsकोtrain_sizeऔर Python इंडेक्सिंग (जैसे[start:stop]) की मदद से train और test सेट्स में बाँटें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import the statsmodels.api library with the alias sm
___
# Add a constant to the features
linear_features = sm.____(features)
# Create a size for the training set that is 85% of the total number of samples
train_size = int(0.85 * ____)
train_features = linear_features[:train_size]
train_targets = targets[____]
test_features = linear_features[train_size:]
test_targets = targets[train_size:]
print(linear_features.shape, train_features.shape, test_features.shape)