Daha karmaşık bir bagging modeli
Yarı iletken verilerini incelediğimize göre, şimdi giriş özellikleri verildiğinde 'Pass/Fail' etiketini tahmin etmek için bir bagging sınıflandırıcı oluşturalım.
Ön işlenmiş veri kümesi çalışma alanında uci_secom olarak mevcut ve senin için eğitim ve test kümeleri oluşturuldu.
Hedef değişkende ciddi bir sınıf dengesizliği olduğundan, burada taban tahminleyici olarak "balanced" lojistik regresyon kullan.
Ayrıca, varsayılana göre daha hızlı bir eniyileyici olan solver='liblinear' parametresi ile LogisticRegression için hesaplama süresini azaltacağız.
Bu egzersiz, kursun bir parçasıdır
Python'da Ensemble Yöntemleri
Egzersiz talimatları
class_weight='balanced',solver='liblinear'verandom_state=42parametreleriyle taban sınıflandırıcı olarak kullanılacak bir lojistik regresyon örnekle.- Lojistik regresyonu taban tahminleyici olarak kullanarak bir bagging sınıflandırıcı kur; maksimum özellik sayısını
10olarak belirt ve out-of-bag skorunu dahil et. - Doğrulukla karşılaştırmak için out-of-bag skorunu yazdır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Build a balanced logistic regression
clf_lr = ____
# Build and fit a bagging classifier
clf_bag = ____(____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)
# Evaluate the accuracy on the test set and show the out-of-bag score
pred = clf_bag.predict(X_test)
print('Accuracy: {:.2f}'.format(accuracy_score(y_test, pred)))
print('OOB-Score: {:.2f}'.format(____))
# Print the confusion matrix
print(confusion_matrix(y_test, pred))