Giter Club home page Giter Club logo

Comments (5)

jsspencer avatar jsspencer commented on July 19, 2024 1

Fluctuations in the energy from a single batch of that range for H4 are entirely normal (c.f. Fig 3 in our paper). Averaging this over 10k-50k iterations (without parameter updates) will give an excellent estimate of the energy. Remember to use a method to remove the autocorrelation to give a good estimate of the standard error in the energy (e.g. blocking, as we did).

Even noisy estimates can give very good energies over a long period. Given a fixed function, the estimate from averaging the energy of a batch of size 1 over N steps is equivalent to averaging over a batch of size N over 1 step!

from ferminet.

dpfau avatar dpfau commented on July 19, 2024

Is this in JAX or TF? Which optimizer - KFAC or ADAM? With KFAC (only available in TF) you'd expect it to be pretty well converged by 10^5. I'm less sure about the behavior with ADAM.

from ferminet.

jsspencer avatar jsspencer commented on July 19, 2024

Please provide full details of your calculation configuration, including the batch size. It is impossible to know what variance to expect without this information. Have you used any Monte Carlo algorithms before? You will need to average the energy over multiple iterations (we typically use 10k-50k) to get a good energy estimate. During training, a rolling mean is also helpful to check convergence.

For H4 you can compare to FCI calculations (and extrapolate them to the complete basis set limit) to get a good ground truth estimate.

from ferminet.

ley61 avatar ley61 commented on July 19, 2024

Myflag is "--system_type h4_circle --system_separation 3.2843 --system_angle 0.7853981633974483 --batch_size 1024 --iterations 100000 --multi_gpu" , and it's in Tf with Kfac optimizer.

I think my previous claim 0.1 Eh is wrong. The result for H4 is around about -2.013~-2.015Eh actually after 10^5 steps. But I think this accuracy is still not enough to determine the stable angle for H4 circle.

from ferminet.

ley61 avatar ley61 commented on July 19, 2024

Ok, I think I know what should I do: using bigger batch_size, take the mean energy of the last several steps to judge the convergence. Then I can stop training and average the energy over multiple iterations just like you adviced 10k-50k.

from ferminet.

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.