शफ़लिंग के बिना Cross-validation
अब, अपने मॉडल फिट को block cross-validation के साथ फिर से चलाइए (सभी datapoints को शफ़ल किए बिना). इस स्थिति में, पास-पास वाले time-points एक-दूसरे के करीब ही रहेंगे. आपको क्या लगता है, हर cross-validation लूप में मॉडल की predictions कैसी दिखेंगी?
Linear regression model ऑब्जेक्ट का एक instance आपके workspace में उपलब्ध है. साथ ही, X और y (training data) array भी उपलब्ध हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Time Series Data के लिए Machine Learning
अभ्यास निर्देश
- इस बार 10 splits और बिना शफ़लिंग के KFold cross-validation का उपयोग करते हुए एक और cross-validation ऑब्जेक्ट instantiate करें.
- इस ऑब्जेक्ट पर iterate करके training indices से मॉडल फिट करें और test indices से predictions जनरेट करें.
- हमने जो helper function (
visualize_predictions()) दिया है, उससे CV splits के पार predictions को visualize करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create KFold cross-validation object
from sklearn.model_selection import KFold
cv = ____(n_splits=____, shuffle=____)
# Iterate through CV splits
results = []
for tr, tt in cv.split(X, y):
# Fit the model on training data
model.fit(____)
# Generate predictions on the test data and collect
prediction = model.predict(____)
results.append((prediction, tt))
# Custom function to quickly visualize predictions
visualize_predictions(results)