GridSearchCV untuk menemukan parameter optimal
Dalam latihan ini Anda akan menyetel model dengan cara yang kurang "acak", dan membiarkan GridSearchCV mengerjakannya untuk Anda.
Dengan GridSearchCV Anda dapat menentukan metrik kinerja yang akan digunakan untuk penilaian. Karena dalam deteksi kecurangan kita terutama ingin menangkap sebanyak mungkin kasus fraud, Anda dapat mengoptimalkan pengaturan model untuk mendapatkan skor Recall terbaik. Jika Anda juga peduli mengurangi jumlah positif palsu, Anda bisa mengoptimalkan pada F1-score, yang memberikan pertukaran Precision–Recall yang seimbang.
GridSearchCV sudah diimpor dari sklearn.model_selection, jadi mari kita coba!
Latihan ini adalah bagian dari kursus
Deteksi Kecurangan di Python
Petunjuk latihan
- Tentukan pada parameter grid bahwa Anda ingin mencoba 1 dan 30 pohon, serta ingin mencoba kriteria pemisahan
ginidanentropy. - Definisikan model sebagai RandomForestClassifier sederhana; pertahankan
random_statepada 5 agar dapat membandingkan model. - Atur opsi
scoringsehingga mengoptimalkan recall. - Latih model pada data pelatihan
X_traindany_trainserta peroleh parameter terbaik untuk modelnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Define the parameter sets to test
param_grid = {'n_estimators': [____, ____], 'max_features': ['auto', 'log2'], 'max_depth': [4, 8], 'criterion': ['____', '____']
}
# Define the model to use
model = ____(random_state=5)
# Combine the parameter sets with the defined model
CV_model = GridSearchCV(estimator=model, param_grid=param_grid, cv=5, scoring='____', n_jobs=-1)
# Fit the model to our training data and obtain best parameters
CV_model.fit(____, ____)
CV_model.____