A central task in machine learning applications for quantum many-body systems is certainly the learning part. Loosely speaking, learning refers to a high-dimensional (and typically non-linear) optimization of the parameters entering a machine, in order to solve a certain task.

NetKet implements learning algorithms to find the ground-state of a given many-body quantum Hamiltonian , see references (1,2). The algorithms to perform this learning task, as implemented in NetKet, are described in the Learning the Ground State section.

In addition to finding the ground-state of a given Hamiltonian, there are other learning tasks that can be performed using the machines implemented in NetKet. For example, supervised learning with Born machines (3,4), or unsupervised learning to perform state-reconstruction (5).

The corresponding learning algorithms will be implemented in future versions of NetKet. See also our Challenges, if you would like to contribute to developments in these directions.


  1. Carleo, G., & Troyer, M. (2017). Solving the quantum many-body problem with artificial neural networks. Science, 355 602
  2. Carleo, G. (2017). Lecture notes for the Advanced School on Quantum Science and Quantum technology.
  3. Stoudenmire, M., & Schwab, D. (2016). Supervised Learning with Quantum-Inspired Tensor Networks. Advances in Neural Information Processing Systems 29, 4799
  4. Cheng, S., Chen J., & Wang L. (2017). Information Perspective to Probabilistic Modeling: Boltzmann Machines versus Born Machines.
  5. Torlai, G. et al. (2018). Neural-network quantum state tomography. Nature Physics doi:10.1038/s41567-018-0048-5