4-3. Bayesian Inference Example

Bard·2023년 4월 8일
1

Advanced Mathematics for AI

목록 보기
18/20
post-thumbnail

본 글은 K-MOOC의 인공지능 수학 고급(Advanced Mathematics for AI) 강의를 듣고 요약한 글입니다.

Example

패스트푸드 체인점이 커피 원두의 종류를 바꾸려고 하고 있다.

새로운 원두의 소비자 선호도를 조사하기 위해서 회사는 무작위로 n=100n=100의 커피 소비자 표본을 만들었다.

컵에는 AABB로 마킹을 해두었다.

새 원두를 AA에, 기존 원두를 BB에 넣어 두고, 절반의 시간이 흐른후 AABB의 순서를 바꿔두었다.

이 때, 두 원두에 대한 선호도 차이를 조사하려고 한다.

Model

  • θ\theta: 소비자가 새 원두를 고를 확률
  • X1,,XnX_1, \ldots, X_n: 베르누이 분포에 의한 무작위 표본 (성공과 실패에 대한 분포이기 때문에 베르누이 분포가 적절하다.)
    P(xiθ)=θxi(1θ)1xiP(xiθ)=inθxi(1θ)1xiP(x_i|\theta) = \theta^{x_i}(1-\theta)^{1-x_i} P(x_i|\theta) = \prod^n_i\theta^{x_i}(1-\theta)^{1-x_i}

Prior

Beta distribution

이 모양은 베르누이 분포의 모양과 유사하다.

π(θ)=Γ(α+β)Γ(α)Γ(β)θα1(1θ)β1E[θ]=αα+βVar[θ]=αβ(α+β)2(α+β+1)\pi(\theta) = \frac{\Gamma(\alpha + \beta)}{\Gamma(\alpha)\Gamma(\beta)}\theta^{\alpha-1}(1-\theta)^{\beta-1}\\\,\\ E[\theta] = \frac \alpha {\alpha + \beta}\\\,\\ Var[\theta] = \frac {\alpha\beta} {(\alpha + \beta)^2(\alpha+\beta + 1)}

Posterior

원래 분모도 함께 계산을 해줘야 하지만, 분모는 영향을 주지 않기 때문에 분자만 계산하자.

π(θx)p(xθ)π(θ)=θi=1nxi(1θ)ni=1nxiΓ(α+β)Γ(α)Γ(β)θα1(1θ)β1θ(αi=1nxi)1(1θ)(β+ni=1nxi)1\pi(\theta|x) \varpropto p(x|\theta)\pi(\theta) \\ = \theta\sum^n_{i=1}x_i(1-\theta)^n-\sum^n_{i=1}x^i\frac{\Gamma(\alpha + \beta)}{\Gamma(\alpha)\Gamma(\beta)}\theta^{\alpha-1}(1-\theta)^{\beta-1} \\ \varpropto \theta(\alpha\sum^n_{i=1}x_i)^{-1}(1-\theta)^{(\beta + n - \sum^n_{i=1}x_i)-1}
  • 이 결과 이 모양이 베타 분포와 비슷하다는 것을 알 수 있다. (Beta(α,β)Beta(\alpha', \beta'))
  • α=α+ixi\alpha' = \alpha + \sum_ix_i
  • β=β+nixi\beta' = \beta+n-\sum_ix_i

Conjugate Prior

이렇게 PriorPosterior가 같은 분포 그룹에 속하게 되면 이때의 Prior를 Conjugate Prior, 켤레사전분포라고 부른다.

대표적인 분포 그룹의 예로 Exponential Family가 있다.

  • Normal, Exponential, Gamma, Beta, Bernoulli, Dirichlet, Categorical, Poisson, Geometric

즉 여기에서는 베타분포가 베르누이 모델의 켤레사전분포가 되는 것이다.

  • Conjugate Prior는 매우 편리하다.
  • 하지만 Conjugate Prior가 있는 모델이 있고 없는 모델이 있다.
  • 따라서 Conjugate Prior가 포함되는 모델을 만든다면, 이를 후에 계산할 때 훨씬 간편하다는 장점이 있다.
profile
The Wandering Caretaker

0개의 댓글