본문 바로가기

인공지능/머신러닝 이론

4-3. Independent Component Analysis (ICA)


< 목차 >

  1. 용어정의
  2. Independent component analysis (ICA)

1. 용어정의

  • Kurtosis : 첨도, 도수분포 모양의 뽀족함 정도를 나타낸 것이다.
  • Negentropy : 가장 큰 엔트로피를 갖는 정규분포의 엔트로피에서 특정 변수의 엔트로피를 뺀 값으로, 정규분포에서 떨어진 거리를 의미한다.
  • Entropy : 엔트로피, 관측된 데이터나 정보의 불확실성을 나타낸 것으로 불규칙적이고 예측불가능하고 비구조화된 정보일수록 엔트로피는 더 커진다. 또한, 동일한 분산을 갖는 모든 Random Variable 중에서 Gaussian Variable 이 가장 큰 엔트로피를 가진다.

2. Independent component analysis (ICA)

Independent Component Analysis(ICA)는 "칵테일 파티"를 예로 들 수 있다. 칵테일 파티에서는 노래소리와 함께 사람들이 대화를 주고받으며, 이 두 가지 소리는 자연스럽게 섞여 하나의 소리만 들었을 때에 비해서 명료하지 못하게 된다. 이렇게 섞인 소리는 몇가지 분석법을 통해 각각의 독립적인 원래의 소리를 추정할 수 있는데, 대표적으로 사용될 수 있는 것이 바로 ICA이다.


아래의 그림과 같이, 음악소리를 S1, 대화소리를 S2라고 했을 때, 여러가지 환경변수에 따라 특정한 가중치가 적용되어 두 소리는 섞이게 되고, 이는 각각 X1, X2의 신호로 나타나게 된다. 여기서 우리는 섞인 신호 X를 통해서 가중치인A를 찾아내고, A를 통해 S를 추정하는 것이다.

 

위의 내용을 따르면, A는 Mixing matrix, S를 Independent Component 라고 하고 뒤섞인 신호 X를 아래와 같은 수식으로 나타낼 수 있다. 여기서 ICA의 목적은 섞인 신호 X와 적절하게 추정된 미지수 A를 통해 S를 추정하는 것이다.

 

 

PCA와 마찬가지로, ICA 또한 원본신호 S는 각각의 신호와 상호독립적이며, X와 S는 0의 평균과 크기가 1인 분산을 갖는다는 가설을 갖고 접근한다.

 

 

ICA의 기본원리는 아래와 같다.


만약 n개의 입력데이터 X에 대해 S를 y로 두고 A를 w로 두었을 때 다음과 같은 전개가 가능하며 y는 상호독립적 성분인 S의 합으로 표현될 수 있다.

 

그러면 Central limit theorem에 의해 y는 점점 정규분포 형태를 갖게 되는데, 앞서 전제를 따라 y가 하나의 S 성분과 동일하다면, 오히려 정규분포 형태를 띄지않고 특정 S로 수렴하게 될 것이다.


따라서, 정말 y가 자신과 동일한 특정 S성분을 포함하고 있는지를 확인하려면 y에 대해 non-Gaussianity 를 측정하는 방법이 필요하다. 그리고 그 방법을 이용하여 반대로 non-Gaussianity 를 최대로 만드는 w 를 찾을 수 있다. 즉, y가 특정 S 성분에 점점 수렴하는 것을 확인할 수 있다. 

 

 

non-Gaussianity 는 Kurtosis 와 Negentropy 를 이용하여 측정할 수 있고, 각각의 특징은 아래와 같다.

 

(1) Kurtosis

  • Kurtosis는 정규분포에서 0의 값을, 정규분포가 아닌 변수에 대해서는 non-zero 값을 가지지만 데이터 내 있을지도 모르는 outlier에 대해 민감하기 때문에 방법에 대해 신뢰가 떨어질 수 있다. 수식은 아래와 같고, 이때 y는 크기가 1인 분산을 갖는다고 가정하였기 때문에 아래의 항처럼 "-3"으로 나타난다.

 

 

(2) Negentropy

  • Negentropy는 Entropy에 음수를 한 것으로 다음과 같은 수식을 가지며, non-Gaussianity 를 측정하기에 최적이지만 계산이 매우 어렵다는 단점이 존재한다.

 

위의 두 가지 방법의 문제점을 적절히 보완하여, 신뢰할 수 있고 비교적 계산이 간단한 다음의 수식으로 변환하여 사용할 수 있다.

 

이제 위의 이해를 토대로, ICA 방법 중 하나인 'Fast ICA algorithm' 을 살펴보면 아래와 같은 순서를 따른다.


위에서 언급한 내용과 마찬가지로 Centering을 통해 평균을 0에 맞추고, Whitening을 통해 크기가 1 단위규모의 분산으로 조정한다. 이는 PCA의 방법과 동일하며, 이렇게 정규화된 데이터와 랜덤하게 선택된 w값을 통해 데이터의 Non-Gaussianity를 측정하고, 특정값으로 수렴할 때까지 w 값을 갱신하여 반복적으로 Mixing matrix를 추정한다.

 

 


 

728x90
반응형