All Projects → GiggleLiu → Quantumcircuitbornmachine

GiggleLiu / Quantumcircuitbornmachine

Licence: mit
gradient based training of Quantum Circuit Born Machine

Projects that are alternatives of or similar to Quantumcircuitbornmachine

Super Resolution
Tensorflow 2.x based implementation of EDSR, WDSR and SRGAN for single image super-resolution
Stars: ✭ 952 (+3073.33%)
Mutual labels:  jupyter-notebook
Ukbiobank deep pretrain
Pretrained neural networks for UK Biobank brain MRI images. SFCN, 3D-ResNet etc.
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Deep Chemometrics
Using deep learning approaches and convolutional neural networks (CNN) for spectroscopical data (deep chemometrics)
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Machinelearning fall2015
BUS 41204: Machine Learning
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Kaggle rsna 2nd place solution
Notebooks to accompany the blog posts about the 2nd place Kaggle RSNA winners: https://github.com/darraghdog/rsna
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Ensemble Machine Learning Cookbook
Ensemble Machine Learning Cookbook, published by Packt
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Doing Frequentist Statistics With Scipy
Repository for the PyData DC 2016 tutorial
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Sparkmagic
Jupyter magics and kernels for working with remote Spark clusters
Stars: ✭ 954 (+3080%)
Mutual labels:  jupyter-notebook
Deep Hedging
Deep Hedging Demo - An Example of Using Machine Learning for Derivative Pricing.
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Pytorch projects
A collection of Machine Learning Google_Colab_Notebooks
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Islplot
Library to plot integer sets and maps
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Neuromatch Academy
Preparatory Materials, Self-guided Learning, and Project Management for Neuromatch Academy activities
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Stock price trend fft
Stock price trend analysis using Fourier transform
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Python for ml
brief introduction to Python for machine learning
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Deep Learning Book Chapter Summaries
Attempting to make the Deep Learning Book easier to understand.
Stars: ✭ 952 (+3073.33%)
Mutual labels:  jupyter-notebook
Course
Slides and Jupyter notebooks
Stars: ✭ 29 (-3.33%)
Mutual labels:  jupyter-notebook
Datenguide Python
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Tech Terms
A repository of technical terms and definitions. As flashcards.
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook
Pytorch Course
JULYEDU PyTorch Course
Stars: ✭ 947 (+3056.67%)
Mutual labels:  jupyter-notebook
Mri Automap
Stars: ✭ 30 (+0%)
Mutual labels:  jupyter-notebook

Quantum Circuit Born Machine - the Demo

Gradient based training of Quantum Circuit Born Machine (QCBM)

Table of Contents

This project contains

  • notebooks/qcbm_gaussian.ipynb (or online), basic tutorial of training 6 bit Gaussian distribution using QCBM,
  • notebooks/qcbm_advanced.ipynb (or online), an advanced tutorial,
  • qcbm folder, a simple python project for productivity purpose.

Setup Guide

Set up your python environment

  • python 3.6
  • install python libraries

If you want to read notebooks only and do not want to use features like projectq, having numpy, scipy and matplotlib is enough. To access advanced features, you should install fire, projectq and climin.

$ conda install -c conda-forge pybind11
$ pip install -r requirements.txt

Clone this repository https://github.com/GiggleLiu/QuantumCircuitBornMachine.git to your local host.

Access online materials

  1. Sign up and sign in Google drive
  2. Connect Google drive with Google Colaboratory
    • right click on google drive page
    • More
    • Connect more apps
    • search "Colaboratory" and "CONNECT"
  3. You can make a copy of notebook to your google drive (File Menu) to save your edits.

Also, we have provided a Julia code here.

Run Bar-and-Stripes Demo on Your Localhost

$ ./program.py checkgrad  # check the correctness of gradient
$ ./program.py statgrad  # check gradient will not vanish as layer index increase.
$ ./program.py vcircuit  # visualize circuit using ProjectQ
$ ./program.py train   # train and save data.
$ ./program.py vpdf   # see bar stripe dataset PDF
$ ./program.py generate  # generate bar and stripes using trainned circuit.

Documentations

  • paper: Differentiable Learning of Quantum Circuit Born Machine (pdf), arXiv:1804.04168, Jin-Guo Liu, Lei Wang
  • slides: online

Citation

If you use this code for your research, please cite our paper:

@article{Liu2018,
  author = {Jin-Guo Liu and Lei Wang},
  title = {Differentiable Learning of Quantum Circuit Born Machine},
  year = {2018},
  eprint = {arXiv:1804.04168},
  url = {https://arxiv.org/abs/1804.04168}
}

Authors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].