Information matrix, 또는 covariance matrix란 무엇일까요?

SJ·2024년 11월 22일
0

이 게시글은 장형기님의 SLAM 기술면접 질문 100선에 대해 제 나름대로 정리한 것입니다.


Covariance Matrix

Covariance Matrix는 랜덤 벡터 X에 대해 각 성분의 분산과 공분산을 나타내는 행렬입니다.

=Cov(X)=E[(XE[X])(XE[X])T]\sum = Cov(X) = E[(X-E[X])(X-E[X])^T]

행렬 \sum의 (i,j)번째 원소는 다음과 같습니다.

ij=Cov(Xi,Xj)=E[(XiE[Xi])(XjE[Xj])T]\sum_{ij} = Cov(X_{i},X_j) = E[(X_i-E[X_i])(X_j-E[X_j])^T]

이 행렬은 데이터의 분포, 불확실성 그리고 변수 간의 관계를 설명해줍니다.

왜 Covariance가 불확실성을 나타내나요?

우리는 이 데이터의 분포가 몰려있을수록 평균값에 가까운 걸 뽑았을 때 이 데이터에 속할 확률이 커집니다.

예를 들어 집합 X1X_1 = {1.8 1.9 2.0 2.1 2.2} 이고 집합 X2X_2 = {1.0 1.5 2.0 2.5 3.0 }이라고 생각해봅시다.
우리는 평균인 2 근처에서 뽑았을 때 집합에 속한 원소를 뽑을 확률이 X1X_1이 높을지 X2X_2가 높을지 생각해본다면 분산이 클수록 불확실성이 높다고 생각할 수 있습니다.

Covariance 활용

PCA를 활용하여 주성분 방향과 크기를 계산하면 분포의 특성을 알 수 있습니다.

Kalman Filter에서 상태의 불확실성을 모델링할 수 있습니다.


Information matrix

정의: Covariance Matrix의 역행렬

Filter나 분포를 계산할 때 Covariance의 역행렬이 식에 들어가는 경우가 많습니다.
이것을 표현하기 위해 Information matrix라고 이름을 붙였습니다.

Ω\Omega = Σ1\Sigma^{-1}

Fisher Information matrix

Fisher information matrix는 information matrix의 일반화된 형태로, 확률 모델에서 관측 데이터가 얼마나 많은 정보를 제공하는지 나타냅니다.

정의:
주어진 데이터 x에 대한 확률 모델 p(xθ)p(x|\theta)에서, 파라미터 θ\theta에 대한 Fisher Information Matrix는 다음과 같이 정의됩니다.

I(θ)=E[(lnp(xθ)θ)(lnp(xθ)θ)T]\mathcal{I}(\theta) = \mathbb{E}\left[\left(\frac{\partial \ln p(x \mid \theta)}{\partial \theta}\right)\left(\frac{\partial \ln p(x \mid \theta)}{\partial \theta}\right)^T\right]

Fisher information matrix는 gaussian distribution에서는 Covariance matrix의 역행렬이 됩니다. 이렇기 때문에 information matrix라는 이름이 붙지 않았나 생각해봅니다.


저도 처음에 SLAM 공부할 때 Covariance에 대한 이해가 부족했어서 많이 헷갈렸던 경우가 있습니다. 계산 방식과 무엇을 의미하는지만 제대로 알면 논문 읽을 때 문제 없을 것이라고 생각합니다.

profile
student

0개의 댓글