Loading...

MIA: Daniel Huang, Compiling probabilistic programs; Daniel King, What is a compiler?

340 views

Loading...

Loading...

Transcript

The interactive transcript could not be loaded.

Loading...

Loading...

Rating is available when the video has been rented.
This feature is not available right now. Please try again later.
Published on Dec 22, 2016

December 14, 2016

MIA Meeting: https://youtu.be/OhvcXiP9nNU?t=2538

Daniel Huang
Harvard SEAS

Compiling probabilistic programs

Abstract: Deriving and implementing an inference algorithm for a probabilistic model can be a difficult and error-prone task. Alternatively, in probabilistic programming, a compiler is used to transform a model into an inference algorithm. In this talk, we'll present probabilistic programming from the perspective of a compiler writer. A compiler for a traditional language uses intermediate languages (ILs) and static analysis to generate efficient code. We'll highlight how these ideas can be used in probabilistic programming for generating flexible and scalable inference algorithms.

Daniel King
Hail Team, Neale Lab

Primer: What is a compiler?

Abstract: A compiler is an algorithm that transforms a source language into a target language. The transformation typically includes an optimizing pass which reduces memory or time requirements. Classic compilers transform languages such as C or Java into near-machine code such as x86 Assembly or JVM Bytecode. Recent work on Domain Specific Languages (DSLs) expands the notion of "source language" in order to enable everyone to build easy-to-reason-about abstractions without the performance penalty. In this context, I will discuss compiler design and implementation techniques with examples.


For more information on the Broad Institute and MIA visit: http://www.broadinstitute.org/MIA

Copyright Broad Institute, 2016. All rights reserved.

Comments are disabled for this video.

to add this to Watch Later

Add to

Loading playlists...