Quantum machine learning is an emerging interdisciplinary research area at the intersection of quantum physics and machine learning. The most common use of the term refers to machine learning algorithms for the analysis of classical data executed on a quantum computer. While machine learning algorithms are used to compute immense quantities of data, quantum machine learning increases such capabilities intelligently, by creating opportunities to conduct analysis on quantum states and systems. This includes hybrid methods that involve both classical and quantum processing, where computationally difficult subroutines are outsourced to a quantum device. These routines can be more complex in nature and executed faster with the assistance of quantum devices. Furthermore, quantum algorithms can be used to analyze quantum states instead of classical data. Beyond quantum computing, the term "quantum machine learning" is often associated with machine learning methods applied to data generated from quantum experiments, such as learning quantum phase transitions or creating new quantum experiments. Quantum machine learning also extends to a branch of research that explores methodological and structural similarities between certain physical systems and learning systems, in particular neural networks. For example, some mathematical and numerical techniques from quantum physics are applicable to classical deep learning and vice versa. Finally, researchers investigate more abstract notions of learning theory with respect to quantum information, sometimes referred to as "quantum learning theory".
Machine learning with quantum computers
Quantum-enhanced machine learning refers to quantum algorithms
that solve tasks in machine learning, thereby improving and often
expediting classical machine learning techniques. Such algorithms
typically require one to encode the given classical data set into a
quantum computer to make it accessible for quantum information
processing. Subsequently, quantum information processing routines are
applied and the result of the quantum computation is read out by
measuring the quantum system. For example, the outcome of the
measurement of a qubit reveals the result of a binary classification
task. While many proposals of quantum machine learning algorithms are
still purely theoretical and require a full-scale universal quantum computer to be tested, others have been implemented on small-scale or special purpose quantum devices.
Linear algebra simulation with quantum amplitudes
A number of quantum algorithms for machine learning are based on the idea of amplitude encoding, that is, to associate the amplitudes of a quantum state with the inputs and outputs of computations. Since a state of qubits is described by
complex amplitudes, this information encoding can allow for an
exponentially compact representation. Intuitively, this corresponds to
associating a discrete probability distribution over binary random
variables with a classical vector. The goal of algorithms based on
amplitude encoding is to formulate quantum algorithms whose resources
grow polynomially in the number of qubits , which amounts to a logarithmic growth in the number of amplitudes and thereby the dimension of the input.
Many quantum machine learning algorithms in this category are based on variations of the quantum algorithm for linear systems of equations
(colloquially called HHL, after the paper's authors) which, under
specific conditions, performs a matrix inversion using an amount of
physical resources growing only logarithmically in the dimensions of the
matrix. One of these conditions is that a Hamiltonian which entrywise
corresponds to the matrix can be simulated efficiently, which is known
to be possible if the matrix is sparse or low rank. For reference, any known classical algorithm for matrix inversion requires a number of operations that grows at least quadratically in the dimension of the matrix.
Quantum matrix inversion can be applied to machine learning methods in which the training reduces to solving a linear system of equations, for example in least-squares linear regression, the least-squares version of support vector machines, and Gaussian processes.
A crucial bottleneck of methods that simulate linear algebra
computations with the amplitudes of quantum states is state preparation,
which often requires one to initialise a quantum system in a state
whose amplitudes reflect the features of the entire dataset. Although
efficient methods for state preparation are known for specific cases, this step easily hides the complexity of the task.
Quantum machine learning algorithms based on Grover search
Another approach to improving classical machine learning with quantum information processing uses amplitude amplification methods based on Grover's search
algorithm, which has been shown to solve unstructured search problems
with a quadratic speedup compared to classical algorithms. These quantum
routines can be employed for learning algorithms that translate into an
unstructured search task, as can be done, for instance, in the case of
the k-medians and the k-nearest neighbors algorithms. Another application is a quadratic speedup in the training of perceptron.
Amplitude amplification is often combined with quantum walks to achieve the same quadratic speedup. Quantum walks have been proposed to enhance Google's PageRank algorithm as well as the performance of reinforcement learning agents in the projective simulation framework.
Quantum-enhanced reinforcement learning
Reinforcement learning is a branch of machine learning distinct from supervised and unsupervised learning, which also admits quantum enhancements.
In quantum-enhanced reinforcement learning, a quantum agent interacts
with a classical environment and occasionally receives rewards for its
actions, which allows the agent to adapt its behavior—in other words, to
learn what to do in order to gain more rewards. In some situations,
either because of the quantum processing capability of the agent, or due to the possibility to probe the environment in superpositions, a quantum speedup may be achieved. Implementations of these kinds of protocols in superconducting circuits and in systems of trapped ions have been proposed.
Quantum annealing
Quantum annealing
is an optimization technique used to determine the local minima and
maxima of a function over a given set of candidate functions. This is a
method of discretizing a function with many local minima or maxima in
order to determine the observables of the function. The process can be
distinguished from Simulated annealing by the Quantum tunneling
process, by which particles tunnel through kinetic or potential
barriers from a high state to a low state. Quantum annealing starts from
a superposition of all possible states of a system, weighted equally.
Then the time-dependent Schrödinger equation
guides the time evolution of the system, serving to affect the
amplitude of each state as time increases. Eventually, the ground state
can be reached to yield the instantaneous Hamiltonian of the system.
Quantum sampling techniques
Sampling
from high-dimensional probability distributions is at the core of a
wide spectrum of computational techniques with important applications
across science, engineering, and society. Examples include deep learning, probabilistic programming, and other machine learning and artificial intelligence applications.
A computationally hard problem, which is key for some relevant
machine learning tasks, is the estimation of averages over probabilistic
models defined in terms of a Boltzmann distribution.
Sampling from generic probabilistic models is hard: algorithms relying
heavily on sampling are expected to remain intractable no matter how
large and powerful classical computing resources become. Even though quantum annealers,
like those produced by D-Wave Systems, were designed for challenging
combinatorial optimization problems, it has been recently recognized as a
potential candidate to speed up computations that rely on sampling by
exploiting quantum effects.
Some research groups have recently explored the use of quantum annealing hardware for training Boltzmann machines and deep neural networks.
The standard approach to training Boltzmann machines relies on the
computation of certain averages that can be estimated by standard sampling techniques, such as Markov chain Monte Carlo
algorithms. Another possibility is to rely on a physical process, like
quantum annealing, that naturally generates samples from a Boltzmann
distribution. The objective is to find the optimal control parameters
that best represent the empirical distribution of a given dataset.
The D-Wave 2X system hosted at NASA Ames Research Center has been
recently used for the learning of a special class of restricted
Boltzmann machines that can serve as a building block for deep learning
architectures.
Complementary work that appeared roughly simultaneously showed that
quantum annealing can be used for supervised learning in classification
tasks.
The same device was later used to train a fully connected Boltzmann
machine to generate, reconstruct, and classify down-scaled,
low-resolution handwritten digits, among other synthetic datasets.
In both cases, the models trained by quantum annealing had a similar or
better performance in terms of quality. The ultimate question that
drives this endeavour is whether there is quantum speedup in sampling
applications. Experience with the use of quantum annealers for
combinatorial optimization suggests the answer is not straightforward.
Inspired by the success of Boltzmann machines based on classical
Boltzmann distribution, a new machine learning approach based on quantum
Boltzmann distribution of a transverse-field Ising Hamiltonian was
recently proposed.
Due to the non-commutative nature of quantum mechanics, the training
process of the quantum Boltzmann machine can become nontrivial. This
problem was, to some extent, circumvented by introducing bounds on the
quantum probabilities, allowing the authors to train the model
efficiently by sampling. It is possible that a specific type of quantum
Boltzmann machine has been trained in the D-Wave 2X by using a learning
rule analogous to that of classical Boltzmann machines.
Quantum annealing
is not the only technology for sampling. In a prepare-and-measure
scenario, a universal quantum computer prepares a thermal state, which
is then sampled by measurements. This can reduce the time required to
train a deep restricted Boltzmann machine, and provide a richer and more
comprehensive framework for deep learning than classical computing.
The same quantum methods also permit efficient training of full
Boltzmann machines and multi-layer, fully connected models and do not
have well-known classical counterparts. Relying on an efficient thermal
state preparation protocol starting from an arbitrary state,
quantum-enhanced Markov logic networks exploit the symmetries and the locality structure of the probabilistic graphical model generated by a first-order logic template.
This provides an exponential reduction in computational complexity in
probabilistic inference, and, while the protocol relies on a universal
quantum computer, under mild assumptions it can be embedded on
contemporary quantum annealing hardware.
Quantum neural networks
Quantum analogues or generalizations of classical neural nets are often referred to as quantum neural networks.
The term is claimed by a wide range of approaches, including the
implementation and extension of neural networks using photons, layered
variational circuits or quantum Ising-type models. Quantum neural
networks are often defined as an expansion on Deutsch's model of a
quantum computational network.
Within this model, nonlinear and irreversible gates, dissimilar to the
Hamiltonian operator, are deployed to speculate the given data set. Such gates make certain phases unable to be observed and generate specific oscillations. Quantum neural networks apply the principals quantum information and quantum computation to classical neurocomputing.
Current research shows that QNN can exponentially increase the amount
of computing power and the degrees of freedom for a computer, which is
limited for a classical computer to its size. A quantum neural network has computational capabilities to decrease the number of steps, qubits used, and computation time.
The wave function to quantum mechanics is the neuron for Neural
networks. To test quantum applications in a neural network, quantum dot
molecules are deposited on a substrate of GaAs or similar to record how
they communicate with one another. Each quantum dot can be referred as
an island of electric activity, and when such dots are close enough
(approximately 10±20 nm)
electrons can tunnel underneath the islands. An even distribution
across the substrate in sets of two create dipoles and ultimately two
spin states, up or down. These states are commonly known as qubits with
corresponding states of |0> and |1> in Dirac notation.
Hidden Quantum Markov Models
Hidden Quantum Markov Models (HQMMs) are a quantum-enhanced version of classical Hidden Markov Models (HMMs), which are typically used to model sequential data in various fields like robotics and natural language processing.
Unlike the approach taken by other quantum-enhanced machine learning
algorithms, HQMMs can be viewed as models inspired by quantum mechanics
that can be run on classical computers as well. Where classical HMMs use probability vectors to represent hidden 'belief' states, HQMMs use the quantum analogue: density matrices.
Recent work has shown that these models can be successfully learned by
maximizing the log-likelihood of the given data via classical
optimization, and there is some empirical evidence that these models can
better model sequential data compared to classical HMMs in practice,
although further work is needed to determine exactly when and how these
benefits are derived. Additionally, since classical HMMs are a particular kind of Bayes net, an exciting aspect of HQMMs is that the techniques used show how we can perform quantum-analogous Bayesian inference, which should allow for the general construction of the quantum versions of probabilistic graphical models.
Fully quantum machine learning
In
the most general case of quantum machine learning, both the learning
device and the system under study, as well as their interaction, are
fully quantum. This section gives a few examples of results on this
topic.
One class of problem that can benefit from the fully quantum
approach is that of 'learning' unknown quantum states, processes or
measurements, in the sense that one can subsequently reproduce them on
another quantum system. For example, one may wish to learn a measurement
that discriminates between two coherent states, given not a classical
description of the states to be discriminated, but instead a set of
example quantum systems prepared in these states. The naive approach
would be to first extract a classical description of the states and then
implement an ideal discriminating measurement based on this
information. This would only require classical learning. However, one
can show that a fully quantum approach is strictly superior in this
case. (This also relates to work on quantum pattern matching.) The problem of learning unitary transformations can be approached in a similar way.
Going beyond the specific problem of learning states and transformations, the task of clustering
also admits a fully quantum version, wherein both the oracle which
returns the distance between data-points and the information processing
device which runs the algorithm are quantum.
Finally, a general framework spanning supervised, unsupervised and
reinforcement learning in the fully quantum setting was introduced in,
where it was also shown that the possibility of probing the environment
in superpositions permits a quantum speedup in reinforcement learning.
Classical learning applied to quantum problems
The
term quantum machine learning is also used for approaches that apply
classical methods of machine learning to the study of quantum systems. A
prime example is the use of classical learning techniques to process
large amounts of experimental or calculated (for example by solving Schrodinger's equation data in order to characterize an unknown quantum system (for instance in the context of quantum information theory
and for the development of quantum technologies or computational
materials design), but there are also more exotic applications.
Noisy data
The
ability to experimentally control and prepare increasingly complex
quantum systems brings with it a growing need to turn large and noisy
data sets into meaningful information. This is a problem that has
already been studied extensively in the classical setting, and
consequently, many existing machine learning techniques can be naturally
adapted to more efficiently address experimentally relevant problems.
For example, Bayesian methods and concepts of algorithmic learning can be fruitfully applied to tackle quantum state classification, Hamiltonian learning, and the characterization of an unknown unitary transformation. Other problems that have been addressed with this approach are given in the following list:
- Identifying an accurate model for the dynamics of a quantum system, through the reconstruction of the Hamiltonian;
- Extracting information on unknown states;
- Learning unknown unitary transformations and measurements;
- Engineering of quantum gates from qubit networks with pairwise interactions, using time dependent or independent Hamiltonians.
Calculated and noise-free data
Quantum
machine learning can also be applied to dramatically accelerate the
prediction of quantum properties of molecules and materials. This can be helpful for the computational design of new molecules or materials. Some examples include
- Interpolating interatomic potentials;
- Inferring molecular atomization energies throughout chemical compound space;
- Accurate potential energy surfaces with restricted Boltzmann machines;
- Automatic generation of new quantum experiments;
- Solving the many-body, static and time-dependent Schrödinger equation;
- Identifying phase transitions from entanglement spectra;
- Generating adaptive feedback schemes for quantum metrology.
Variational Circuits
Variational circuits are a family of algorithms which utilize training based on circuit parameters and an objective function.
Variational circuits are generally composed of a classical device
communicating input parameters (random or pre-trained parameters) into a
quantum device, along with a classical Mathematical optimization
function. These circuits are very heavily dependent on the architecture
of the proposed quantum device because parameter adjustments are
adjusted based solely on the classical components within the device.
Though the application is considerably infantile in the field of
quantum machine learning, it has incredibly high promise for more
efficiently generating efficient optimization functions.
Quantum learning theory
Quantum
learning theory pursues a mathematical analysis of the quantum
generalizations of classical learning models and of the possible
speed-ups or other improvements that they may provide. The framework is
very similar to that of classical computational learning theory,
but the learner in this case is a quantum information processing
device, while the data may be either classical or quantum. Quantum
learning theory should be contrasted with the quantum-enhanced machine
learning discussed above, where the goal was to consider specific problems
and to use quantum protocols to improve the time complexity of
classical algorithms for these problems. Although quantum learning
theory is still under development, partial results in this direction
have been obtained.
The starting point in learning theory is typically a concept class, a set of possible concepts. Usually a concept is a function on some domain, such as . For example, the concept class could be the set of disjunctive normal form (DNF) formulas on n bits or the set of Boolean circuits of some constant depth. The goal for the learner is to learn
(exactly or approximately) an unknown target concept from this
concept class. The learner may be actively interacting with the target
concept, or passively receiving samples from it.
In active learning, a learner can make membership queries to the target concept c, asking for its value c(x) on inputs x chosen by the learner. The learner then has to reconstruct the exact target concept, with high probability. In the model of quantum exact learning,
the learner can make membership queries in quantum superposition. If
the complexity of the learner is measured by the number of membership
queries it makes, then quantum exact learners can be polynomially more
efficient than classical learners for some concept classes, but not
more. If complexity is measured by the amount of time
the learner uses, then there are concept classes that can be learned efficiently by
quantum learners but not by classical learners (under plausible complexity-theoretic assumptions).
A natural model of passive learning is Valiant's probably approximately correct (PAC) learning. Here the learner receives random examples (x,c(x)), where x is distributed according to some unknown distribution D. The learner's goal is to output a hypothesis function h such that h(x)=c(x) with high probability when x is drawn according to D. The learner has to be able to produce such an 'approximately correct' h for every D and every target concept c in its concept class.
We can consider replacing the random examples by potentially more powerful quantum examples .
In the PAC model (and the related agnostic model), this doesn't
significantly reduce the number of examples needed: for every concept
class, classical and
quantum sample complexity are the same up to constant factors. However, for learning under some
fixed distribution D, quantum examples can be very helpful, for example for learning DNF under
the uniform distribution. When considering time
complexity, there exist concept classes that can be PAC-learned
efficiently by quantum learners, even from classical examples, but not
by classical learners (again, under plausible complexity-theoretic
assumptions).
This passive learning type is also the most common scheme in
supervised learning: a learning algorithm typically takes the training
examples fixed, without the ability to query the label of unlabelled
examples. Outputting a hypothesis h is a step of induction.
Classically, an inductive model splits into a training and an
application phase: the model parameters are estimated in the training
phase, and the learned model is applied an arbitrary many times in the
application phase. In the asymptotic limit of the number of
applications, this splitting of phases is also present with quantum
resources.
Implementations and experiments
The earliest experiments were conducted using the adiabatic D-Wave
quantum computer, for instance, to detect cars in digital images using
regularized boosting with a nonconvex objective function in a
demonstration in 2009.
Many experiments followed on the same architecture, and leading tech
companies have shown interest in the potential of quantum machine
learning for future technological implementations. In 2013, Google
Research, NASA, and the Universities Space Research Association launched the Quantum Artificial Intelligence Lab which explores the use of the adiabatic D-Wave quantum computer.
A more recent example trained a probabilistic generative models with
arbitrary pairwise connectivity, showing that their model is capable of
generating handwritten digits as well as reconstructing noisy images of
bars and stripes and handwritten digits.
Using a different annealing technology based on nuclear magnetic resonance (NMR), a quantum Hopfield network
was implemented in 2009 that mapped the input data and memorized data
to Hamiltonians, allowing the use of adiabatic quantum computation. NMR technology also enables universal quantum computing,
and it was used for the first experimental implementation of a quantum
support vector machine to distinguish hand written number ‘6’ and ‘9’ on
a liquid-state quantum computer in 2015.
The training data involved the pre-processing of the image which maps
them to normalized 2-dimensional vectors to represent the images as the
states of a qubit. The two entries of the vector are the vertical and
horizontal ratio of the pixel intensity of the image. Once the vectors
are defined on the feature space, the quantum support vector machine was
implemented to classify the unknown input vector. The readout avoids
costly quantum tomography by reading out the final state in terms of direction (up/down) of the NMR signal.
Photonic implementations are attracting more attention,
not the least because they do not require extensive cooling.
Simultaneous spoken digit and speaker recognition and chaotic
time-series prediction were demonstrated at data rates beyond 1 gigabyte
per second in 2013.
Using non-linear photonics to implement an all-optical linear
classifier, a perceptron model was capable of learning the
classification boundary iteratively from training data through a
feedback rule.
A core building block in many learning algorithms is to calculate the
distance between two vectors: this was first experimentally demonstrated
for up to eight dimensions using entangled qubits in a photonic quantum
computer in 2015.
Recently, based on a neuromimetic approach, a novel ingredient
has been added to the field of quantum machine learning, in the form of a
so-called quantum memristor, a quantized model of the standard
classical memristor.
This device can be constructed by means of a tunable resistor, weak
measurements on the system, and a classical feed-forward mechanism. An
implementation of a quantum memristor in superconducting circuits has
been proposed, and an experiment with quantum dots performed.
A quantum memristor would implement nonlinear interactions in the
quantum dynamics which would aid the search for a fully functional quantum neural network.
Since 2016, IBM has launced on online cloud-based platform for quantum software developers, called the IBM Q Experience.
This platform consists of several fully operational quantum processors
accessible via the IBM Web API. In doing so, the company is encouraging
software developers to pursue new algorithms through a development
environment with quantum capabilities. New architectures are being
explored on an experimental basis, up to 32 qbits, utilizing both
trapped-ion and superconductive quantum computing methods.