더북(TheBook)

5.2.5 새로운 특성 공간으로 샘플 투영

이전 절에서 만든 변환 행렬 W를 훈련 데이터셋에 곱해서 데이터를 변환할 수 있습니다.

>>> X_train_lda = X_train_std.dot(w)
>>> colors = ['r', 'b', 'g']
>>> markers = ['s', 'x', 'o']
>>> for l, c, m in zip(np.unique(y_train), colors, markers):
...     plt.scatter(X_train_lda[y_train==l, 0],
...                 X_train_lda[y_train==l, 1] * (-1),
...                 c=c, label=l, marker=m)
>>> plt.xlabel('LD 1')
>>> plt.ylabel('LD 2')
>>> plt.legend(loc='lower right')
>>> plt.tight_layout()
>>> plt.show()

그림 5-8에서 볼 수 있듯이 이제 세 개의 와인 클래스를 새로운 특성 부분 공간에서 선형적으로 완벽하게 구분할 수 있습니다.

▲ 그림 5-8 LDA로 변환된 Wine 데이터셋의 산점도

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.