WIP: NetKet v3.0
Created by: gcarleo
This is a WIP pull request for version 3.0
Major goals for this release:
-
Remove all C++ code -
Improve documentation and tutorials -
Define and efficiently use models and samplers in JAX -
Define and use models in PyTorch -
GPU support
Breaking changes:
-
netket.optimizer
objects (includingSR
) are now constructed passing also an explicitnetket.machine.AbstractMachine
object for example
machine=nk.machine.Rbm(alpha=1,hilbert=hi)
opt=nk.optimizer.Sgd(machine,learning_rate=0.01)
-
log_val
andder_log
methods in machines derived fromnetket.machine.AbstractMachine
now accept only batched inputs (matrices) -
netket.utils.seed
is now innetket.random.seed
together with all other random methods
Main Remaining Tasks :
-
Rewrite graph.Lattice
in python #405 -
Make machine.Torch
compatible with the latest Jacobian Vector function #363 -
Add missing samplers in sampler.jax.*
#416 (closed) -
Make dispatching over optimal sampling/optimizer backends automatic #413 (closed) -
Write tutorials on the use of backends and GPU #410 (closed) -
MPS wave-functions in JAX #390 (closed)