Fisher 정보 행렬과 Score Function

·2025년 3월 28일

Fisher 정보 행렬

Fisher 정보는 어떤 파라미터 θ\theta에 대한 추정이 얼마나 정밀하게 가능한지를 나타내는 정보의 양을 의미합니다.

쉽게 말해,

  • 데이터가 θ\theta에 대해 얼마나 많은 정보를 담고 있는지를 측정합니다.
  • Fisher 정보가 클수록정확하게 추정 가능
  • Fisher 정보가 작을수록 → 추정의 불확실성이 큼

Fisher 정보 행렬은 두 가지로 정의됩니다.
1. score function의 분산
2. 로그우도함수의 곡률 (2차 도함수)

대충 직관적으로 어떻게 생각하면 되냐:

score function의 값들은 특정 θ\theta에서의 순간적인 기울기로, score function의 값이 0인 θ\theta가 최대우도 추정량이다. Score function의 기댓값은 0이다. (직관적으로 생각했을 때, 진짜 모수에서의 score function 값은 ideal하게는 0이 되어야 할 거고, 데이터가 반복적으로 샘플링될 때의 평균적 성질을 생각해 보면, 모수의 추정값은 진짜 모수 주변에서 변동할 것이므로 score function의 기댓값은 0) Score function은 특정 지점에서 얼마나 로그우도함수가 가파르냐는 알려주지만 전체적으로 얼마나 날카로운 모양이냐는 말해주지 않는다.

하지만 로그우도함수의 곡률은 크면 클수록 θ\theta 주변에서 로그우도함수가 얼마나 좁고 뾰족한지를 알려준다. 즉, θ\theta를 약간만 바꿔도 로그우도 값이 확 줄어든다. 다시 말해, 데이터는 명확하게 특정 θ\theta를 지지한다.

"기댓값"이라는 것을 모집단에서 반복적으로 샘플링했을 때 구해지는 값이라고 말할 수 있다면, 로그우도함수의 곡률의 기댓값은 데이터가 얼마나 θ\theta를 잘 집어내는지를 반영한다.

또, score function의 분산이 크다는 것은 표본(데이터)에 따라 score function 값이 많이 바뀐다는 것이다. 어떤 데이터가 나와도 θ\theta에 대해 비슷비슷한 기울기를 제시한다면 데이터가 θ\theta를 잘 구별하지 못한다고 생각할 수 있다. 결국 어떤 데이터 X가 θ\theta에 대해 민감하게 반응한다는 것은, 데이터가 θ\theta를 잘 구별해낸다는 거고, 이는 데이터가 모수 θ\theta에 대해 많은 정보를 담고 있다는 뜻이다.

식으로 유도해보면 실제로 두 정의에 의한 식이 똑같음.


왜 로그우도 함수의 도함수 (score function)의 제곱 평균인가?

Fisher 정보의 정의는 다음과 같습니다:

I(θ)=E[(θlogp(xθ))2]I(\theta) = \mathbb{E} \left[ \left( \frac{\partial}{\partial \theta} \log p(x|\theta) \right)^2 \right]

이 정의의 직관적인 해석은 다음과 같아요:

  • θlogp(xθ)\frac{\partial}{\partial \theta} \log p(x|\theta)score function이라고 부르며,
    θ\theta가 변할 때 우도가 얼마나 민감하게 반응하는지 나타냄 (즉, log-likelihood의 기울기)

  • 이 값을 제곱해서 평균낸 것은 → 우도의 기울기의 평균적인 크기

  • 즉, θ\theta 근처에서 θ\theta를 바꿨을 때 log-likelihood가 얼마나 크게 요동치는가를 측정하는 것
    → 그만큼 데이터가 θ\theta에 대해 민감하다 = 정보가 많다


다른 정의

Fisher 정보는 다음과 같이도 정의됩니다:

I(θ)=E[2θ2logp(xθ)]I(\theta) = - \mathbb{E} \left[ \frac{\partial^2}{\partial \theta^2} \log p(x|\theta) \right]

이건 로그우도 함수의 곡률(이차 도함수)의 기대값이에요.

  • 우도가 θ\theta에서 뾰족하게 생겼을수록 (곡률이 크면) → θ\theta잘 식별됨 → 정보가 많다
  • 곡률이 작으면 (평평하면) → 추정이 어려움

이 두 정의는 수학적으로 동일해요 (적절한 regularity 조건이 있을 때).

왜냐하면:

  • 기대값 안의 1차 도함수의 제곱과
  • 기대값 바깥의 2차 도함수의 음수는
    통계적으로 동일한 분산과 곡률의 측정 방식이기 때문입니다.

Fisher 정보의 두 정의가 같은 동일한 의미인 이유

이 두 정의가 같아지기 위해서는 몇 가지 regularity 조건이 필요합니다. (예: 미분 가능성, 적분과 미분의 순서교환 가능성 등)

이 조건이 성립하면 다음이 가능합니다:

Step 1. Score function의 기대값은 0이다:

로그우도함수는 주어진 데이터 (고정된 값) 를 가지고 가장 적절한 파라미터 θ^\hat\theta (변수) 를 찾는 함수이다.

실제 모수 값 θ\theta에서 로그우도함수의 기댓값은 최대가 된다. 즉, 실제 모수 θ\theta 점에서는 로그우도함수의 평균 기울기가 없다. 따라서 실제 모수 값에서 score function의 기댓값은 0이다.

E[θlogp(xθ)]=0\mathbb{E} \left[ \frac{\partial}{\partial \theta} \log p(x|\theta) \right] = 0

Step 2. 이를 이용해서 구한 score function의 분산은 다음과 같다:

Var(θlogp(xθ))=E[(θlogp(xθ))2]\operatorname{Var} \left( \frac{\partial}{\partial \theta} \log p(x|\theta) \right) = \mathbb{E} \left[ \left( \frac{\partial}{\partial \theta} \log p(x|\theta) \right)^2 \right]

이게 바로 Fisher 정보의 첫 번째 정의다.


Step 3. 로그우도의 이차 도함수의 음의 기대값을 생각해보면:

2θ2logp(xθ)=1p(xθ)2p(xθ)θ2(1p(xθ)p(xθ)θ)2\frac{\partial^2}{\partial \theta^2} \log p(x|\theta) = \frac{1}{p(x|\theta)} \cdot \frac{\partial^2 p(x|\theta)}{\partial \theta^2} - \left( \frac{1}{p(x|\theta)} \cdot \frac{\partial p(x|\theta)}{\partial \theta} \right)^2

이 표현을 기대값 안으로 넣고 정리하면, 결과적으로 이 값이 score function의 제곱 기대값과 같아진다:

E[2θ2logp(xθ)]=E[(θlogp(xθ))2]- \mathbb{E} \left[ \frac{\partial^2}{\partial \theta^2} \log p(x|\theta) \right] = \mathbb{E} \left[ \left( \frac{\partial}{\partial \theta} \log p(x|\theta) \right)^2 \right]

정리해서,

  • 첫 번째 정의는 score function의 변동성(분산)을 측정함
  • 두 번째 정의는 log-likelihood의 곡률(curvature)을 측정함
  • 적절한 조건 하에서, 도함수의 변동성이 크다는 것과 원래 함수의 곡률이 크다는 것은 동일한 민감도로 이어짐 → Fisher 정보가 큼.

즉, 두 정의는 동일한 통계적 민감도를 서로 다른 수학적 표현으로 나타낸 것,


다변수의 경우 (정보 행렬):

파라미터가 벡터 θ=(θ1,θ2,,θk)\theta = (\theta_1, \theta_2, \dots, \theta_k)일 때,
Fisher 정보 행렬의 원소는 다음과 같이 정의됩니다:

Iij(θ)=E[θilogp(xθ)θjlogp(xθ)]I_{ij}(\theta) = \mathbb{E} \left[ \frac{\partial}{\partial \theta_i} \log p(x|\theta) \cdot \frac{\partial}{\partial \theta_j} \log p(x|\theta) \right]

이렇게 하면:

  • 대각 원소는 각 파라미터의 자기 정보량 (정밀도)
  • 비대각 원소는 서로 다른 파라미터 간의 상관성을 나타냅니다 (정보 공유 정도)

해석 - 단변수일 때 (파라미터가 하나인 경우)

  • Fisher 정보는 스칼라 값:

    I(θ)=E[(θlogp(xθ))2]I(\theta) = \mathbb{E} \left[ \left( \frac{\partial}{\partial \theta} \log p(x|\theta) \right)^2 \right]
  • 이 값이 클수록 log-likelihood의 기울기 변화가 크다
    → 작은 변화로도 큰 영향을 주기 때문에 추정 정밀도가 높아지고 정보량이 많다는 뜻.

  • 즉, 단변수일 때는 Fisher 정보가 크면 클수록 좋다.


다변수일 때 (파라미터가 벡터인 경우)

  • Fisher 정보는 행렬 I(θ)I(\theta)이 되고,
    전체적인 정보량은 다음으로 판단해요:

    정보량detI(θ)\text{정보량} \propto \det I(\theta)
  • 행렬식(det)이 크다는 건:

    • 각 변수별 정보량도 크고
    • 서로 간에 정보 중복(상관관계)이 적고
    • → 전체적으로 정확하고 독립적인 정보가 풍부하다는 의미.
  • 반대로, 상관관계가 너무 커서 파라미터들이 서로 의존적이면 행렬식은 작아짐 → 정보량도 작다고 봄.


profile
보건대학원 뉴비

0개의 댓글