Random forest
Random Forest adalah metode ensemble klasik dan kuat yang memanfaatkan pohon keputusan individual melalui bootstrap aggregation (atau disingkat bagging). Dua hiperparameter utama dalam jenis model ini adalah jumlah pohon dan kedalaman maksimum setiap pohon. Pada latihan ini, Anda akan menerapkan dan mengevaluasi sebuah classifier random forest sederhana dengan beberapa nilai hiperparameter yang sudah ditetapkan.
X_train, y_train, X_test, y_test tersedia di workspace Anda. pandas sebagai pd, numpy sebagai np, dan sklearn juga tersedia di workspace Anda. RandomForestClassifier() dari sklearn.ensemble tersedia, begitu pula roc_curve() dan auc() dari sklearn.metrics.
Latihan ini adalah bagian dari kursus
Memprediksi CTR dengan Machine Learning di Python
Petunjuk latihan
- Buat classifier random forest dengan 50 pohon, dan kedalaman maksimum 5.
- Latih classifier dan peroleh skor probabilitas melalui
.predict_proba(), serta prediksi melalui.predict()untuk data pengujian. - Evaluasi AUC dari kurva ROC untuk classifier dengan terlebih dahulu menggunakan
roc_curve()untuk menghitungfprdantpr, laluauc()pada hasilnya. - Evaluasi precision dan recall untuk classifier.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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))