Graphical Lasso (2007)

Conditionally Independence Graph

그래프는 서로 상호작용을 하여서 탄생한다. 그럼에도 수많은 노드 중에 두 노드가 연결이 되어 있지 않다는 것은 조건부 독립이라고 설명할 수 있다. 즉 두 노드를 제외한 모든 노드가 주어졌을 때, 두 노드가 연결되어 있지 않은 그래프라면 조건부 독립인 그래프라고 말한다.

통계

선형대수

그래프

조건부독립 (Conditionally Independence)

편상관 (Partial Correlation)

간선 (Edge)

그래프의 간선을 추정하기 위해서, Partial Correlation 이란 두 확률 변수를 제외한 다른 변수의 영향을 제외한채 두 변수의 상관관계를 나타낸다. 그리고 공분산행렬의 역행렬은 Partial Correlation Matrix 와 비례한다.

각 노드를 확률변수로 본다면, 그래프는 여러개의 노드를 가지고 있으므로, 다변량 확률변수인 것이다. 그리고 그 확률변수는 다변량 정규분포를 따른다고 가정을 할 수 있다.

1. 다변량 정규분포를 따른다.

2. 우도함수

내가 가지고 있는 데이터는 정규분포를 따른다. 각 데이터가 따르는 정규분포의 곱은 과거에 일어난 데이터의 현상을 잘 반영한 함수이다. 이를 우도함수라 하고, 모델의 Sparsity를 위해 라쏘 규제기법을 적용한 식은 다음과 같다.

logdetθtr(Sθ)ρθ1log det \theta - tr(S\theta) -\rho||\theta||_1

3. 우도함수 편미분

위 식을 극대화하는 극대점(최대우도추정량 θ\theta )을 찾기 위해 θ\theta 에 대한 미분방정식은 다음과 같다. 다음 식을 유도하기 위해서, 행렬식 로그의 미분은 역행렬이라는 것과, 대각행렬의 미분을 알아야 한다.

θ1SλSign(θ)=0\theta^{-1}-S-\lambda*Sign(\theta) = 0

4. 최대우도 추정량

계산 복잡도를 줄이면서 위 식을 풀기 위한 방법들이 계속 연구되어 왓다.

  • interioir-point optimization

  • block coordinate descent

  • graphical lasso

w12s12ρr12=0w_{12}-s_{12}-\rho*r_{12} = 0

Graphical Lasso Algorithm

역행렬을 구하기 위해서는

  • 행렬식을 구한후 분모에 나누어 준다

  • 여인자 행렬을 구한다. 여인자 행렬을 해당 row, column 의 원소를 제거한 소행렬식에 나머지 원소들의 행렬식을 구한 후 , 각 원소 위치에 알맞은 (1)i+j(-1)^{i+j} 부호를 넣는 것까지를 의미한다.

  • 여인자 행렬을 전치한다.

A1=1det(A)CTA^{-1} = \frac{1}{det(A)}C^T

공분산의 역행렬을 precision matrix 라고 하며, 편상관 행렬에 비례한다.

즉, 공분산 행렬은 모든 확률변수를 포함하여 공분산을 계산하지만, 공분산의 역행렬은 오직 두 확률변수의 관계만을 생각한다.

MLE

내가 오늘 멍키에 성공할 확률 p 는 얼마일까? 과거에는 어땠지? 지난 5일동안 성공, 성공, 실패, 성공, 실패를 하였다. 베르누이 분포를 하면 p3(1p)2p^3(1-p)^2인 p에 대한 함수이다. 나의 경험에 근거하여 위 식이 p가 0에서부터 1중에 최대가 되게 하는 p 값이 내가 오늘 멍키에 성공할 수 있을지 알려주는 확률 추정치인 것이다. 여기서 p3(1p)2p^3(1-p)^2우도함수라 하고, 마지막 추정한 값을 최우추정량이라고 한다.

https://www.stat.ubc.ca/~bchang/gmrg/files/Bo_05152015.pdf

Last updated