[논문 리뷰] Applications of Probabilistic Programming (Master's thesis, 2015)
이 석사 학위 논문은 확률적 프로그래밍의 두 가지 응용을 제시한다: (1) 문법 기반 사전 분포와 근사 베이지안 계산을 사용한 베이지안 프로그램 합성에 의한 일차원 샘플러 자동 발견; 및 (2) 비모수 디리클레 과정 혼합 모델에 특히 적합한 데이터 기반 제안 분포를 통한 순차 몬테카를로 추론 향상. 이 방법은 유전적 프로그래밍과 경쟁 가능한 성능을 달성하였고, Anglican을 사용한 확률적 모델에서 추론 효율성을 크게 향상시켰다.
This thesis describes work on two applications of probabilistic programming: the learning of probabilistic program code given specifications, in particular program code of one-dimensional samplers; and the facilitation of sequential Monte Carlo inference with help of data-driven proposals. The latter is presented with experimental results on a linear Gaussian model and a non-parametric dependent Dirichlet process mixture of objects model for object recognition and tracking. In Chapter 1 we provide a brief introduction to probabilistic programming. In Chapter 2 we present an approach to automatic discovery of samplers in the form of probabilistic programs. We formulate a Bayesian approach to this problem by specifying a grammar-based prior over probabilistic program code. We use an approximate Bayesian computation method to learn the programs, whose executions generate samples that statistically match observed data or analytical characteristics of distributions of interest. In our experiments we leverage different probabilistic programming systems to perform Markov chain Monte Carlo sampling over the space of programs. Experimental results have demonstrated that, using the proposed methodology, we can learn approximate and even some exact samplers. Finally, we show that our results are competitive with regard to genetic programming methods. In Chapter 3, we describe a way to facilitate sequential Monte Carlo inference in probabilistic programming using data-driven proposals. In particular, we develop a distance-based proposal for the non-parametric dependent Dirichlet process mixture of objects model. We implement this approach in the probabilistic programming system Anglican, and show that for that model data-driven proposals provide significant performance improvements. We also explore the possibility of using neural networks to improve data-driven proposals.
연구 동기 및 목표
- 목표 분포와 일치하는 샘플을 생성하는 확률적 프로그램 코드를 자동으로 발견하기 위한 베이지안 프레임워크 개발.
- 데이터 기반 제안 분포를 사용하여 복잡한 확률적 모델에서 순차 몬테카를로(SMC) 추론의 효율성 향상.
- 신경망을 활용하여 SMC에서의 데이터 기반 제안 분야를 추가로 향상시키기 위한 탐색.
- 물체 인식 및 추적을 위한 선형 가우시안 모델과 비모수적 종속 디리클레 과정 혼합 모델에 대해 제안된 방법의 평가.
- 기존의 유전적 프로그래밍 기법과 비교하여 제안된 프로그램 합성 방법의 성능 평가.
제안 방법
- 잠재적인 샘플러의 구조적 제약 조건을 표현하기 위해 확률적 프로그램 코드에 대한 문법 기반 사전 분포 설정.
- 관측된 데이터 또는 분석적 분포 특성과 통계적으로 일치하는 출력을 갖는 프로그램을 학습하기 위해 근사 베이지안 계산(ABC) 적용.
- ABC 프레임워크 하에서 확률적 프로그램 공간에서 마르코프 체인 몬테카를로(MCMC) 샘플링을 수행하여 추론 수행.
- 확률적 프로그래밍 시스템인 Anglican에 이 방법을 구현하여 확장 가능한 추론 지원.
- 비모수적 종속 디리클레 과정 혼합 모델에 특화된 거리 기반 제안 메커니즘 설계를 통해 SMC 효율성 향상.
- 신경망 통합을 탐색하여 SMC에 대한 더 효과적인 데이터 기반 제안 분포 학습.
실험 결과
연구 질문
- RQ1문법 기반 사전 분포와 함께 베이지안 추론를 통한 확률적 프로그램 합성은 데이터 또는 분포 특성에서 알려진 일차원 샘플러를 신뢰성 있게 복원할 수 있는가?
- RQ2비모수적 모델, 예를 들어 종속 디리클레 과정 혼합 모델과 같은 복잡한 모델에서 데이터 기반 제안 분포는 순차 몬테카를로 추론을 얼마나 효과적으로 가속화하는가?
- RQ3신경망은 SMC 추론에서 데이터 기반 제안의 품질과 효율성을 추가로 향상시킬 수 있는가?
- RQ4제안된 프로그램 합성 방법은 기존의 유전적 프로그래밍 기법과 비교하여 성능 및 정확도 면에서 어떻게 다른가?
- RQ5이 프레임워크는 물체 인식 및 추적과 같은 실제 응용 작업에 얼마나 일반화될 수 있는가?
주요 결과
- 제안된 베이지안 프로그램 합성 방법은 근사적이고 정확한 일차원 샘플러를 성공적으로 학습하여 자동 확률적 프로그램 발견의 가능성을 입증하였다.
- 이 방법은 분포 특성에서 정확한 샘플러를 합성하는 데 있어 기존의 유전적 프로그래밍 방법과 경쟁 가능한 성능을 달성하였다.
- 데이터 기반 제안 분포는 선형 가우시안 모델과 비모수적 종속 디리클레 과정 혼합 모델에서 순차 몬테카를로 추론의 효율성을 크게 향상시켰다.
- SMC에서 거리 기반 제안 분포의 사용은 물체 인식 및 추적 작업에서 필요한 입자 수를 감소시키고 수렴 속도를 향상시켰다.
- 신경망 기반 제안 분포는 제안 품질 향상 잠재력을 보였지만, 주요 평가에서는 거리 기반 설계에 초점을 맞추었다.
- Anglican 확률적 프로그래밍 시스템 내의 구현을 통해 제안된 추론 기법의 실용적 구현 및 평가가 가능해졌다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.