tensorflow / tensorflow/probability
Which objective functions does TensorFlow Probability provide?
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 4.4k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
To train a probabilistic neural network (PNN), the ELBO loss is usually used. The ELBO loss is composed of the KL loss between the prior and the variational posterior distributions, for each layer, and the likelihood loss, which currently needs to be implemented by the programmer. However, it may be handy to have some default implementations of this likelihood loss (similarly to the TF's or Keras' implementations of the cross-entropy, MSE, etc., losses).
Am I missing something? Why didn't you provide the default implementations of this loss?
However, note that I've already implemented this likelihood loss (that is part of the ELBO) as a custom loss, but I think it would be nice if TFP provided a default implementation of this loss. You can actually train a PNN with the cross-entropy loss, but the PNN does not learn.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing ELBO likelihood-loss discussion and comparing it with TensorFlow and Keras implementations of cross-entropy and MSE. Determine which default likelihood objectives TensorFlow Probability should provide and how they would support probabilistic neural-network training; the issue does not name files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- keras, tensorflow
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100