더북(TheBook)

Note ≡


역주 커널 행렬 K를 중앙에 맞추는 식을 유도해 보겠습니다. 먼저 두 샘플의 커널 함수를 다음과 같이 정의했습니다.

중앙에 맞추려면 각 매핑 함수에서 평균을 빼면 됩니다. 여기서 n은 샘플 개수입니다.

조금 복잡하지만 이 식을 전개해 보면 다음과 같이 쓸 수 있습니다.

이 식의 두 번째 항은 커널 행렬 K의 열에 해당하고 세 번째 항은 K의 행에 해당합니다. 마지막 항은 커널 행렬 K의 전체 원소의 합입니다. 따라서 다음과 같이 중앙에 맞추어진 커널 행렬 K'를 모든 원소가 1인 행렬 1과의 점곱으로 표현할 수 있습니다.

사이킷런에는 커널을 중앙에 맞추기 위한 KernelCenterer 클래스를 제공합니다. 다음과 같이 쓰면 동일한 결과를 얻을 수 있습니다.

from sklearn.preprocessing import KernelCenterer
K_centered = KernelCenterer().fit_transform(K)

다음 절에서 실제로 이 세 단계를 따라서 파이썬으로 커널 PCA를 구현해 보겠습니다.

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