Published March 6, 2025
| Version v0.7.0
Software
Open
TuringLang/AdvancedHMC.jl: v0.7.0
Creators
- Kai Xu
- Hong Ge1
- David Widmann2
- Tor Erlend Fjelde3
- Jaime RZ4
- Mohamed Tarek2
- Will Tebbutt
- Tim Reichelt5
- Seth Axen6
- Christopher Rackauckas7
- Andreas Noack8
- Vaibhav Kumar Dixit9
- Shravan Goswami
- Simeon David Schaub10
- Chris Elrod11
- Xianda Sun
- Théo Galy-Fajou12
- Saranjeet Kaur
- Penelope Yong
- Martin Trapp13
- Markus Hauru
- Kaan Öcal
- Julia TagBot
- Jitendra Suthar
- Ivan Yashchuk14
- Colin Coe15
- Chad Scherrer16
- Cameron Pfiffer17
- Andreas Scheidegger18
- 1. University of Cambridge
- 2. @PumasAI
- 3. @TuringLang
- 4. UCL
- 5. University of Oxford
- 6. @mlcolab
- 7. Massachusetts Institute of Technology
- 8. @JuliaHub
- 9. MIT
- 10. KIT
- 11. @Modular
- 12. PlantingSpace
- 13. Aalto University
- 14. @nvidia
- 15. @SolasAI
- 16. Redpoll
- 17. @dottxt-ai
- 18. Eawag: Swiss Federal Institute of Aquatic Science and Technology
Description
AdvancedHMC v0.7.0
Breaking changes
- Type piracies of
Base.rand
andBase.randn
for vectors of RNGs are removed: Replacerand(rngs::AbstractVector{<:Random.AbstractRNG})
withmap(rand, rngs)
,randn(rngs::AbstractVector{<:Random.AbstractRNG})
withmap(randn, rngs)
,rand(rngs::AbstractVector{<:Random.AbstractRNG}, T, n::Int)
(forn == length(rngs)
) withmap(Base.Fix2(rand, T), rngs)
, andrandn(rngs::AbstractVector{<:Random.AbstractRNG}, T, m::Int, n::Int)
(forn == length(rngs)
) with egreduce(hcat, map(rng -> randn(rng, T, m), rngs))
. - Type piracy
Base.isfinite(x::AbstractVecOrMat)
is removed: Switch toall(isfinite, x)
if you (possibly implicitly) relied on this definition - Abstract fields of
NesterovDualAveraging
,HMCDA
,SliceTS
, andMultinomialTS
are made concrete by adding type parameters: Update occurrences of these types (eg. in function signatures) if necessary - Definitions of
Base.rand
for metrics are removed: Use the (internal)AdvancedHMC.rand_momentum
function if you depend on this functionality and open an issue to further discuss the API
Merged pull requests:
- Initial
AbstractMCMC.step
should not sample (#366) (@torfjelde) - Revert "Initial
AbstractMCMC.step
should not sample" (#385) (@torfjelde) - Documentation and Turing Navigation CI improvement (#386) (@shravanngoswamii)
- Fix
rand
andrandn
type piracy (#387) (@devmotion) - Reduce allocations in
all
+any
and removeisfinite
type piracy (#388) (@devmotion) - Remove
DEBUG
constant (#389) (@devmotion) - FIx incorrect ratios of divergent transitions (#391) (@devmotion)
- Use
Random.default_rng()
instead ofRandom.GLOBAL_RNG
(#392) (@devmotion) - Use
Random.randexp
(#393) (@devmotion) - Add Aqua tests (#395) (@devmotion)
- Rename testset to avoid that it's overwritten by ReTest (#396) (@devmotion)
- Use Julia binaries matching the runner's architecture in CI (#397) (@devmotion)
- Reduce allocations of
pm_next!
(#398) (@devmotion) - Fix fields with abstract types (#399) (@devmotion)
- Remove
rand
overloads for sampling of momentum (#400) (@devmotion)
Closed issues:
- Step size initialization uses GLOBAL RNG instead of reproducible RNG from caller (#306)
- Weighted Log Likelihood #featurerequest (#317)
- In sample progress=true prints more than a progress-bar (#364)
- Progress message
ratio_divergent_transitions_during_adaption
bug (#373)
Files
TuringLang/AdvancedHMC.jl-v0.7.0.zip
Files
(500.0 kB)
Name | Size | Download all |
---|---|---|
md5:3a82cd12bb76696ae14e954aba6e6dbc
|
500.0 kB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/TuringLang/AdvancedHMC.jl/tree/v0.7.0 (URL)
Software
- Repository URL
- https://github.com/TuringLang/AdvancedHMC.jl