데이터 기반 순차 몬테카를로를 활용한 확률 프로그래밍
초록
본 논문은 기존 확률 프로그래밍 시스템에서 제안 분포로 모델 사전분포만을 사용하는 비효율성을 극복하고자, 이전 추론 실행으로 얻은 사후 추정치를 활용해 최적에 가까운 제안 분포를 학습하는 방법을 제안한다. 신경망 기반의 판별 모델을 훈련시켜 데이터‑드리븐 제안(discriminative proposal)을 생성하고, 이를 비모수 모델에 적용한 사례를 Anglican 시스템에서 구현하였다. 실험 결과, 데이터‑드리븐 제안을 사용하면 입자(particle) 수를 크게 줄여도 정확한 사후 추정이 가능함을 보였다.
상세 분석
이 논문은 확률 프로그래밍 언어에서 흔히 사용되는 MCMC와 SMC 알고리즘이 사전분포(prior)만을 제안 분포(proposal)로 삼아 샘플링 효율이 낮다는 점을 지적한다. 특히 SMC에서는 입자(particle)들이 사전분포에 의해 초기화된 뒤, 관측 데이터에 맞추어 재가중치(resampling)와 이동(move) 단계가 진행되는데, 사전분포와 실제 사후분포(posterior)의 차이가 클 경우 입자 소멸(particle degeneracy) 현상이 심화된다. 이를 해결하기 위해 저자들은 “데이터‑드리븐 제안”이라는 개념을 도입한다. 핵심 아이디어는 이전 추론 라운드에서 얻은 입자들의 가중치와 상태 정보를 이용해, 현재 라운드의 제안 분포를 근사하는 판별 모델, 즉 신경망을 학습하는 것이다. 학습 과정은 다음과 같다. 1) 초기 SMC 실행으로 사후 근사 샘플과 가중치를 수집한다. 2) 수집된 (state, weight) 쌍을 입력‑출력 데이터셋으로 변환한다. 3) 신경망을 최소 KL 발산을 목표로 최적화하여, 주어진 관측값에 대해 사후분포를 직접 예측하도록 한다. 이렇게 훈련된 네트워크는 이후 실행에서 제안 분포로 사용되며, 입자들이 사후분포에 더 가깝게 초기화된다. 논문은 Anglican이라는 함수형 확률 프로그래밍 시스템에 이 메커니즘을 구현하고, 비모수 베이지안 모델인 Dirichlet Process Mixture Model(DPMM)을 사례 연구로 선택한다. DPMM은 클러스터 수가 데이터에 따라 가변적이므로 전통적인 사전 기반 제안이 매우 비효율적이다. 데이터‑드리븐 제안을 적용한 결과, 입자 수를 10배 이상 감소시켜도 기존 사전 기반 SMC와 동등하거나 더 나은 로그 증거(log‑likelihood)와 클러스터 할당 정확도를 달성했다. 또한, 학습 비용은 초기 라운드 한 번만 발생하고, 이후 반복 실행에서는 거의 비용이 들지 않아 실시간 혹은 온라인 추론 시나리오에도 적합함을 보인다. 이 접근법은 제안 분포를 학습하는 일반적인 프레임워크를 제공하므로, 복잡한 모델 구조, 고차원 관측, 혹은 비정형 데이터에도 확장 가능하다. 다만, 신경망 학습이 충분히 수렴하지 않을 경우 제안 분포가 오히려 편향될 위험이 있으며, 학습 데이터의 다양성 확보가 중요한 과제로 남는다.