Skip to main content

Optimal coarse graining transformations with RSMI neural estimation

Project description

RSMI-NE

License

rsmine is a Python package, implemented using Tensorflow, for optimising coarse-graining rules for real-space renormalisation group by maximising real-space mutual information.

Overview

rsmine employs state-of-the-art results for estimating mutual information (MI) by maximising its lower-bounds parametrised by deep neural networks [Poole et al. (2019), arXiv:1905.06922v1]. This allows it to overcome the severe limitations of the initial proposals for constructing real-space RG transformations by MI-maximization in [M. Koch-Janusz and Z. Ringel, Nature Phys. 14, 578-582 (2018), P.M. Lenggenhager et al., Phys.Rev. X 10, 011037 (2020)], and to reconstruct the relevant operators of the theory, as detailed in the manuscripts accompanying this code [D.E. Gökmen, Z. Ringel, S.D. Huber and M. Koch-Janusz, Phys. Rev. Lett. 127, 240603 (2021) and Phys. Rev. E 104, 064106 (2021)].

System requirements

Hardware requirements

rsmine can be run on a standard personal computer. It has been tested on the following setup (without GPU):

  • CPU: 2.3 GHz Quad-Core Intel Core i5, Memory: 8 GB 2133 MHz LPDDR3

Software requirements

This package has been tested on the following systems with Python 3.8.5:

  • macOS:
    • Catalina (10.15)
    • Big Sur (11.1)
    • Monterey (12.5.1)

rsmine mainly depends on the following Python packages:

  • matplotlib
  • numpy
  • pandas
  • scipy
  • scikit-learn
  • tensorflow 2.0
  • tensorflow-probability

Installation

Clone RSMI-NE from GitHub

git clone https://github.com/RSMI-NE/RSMI-NE
cd RSMI-NE

and install the rsmine package via pip in editable mode

pip install -e .

or create a virtual environment and install there:

./install.sh

Getting started

The package can be used by importing the rsmine module and its submodules:

import rsmine

import rsmine.coarsegrainer.build_dataset as ds
import rsmine.coarsegrainer.cg_optimisers as cg_opt

Jupyter notebooks demonstrating the basic usage in simple examples are provided in https://github.com/RSMI-NE/RSMI-NE/tree/main/examples.

Citation

If you use RSMI-NE in your work, please cite our publications Phys. Rev. Lett. 127, 240603 (2021) and Phys. Rev. E 104, 064106 (2021):

@article{PhysRevLett.127.240603,
  title = {Statistical Physics through the Lens of Real-Space Mutual Information},
  author = {G\"okmen, Doruk Efe and Ringel, Zohar and Huber, Sebastian D. and Koch-Janusz, Maciej},
  journal = {Phys. Rev. Lett.},
  volume = {127},
  issue = {24},
  pages = {240603},
  numpages = {7},
  year = {2021},
  month = {Dec},
  publisher = {American Physical Society},
  doi = {10.1103/PhysRevLett.127.240603},
  url = {https://link.aps.org/doi/10.1103/PhysRevLett.127.240603}
}

@article{PhysRevE.104.064106,
  title = {Symmetries and phase diagrams with real-space mutual information neural estimation},
  author = {G\"okmen, Doruk Efe and Ringel, Zohar and Huber, Sebastian D. and Koch-Janusz, Maciej},
  journal = {Phys. Rev. E},
  volume = {104},
  issue = {6},
  pages = {064106},
  numpages = {17},
  year = {2021},
  month = {Dec},
  publisher = {American Physical Society},
  doi = {10.1103/PhysRevE.104.064106},
  url = {https://link.aps.org/doi/10.1103/PhysRevE.104.064106}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rsmine-0.3.0a1.tar.gz (38.4 kB view details)

Uploaded Source

Built Distribution

rsmine-0.3.0a1-py3-none-any.whl (42.6 kB view details)

Uploaded Python 3

File details

Details for the file rsmine-0.3.0a1.tar.gz.

File metadata

  • Download URL: rsmine-0.3.0a1.tar.gz
  • Upload date:
  • Size: 38.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for rsmine-0.3.0a1.tar.gz
Algorithm Hash digest
SHA256 cb3cc500564e630299c1732e75bd7aae134d043cd40c48b9d0bffd3642085b78
MD5 edaaecf2776080e81a56c53e5f97f69e
BLAKE2b-256 184cc76c15a12f968383c3e283b31d05ab133c38b3aab4d860f5a142181fe1e4

See more details on using hashes here.

File details

Details for the file rsmine-0.3.0a1-py3-none-any.whl.

File metadata

  • Download URL: rsmine-0.3.0a1-py3-none-any.whl
  • Upload date:
  • Size: 42.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for rsmine-0.3.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 20aa21bd6e0caa9351383f9fe9f2c61935c4fcc51fabf298f5ff2979fe538cd4
MD5 325fdcf7fd07063e84ac6e9f3a32e71e
BLAKE2b-256 2d68aa1fd6a0ad739c06aaece77ba502c3be9b3cf735b1828e09b17c1930ba7c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page