Giter Site home page Giter Site logo

Comments (8)

xukai92 avatar xukai92 commented on July 28, 2024

The transformation we found last time that causes numerical overflow is exp()/log() for positive numbers. When we move in R towards a larger value, and call exp() to convert back to X, the numerical overflow occurs.

Do you think it is feasible we just use another transform for positive numbers? Say:

  • x -> x, for x >= 1
  • x -> log(x), for x < 1

This function is still continuous as both log(x) and x has the same derivative at x = 1, and will not cause numerical overflow. But I'm not sure if it will broken the leapfrog integration?

from turing.jl.

yebai avatar yebai commented on July 28, 2024

There are two variables that determines how far HMC travels in each dimension, namely the momentum variable and n_step*ϵ. It is probably better to first try introducing a pre-conditioning (diagonal) mass matrix and see whether it helps resolving the large step size issue.

from turing.jl.

xukai92 avatar xukai92 commented on July 28, 2024

Zoubin said it's probably better to run 10 chains of 100 samples instead of 1 chain of 1000 samples to compute the pre-conditioning matrix.

from turing.jl.

xukai92 avatar xukai92 commented on July 28, 2024

@yebai Are you working on this? If not I'd like to pick it up and work on it.

from turing.jl.

xukai92 avatar xukai92 commented on July 28, 2024

@yebai Page 47 of the CmdStan handbook refers the three mode of pre-cond in Stan as "unit", "diag" and "dense". I guess "unit" just means without pre-cond, "diag" is diagonal of the co-variance and "dense" is probably using full co-variance. Is my understanding correct?

from turing.jl.

yebai avatar yebai commented on July 28, 2024

yes, that's correct.

from turing.jl.

yebai avatar yebai commented on July 28, 2024

Let's do the dense preconditioning matrix in the future.

from turing.jl.

xukai92 avatar xukai92 commented on July 28, 2024

Closed in favour of #279

from turing.jl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.