Skip to content

Conversation

@dustinvtran
Copy link
Member

@dustinvtran dustinvtran commented Jan 16, 2018

This PR is a redesign of Edward for version 2.0. It adds/changes the following:

  1. Core function for manipulating continuations: call_with_manipulate.
  2. Inference algorithms are now pure functions (up to your usual TF side effects).

Details and features of design forthcoming.

@csuter, @davmre, @derifatives, @jvdillon, @matthewdhoffman, @mattjj

Breaking changes to API

  • Model and variational programs are callables.
  • Inference classes only have a functional equivalent and are Tensor-in Tensor-out.
  • All edward.criticisms is removed.
  • All edward.util is removed.
  • All custom Edward random variables are removed: DirichletProcess, Empirical, ParamMixture, PointMass.
  • rv.value() is renamed to rv.value.

todos

  • Break up into smaller, self-contained PRs.
  • Refactor all inferences (excluding Monte Carlo) to support traces.
  • Refactor Monte Carlo (waiting on @jvdillon for go/hmc-new-interface)
  • Refactor inferences/conjugacy/ (waiting on @matthewdhoffman, @mattjj)
  • Add programmable docstrings.
  • Update criticisms module.
  • Update util module.
  • Update tests/. (only tests/inferences/ left)
  • Update examples/, docs/, notebooks/.

@dustinvtran dustinvtran force-pushed the feature/2.0 branch 30 times, most recently from 5039ff2 to bfa81f7 Compare January 19, 2018 02:38
@dustinvtran dustinvtran force-pushed the feature/2.0 branch 4 times, most recently from 93fc836 to dcdaeb3 Compare March 2, 2018 00:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants