Analisis biaya di dunia nyata
Anda masih akan menggunakan himpunan data kredit untuk latihan ini. Ingat bahwa "positif" dalam himpunan data ini berarti "kredit buruk", yaitu nasabah yang gagal bayar atas pinjamannya, dan "negatif" berarti nasabah yang terus membayar tanpa masalah. Manajer bank memberi tahu Anda bahwa bank memperoleh keuntungan rata-rata 10K dari setiap nasabah "berisiko baik", tetapi kehilangan 150K dari setiap nasabah "berisiko buruk". Algoritme Anda akan digunakan untuk menyaring pelamar, sehingga mereka yang berlabel "negatif" akan diberikan pinjaman, dan yang "positif" akan ditolak. Berapa total biaya dari classifier Anda? Data tersedia sebagai X_train, X_test, y_train dan y_test. Fungsi confusion_matrix(), f1_score(), dan precision_score() serta RandomForestClassifier() tersedia.
Latihan ini adalah bagian dari kursus
Merancang Alur Kerja Machine Learning di Python
Petunjuk latihan
- Latih classifier random forest pada data pelatihan.
- Gunakan model tersebut untuk memberi label pada data uji.
- Ekstrak false negative dan false positive dari
confusion_matrix(). Anda perlu meratakan matriksnya. - Salah mengklasifikasikan nasabah "baik" sebagai "buruk" berarti bank kehilangan peluang untuk memperoleh keuntungan 10K. Salah mengklasifikasikan nasabah "buruk" sebagai "baik" berarti bank kehilangan 150K karena nasabah gagal bayar atas pinjamannya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Fit a random forest classifier to the training data
clf = ____(random_state=2).fit(____, ____)
# Label the test data
preds = clf.____(____)
# Get false positives/negatives from the confusion matrix
tn, ____, ____, tp = confusion_matrix(y_test, preds).____()
# Now compute the cost using the manager's advice
cost = fp*____ + fn*____