다중 클래스 로지스틱 회귀 시각화
이번 연습에서는 다중 클래스 로지스틱 회귀의 두 가지 방식으로 계속 진행하되, one-vs-rest 방식을 의도적으로 무너뜨리도록 설계된 2차원 장난감 데이터셋을 사용해 보겠습니다.
데이터셋은 X_train과 y_train에 로드되어 있습니다. 두 개의 로지스틱 회귀 객체 lr_mn과 lr_ovr는 이미(C=100으로) 인스턴스화되어 학습까지 마쳤고, 플로팅도 되어 있습니다.
lr_ovr가 진한 파란색 클래스를 전혀 예측하지 못하는 것을 확인해 보세요. 이런 일이 왜 발생하는지, 내부에서 사용되는 이진 분류기 중 하나를 직접 그려 보며 살펴보겠습니다.
이 연습은 강의의 일부입니다
Python으로 배우는 선형 분류기
연습 안내
- 이진 분류에 사용할 새로운 로지스틱 회귀 객체를(
C=100으로) 생성하세요. plot_classifier로 이 이진 분류기를 시각화해 보세요. 합리적으로 보이나요?
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Print training accuracies
print("Softmax training accuracy:", lr_mn.score(X_train, y_train))
print("One-vs-rest training accuracy:", lr_ovr.score(X_train, y_train))
# Create the binary classifier (class 1 vs. rest)
lr_class_1 = ____
lr_class_1.fit(X_train, y_train==1)
# Plot the binary classifier (class 1 vs. rest)
plot_classifier(X_train, y_train==1, ____)