Random forests
Random Forests एक क्लासिक और शक्तिशाली ensemble method है जो individual decision trees को bootstrap aggregation (संक्षेप में bagging) के जरिए उपयोग करता है। इस प्रकार के मॉडल में दो मुख्य hyperparameters होते हैं: पेड़ों (trees) की संख्या, और हर पेड़ की अधिकतम गहराई (max depth)। इस अभ्यास में, आप कुछ निश्चित hyperparameter मानों के साथ एक साधारण random forest classifier को इम्प्लीमेंट और evaluate करेंगे.
X_train, y_train, X_test, y_test आपके workspace में उपलब्ध हैं। pandas as pd, numpy as np, और sklearn भी उपलब्ध हैं। sklearn.ensemble से RandomForestClassifier() उपलब्ध है, साथ ही sklearn.metrics से roc_curve() और auc() भी।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Machine Learning के साथ CTR प्रेडिक्शन
अभ्यास निर्देश
- 50 trees और max depth 5 के साथ एक random forest classifier बनाएँ.
- classifier को train करें और testing data के लिए
.predict_proba()से probability scores और.predict()से predictions प्राप्त करें. - classifier के लिए ROC कर्व का AUC evaluate करें: पहले
roc_curve()सेfprऔरtprनिकालें, फिर परिणाम परauc()लगाएँ. - classifier के लिए precision और recall evaluate करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create random forest classifier with specified params
clf = ____(____ = 50, ____ = 5)
# Train classifier - predict probability score and label
y_score = clf.____(X_train, y_train).____(X_test)
y_pred = clf.____(X_train, y_train).____(X_test)
# Get ROC curve metrics
fpr, tpr, thresholds = ____(y_test, y_score[:, 1])
print("ROC of AUC: %s"%(____(fpr, tpr)))
# Get precision and recall
precision = ____(y_test, y_pred, average = 'weighted')
recall = ____(y_test, y_pred, average = 'weighted')
print("Precision: %s, Recall: %s" %(precision, recall))