https://github.com/GPflow/GPflow
Revision b41d4f38436e4a090c940dbd3bc7e2afd39a283e authored by st-- on 23 April 2020, 18:17:42 UTC, committed by GitHub on 23 April 2020, 18:17:42 UTC
Previously, GPflow's NaturalGradient optimizer would call the loss_function once for each (q_mu, q_sqrt) set in the var_list. This is a light refactor that separates out applying the natural gradient step from computing the gradients (`_natgrad_apply_gradients`), and changes `_natgrad_steps` to only evaluate the loss function once, computing the gradients for all (q_mu, q_sqrt) tuples passed in the var_list. Other changes: - The no-longer-used `_natgrad_step` method got removed. - NaturalGradient now takes a `xi_transform` argument that is used for all parameter sets without explicitly specified xi transform (i.e. tuples rather than triplets). - XiTransform has been changed to have staticmethods. None of this should affect any downstream code; this PR is backwards-compatible.
1 parent c7550ce
Tip revision: b41d4f38436e4a090c940dbd3bc7e2afd39a283e authored by st-- on 23 April 2020, 18:17:42 UTC
refactor natgrads to be more efficient (#1443)
refactor natgrads to be more efficient (#1443)
Tip revision: b41d4f3
File | Mode | Size |
---|---|---|
.circleci | ||
.github | ||
doc | ||
gpflow | ||
tests | ||
.coveragerc | -rw-r--r-- | 283 bytes |
.coveralls.yml | -rw-r--r-- | 23 bytes |
.gitignore | -rw-r--r-- | 858 bytes |
.pylintrc | -rw-r--r-- | 14.6 KB |
GLOSSARY.md | -rw-r--r-- | 1.4 KB |
LICENSE | -rw-r--r-- | 11.1 KB |
MANIFEST.in | -rw-r--r-- | 182 bytes |
Makefile | -rw-r--r-- | 682 bytes |
README.md | -rw-r--r-- | 9.6 KB |
RELEASE.md | -rw-r--r-- | 6.9 KB |
VERSION | -rw-r--r-- | 6 bytes |
codecov.yml | -rw-r--r-- | 274 bytes |
contributing.md | -rw-r--r-- | 7.3 KB |
mypy.ini | -rw-r--r-- | 37 bytes |
notebooks | l--------- | 21 bytes |
setup.py | -rw-r--r-- | 3.8 KB |
tests_requirements.txt | -rw-r--r-- | 232 bytes |
Computing file changes ...