8.81 독립 성분 분석(ICA)의 원리
1. ICA의 개요
독립 성분 분석(Independent Component Analysis, ICA)은 다변량 관측 데이터를 통계적으로 독립인 잠재 성분(source)의 선형 결합으로 분해하는 비지도 학습 방법이다. 에이펜(Hyvärinen), 벨(Bell), 세즈노프스키(Sejnowski) 등에 의해 1990년대에 정립되었으며, 맹목적 원천 분리(Blind Source Separation, BSS)의 핵심 기법이다.
2. ICA의 기본 모델
관측 벡터 \mathbf{x} \in \mathbb{R}^n이 원천 신호 \mathbf{s} \in \mathbb{R}^m의 선형 혼합으로 생성된다고 가정한다.
\mathbf{x} = \mathbf{A}\mathbf{s}
여기서 \mathbf{A} \in \mathbb{R}^{n \times m}은 미지의 혼합 행렬(mixing matrix)이다. ICA의 목표는 관측 \mathbf{x}만으로 원천 \mathbf{s}와 혼합 행렬 \mathbf{A}를 추정하는 것이다.
2.1 가정
- 원천의 통계적 독립: 원천 성분 s_1, \ldots, s_m이 서로 독립
- 원천의 비가우시안성: 적어도 하나의 원천이 비가우시안 분포
- 정방(또는 과결정) 혼합: n \geq m
3. PCA와의 차이
| 특성 | PCA | ICA |
|---|---|---|
| 목표 | 분산 최대화 | 독립성 최대화 |
| 기준 | 2차 통계(공분산) | 고차 통계 |
| 성분 관계 | 비상관 | 독립 |
| 분포 가정 | 가우시안에 최적 | 비가우시안 필요 |
| 순서 | 분산 순 | 순서 불분명 |
독립성은 비상관성보다 강한 조건이다. 가우시안 확률 변수에서는 두 조건이 동치이지만, 비가우시안에서는 독립이 훨씬 강하다.
4. 비가우시안성의 중요성
원천이 모두 가우시안이면 혼합 행렬이 유일하게 결정되지 않는다. 회전 변환이 가우시안 분포를 보존하므로, 어떤 회전으로도 “원천“을 얻을 수 있다. 따라서 ICA는 원천의 비가우시안성을 이용하여 원천을 식별한다.
5. 중심극한정리와 비가우시안성
중심극한정리에 의해 독립 확률 변수의 합은 가우시안에 가까워진다. 즉, 원천의 선형 결합 \mathbf{x} = \mathbf{A}\mathbf{s}는 개별 원천보다 가우시안에 가깝다. 따라서 “원천을 복원하는 것“은 “가장 비가우시안한 성분을 찾는 것“과 동치이다.
ICA의 핵심 원리: 비가우시안성을 최대화하는 투영 방향을 찾으면 원천이 복원된다.
6. 비가우시안성의 측정
6.1 첨도(Kurtosis)
\text{kurt}(y) = \mathbb{E}[y^4] - 3(\mathbb{E}[y^2])^2
정규 분포의 첨도는 영이며, \lvert\text{kurt}\rvert > 0이면 비가우시안이다. 첨도는 계산이 쉽지만 이상치에 민감하다.
6.2 음수 엔트로피(Negentropy)
J(y) = H(y_{gauss}) - H(y)
여기서 y_{gauss}는 y와 같은 평균과 분산을 가진 가우시안이다. J(y) \geq 0이며, y가 가우시안일 때만 J(y) = 0이다. 음수 엔트로피는 이론적으로 이상적이지만 계산이 어려워 근사가 사용된다.
6.3 상호 정보(Mutual Information)
I(\mathbf{y}) = \sum_i H(y_i) - H(\mathbf{y})
독립성을 직접 측정한다. I = 0이면 완전 독립이다.
7. FastICA 알고리즘
Hyvärinen(1999)이 제안한 FastICA는 고정점 반복에 기반한 효율적 ICA 알고리즘이다.
7.1 전처리: 백색화(Whitening)
관측 데이터를 먼저 백색화한다(공분산을 단위 행렬로). 이는 PCA의 중간 단계이다.
\tilde{\mathbf{x}} = \mathbf{E}\mathbf{D}^{-1/2}\mathbf{E}^T\mathbf{x}
여기서 \mathbf{E}, \mathbf{D}는 공분산 행렬의 고유 분해이다. 백색화 후 독립 성분 탐색은 단순한 회전이 된다.
7.2 고정점 반복
비선형 함수 g (예: g(u) = \tanh(u))를 사용하여 비가우시안성을 최대화하는 방향을 찾는다.
\mathbf{w}^+ = \mathbb{E}[\tilde{\mathbf{x}}g(\mathbf{w}^T\tilde{\mathbf{x}})] - \mathbb{E}[g'(\mathbf{w}^T\tilde{\mathbf{x}})]\mathbf{w}
\mathbf{w} = \mathbf{w}^+/\lVert\mathbf{w}^+\rVert
수렴까지 반복한다.
8. 모호성
ICA 해는 다음의 모호성을 갖는다.
- 크기: 원천의 부호와 크기를 결정할 수 없다
- 순서: 원천의 순서를 결정할 수 없다
이러한 모호성은 ICA의 본질적 성질이며, 통상 원천을 단위 분산으로 정규화하여 크기 모호성을 부분적으로 해결한다.
9. 로봇 공학에서의 응용
센서 잡음 분리: 여러 잡음원이 혼합된 센서 데이터에서 개별 잡음원을 분리한다.
다중 마이크로폰 음성 분리: 칵테일 파티 문제(cocktail party problem)의 해결로, 로봇 청각 시스템에서 여러 화자의 음성을 분리한다.
EMG 신호 처리: 의수/의족 제어에서 근전도(EMG) 신호로부터 독립적인 근육 활성화 성분을 추출한다.
영상 분해: 영상에 포함된 조명, 그림자, 물체 반사 등의 독립적 성분을 분리한다.
10. 참고 문헌
- Hyvärinen, A., Karhunen, J., & Oja, E. (2001). Independent Component Analysis. Wiley.
- Bell, A. J., & Sejnowski, T. J. (1995). “An Information-Maximization Approach to Blind Separation and Blind Deconvolution.” Neural Computation, 7(6), 1129–1159.
- Hyvärinen, A. (1999). “Fast and Robust Fixed-Point Algorithms for Independent Component Analysis.” IEEE Transactions on Neural Networks, 10(3), 626–634.
- Comon, P. (1994). “Independent Component Analysis, A New Concept?” Signal Processing, 36(3), 287–314.
version: 1.0