https://github.com/congzlwag/unsupgenmodbymps

code for Unsupervised Generative Modeling using Matrix Product States

https://github.com/congzlwag/unsupgenmodbymps

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.0%) to scientific vocabulary
Last synced: 7 months ago · JSON representation

Repository

code for Unsupervised Generative Modeling using Matrix Product States

Basic Info
Statistics
  • Stars: 36
  • Watchers: 3
  • Forks: 12
  • Open Issues: 1
  • Releases: 0
Created over 8 years ago · Last pushed almost 3 years ago

https://github.com/congzlwag/UnsupGenModbyMPS/blob/master/

# Unsupervised Generative Modeling using Matrix Product States
There are two versions of code: Python version (MPScumulant.py) and Matlab version (in the matlab_code directory).

## Python version:
### Class files

* Class `MPS_c` is defined in `MPScumulant.py`.

With a cache for left environments and right environments, it is efficient in DMRG-2.

There's a problem in `numpy.linalg.svd`. In Linux and OS X environments, sometimes we get `numpy.linalg.linalg.LinAlgError: SVD did not converge`, but don't worry, this is rare, only under particular circumstances. On the other hand, if we transfer the problematic matrix to a Windows environment (with Intel MKL), SVD can be carried out. We ascribe this problem to the numerical implementation of SVD in the libraries such as OpenBLAS and LAPACK because mathematically SVD can always be done. **If you have any idea about this issue, any advice will be appreciated!**

### Test files

* In `./BStest` there's an easily repeated experiment, insensitive to most of the hyperparameters.

* `./MNIST` consists data and code for the 1000 images experiment, including training and reconstruction.

## Matlab version:
### Class file
* Class MPS is defined in `matlab_code/MPS.m`.
It implements the same algorithm as the Python version.
### Demo file:
* Simply run `matlab_code/demo_mnist.m`

## Relevant e-print & Publication

[**Unsupervised Generative Modeling Using Matrix Product States** by *Zhao-Yu Han, Jun Wang, Heng Fan, Lei Wang, Pan Zhang*](https://arxiv.org/abs/1709.01662)

Owner

  • Name: congzlwag
  • Login: congzlwag
  • Kind: user

GitHub Events

Total
  • Watch event: 6
  • Fork event: 1
Last Year
  • Watch event: 6
  • Fork event: 1