Study/Topic Modeling

Preliminary for Topic Models

Seung-won Seo 2024. 2. 23. 01:39

Preliminary : Mathematics , Statistics , ... 

 

1. Statistics

1.1 Dirichlet Distribution

 

디리클레 분포는 연속확률분포중 하나로 , k차원의 실수 벡터중 벡터의 성분이 양수이며 모든 성분을 더한값이 1인경우에 대해 확률값이 정의되는 분포이다.

디리클레 분포를 보통 사용하는 것은 , Bayesian approach 에서 다항분포(multinomial distribution) 의 conjugate prior distribution 으로 사용하기 때문이다. (사전확률) 

디리클레 분포는 다항분포에 대한 사전확률의 성질을 가지며 , 이 값을 이용해 사후확률을 계산할 수 있다. (By Bayes Theorem)

 

 

1.2 Joint Distribution

 

- Joint Probability : 확률변수가 두개 이상일때 여러 사건이 동시에 일어날 확률

- Joint (Probability) distribution : 여러 확률변수를 동시에 고려하는 확률분포

결합 확률분포는 이산분포인 경우 , 연속분포인 경우 두가지로 나뉜다.

 

 

1.3 independent and identically distributed (iid)

 

iid 가정이란 통계학에서 , 확률분포를 다룰때 여러개의 각각의 확률변수 random variable 에 대하여 

 

1) 독립적이다 (independent)

2) 같은 확률분포를 따른다 (identically distributed)  (같은 확률분포로 모델링 할 수 있다)

 

ex) 만약 주사위를 던질때 1의눈이 나오는 사건과 동전을 던질때 앞면이 나오는 사건이 있다면 , 각각은 독립적이지만 확률분포가 다르기 때문에 (1/6 , 1/2) 두 randon variable 은 iid 가정을 만족하지 않는다. 

 

 

 

2. Bayesian approach

2.1 Likelihood

 

Probability and Likelihood ???

 

- Probability (확률) : 확률분포가 주어진 상태에서 , 주어진 사건이 변화할때

- Likelihood (가능도) : 주어진 사건이 고정된 상태에서 , 확률분포가 변화할때  -> 특정 사건이 일어날 가능도 

즉 , likelihood 는 우리가 확률분포를 몰라서 이를 가정할때 사용합니다. 

 

 

 

2.2 Maximum Likelihood (Estimator) (MLE) 

 

통계학에서 , 추정을 하기위해 사용하는 방법중 하나로 어떤 특정 사건이 일어날 가능도(확률) 을 최대화 하는 추정량이 MLE 추정량입니다.

우리가 Likelihood 를 사용하는 이유는 , 주어진 데이터의 분포를 모르기 때문에 이를 추정하고싶기 때문입니다. 

이때 MLE 추정량은 주어진 데이터를 가장 잘 모델링하는 확률분포의 parameter 를 찾는데 이용하는 추정량입니다. 

MLE 를 이용하면 , 우리가 데이터를 모델링하는데에 가정한 확률분포 (디리클레분포 , 가우시안분포 등 어떤것이든) 의 최적의 parameter 를 구할 수 있습니다.

이때 Likelihood 를 계산하기 위한 확률분포들은 iid 가정을 만족해야합니다.

Likelihood 식을 계산했다면 , 그것을 분포에 대한 parameter 로 미분하여 Likelihood 함수를 최대로 만드는 값이 바로 우리가 원하는 MLE 추정량이 되는것입니다.

 

 

 

 

 

2.3 Bayes Theorem

 

베이즈 정리란 , 쉽게말해 "사후확률과 사전확률사이의 관계를 나타내는 정리" 라고할 수 있다.

통계학에는 확률에 대해 크게 2가지 관점이 존재하는데 , 첫번째는 빈도주의 관점이고 두번째는 베이지안 관점이다. 

예를들어서 ,  동전의 앞면이 나올 확률이 50%라고 하면, 빈도주의는 100번 동전을 던졌을 때 50번은 앞면이 나온다고 해석하고, 베이지안 관점은 동전의 앞면이 나왔다는 주장의 신뢰도가 50%라고 본다. 

 

베이지안 관점은 , 사전 확률과 같은 경험에 기반한 선험적인, 혹은 불확실성을 내포하는 수치를 기반으로 , 거기에 추가 정보를 바탕으로 사전확률을 업데이트한다. (귀납적추론)

 

 

 

3. Approximation

 

Approximation 종류 : Mean-field approximation , Laplace , Variational approximation (Variational Inference) , MCMC 등

 

 

3.1 Laplace approximation

 

- 라플라스 근사란 무엇이고 그것이 왜 필요한가 ?? 

 

베이즈 정리를 기반으로 , 우리는 사전 확률을 이용해 사후확률을 구해야합니다. 

또한 어떤 사건이 고정되어 있을때 , 우리는 그 사건에 대한 "확률분포" (Topic-Word distribution , Doc-Topic distribution ) 를 추정해야 합니다

그런데 우리가 가정한 사후 확률의 분포가 만약 가우시안이 아니라면 , 사후 분포를 근사하여 구해야 하는데 그럴때 사용하는 근사법이 Laplace approximation 이다.

즉, 우리가 얻게 되는 사후 확률 분포가 애매하기는 하지만 그 분포와 가장 비슷한 가우시안 분포를 찾고 이를 대신 사용한다는 것이다.

 

 

 

3.2 Markov chain Monte Carlo (MCMC)

 

MCMC : Markov Chain 의 구성에 기반한 확률 분포로부터 원하는 분포의 정적 분포를 갖는 표본을 추출하는 샘플링 알고리즘기법

 

Monte Carlo는 쉽게 말해 통계적인 수치를 얻기 위해 수행하는 ‘시뮬레이션’ 같은 것이다.

이런 시뮬레이션을 하는 이유는 유한한 횟수의 시도만으로 정답을 추정하는 데 의미가 있다.

Markov Chain은 어떤 상태에서 다른 상태로 넘어갈 때, 바로 전 단계의 상태에만 영향을 받는 확률 과정을 의미한다.

예를들어 , 음식 선택이라는 확률과정에 대해 오늘의 음식 선택이라는 과정은 어제의 음식 선택에만 영향을 받고, 그저께의 음식 선택에는 영향을 받지 않는다면 이 과정은 마르코프 성질(Markov property)을 가진다고 할 수 있으며, 이 확률 과정은 Markov chain이라고 할 수 있다.

MCMC는 샘플링 알고리즘 중 하나인데 ,  “가장 마지막에 뽑힌 샘플이 다음번 샘플을 추천해준다”는 의미에서 Markov Chain이라는 단어가 들어갔다고 보면 좋을 것 같다.

 

다시 말해 MCMC 샘플링을 수행한다는 것은 첫 샘플을 랜덤하게 선정한 뒤, 첫 샘플에 의해 그 다음번 샘플이 추천되는 방식의 시도를 무수하게 해본다는 의미를 갖고 있다.

이렇게해서 , MCMC 의 목표는 목표분포가 알려져있을때 (Markov Chain) Stationary distribution 에 도달하기위한 효율적인 Transition probability 을 규정하기 위해 우리가 샘플을 얻고자하는 데이터의 목표 분포로부터 랜덤샘플을 얻는방법이다.

 

MCMC 샘플링 알고리즘의 종류

- Metropolis 

- Metropolis-Hastings 

- Gibbs Sampling 

 

 

 

4. Variational Inference 

4.1 분포를 추정하기 위한 대표적 방법 : MLE , MAP estimator

 

확률 분포를 추정하기 위해 통계학에서 자주 사용하는 방법으로 MLE (Maximum Likelihood Estimator) , MAP (Maximum A Posterior) 가 있다. 

MLE 는 위의 내용과 같이 Likelihood 를 최대화시키는 parameter 가 데이터를 가장 잘 설명하는 추정량이 되는것이다.

MLE 가 주어진 데이터만을 이용하여 추론한다면 , MAP 는 데이터 분포에 대한 가설을 활용한다.

이미 알고있는 정보나 가설을 표현하는 분포가 prior (사전확률) 이 된다. 

이때 베이즈정리에 의해 , Likelihood 를 곱하면 posterior (사후확률) 을 구할 수 있다.

즉 prior (사전확률) 이 Likelihood 에 가중치로 사용됩니다. 

그렇게 구한 사후확률 posterior 을 최대화 시키는 parameter 이 MAP 추정량이 되는것입니다.

 

4.2 MLE , MAP 의 한계점을 극복하기 위한 방법 : Variational Inference 

 

분포를 추론하는 과정에서 , 사후확률분포(posterior) 를 계산하는것이 매우 힘든경우가 많다. (특히 생성형모델)

따라서 사후확률 분포를 다루기 쉬운 다루기 쉬운 확률분포로 근사(approximation) 하는 방법중 하나가 Variational Inference 이다.

Variational Inference : 추정문제 -> 최적화문제

이를테면 , 디리클레분포로 가정한 사후확률 분포를 구하고 싶은데 이는 자주사용하는 가우시안분포에 비해 매우 복잡합니다.
이런 경우에 Variational Inference 를 통해 사후확률분포를 다루기 쉬운 가우시안분포로 근사하여 계산합니다.

 

분포 근사(approximation)를 하기위해 여기에 KL-divergence 개념을 이용합니다.

KL-divergence 를 최소화하는 과정을 거치면서 근사된 분포를 얻습니다.

 

- Variational Inference 과정

1) P(Z|X) 를 구하려면 분모의 P(X) 를 알아야한다 (by 베이즈정리) -> 계산이 너무 복잡해서 구하기 힘듬
2) P(X) 를 계산하여 이것의 Lower bound (ELBO) 를 구하여 P(X) 를 근사하기 위해 이를 최대화한다.

3)  계산된 값에서 KL(q(Z|λ)||p(Z|X)) + ELBO는 상수이고, KL-Divergence 을 어떤 값만큼 줄인다면, ELBO는 같은 값만큼 증가합니다.

4) 따라서 우리의 목적인 P(X) 를 근사 (ELBO 최대화) 하기 위해 , 두가지 방법이 있습니다. 

4-1. KL-Divergence 최소화

4-2. ELBO 최대화 

 

5) 따라서 분포를 추정하는 문제가 최적화 문제로 바뀌게 됩니다. 즉 , Variational Inference 는 최적화를 통하여 추정을 하는 방법입니다.