Skip to content
This repository has been archived by the owner on Feb 8, 2021. It is now read-only.

A simple neural network structure to classify many-body localized (MBL) and thermalized phases

License

Notifications You must be signed in to change notification settings

empyriumz/Supervised-learning-of-Many-Body-Localization

Repository files navigation

Work in progress

Supervised-learning-of-Many-Body-Localization

A simple neural network structure to classify many-body localized and thermalized phases using entanglement spectrum as the input data. This project is inspired by a great machine learning review paper for physics by Mehta et. al and the accompanying jupyter notebooks.

The network can take either entanglement spectrum or the wavefunctions (squared) as the input. Accordingly the structure of the network (# of layers, neurons etc.) will change accordingly to achieve the best performance. The optimal hyper-parameters can be estimated using Bayesian optimization or Hyperband method provided in Keras Tuner.

With moderate amount of data (O(10^4) entries), the classifier achieves nearly 100% accuracy on the test set.

The example Hamiltonian comes from this paper, where the system is in the MBL phase if the interaction is weak (J/t<<1) and in ETH phase otherwise.


The strategy for establishing the phase diagram as a function of interaction strength j is:

  • first train the model (a binary classifier) using the data deep in the two phases, say j=0.01 and 5.0 respectively.
  • evaluate the model using different j to see its accuracy
  • the phase boundary happens where the classifier fails (around %50 accuracy)

Requirement

Python 3.5+

NumPy

Tensorflow (using Keras API) and scikit-learn

Keras Tuner for hyper-parameter tuning Quspin (Powerful numerical exact-diagonalization package for 1D systems)

About

A simple neural network structure to classify many-body localized (MBL) and thermalized phases

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published