Pyro: Add tutorial on enumeration

Created on 2 Sep 2018  路  1Comment  路  Source: pyro-ppl/pyro

As TraceEnum_ELBO gains functionality, we should describe how to use it.

Note that the gmm tutorial mentions enumeration, but I'd like a tutorial that focuses on the language aspects rather than a single model. We can point the the gmm tutorial and hmm example from the enumeration tutorial.

Previous discussions on forum.pyro.ai

Topics

  • [ ] restrictions on iarange dependency structure of TraceEnum_ELBO
  • [ ] guide-side vs model-side enumeration
  • [ ] restrictions on iarange nesting structure in model-side enumeration
  • [ ] replacing a problematic iarange with an irange (see this comment)
  • [ ] restrictions on model-guide dependencies
  • [ ] how to estimate computational complexity
  • [ ] using with cached_paths() for large graphs
  • others?
documentation

Most helpful comment

Chiming in my experience -- I have learned most of what I know about Pyro by working through the realistic examples (e.g. VAE, DMM, AIR, etc.); those are _great_, and that's perhaps the best way for newcomers to dive in. That being said, I had to go through http://pyro.ai/examples/tensor_shapes.html multiple times in order to understand the logic of enumeration, nested iarange, etc.

It would be great to have a formal guide/tutorial on the language aspects, perhaps using abstract graphical models that showcase typical examples of dependency structures (rather than concrete models) to facilitate the discussion.

Anyway, I love where Pyro is headed! it is so liberating to be able to just think about models and worry less about logsumexps!

>All comments

Chiming in my experience -- I have learned most of what I know about Pyro by working through the realistic examples (e.g. VAE, DMM, AIR, etc.); those are _great_, and that's perhaps the best way for newcomers to dive in. That being said, I had to go through http://pyro.ai/examples/tensor_shapes.html multiple times in order to understand the logic of enumeration, nested iarange, etc.

It would be great to have a formal guide/tutorial on the language aspects, perhaps using abstract graphical models that showcase typical examples of dependency structures (rather than concrete models) to facilitate the discussion.

Anyway, I love where Pyro is headed! it is so liberating to be able to just think about models and worry less about logsumexps!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

null-a picture null-a  路  4Comments

martinjankowiak picture martinjankowiak  路  3Comments

neerajprad picture neerajprad  路  5Comments

fritzo picture fritzo  路  5Comments

tristandeleu picture tristandeleu  路  3Comments