시작하기무료로 시작하기

PCA로 클래스 분리 시각화 I

Machine Learning 면접에서 자주 나오는 질문 중 하나는 PCA 이후 차원을 어떻게 시각화하느냐입니다. 이 연습에서는 loan_data의 처음 두 개 주성분을 그려서, 대출 상태가 완납되었는지(fully paid) 혹은 상각되었는지(charged off)에 따라 두 구성요소에서 클래스가 어떻게 분리되는지 시각화해 보겠습니다.

loan_data 데이터셋은 이미 스케일링과 원-핫 인코딩이 되어 있습니다. 즉, 범주형 변수가 이진 지표로 변환되었으며, PCA 전에 모든 특성이 같은 스케일의 수치형이 되도록 준비되어 있습니다.

2개의 PC를 사용하는 PCA 모델과 x, y 레이블 및 제목이 설정된 플롯은 이미 준비되어 있습니다. 연습에서는 loan_data_PCA라는 DataFrame을 사용합니다. 타깃 변수 Loan Status의 가능한 값은 01입니다. x축에는 PC1, y축에는 PC2를 그립니다.

이미 matplotlib.pyplotplt로, seabornsns로, sklearn.decompositionPCA는 임포트되어 있습니다.

이 연습은 강의의 일부입니다

Python으로 연습하는 Machine Learning 면접 질문

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

targets = [____, ____]
colors = ['r', 'b']

# For loop to create plot
for target, color in zip(____, ____):
    indicesToKeep = ____['____'] == ____
코드 편집 및 실행