बेस लर्नर्स के रूप में Decision trees
अब समय है XGBoost मॉडल बनाकर हाउस प्राइसेज़ की भविष्यवाणी करने का — जैसा आपने वीडियो में Boston, Massachusetts के लिए देखा, वैसा नहीं, बल्कि Ames, Iowa के लिए! हाउसिंग प्राइस वाला यह डेटासेट df नाम के DataFrame में पहले से लोड है. अगर आप Shell में इसे देखें, तो आपको घर और शहर में उसकी लोकेशन से जुड़े कई तरह के फीचर्स दिखेंगे.
इस अभ्यास में, आपका लक्ष्य ट्रीज़ को बेस लर्नर्स के रूप में उपयोग करना है. डिफॉल्ट रूप से XGBoost ट्रीज़ को ही बेस लर्नर्स की तरह उपयोग करता है, इसलिए यहाँ आपको booster="gbtree" देकर अलग से बताने की ज़रूरत नहीं है कि आप ट्रीज़ इस्तेमाल करना चाहते हैं.
xgboost को xgb के रूप में इम्पोर्ट किया गया है और फीचर्स व टार्गेट के लिए एरेज़ क्रमशः X और y में उपलब्ध हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
XGBoost के साथ Extreme Gradient Boosting
अभ्यास निर्देश
dfको training और testing सेट्स में बाँटें, जिसमें 20% हिस्सा testing के लिए हो.random_stateको123रखें.XGBRegressorकोxg_regके रूप में instantiate करें,seed123रखें. objective"reg:squarederror"दें और 10 ट्रीज़ का उपयोग करें. नोट:booster="gbtree"देने की ज़रूरत नहीं है क्योंकि यह डिफॉल्ट है.xg_regको training डेटा पर fit करें और test सेट के लेबल्स प्रेडिक्ट करें. प्रेडिक्शंस कोpredsनाम के वैरिएबल में सेव करें.rmseनिकालें, इसके लिएnp.sqrt()औरsklearn.metricsसेmean_squared_error()फंक्शन (जो पहले से इम्पोर्ट है) का उपयोग करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create the training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, ____=____, random_state=123)
# Instantiate the XGBRegressor: xg_reg
xg_reg = ____
# Fit the regressor to the training set
____
# Predict the labels of the test set: preds
preds = ____
# Compute the rmse: rmse
rmse = ____(____(____, ____))
print("RMSE: %f" % (rmse))