Selva Samuel

dblp:145/1089 · DBLP profile ↗
← Back
3ranked-venue papers
0as first author
0since 2021 · last 2015
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Artificial intelligence and machine learning · 1Software engineering, systems software and programming languages · 1Graphics, computer vision, multimedia, augmented reality and games · 1Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Program analysis · 61% Programming languages and type systems · 39%
Artificial intelligence
2 papers
Probabilistic and Bayesian machine learning · 100%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
probabilistic programming
0.222014
Slicing probabilistic programs · PLDI 2014
R2: An Efficient MCMC Sampler for Probabilistic Programs · AAAI 2014
Machine learning › Probabilistic and Bayesian machine learning › monte carlo methods
markov chain monte carlo
0.212014
R2: An Efficient MCMC Sampler for Probabilistic Programs · AAAI 2014
Program analysis › static analysis
probabilistic program analysis
0.212014
R2: An Efficient MCMC Sampler for Probabilistic Programs · AAAI 2014
Program analysis › static analysis
program slicing
0.212014
Slicing probabilistic programs · PLDI 2014
Machine learning › Probabilistic and Bayesian machine learning
probabilistic inference
0.112014
Slicing probabilistic programs · PLDI 2014

Methods — techniques the papers use, named apart from their topics

program slicing · 0.4program analysis · 0.4observation propagation · 0.4metropolis-hastings · 0.4
YearPublicationVenuePosition
2015 A Provably Correct Sampler for Probabilistic Programs
abstract
We consider the problem of inferring the implicit distribution specified by a probabilistic program. A popular inference technique for probabilistic programs called Markov Chain Monte Carlo or MCMC sampling involves running the program repeatedly and generating sample values by perturbing values produced in "previous runs". This simulates a Markov chain whose stationary distribution is the distribution specified by the probabilistic program. However, it is non-trivial to implement MCMC sampling for probabilistic programs since each variable could be updated at multiple program points. In such cases, it is unclear which values from the "previous run" should be used to generate samples for the "current run". We present an algorithm to solve this problem for the general case and formally prove that the algorithm is correct. Our algorithm handles variables that are updated multiple times along the same path, updated along different paths in a conditional statement, or repeatedly updated inside loops, We have implemented our algorithm in a tool called InferX. We empirically demonstrate that InferX produces the correct result for various benchmarks, whereas existing tools such as R2 and Stan produce incorrect results on several of these benchmarks.
Chung-Kil Hur, Aditya V. Nori, Sriram K. Rajamani, Selva Samuel
FSTTCS4
2014 R2: An Efficient MCMC Sampler for Probabilistic Programs
abstract
We present a new Markov Chain Monte Carlo (MCMC) sampling algorithm for probabilistic programs. Our approach and tool, called R2, has the unique feature of employing program analysis in order to improve the efficiencyof MCMC sampling. Given an input program P, R2 propagates observations in P backwards to obtaina semantically equivalent program P' in which every probabilistic assignment is immediately followed by an observe statement. Inference is performed by a suitably modified version of the Metropolis-Hastings algorithm that exploits the structure of the program P'. This has the overall effect of preventing rejections due to program executions that fail to satisfy observations in P. We formalize the semantics of probabilistic programs and rigorously prove the correctness of R2. We also empirically demonstrate the effectiveness of R2—in particular, we show that R2 is able to produce results of similar quality as the CHURCH and STAN probabilistic programming tools with much shorter execution time.
Aditya V. Nori, Chung-Kil Hur, Sriram K. Rajamani, Selva Samuel
AAAI4
2014 Slicing probabilistic programs
abstract
Probabilistic programs use familiar notation of programming languages to specify probabilistic models. Suppose we are interested in estimating the distribution of the return expression r of a probabilistic program P. We are interested in slicing the probabilistic program P and obtaining a simpler program Sli(P) which retains only those parts of P that are relevant to estimating r, and elides those parts of P that are not relevant to estimating r. We desire that the Sli transformation be both correct and efficient. By correct, we mean that P and Sli(P) have identical estimates on r. By efficient, we mean that estimation over Sli(P) be as fast as possible.
Chung-Kil Hur, Aditya V. Nori, Sriram K. Rajamani, Selva Samuel
PLDI4