tensorflow / tensorflow/probability
monitor progress of lbfgs_minimize
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 4.4k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
I would like to monitor the intermediate states of the L-BFGS optimization. One way to do this is to attach an attribute to the loss function that is passed to it, e.g. loss_function.loss = [] and inside the definition of loss_function append to that every time it is called.
However, since it is called multiple times during the line search stage, this will record all of those, many of which result in an increasing loss.
Is there any way to only monitor every L-BFGS step, excluding the calls used for line search? Perhaps some internal flag that can be used, or an entirely different way?
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 tracing the lbfgs_minimize entry point and how its loss function is called during optimization and line search. Define a supported way to observe only L-BFGS steps, excluding line-search evaluations, and verify that intermediate states can be monitored without recording every loss-function call.
Written by the indexing model from the issue text.
Assessment
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100