더 복잡한 배깅 모델
반도체 데이터를 살펴봤으니, 이제 입력 특성으로부터 'Pass/Fail' 레이블을 예측하는 배깅 분류기를 만들어 보겠습니다.
전처리된 데이터셋은 작업 공간의 uci_secom으로 제공되며, 학습/테스트 세트는 미리 생성되어 있습니다.
타깃에 심한 클래스 불균형이 있으므로, 여기서는 기본 추정기로 "balanced" 로지스틱 회귀를 사용하세요.
또한 LogisticRegression의 계산 시간을 줄이기 위해 solver='liblinear' 매개변수를 사용합니다. 이는 기본값보다 더 빠른 옵티마이저입니다.
이 연습은 강의의 일부입니다
Python에서의 앙상블 기법
연습 안내
- 다음 매개변수로 기본 분류기에 사용할 로지스틱 회귀를 인스턴스화하세요:
class_weight='balanced',solver='liblinear',random_state=42. - 위 로지스틱 회귀를 기본 추정기로 사용하는 배깅 분류기를 만들고, 최대 특성 수를
10으로 지정하며, out-of-bag 점수를 포함하세요. - 정확도와 비교할 수 있도록 out-of-bag 점수를 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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))