커널 주성분 분석

Kernel principal component analysis

다변량 통계학 분야에서 커널 주성분 분석(Kernel PCA)[1]커널 방법의 기법을 이용한 주성분 분석(PCA)의 확장이다.커널을 사용하여 PCA의 원래 선형 연산은 재현 커널 힐버트 공간에서 수행된다.

배경: 선형 PCA

기존의 PCA는 제로 중심 데이터에서 작동한다는 점을 상기하십시오. 즉,

= x = {}

여기서 다변량 관측치 중 하나이다.공분산 행렬을 대각선화하여 작동하며,

즉, 공분산 행렬의 구성을 다음과 같이 제공한다.

라고 다시 쓸 수 있는.

.[2]

(다음 항목 참조):선형 측정 시스템으로서의 공분산 행렬)


PCA에 커널 소개

커널 PCA의 효용, 특히 클러스터링을 이해하려면 일반적으로 N 지점은 < N 차원으로 선형 분리될 수 없지만, 거의 항상 차원으로 선형 분리될 수 있음을 관찰하십시오.즉, N개의 점이 x i 을(를 사용하여 N차원 공간에 매핑하면

( ) 여기서 : d→ R .

점을 임의의 클러스터로 나누는 하이퍼플레인 구축이 용이하다.물론 이 은(는) 선형 독립 벡터를 생성하므로 선형 PCA에서처럼 명시적으로 eigendecomposition을 수행할 공분산은 없다.

그 대신 커널 PCA에서 비독점적이고 임의적인 함수는 명시적으로 계산되지 않는 '초센'으로, 만약 우리가 그 공간에서 실제로 데이터를 평가할 필요가 없다면 매우 고차원 s를 사용할 수 있다.우리는 일반적으로 -space에서 일하는 것을 피하려고 하기 때문에, 우리는 N-by-N 커널을 만들 수 있다.

다른 난해한 형상 공간의 내부 제품 공간(Gramian matrix 참조)을 나타낸다.커널 생성에서 발생하는 이중 형태는 (x ) -space (커널 트릭 참조)에서 공분산 행렬의 고유 벡터와 고유값을 실제로 결코 실제로 해결하지 못하는 PCA 버전을 수학적으로 공식화할 수 있게 해준다.K의 각 열에 있는 N 요소는 모든 변환된 점(N점)에 대해 변환된 데이터의 한 점의 점 산물을 나타낸다.몇몇 잘 알려진 커널은 아래 예에 나와 있다.

우리는 피쳐 공간에서 직접 작업하지 않기 때문에 PCA의 커널 형성은 PCA가 주성분 그 자체가 아니라 그 요소들에 대한 우리의 데이터의 투영법을 계산한다는 점에서 제한된다.형상 공간 ) 의 한 지점에서 주성분 k V에 대한 투영을 평가하려면(여기서 상위첨자 k는 k의 전원이 아닌 성분 k를 의미한다)

We note that denotes dot product, which is simply the elements of the kernel . It seems all that's left is to calculate and normalize the , which can be done by 고유벡터 방정식 해결

여기서 N은 집합의 데이터 포인트 수이고, () a} {a는) 의 고유값 및 고유 벡터입니다 그런 다음, 고유 벡터를 정규화하려면 k {을 정규화하십시오.

원래 공간에 0-평균이 있든 없든 피쳐 공간(우리는 명시적으로 계산하지 않는다)의 중심이 되는 것이 보장되지 않는다는 사실에 주의해야 한다.효율적인 주성분 분석을 수행하려면 중심 데이터가 필요하므로 을(를) '중앙집중화' K{{\가 된다.

여기서 {은(는) 각 요소가 1/ N 을(를) 취하는 N-by-N 매트릭스를 의미한다 위에서 설명한 커널 PCA 알고리즘을 수행하기 K을 사용한다.

커널 PCA에 대한 한 가지 주의사항이 여기에 설명되어야 한다.선형 PCA에서는 고유값을 사용하여 각 주성분에 의해 수집되는 데이터의 변동량을 기준으로 고유 벡터의 순위를 매길 수 있다.이는 데이터 차원성 감소에 유용하며 KPCA에도 적용될 수 있다.그러나 실제로 데이터의 모든 변형이 동일한 경우가 있다.이것은 일반적으로 커널 스케일의 잘못된 선택에 의해 발생한다.

대규모 데이터셋

실제로 큰 데이터 세트는 큰 K로 이어지고, K를 저장하는 것이 문제가 될 수 있다.이를 처리하는 한 가지 방법은 데이터 집합에서 클러스터링을 수행하고 커널을 클러스터링의 수단으로 채우는 것이다.이 방법이라도 비교적 큰 K를 산출할 수 있기 때문에, 고유값의 상위 P 고유값과 고유값의 고유 벡터만 이런 식으로 계산하는 것이 일반적이다.

커널 PCA 이전의 입력 지점

세 개의 동심원형 점 구름(표시)을 고려하십시오. 우리는 커널 PCA를 사용하여 이러한 그룹을 식별하고자 한다.점의 색상은 알고리즘에 관련된 정보를 나타내지 않고 변환이 데이터 점의 위치를 다시 지정하는 방법만 보여준다.

첫째, 커널을 고려하라.

이것을 커널 PCA에 적용하면 다음 이미지가 생성된다.

, )= ( + 1) 2 {ymbol)^{{}^{ymbold+1}:{2}}.세 그룹은 첫 번째 구성 요소만 사용하여 구별할 수 있다.

이제 가우스 커널을 고려하십시오.

즉, 이 커널은 폐쇄성의 척도로, 점이 일치할 때 1과 같고 무한에서 0과 같다.

커널 PCA 후 가우스 커널로 출력.

특히, 선형 PCA는 이러한 동심점 구름이 선형적으로 분리할 수 없는 주어진 (이 경우 2차원) 공간에서만 작동하기 때문에 선형 PCA만을 사용하여 불가능한 세 개의 다른 그룹을 구별하기에 충분하다는 점에 유의한다.

적용들

커널 PCA는 새로움 감지[3] 및 이미지 디노이즈에 유용한 것으로 입증되었다.[4]

참고 항목

참조

  1. ^ Schölkopf, Bernhard; Smola, Alex; Müller, Klaus-Robert (1998). "Nonlinear Component Analysis as a Kernel Eigenvalue Problem". Neural Computation. 10 (5): 1299–1319. CiteSeerX 10.1.1.100.3636. doi:10.1162/089976698300017467. S2CID 6674407.
  2. ^ 커널 고유값 문제로서의 비선형 성분 분석(기술 보고서)
  3. ^ Hoffmann, Heiko (2007). "Kernel PCA for Novelty Detection". Pattern Recognition. 40 (3): 863–874. doi:10.1016/j.patcog.2006.07.009.
  4. ^ 커널 PCA 및 형상 공간의 디노이즈.NIPS, 1999