WOLFE: strength reduction and approximate programming for probabilistic programming

Sebastian Riedel, Sameer Kumar Singh, Vivek Srikumar, Tim Rocktäschel, Larysa Visengeriyeva, Jan Noessner · 2014

Existing modeling languages lack the expressiveness or ef-ficiency to support many modern and successful machine learning (ML) models such as structured prediction or ma-trix factorization. We present WOLFE, a probabilistic pro-gramming language that enables practitioners to develop such models. Most ML approaches can be formulated in terms of scalar objectives or scoring functions (such as distribu-tions) and a small set of mathematical operations such as maximization and summation. In WOLFE, the user works within a functional host language to declare scalar functions and invoke mathematical operators. The WOLFE compiler then replaces the operators with equivalent, but more efficient (strength reduction) and/or approximate (approximate pro-gramming) versions to generate low-level inference or learn-ing code. This approach can yield very concise programs, high expressiveness and efficient execution.

Read the paper · More papers on PaperTik