4. Probabilistic Modeling and Inference

 

Probabilistic Modeling and Inference

머신러닝에서는 미래의 사건을 예측하거나 의사 결정을 위해 데이터의 해석 및 분석에 관심을 가집니다. 이러한 작업을 더 다루기 쉽게 만들기 위해서 우리는 종종 관측된 데이터를 생성하는 generative process 에 대한 모델을 만듭니다.

예를 들어, 동전 던지기 실험의 결과를 두 단계로 설명할 수 있습니다. 먼저, 베르누이 분포의 매개변수로 “앞면”의 확률을 설명하는 파라미터 $\mu$ 를 정의합니다. 그리고 베르누이 분포 $p(x|\mu) = \text{Ber}(\mu)$ 로부터 결과 $x\in$ {head, tail}을 샘플링할 수 있습니다. 파라미터 $\mu$ 는 특정 dataset $\mathcal{X}$ 를 생성하며, 이는 사용된 동전에 따라 다릅니다. $\mu$ 를 미리 알 수 없고 직접 관측할 수 없기 때문에, 동전 던지기 실험에서 관측된 결과가 주어졌을 때 $\mu$ 에 대해 학습할 수 있는 메커니즘이 필요합니다. 아래에서는 이러한 목적을 위해 probabilistic modeling(확률적 모델링)이 어떻게 사용될 수 있는지 살펴보도록 하겠습니다.

Probabilistic Models

확률 모델(probabilistic models)은 실험의 불확실한 측면을 확률 분포로 나타냅니다. 확률 모델을 사용하는 이점은 확률 모델이 modeling, inference, prediction, model selection을 위해 확률 이론으로부터의 통합되고 일관된 도구들을 제공한다는 것입니다.

확률적 모델링에서 관측된 변수 $\boldsymbol{x}$ 에 대한 결합 분포 $p(\boldsymbol{x},\boldsymbol{\theta})$ 와 hidden parameters $\boldsymbol{\theta}$ 가 가장 중요합니다. 확률적 모델링은 다음의 정보들을 캡슐화합니다.

  • The prior and the likelihood
  • Model selection에서 중요한 역할을 하는 marginal likelihood $p(\boldsymbol{x})$ 은 joint distribution을 가지고 파라미터로 적분하여 계산될 수 있습니다.
  • The posterior, joint를 marginal likelihood로 나누어서 얻을 수 있습니다.

오직 결합 분포(joint distribution)만이 이러한 속성들을 갖습니다. 따라서, 확률 모델은 확률 모델의 모든 확률 변수의 결합 분포로 지정됩니다.

Bayesian Inference

머신러닝의 핵심 작업은 모델과 데이터를 사용하여 관측된 변수 $\boldsymbol{x}$ 가 주어졌을 때, 모델의 hidden 변수 $\boldsymbol{\theta}$ 의 값을 찾아내는 것입니다. 8.3.1장 에서 우리는 이미 maximum likelihood 또는 maximum a posteriori estimation을 사용하여 모델의 파라미터 $\boldsymbol{\theta}$ 를 추정하는 두 가지 방법에 대해 논의했습니다. 두 경우 모두, 파라미터를 추정하는 핵심 알고리즘 문제가 최적화 문제를 푸는 것이므로 하나의 최선의 $\boldsymbol{\theta}$ 값을 얻게 됩니다. 이러한 point estimates $\boldsymbol{\theta}^\ast$ 가 발견되면, 우리는 이를 사용하여 예측하게 됩니다. 보다 구체적으로 이야기하면, 예측 분포는 $p(\boldsymbol{x}|\boldsymbol{\theta}^\ast)$ 를 따르며, 여기서 likelihood function에서 $\boldsymbol{\theta}^\ast$ 를 사용합니다.

6.3장에서 논의했듯이, 사후 분포(posterior distribution)의 일부 통계(posterior를 최대화하는 파라미터 $\boldsymbol{\theta}^\ast$) 에만 초점을 맞추면 정보의 손실이 발생하며, 이는 의사 결정을 하기 위해 예측 $p(\boldsymbol{x}|\boldsymbol{\theta}^\ast)$ 를 사용하는 시스템에서는 치명적일 수 있습니다. 이러한 의사 결정 시스템은 일반적으로 likelihood, a squared-error loss 또는 mis-classification error 보다는 다른 목적 함수를 가지고 있습니다. 그러므로, full posterior distribution을 갖는 것은 매우 유용할 수 있고 더 견고한 결정을 내릴 수 있도록 합니다. Bayesian inference 는 이 사후 분포를 찾는 것입니다. Dataset $\mathcal{X}$ 와 파라미터 사전 확률 $p(\boldsymbol{\theta})$ 그리고 likelihood function에 대해서 사후 확률은 다음과 같으며,

\[p(\boldsymbol{\theta}|\mathcal{X}) = \frac{p(\mathcal{X}|\boldsymbol{\theta})p(\boldsymbol{\theta})}{p(\mathcal{X})}, \quad p(\mathcal{X}) = \int p(\mathcal{X}|\boldsymbol{\theta})p(\boldsymbol{\theta})\mathrm{d}\boldsymbol{\theta} \tag{8.22}\]

이는 베이즈 정리(Bayes’ theorem)을 적용하여 얻을 수 있습니다. 핵심은 베이즈 정리를 활용하여 파라미터 $\boldsymbol{\theta}$ 와 데이터 $\mathcal{X}$ (given by the likelihood) 간의 관계를 반전시켜 사후 확률 분포 $p(\boldsymbol{\theta}|\mathcal{X})$ 를 얻는 것입니다.

파라미터에 대한 사후 분포를 가진다는 것은 파라미터로부터의 불확실성은 데이터로 전파하는데 사용될 수 있다는 것을 의미합니다. 더 구체적으로는 파라미터에 대한 분포 $p(\boldsymbol{\theta}$ 를 가지고 우리의 예측은 다음의 식이 될 수 있습니다.

\[p(\boldsymbol{x}) = \int p(\boldsymbol{x}|\boldsymbol{\theta})p(\boldsymbol{\theta})\mathrm{d}\boldsymbol{\theta} = \mathbb{E}_{\boldsymbol{\theta}}[p(\boldsymbol{x}|\boldsymbol{\theta})] \tag{8.23}\]

이 식은 더이상 모델의 파라미터 $\boldsymbol{\theta}$ 에 대해 의존하지 않습니다. 식 (8.23)은 예측이 모든 그럴듯한 파라미터 값 $\boldsymbol{\theta}$ 에 대한 평균이라는 것을 보여줍니다.

8.3장에서 논의한 파라미터 추정과 베이지안 추론(bayesian inference)의 두 가지 접근 방식을 비교해보겠습니다. Maximum likelihood 또는 MAP 추정을 통한 파라미터 추정은 파라미터의 일관된 point estimates $\boldsymbol{\theta}^\ast$ 를 추출하며, 풀어야 하는 핵심 문제는 최적화입니다. 이와 대조적으로, 베이지안 추론은 사후 분포를 추출하며, 풀어야 하는 핵심 문제는 적분입니다. Point estimate를 사용한 예측은 간단하지만, 베이지안 프레임워크의 예측은 다른 적분 문제를 풀어야 합니다 (8.23 식 참조). 그러나 베이지안 추론은 파라미터 추정 문맥에서는 쉽게 수행되지 않는 사전 지식을 통합하고, 무가적인 정보들을 설명하고, 구조적 지식을 통합하는 원칙적인 방법을 제공합니다. 또한, 예측에 대한 매개변수 불확실성의 전파는 데이터의 효율적인 학습의 맥락에서 risk 평가 및 탐색에 대한 의사결정 시스템에서 유용할 수 있습니다.

베이지안 추론은 수학을 기반으로하는 프레임워크이지만, 해결해야 하는 적분 문제로 인해 몇 가지 practical한 문제가 있습니다. 구체적으로 설명하자면, 매개변수에 대한 conjugate prior를 선택하지 않으면 (8.22)식과 (8.23)식에서의 적분을 다루기 어렵고, posterior, predictions, marginal likelihood를 closed form으로 계산할 수 없습니다. 이러한 경우에는 근사값에 의존해야 합니다. 여기에서는 Markov chain Monte Carlo와 같은 확률적 근사(stochastic approximation) 또는 라플라스 근사, variational inference, 또는 expectation propagation과 같은 결정론적 근사(deterministic approximation)를 사용할 수 있습니다.

이러한 어려움에도 불구하고, 베이지안 추론은 다양한 문제들에 성공적으로 적용되었습니다. 예를 들어, large-scale topic modeling, click-through-rate prediction, data-efficient reinforcement learning, online raning systems, large-scale recommender systems 가 있습니다. 베이지안 최적화(bayesian optimization)과 같은 일반적인 도구는 모델 또는 알고리즘의 메타 파라미터를 효율적으로 탐색하는데 매우 유용한 요소입니다.

Latent-Variable Models

때때로 모델의 파라미터 $\boldsymbol{\theta}$ 이외에 잠재 변수(latent variables) $z$ 를 갖는 것이 유용합니다. 이러한 잠재 변수는 모델을 명시적으로 매개변수화하지 않기 때문에 모델의 파라미터 $\boldsymbol{\theta}$ 와는 다릅니다. 잠재 변수는 data-generating process를 설명할 수 있으므로, 이는 모델의 해석가능성(interpretability)에 가깝습니다. 잠재 변수는 모델의 구조를 단순화하고 우리가 더 간단하고 풍부한 모델 구조를 정의할 수 있도록 합니다. 모델 구조의 단순화를 보통 더 적은 수의 모델 파라미터를 가지면서 진행됩니다. 잠재 변수 모델에서의 학습은 expectation maximization(EM) algorithm을 사용하여 워칙적인 방식으로 수행할 수 있습니다.

잠재 변수가 도움이 되는 예로는 차원 축소를 위한 PCA(10장), 밀도 추정을 위한 가우시안 혼합 모델(gaussian mixture models, 11장), hidden Markov models 또는 시계열 모델링의 위한 dynamicla systems, 그리고 meta learning, task generalization이 있습니다.

이러한 잠재 변수의 도입이 모델 구조와 generative process를 더 쉽게 만들 수 있지만, 잠재 변수 모델에서 학습하는 것은 11장에서 언급하겠지만 일반적으로 어렵습니다.

잠재 변수 모델을 사용하면 매개변수에서 데이터를 생성하는 프로세스를 정의할 수 있는데, 이러한 생성 프로세스에 대해 살펴보도록 하겠습니다. 데이터를 $\boldsymbol{x}$ 로, 모델 파라미터를 $\boldsymbol{\theta}$ 로, 잠재 변수를 $\boldsymbol{z}$ 로 표기하면, 우리는 다음의 조건부 확률을 얻습니다.

\[p(\boldsymbol{x}|\boldsymbol{z},\boldsymbol{\theta}) \tag{8.24}\]

이를 통해서 모든 모델 매개변수 및 잠재 변수에 대한 데이터를 생성할 수 있습니다. $\boldsymbol{z}$ 가 잠재 변수로 주어졌을 때, 이 식에 사전 확률 $p(\boldsymbol{z})$ 를 배치합니다.

잠재 변수가 있는 모델은 8.3장과 8.4.2장에서 논의한 프레임워크 내에서 매개변수 학습과 추론에 사용할 수 있습니다. 학습을 용이하게 하기 위해서 다음의 2단계의 절차를 따릅니다. 먼저, 모델의 likelihood $p(\boldsymbol{x}|\boldsymbol{\theta})$ 를 계산합니다. 이는 잠재 변수에 의존하지 않습니다. 그리고, 계산한 likelihood를 파라미터 추정 또는 베이지안 추론에 사용합니다. 여기서 각각 8.3장과 8.4.2장에서 논의한 식을 사용합니다.

Likelihood function $p(\boldsymbol{x}|\boldsymbol{\theta})$ 가 모델의 파라미터가 주어졌을 때의 데이터의 예측 분포이므로, 잠재 변수를 marginalize out 하면 다음의 식을 얻을 수 있습니다.

\[p(\boldsymbol{x}|\boldsymbol{\theta}) = \int p(\boldsymbol{x}|\boldsymbol{z},\boldsymbol{\theta})p(\boldsymbol{z})\mathrm{d}\boldsymbol{z} \tag{8.25}\]

여기서 $p(\boldsymbol{x}|\boldsymbol{z},\boldsymbol{\theta})$ 는 식 (8.24)에서 주어지고, $p(\boldsymbol{z})$ 는 잠재 변수에 대한 사전 확률입니다. Likelihood가 잠수 변수에 영향을 받지 않으므로, 이는 데이터 $\boldsymbol{x}$ 와 모델 파라미터 $\boldsymbol{\theta}$ 에 대한 함수입니다.

(8.25) 식의 likelihood는 maximum likelihood를 통해 직접적으로 파라미터 추정을 가능하게 합니다. MAP estimation 또한 모델 파라미터 $\boldsymbol{\theta}$ 에 대한 사전 확률이 있다면 간단합니다. 게다가 likelihood (8.25)를 가지고 잠재 변수 모델에서의 베이지안 추론은 보통의 방식으로 동작합니다. 모델 파라미터에 사전 확률 $p(\boldsymbol{z})$ 를 배치하고 베이즈 이론을 사용하면 아래와 같이 dataset $\mathcal{X}$ 가 주어졌을 때, 모델 파라미터에 대한 사후 확률을 얻을 수 있습니다.

\[p(\boldsymbol{\theta}|\mathcal{X}) = \frac{p(\mathcal{X}|\boldsymbol{\theta})p(\boldsymbol{\theta})}{p(\mathcal{X})} \tag{8.26}\]

(8.26) 식의 사후 확률은 베이지안 추론 프레임워크 내에서 예측에 사용될 수 있습니다.

잠재 변수 모델에서의 한 가지 문제는 likelihood $p(\mathcal{X}|\boldsymbol{\theta})$ 가 (8.25) 식에 따라 잠재 변수의 marginalization을 필요로 한다는 것입니다. 우리가 $p(\boldsymbol{x}|\boldsymbol{z},\boldsymbol{\theta})$ 에 대해 conjugate prior $p(\boldsymbol{z})$ 를 선택할 때는 제외하면, (8.25) 식의 marginalization은 다루기가 어려우며 근사에 의존해야 합니다.

파라미터 사후 확률 (8.26) 식과 유사하게 우리는 잠재 변수에 대한 사후 확률을 다음과 같이 계산할 수 있습니다.

\[p(\boldsymbol{z}|\mathcal{X}) = \frac{p(\mathcal{X}|\boldsymbol{z})p(\boldsymbol{z})}{p(\mathcal{X})}, \quad p(\mathcal{X}|\boldsymbol{z}) = \int p(\mathcal{X}|\boldsymbol{z},\boldsymbol{\theta})p(\boldsymbol{\theta})\mathrm{d}\boldsymbol{\theta} \tag{8.27}\]

여기서 $p(\boldsymbol{z})$ 는 잠재 변수에 대한 사전 확률(prior)이며, $p(\mathcal{X}|\boldsymbol{z})$ 는 모델 파라미터 $\boldsymbol{\theta}$ 에 대한 적분을 필요로 합니다.

적분을 푸는 것이 어렵다는 점은 감안할 때, 잠재 변수와 모델 매개변수를 동시에 marginalization하는 것은 일반적으로 불가능하다는 것이 명확합니다. 더 계산하기 쉬운 quantity는 잠재 변수에 대한 사후 확률인데, 모델 파라미터가 조건부로 붙습니다. 즉, 다음과 같습니다.

\[p(\boldsymbol{z}|\mathcal{X},\boldsymbol{\theta}) = \frac{p(\mathcal{X}|\boldsymbol{z},\boldsymbol{\theta})p(\boldsymbol{z})}{p(\mathcal{X}|\boldsymbol{\theta})} \tag{8.28}\]

여기서 $p(\boldsymbol{z})$ 는 잠재 변수에 대한 사전 확률(prior)이고, $p(\mathcal{X}|\boldsymbol{z},\boldsymbol{\theta})$ 는 (8.24)에서 주어집니다.

10장과 11장에서는 각각 PCA와 가우시안 혼합 모델에 대한 likelihood function을 유도합니다. 또한, PCA와 가우시안 혼합 모델에 대한 잠수 변수의 사후 분포 (8.28) 식을 계산합니다.

확률 모델의 모든 요소들이 확률 변수라는 사실을 활용하여 확률 모델을 표현하기 위한 통일된 언어를 정의할 수 있습니다. 8.5장에서는 확률 모델의 구조를 표현하기 위한 간결한 graphical language를 살펴보고, 이 그래픽 언어를 사용하여 확률 모델을 설명해보도록 하겠습니다.