Skip to main content

Machine learning and optimization of quantum optical circuits

Project description

Travis Codecov coverage Codacy grade Read the Docs PyPI - Python Version

The Quantum Machine Learning Toolbox (QMLT) is a Strawberry Fields application that simplifies the optimization of variational quantum circuits. Tasks for the QMLT range from variational eigensolvers and unitary learning to supervised and unsupervised machine learning with models based on a variational circuit.


The Quantum Machine Learning Toolbox supports:

  • The training of user-provided variational circuits

  • Automatic and numerical differentiation methods to compute gradients of circuit outputs

  • Optimization, supervised and unsupervised learning tasks

  • Regularization of circuit parameters

  • Logging of training results

  • Monitoring and visualization of training through matplotlib and TensorBoard

  • Saving and restoring trained models

  • Parallel computation/GPU usage for TensorFlow-based models

To get started, please see the online documentation.


Installation of SFOpenBoson, as well as all required Python packages mentioned above, can be done using pip:

$ python -m pip install qmlt

Code authors

Maria Schuld and Josh Izaac.

If you are doing research using Strawberry Fields, please cite our whitepaper and the QMLT documentation:

Nathan Killoran, Josh Izaac, Nicolás Quesada, Ville Bergholm, Matthew Amy, and Christian Weedbrook. Strawberry Fields: A Software Platform for Photonic Quantum Computing. arXiv, 2018. arXiv:1804.03159

Maria Schuld and Josh Izaac. Xanadu Quantum Machine Learning Toolbox documentation.


If you are having issues, please let us know by posting the issue on our Github issue tracker.

We also have a Strawberry Fields Slack channel - come join the discussion and chat with our Strawberry Fields team.


QMLT is free and open source, released under the Apache License, Version 2.0.

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

qmlt-0.7.1.tar.gz (43.9 kB view hashes)

Uploaded source

Built Distribution

qmlt-0.7.1-py3-none-any.whl (34.9 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page