CLASSIFICATION BY MEANS OF NEURAL QUANTUM NETWORKS

DE602019066815T2Active Publication Date: 2025-03-05GOOGLE LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE602019066815
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2018-01-18
Filing Date
2019-01-16
Publication Date
2025-03-05
Estimated Expiration
2039-01-16

AI Technical Summary

Technical Problem

Existing methods for classification on quantum computing systems require specialized quantum versions of classical artificial neural networks and are limited to classical input states, lacking the ability to effectively classify quantum states.

Method used

A classification method using a quantum computing system that employs parameterized quantum gates to learn and classify input states, including both classical and quantum states, without requiring specialized quantum neural networks, and can be implemented on near-term quantum computing systems.

Benefits of technology

Enables efficient classification of both classical and quantum states, facilitating applications in quantum metrology and other fields, while being suitable for near-term quantum processors.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader
Need to check novelty before this filing date? Find Prior Art

Description

Field

[0001] This disclosure relates to classification methods that can be implemented on quantum computing systems. This disclosure also relates quantum computing systems.Background

[0002] Quantum computers are computing devices that exploit quantum superposition and entanglement to solve certain types of problem faster than a classical computer. The building blocks of a quantum computer are qubits. Qubits are effectively two level systems whose state can be in a superposition of its two states, rather than just in either of the two states as is the case for a classical bit.

[0003] Classical machine learning is the field of study where a classical computer or computers learn to perform classes of tasks using the feedback generated from the experiences or data gathered that the machine learning process acquires during computer performance of those tasks.

[0004] WO2017 / 066695 A1 discloses a hybrid computer that generates samples for machine learning. The hybrid computer includes a processor that implements a Boltzmann machine, e.g., a quantum Boltzmann machine, which returns equilibrium samples from eigenstates of a quantum Hamiltonian. Subsets of samples are provided to training and validations modules.

[0005] US 2017 / 351967 A1 discloses methods, systems, and apparatus for training quantum evolutions using sub-logical controls. In one aspect, a method includes the actions of accessing quantum hardware, wherein the quantum hardware includes a quantum system comprising one or more multi-level quantum subsystems; one or more control devices that operate on the one or more multi-level quantum subsystems according to one or more respective control parameters that relate to a parameter of a physical environment in which the multi-level quantum subsystems are located; initializing the quantum system in an initial quantum state, wherein an initial set of control parameters form a parameterization that defines the initial quantum state; obtaining one or more quantum system observables and one or more target quantum states; and iteratively training until an occurrence of a completion event.

[0006] "A Novel Text Classifier Based on Quantum Computation" (Ding Liu et al., Proceedings of the 51st Annual Meeting of the Association of Computational Linguistics, 4 August 2013, pages 484-488) discloses a classifier based on quantum computation theory. Classification is considered as an evolutionary process of a physical system and built by using the basic quantum mechanics equation.

[0007] "Quantum Algorithms for Fixed Qubit Architectures" (Farhi E et al., arXiv:1703.06199) discloses algorithms that use a sequence of parameterized unitaries that sit on the qubit layout to produce quantum states depending on those parameters. Measurements of the objective function (or Hamiltonian) guide the choice of new parameters with the goal of moving the objective function up (or lowering the energy).

[0008] "Model and algorithm of quantum-inspired neural network with sequence input based on controlled rotation gates" (L. Panchi et al., Appl Intell 40, 107-126 (2014)) discloses a quantum-inspired neuron based on controlled-rotation gates. In the proposed model, the discrete sequence input is represented by the qubits, which, as the control qubits of the controlled-rotation gate after being rotated by the quantum rotation gates, control the target qubit for rotation. The model output is described by the probability amplitude of state |1〉 in the target qubit. Then a quantum-inspired neural network with sequence input (QNNSI) is designed by employing the quantum-inspired neurons to the hidden layer and the classical neurons to the output layer.

[0009] "Demonstration of quantum advantage in machine learning" (D. Ristè et al., npj Quantum Information (2017)3:16; doi:10.1038 / s41534-017-0017-3) discloses a quantum circuit for binary classification, in particular for parity classification, and its implementation on a quantum device.Summary

[0010] Various embodiments of the invention include methods and systems, which are characterized by what is stated in the independent claims. Various embodiments of the invention are disclosed in the dependent claims. The invention is defined in the appended claims.Brief description of the drawings

[0011] For a more complete understanding of the methods, apparatuses and systems described herein, reference is now made to the following drawings in which: Figure 1 shows a schematic example of a classification method performed using a quantum computer according to embodiments; Figure 2 shows a flow diagram of a method for training a classifier using a quantum computer according to embodiments not falling under the scope of the claims; Figure 3 shows a flowchart of an example of a method for updating quantum gate parameters using gradient descent according to embodiments not falling under the scope of the claim; Figure 4 shows a flow diagram of a method for classifying a quantum state according to embodiments; and Figures 5a and 5b show a classification system comprising both a classical artificial neural network and a quantum neural network classifier according to embodiments. Detailed description

[0012] Figure 1 shows a schematic overview of the operation of a classification system implemented using a quantum computer.

[0013] The classification method is performed using a quantum computing system 100 comprising a plurality of qubits 102. The qubits 102 can, for example, be (the following is a non-exhaustive list) superconducting qubits (for example, an "Xmon" or a "Gmon" qubit), quantum dots, ionised atoms in ion traps, or spin qubits. The qubits 102 can be kept at a sufficiently low temperature to maintain coherence between qubits throughout the execution of quantum algorithms. In embodiments where superconducting qubits are used, the temperature is kept below the superconducting critical temperature. The plurality of qubits 102 can, in some embodiments, comprise one or more ancilla qubits (not shown) for storing entangled quantum states.

[0014] The quantum computing system 100 further comprises one or more parameterised quantum gates 104 for implementing one or more parameterised unitary transformations U l (θ l ) (herein also referred to as "unitaries") on the plurality of qubits 102. A quantum gate 104 comprises a quantum circuit that operates on one or more of the qubits 102 to perform a logical operation. A non-exhaustive list of quantum gates 104 includes Hadamard gates, C-Not gates, phase shift gates, Toffoli gates and / or controlled-U gates. Each quantum gate 104 acts on either an input state 106 or the output of the previous quantum gate 104 in a sequence. The parameterised quantum gates 104 act on the plurality of qubits 102 to change the state of the plurality of qubits 102. In the example shown, L quantum gates 104 are applied in sequence to an input state 106, each one transforming the state of the plurality of qubits 102.

[0015] The system is configured to learn parameters of the quantum gates 104 that, when applied to an input state |Ψ, m 〉 106 comprising a state to be classified |Ψ 〉 108 and readout qubit |m 〉 110, produce an output state 112 from which a predicted classification l' (z ) 114 (also referred to herein as a predicted label function or predictor) of the state to be classified |Ψ 〉 106 can be determined. Measurements are performed on the readout qubit 110 in the plurality of qubits 102 in order to determine the predicted classification 114 of the input state 106 from the output state 112. In the embodiment shown in Figure 1, only one readout qubit 110 is used, resulting in a binary predicted classifier. However, in general embodiments not falling under the scope of the claims, any number of readout qubits 110 can be used to implement other types of classifier. The qubits representing the state to be classified 108 can be referred to as "data qubits".

[0016] The system 100 uses supervised learning to learn parameters of the quantum gates 104 that can obtain a predicted classification l' (z ) 114 of an input state 106. Sample states 108 with known classifications l (z ) (also referred to herein as label functions) are selected from a sample data set S for use in the supervised learning and an input state 106 comprising the sample state 108 and the readout qubit 110 is prepared. Starting from an initial set of parameters for the quantum gates 104, a first selected input state 106 has the one or more quantum gates 104 applied to it to generate an output state 112. The states of the readout qubit 110 of the output state 112 is measured to determine a predicted classifier 114 for the sample state 108. The predicted classifier 114 is compared with the known classification of the sample state 108, for example using a sample loss function, and the comparison is used to update the parameters of the quantum gates 10.

[0017] The process is iterated, each time with a further sample state 108 with a known classification selected from the training dataset S , until some predetermined threshold condition is met. The resulting parameters for quantum gates 104 can be used in quantum computers to implement a classification method on unclassified states. By analogy with classical artificial neural networks, the trained quantum classifier can be described as a "quantum neural network".

[0018] In contrast to previous proposals for machine learning on quantum computers, systems and methods described herein do not require the use of specialised quantum versions of classical artificial neural network "perceptrons". Furthermore, methods and systems described herein can be implemented using near-term available quantum computing systems. Systems and methods described herein can accept both classical quantum states as an input and classify them accordingly, in contrast with classical artificial neural networks, which can only take classical states as an input. The ability to classify input quantum states in this manner can be useful in quantum metrology, where entangled quantum states are used to make high resolution measurements.

[0019] In the near future gate model quantum computers with good enough fidelity to run circuits with enough depth to perform tasks that cannot be simulated on classical computers are expected to be available. One approach to designing quantum algorithms to run on such devices is to let the architecture of the hardware determine which gate sets to use. The methods described herein, in contrast to prior work, set up a general framework for supervised learning on quantum devices that is particularly suited for implementation on quantum processors available in the near term.

[0020] Figure 2 shows a flow diagram of a method for training a classifier implemented on a quantum computer, according to embodiments not falling under the scope of the claims.

[0021] At operation 2.1, an initial set of the quantum gate parameters, θ ⇀ , is provided for use with the quantum gates 104. The initial set of parameters can, for example, be chosen at random or chosen based on some predefined conditions or best guesses.

[0022] In some embodiments, the sequence of quantum gates 104 comprises L unitary operators chosen from some set of experimentally available unitary operators. The sequence of quantum gates 104 implements a unitary operator U ( θ ), given by: U θ → = U L θ L U L − 1 θ L − 1 … U 1 θ 1 .

[0023] Here, θ is a vector of the parameters (θ L , θ L-1 , ... θ 1 ) and U l (θ l ) is the unitary operator implemented by the l th< quantum gate.

[0024] In general, each of the parameters θ l may comprise a plurality of parameters, for example in the form of a vector. In some embodiments, each of the quantum gates is characterised by a single scalar valued parameter. In these embodiments, each quantum gate is parameterised by a single parameter.

[0025] In some embodiments, the quantum, gates 104 implement unitary operators of the form: U l θ l = exp i θ l Σ l , where Σ is a generalised Pauli operator acting on one or more qubits. In other words, Σ is tensor product of operators from the set {σ x , σ y , σ z } that acts on one or more qubits in the plurality of qubits 102. An operator of this form has a gradient with respect to the parameter θ l whose norm is bounded by 1. Thus the gradient of a sample loss function, as described below, with respect to θ ⇀ , will be bounded, avoiding problems associated with gradients blowing up during the training of classical artificial neural networks.

[0026] The quantum gates 104 can be implemented in a number of ways, depending on, for example, the type of qubits 102 being used by the system. For example, in a superconducting qubit based system, the quantum gates can be implemented using an intermediate electric coupling circuit or a microwave cavity. In trapped spin based quantum computers, examples methods of implementing quantum gates include applying radiofrequency pulses to the qubits and taking advantage of spin-spin interactions to implement multi-qubit gates.

[0027] At operation 2.2, an n-qubit sample state |Ψ 〉 108 with a known classification is selected from a training dataset S. The training dataset S comprises a plurality of sample states 106 each with a known classification. The selected sample state |Ψ 〉 108 is then prepared in an input state 106 comprising the selected sample state 106 and the readout qubit 110 at operation 2.3. The readout qubit 110 can be prepared in a known state. For example, the input state 106 can be prepared in the form: in = ψ m , where m represents the readout qubit 110 prepared in a known state.

[0028] At operation 2.4, the sequence of parameterised quantum gates 104 is applied to the selected input state 106 using the current set of parameters. The sequence of quantum gates 104 transforms the plurality of qubits 102 from the input state 106 to an output state 112 by applying unitary transformations.

[0029] At operation 2.5, a readout state of the readout qubit. 110 is measured. For example, one or more Pauli operators can be measured on the readout qubit 110. In some embodiments, repeated measurements are taken of the readout qubit 110 to determine the readout state. To perform repeated measurements, operations 2.3 to 2.5 are repeated a predetermined number of times. In other words, the method comprises repeatedly preparing the plurality of qubits in the input state 106, applying the parameterised quantum gates 104 to the input state 106 and measuring the readout state of the readout qubit.

[0030] At operation 2.6, a predicted classifier l' (z ) 114 is determined from the measurements on the readout qubit. 110. In a binary classifier, the result of a measurement of a Pauli operator on a readout qubit 110 can provide the predicted classification 114 directly. In other embodiments, the predicted classifier 114 can be a function of the readout state of the readout qubit 110.

[0031] At operation 2.7, the predicted classifier 114 of the input state 106 is compared with the known classifier of the input state 106.

[0032] The predicted classifier 114 can be compared to the known classifier using a metric. For example, a sample loss function (or loss function) can be used to compare the predicted classifier 114 to the known classifier. The sample loss function provides a "cost" for mismatching known and predicted classifications. The sample loss function, can, for example, be a function that has a minimum value when the predicted classifiers 114 match the known classifiers. In these examples, the aim of the training method can be to reduce the average sample loss over the training set to below a threshold value. There are many examples of sample loss functions that can be used to compare the known classification with the predicted classification 114. As an example, for a binary classifier l (Ψ ) that classifies an input state as either +1 or -1, and with a single readout qubit initially set to 1 in the computational basis, an example sample loss that can be used is given by: loss θ ⇀ ψ = 1 − l ψ ψ m U † θ ⇀ Y n + 1 U θ ⇀ ψ m , where Y n +1 is the σ y acting on the readout qubit. This sample loss has a minimum of zero, since the predicted label function (given by l ′ z = ψ m U † θ ⇀ Y n + 1 U θ ⇀ ψ m in this example) is bounded to between -1 and 1.

[0033] At operation 2.8, a threshold condition is checked. The threshold condition is a condition for determining when to halt the training process. The threshold condition may comprise one or more of: a limit to the number of iterations of operations 2.2 to 2.8; a threshold error rate on a verification set of states; and / or one or more convergence criteria for the parameters θ ⇀ .

[0034] At operation 2.9, if the threshold condition is not met, one or more of the parameters of the quantum gates 106 are updated in dependence on the comparison of the predicted classifier 108 of the input state 106 with the known classifier of the input state 106.

[0035] In some embodiments not falling under the scope of the claims, a gradient descent method is used to compare the predicted classifier of the input state 106 with the known classifier of the sample state 108 and update the parameters. Figure 3 shows a flowchart of an example not falling under the scope of the claims of a method for updating the parameters using gradient descent.

[0036] At operation 3.1, a sample loss is estimated. To estimate the sample loss, repeated measurements of the readout qubit 110 in the output state 112 are made, and the sample loss is calculated from results of the measurements. Copies of the initial state 106 are repeatedly prepared and acted on by the quantum gates 104 to produce copies of the output state 112, and the readout qubit 110 for each copy of the output state 112 is measured. To achieve an estimate of the sample loss to within δ of the true sample loss at 99% probability, at least 2 / δ 2< measurements of the readout state are made.

[0037] At operation 3.2, one of the unitary gate parameters is varied by a small value. The resulting set of parameters θ ⇀ ′ differs from the original set of parameters θ ⇀ a small amount in one component. The small amount can, for example, be a predetermined small amount. Alternatively, the small amount can, for example, be selected at random from a range of values.

[0038] At operation 3.3, a new sample loss with the varied parameter is determined. To this end, repeated measurements of the readout qubit 110 are made on copies of the output state U θ ⇀ ′ ψ m . Copies of the initial state 106 are prepared and acted on by the quantum gates 104 to generate the copies of the output state 112, as directly copying the output state is forbidden by the "no-cloning theorem", and the readout qubit 110 for each copy is measured.

[0039] The gradient of the sample loss with respect to the varied component can then be calculated at operation 3.4. For example, a finite difference method can be used to determine the gradient.

[0040] At operation 3.5, if the gradient of the sample loss has not been calculated with respect to at least one of the parameters, the method returns to operation 3.2 and repeats operations 3.2 to 3.5 varying a different parameter each time. In total, for L parameters, the steps are repeated L times to obtain an estimate of the full gradient, g ⇀ , with respect to θ ⇀ .

[0041] At operation 3.6, the parameters are updated in dependence on the estimated gradient. Given the estimated gradient, g ⇀ , the parameters are updated by changing them in the direction of g ⇀ . For example, the parameters can be updated using: θ → θ − r loss θ ⇀ ψ g ⇀ 2 , where r < 1 is a "learning rate". The learning rate may be a fixed number. In some embodiments, the learning rate varies as the learning progresses.

[0042] With reference again to Figure 2, if the threshold condition is not met, once one or more parameters have been updated the method returns to operation 2.2 and selects another training example (i.e. another sample state 108 with a known classification) and performs operations 2.3 to 2.8 with the updated quantum gate 104 parameters. In embodiments not falling under the scope of the claims where a limit to the number of iterations is used as the threshold condition, an iteration count is increased by one.

[0043] If the threshold condition is met, the updated parameters are stored and / or output at operation 2.10. These "trained" parameters can be used to implement a classification method on a quantum computer, as described in relation to Figure 4.

[0044] Figure 4 shows a flow diagram of a classification method implemented on a quantum computer. The method can use a classifier trained using the methods described in relation to Figures 1 to 3. The classification method can be used as a standalone method to classify an input state. Alternatively, the classification method can be used a subroutine in an algorithm that is at least in part implemented on a quantum computer. The classification method can, in some embodiments, be thought of a single pass through the training method, but without any comparison with a known classification or any updating of the weights of the parameterised quantum gates 104. The method can be implemented on a quantum computing system, such as the quantum computing system 100 described in relation to Figure 1.

[0045] At operation 4.1 an unclassified input state is received. The unclassified input state comprises a plurality of qubits 102. The plurality of qubits 102 comprises n qubits representing a quantum state to be classified 108, and a readout qubit 110 in a known state. The quantum state is, in some embodiments not falling under the scope of the claims, received from a routine running on a quantum or classical computer, and / or experimental equipment. Many other examples are possible. The method encompasses preparing the input state 106 from a received quantum state to be classified 108.

[0046] At operation 4.2, a plurality of parameterised quantum gates 104 is applied to the input state 106 to transform the input state 106 to an output state 112. In embodiments not falling under the scope of the claims, the parameters of the parameterised quantum gates 104 have been trained using any of the methods described in relation to Figures 1 to 3.

[0047] The quantum gates 104 can be implemented in a number of ways, depending on, for example, the type of qubits 102 being used by the system. For example, in a superconducting qubit based system, the quantum gates can be implemented using an intermediate electric coupling circuit or a microwave cavity. In trapped spin based quantum computers, known methods of implementing quantum gates include applying radiofrequency pulses to the qubits and taking advantage of spin-spin interactions to implement multi-qubit gates.

[0048] In some embodiments not falling under the scope of the claims, the quantum gates 104 used during the classification method are of the same type and implement the same unitary operations as the quantum gates 104 used in the training method. In other embodiments not falling under the scope of the claims, the quantum gates 104 used during the classification method are of a different type, though still implement the same unitary operations as the quantum gates 104 used in the training method using the same parameters.

[0049] At operation 4.3, a readout state of the readout qubit 110 is measured. For example, one or more Pauli operators can be measured on the readout qubit 110. In some embodiments, the readout state is measured repeatedly to increase the accuracy of the readout state. Repeated measurement of the readout state comprises, for example applying the parameterised quantum gates 104 to copies of the input state 106 to generate an output state 112; and measuring the readout state of the readout qubit 110 in the output state 112.

[0050] At operation 4.4, the quantum state to be classified is classified in dependence on the measured readout state. In some embodiments, the classification is provided directly by the measurements in the readout state. In a binary classifier according to the invention, a readout state of 1 or -1 may correspond to the classification. In other embodiments, the classification is provided by a function of the measured readout state.

[0051] By way of illustration, several example embodiments and applications will now be described in relation to a binary classification and a single readout qubit.

[0052] In some embodiments, the system is configured to learn to classify classical binary states. The input states are taken from a set of binary strings z = z 1 z 2 ... z n , where each z i is a binary bit. The binary bits can, for example, each take one of the values ±1 . Alternatively, the binary bits can each take one of the values 0 or 1 . For a binary string of length n there are 2 n< of such strings. The training dataset comprises a sub-set of the possible binary strings, each with a known classification l (z ), which in this example is taken to be a binary label. The classification represents a subset majority.

[0053] During training, a string z 1< is selected from the training dataset. A plurality of qubits 102 are prepared in an input state 106 to represent the selected string. For example, the input state 106 representing the string can be the n+1 qubit state prepared in a computational basis state: z 1 r = z 1 1 z 2 1 … z n 1 , m , where m is the readout qubit 110 prepared in a known state. For example, the readout qubit 110 can be prepared in one of the binary states ±1 .

[0054] The aim of the training is to make measurements of a property of the readout qubit in the output state correspond to the binary classifier l (z ). For example, the quantum gates can be trained such that a measurement of a Pauli operator on the readout qubit 110, which has possible values ±1 , predicts a classification of the input string z. In the following, σ y is used as an example of the Pauli operator, though σ x or σ z could alternatively be used.

[0055] A sequence of parameterised quantum gates 104 is then applied to input state 106 to generate an output state 112 given by out = U θ ⇀ z 1 1 , as described above in relation to Figure 2. In embodiments where σ y is used as the measurement operator on the readout qubit of the output state, a sample loss function of the form loss θ ⇀ z = 1 − l z z 1 U † θ ⇀ Y n + 1 U θ ⇀ z 1 , can be used to train the parameters θ ⇀ .

[0056] Before discussing specific examples of applying the method to binary strings, it will be established that the quantum neural network is capable of expressing any two valued label function, although possibly at a high cost in circuit depth. There are 2 n< , n-bit strings and accordingly there are 2 (2 n< )< possible binary label functions l (z ). Given a label function consider the operator whose action is defined on computational basis states as: U l z z m + 1 = exp i π 4 l z X n + 1 z z m + 1 , where X n +1 is a σ x operator acting on the readout qubit. U l acts by rotating the readout qubit by π 4 times the label of the string z . Correspondingly: U l † Y n + 1 U l = cos π 2 l z Y n + 1 + sin π 2 l z Z n + 1 , where here l (z ) is interpreted as being an operator diagonal in the computational basis. As l (z ) is +1 or -1 for a binary classifier, it can be seen that: z , 1 U l † Y n + 1 U l z , 1 = l z

[0057] This demonstrates that at least at some abstract level there is a way of representing any label function with a quantum circuit.

[0058] U l can be written as a product of two qubit unitaries (i.e. implemented by a sequence of two qubit quantum gates). For this discussion it is convenient to switch to Boolean variables b i = 1 2 1 − z i and think of the label function l (z ) as (1 - 2B ) where B has the values 0 or 1. The Reed-Muller representation of a general B function in terms of the bits b 1 through b n can then be written as: B = a 0 ⊕ a 1 b 1 ⊕ a 2 b 2 ⊕ … a n b n ⊕ a 12 b 1 b 2 ⊕ a 13 b 1 b 3 ⊕ … ⊕ … ⊕ a 123 … b 1 b 2 … b n

[0059] The addition is mod2 and the coefficients a are all 0 or 1. Note that there are 2 n< coefficients and since each can have the value ±1 , 2 (2 n< )< Boolean functions are represented. The formula can be exponentially long.

[0060] The label dependent unitary U l can then be written as U l = exp i π 4 X n + 1 exp − i π 2 B X n + 1 .

[0061] Viewed as an operator, diagonal in the computational z basis, we see that each term in the Reed-Muller representation of B commutes with each of the others. Each term in B in U l is multiplied by X n +1 and so each term commutes with the others. Each non-vanishing term in the Reed-Muller representation gives rise in U l to a controlled bit flip on the readout qubit 110. To illustrate this using an example, consider a three bit term involving bits 2, 7 and 9. This corresponds to the operator: exp − i π 2 b 2 b 7 b 9 X n + 1 which is the identity unless b 2 = b 7 = b 9 = 1 , in which case it is -iX n +1 . Any controlled one qubit unitary acting on qubit n+1 where the control is on the first n bits can be written as a product of n 2< two qubit unitaries. Therefore label function expressed in terms of the Reed-Muller formula with RM terms can be written as a product of RM commuting n + 1 qubit operators and each of these can be written as n 2< two qubit unitaries. This quantum representation result is analogous to the classical representation theorem, which states that any Boolean label function can be represented on a depth three neural network with the inner layer having size 2 n< . Of course such gigantic matrices cannot be represented on a conventional computer. In this case the method is naturally performed in a Hilbert space of exponential dimension, but an exponential circuit depth may be needed to express certain functions.

[0062] Now that a representation of a binary function has been demonstrated, several example embodiments will now be described.

[0063] In some embodiments not falling under the scope of the claims, the label function l (z ) is a binary label indicating a parity of a subset, , of bits in an input binary string of length n. The Reed-Muller formula for a subset parity label is: where a j = 1 if the b j is in the subset and a j = 0 if the best bit b j is not in the subset. The addition is mod2. An example unitary that implements the subset parity is then given by: U P S = exp i π 4 X n + 1 exp − i π 2 ∑ j = 1 n a j b j X n + 1 , where X n +1 is the Pauli operator σ x acting on the readout qubit 110. Here, the addition in the second exponent is automatically mod2 because of the factor of π 2 and the properties of X n +1 . The circuit consists of a sequence of (at most) n commuting two qubit gates 104, with the readout qubit being one of the two qubits acted on by each quantum gate 104.

[0064] This unitary can be learned using the training method described herein. Starting from the n -parameter unitary: U θ ⇀ = exp i π 4 X n + 1 exp − i ∑ j = 1 n θ j b j X n + 1 with random initial θ ⇀ , the optimal parameters θ j = π 2 if the bit b j is in the subset and θ j = 0 if the bit b j is not in the subset can be learned using the methods described in relation to Figure 1. As an example, working from 6 to 16 bits and starting with a random θ j , with stochastic gradient descent the subset parity label function can be learned with far fewer than 2 n< samples and therefore could successfully predict the label of unseen examples. Introducing a low level of label noise, for example up to 10% label noise, does not impede the learning.

[0065] In some embodiments, the label function l (z ) is a binary label indicating a subset majority, (z ), of a subset, , of bits in an input binary string of length n . In the z = ±1 representation of the input string, the subset majority is +1 if the majority of bits in the subset are +1 , and -1 otherwise. The subset majority can be written as: where a j = 1 if the bit b j is in the subset and a j = 0 if the bit b j is not in the subset. Consider the unitary: where X n +1 is the Pauli operator σ x acting on the readout qubit 110, Z j is the Pauli operator σ z acting on the j th< qubit, and β is defined below. Conjugating Y n +1 gives: U M S † Y n + 1 U M S = cos β ∑ j = 1 n a j Z j Y n + 1 + sin β ∑ j = 1 n a j Z j Z n + 1 so that

[0066] The maximum magnitude of the term ∑ j = 1 n a j Z j is n , so if β is chosen to lie within the range 0 < β < π / n , for example 0. 9π / n then, the subset majority will be:

[0067] This means that taking repeated measurements of Y n +1 and rounding the expected value up or down to ±1 can result in a perfect categorical error, even though the individual sample losses are not 1 or -1.

[0068] This unitary can be learned using the training method described herein. Starting from the n-parameter unitary U θ ⇀ = exp − i ∑ j = 1 n θ j Z j X n + 1 with random initial θ ⇀ , the optimal parameters, θ j = β if the bit b j is in the subset and θ j = 0 if the bit b j is not in the subset, can be learned using the methods described in relation to Figure 1.

[0069] The embodiments described above provide examples of training and using a binary classifier. In general, binary classifiers can be trained to represent any binary function. The quantum gates 104 used can be restricted to one and two-qubit unitary operators.

[0070] In some embodiments not falling under the scope of the claims, the method and system can be used to train an image classifier. The training sets S in these embodiments comprise a plurality of images labelled with a known classification. For example, in the embodiments learning how to classify handwritten digits, the training set comprises a plurality of examples of handwritten digits, each with a label corresponding to the digit that the handwritten digit is meant to represent. An example of such a dataset is the MNIST dataset, which comprises 55,000 training samples of 28 by 28 pixel images representing digits between zero and nine that have been labelled by hand.

[0071] The input state for image classification comprises pixel data for the image being classified. For example, in a black and white image, each qubit in the input state can represent whether a pixel in the input image is black or white. In these examples, the input state can comprise n-qubits representing the n pixels of the image, and one or more readout qubits prepared in a known state. In some embodiments, the images being classified comprise one or more components / channels, for example representing colour data, brightness, and / or hue of the image. In these embodiments, each pixel in each channel may be represented by a qubit in the plurality of qubits 102.

[0072] For the image classification, single qubit quantum gates 104 are taken to be unitatries with Σ being an X , Y , and / or Z operator acting on any one of qubits in the plurality of qubits 102. Two qubit gates are, in general, taken to be XY , YZ , ZX , XX ,YY and / or ZZ operators acting between any pair of different qubits in the plurality of qubits 102.

[0073] In some embodiments not falling under the scope of the claims, a predefined number of parameterised gates 104 are selected at random from this set of possible quantum gates 104. For example, between 500 and 1000 quantum gates can be selected for a binary image classifier. The initial parameters of these quantum gates 104 can, in some embodiments, be selected at random.

[0074] In some embodiments, the two-qubit quantum gates 104 used in the image classification are restricted to be of the ZX or XX types. At least one of the two qubits operated on by the two-qubit quantum gate is a readout qubit 110. Layers of quantum gates 104 of the same type may be alternated in the quantum computer. For example, the sequence of quantum gates may comprise alternating three layers ZX quantum gates with three layers of XX quantum gates. Each layer may comprise a plurality of quantum gates. Each layer may comprise two-qubit quantum gates operating between one or more of the readout qubits 110 and each of the other qubits in the plurality of qubits 102. In the binary classifier according to the invention, each layer comprises n two-qubit quantum gates, each of which acts between the readout qubit 110 and a different one of the n qubits representing the state to be classified.

[0075] While embodiments described above have been described in relation to image classification, it should be understood that they can be equally applied to other classification types that receive strings as an input.

[0076] In contrast to classical artificial neural networks, the system described herein can accept quantum states (by which it is meant n-qubit states in an arbitrary superposition) as an input. In embodiments not falling under the scope of the claims, the system can be used to train a classifier for quantum states to classify the quantum states according to a label that relates to a property of the quantum states.

[0077] Some further embodiments not falling under the scope of the claims will now be described.

[0078] The input state 106 comprises n qubits representing the state |Ψ 〉 to be classified, and a readout qubit 110. In the embodiments described below, the readout qubit is set to a known initial state of |1 〉 in the computational basis, though other initial readout states can be used.

[0079] The binary classifier described below corresponds to whether an expected value of a Hamiltonian Ĥ with a state is positive or negative. Such a classifier can be useful when finding minimum energy states of system governed by a particular Hamiltonian. The classifier l (|Ψ 〉) can be given, for example, by l ψ = sign ψ H ^ ψ .

[0080] Consider the operator U H β = exp i β H X n + 1 where β is taken to be a small positive number. Then ψ , 1 U H † β Y n + 1 U H β ψ , 1 = ψ sin 2 βH ψ :

[0081] For sufficiently small β , this is approximately 2 β ψ H ψ so the sign of the expected of our predicted label agreeing with the true label. In this sense the label function has been expressed with a quantum circuit with small categorical error. The error arises due to the approximation taken by expanding 〈Ψ | sin(2βH) |Ψ 〉 for small β . However if we take β to be much less than the inverse of the norm of H, the error can be made small.

[0082] For example, consider a graph where on each edge we have a ZZ coupling with a coefficient of +1 or -1 randomly chosen H = ∑ ij J ij Z i Z j where the sum is restricted to edges in the graph and J ij is +1 or -1. Suppose there are M terms in H. We can first pick M angles ij and consider circuits that implement unitaries of the form: U θ ⇀ = exp i ∑ ij θ ij Z i Z j X n + 1 .

[0083] When θ ij = βJ ij , this unitary will provide the label function. These weights can be learned using the methods described above in relation to Figures 1 to 3.

[0084] The quantum states |Ψ 〉 live in a 2 n< dimensional Hilbert space, so in some embodiments the quantum states are restricted to quantum states that can be built by applying few qubit unitaries to some simple product state. In some embodiments not falling under the scope of the claims, the training states are restricted to be of this form.

[0085] By way of example, eight data qubits and one readout qubit can be trained to classify three regular graphs, which accordingly have 12 edges. In this example, there are twelve parameters θ ij used to form the sequence of quantum gates 102 U θ ⇀ . The training states can be product states that depend on eight random angles. The state can be formed by rotating each of the eight qubits, which each start as an eigenstate of the associated X operator, about the y axis by the associated random angle. Test states are formed in the same manner. Since the states are chosen randomly from a continuum there is a high probability that the training set and test set are distinct. After presenting roughly 1000 test states the quantum network correctly labels 97% of the test states.

[0086] In some embodiments, the class of unitaries can include more parameters. For example, two layers of unitaries where Σ is an XX and ZX , where the first operator acts on one of the eight data qubits and the second operator acts on the readout qubit 110. In the example using three regular graphs as the inputs, the learning procedure can achieve a categorical error of less than 3% after seeing roughly 1000 training examples. In some embodiments, training a classifier for classical input states can be enhanced using the ability of the quantum system to accept quantum states as an input. For example, with a quantum neural network, input states may comprise classical data in a superposition. A single quantum state that is a superposition of computational basis states, each of which represents a single sample from a batch of samples, can be viewed as quantum encoding of the batch. Here different phases on the components give rise to different quantum states.

[0087] For example, consider a binary classification. The sample space can be divided into samples labeled as +1 and those labeled as -1. Consider the states + 1 = N + ∑ z : l z = 1 e i φ z z 1 and − 1 = N − ∑ z : l z = − 1 e i φ z z 1 where N + and N - are normalization factors and ϕ z is a phase. In some examples, all the phases are set to zero. Each of these states can be viewed as a batch containing all of the samples with the same label. Return to the equation which gives the unitary associated with any label function. Note that the expected value of this operator of the state |+1 〉 is +1 whereas the expected value of the state |-1 〉 is -1. This is because the unitary is diagonal in the computational basis of the data qubits so the cross terms vanish and the phases are irrelevant. Now consider a parameter dependent unitary U θ ⇀ which is diagonal in the computational basis of the data qubits. The expected value of Y n +1 of the state obtained by having this operator in the act on |+1 〉 is the average over all samples with the label +1 of the quantum neural network's predicted label values. For the state |-1 〉, the expected value of Y n +1 of the state obtained by having this operator in the act on |-1 〉 is the average over all samples with the label -1 of the quantum neural network's predicted label values. In other words if U θ ⇀ is diagonal in the computational basis of the data qubits then + 1 U † θ ⇀ Y n + 1 U θ ⇀ + 1 − − 1 U † θ ⇀ Y n + 1 U θ ⇀ − 1 is the empirical risk of the whole sample space. If parameters θ ⇀ can be found that make this 0, then the quantum neural network will correctly predict the label of any input from the training set.

[0088] In some embodiments, a gate set that is diagonal in the computational basis of the data qubits is used. An example of such a set is the generalised Pauli operators ZX and ZZX with the Z operators acting on data qubits and the X operator acting on the readout. Using these gates, the empirical risk formula is the empirical risk of the full data set for the quantum neural network. The empirical risk can be used as a sample loss function to train the parameters of the quantum neural network. Starting from a random choice of parameters, a minimisation algorithm, such as gradient descent, can be used to decrease the empirical risk.

[0089] In some embodiments not falling under the scope of the claims, the gate set can be beyond those that are diagonal in the data qubit computational basis. In these embodiments, + 1 U † θ ⇀ Y n + 1 U θ ⇀ + 1 − − 1 U † θ ⇀ Y n + 1 U θ ⇀ − 1 can no longer be directly read as the empirical risk of the quantum neural network acting on the whole sample space. However, driving it to a low value at least means that the states |+1 〉 and |-1 〉 are correctly labelled.

[0090] Figure 5a and 5b show examples of the quantum neural network classifier being used in conjunction with a classical artificial neural network. In general, the classification method implemented on a quantum computing system 100 as described herein can be combined with one or more classical artificial neural networks 116. This can improve the accuracy of the classification method.

[0091] The classical artificial neural networks 116 comprise a plurality of layers of "neurons", each of which has connections to one or more neurons in each neighbouring layer. In the example shown, the classical artificial neural networks 116 have three layers, though fewer or greater numbers of layers are possible. The examples also show fully connected layers, where each neuron is connected to every neuron in neighbouring layers, though partially connected networks are also possible.

[0092] Each neuron accepts one or more inputs, and outputs a function of the inputs that is characterised by one or more weights associated with each input. These weights can be trained using standard machine learning techniques to produce a desired output from the neural network 116.

[0093] In some embodiments, a state to be classified 108 is input into a classical artificial neural network 116. The output of the classical artificial neural network 116 can be used as input to the quantum computing system 100 in order to generate the input state 106 to be classified according the methods described above. An example of such an embodiment is shown in Figure 5a.

[0094] In some embodiments, the readout state from the readout qubit 110 in the quantum computing system 100 is input into a classical artificial neural network 116. The classical artificial neural network can be trained to determine, using the readout state of the output state of the readout qubit in the plurality of qubits, a predicted classification of the input state. An example of such an embodiment is shown in Figure 5b.

[0095] Implementations of the quantum subject matter and quantum operations described in this specification may be implemented in suitable quantum circuitry or, more generally, quantum computational systems. The term "quantum computational systems" may include, but is not limited to, quantum computers, quantum information processing systems, quantum cryptography systems, or quantum simulators.

[0096] The terms quantum information and quantum data refer to information or data that is carried by, held or stored in quantum systems, where the smallest non-trivial system is a qubit, e.g., a system that defines the unit of quantum information. It is understood that the term "qubit" encompasses all quantum systems that may be suitably approximated as a two-level system in the corresponding context. Such quantum systems may include multi-level systems, e.g., with two or more levels. By way of example, such systems can include atoms, electrons, photons, ions or superconducting qubits. In many implementations the computational basis states are identified with the ground and first excited states, however it is understood that other setups where the computational states are identified with higher level excited states are possible. It is understood that quantum memories are devices that can store quantum data for a long time with high fidelity and efficiency, e.g., light-matter interfaces where light is used for transmission and matter for storing and preserving the quantum features of quantum data such as superposition or quantum coherence.

[0097] Quantum circuit elements may be used to perform quantum processing operations. That is, the quantum circuit elements may be configured to make use of quantum-mechanical phenomena, such as superposition and entanglement, to perform operations on data in a non-deterministic manner. Certain quantum circuit elements, such as qubits, may be configured to represent and operate on information in more than one state simultaneously. Examples of superconducting quantum circuit elements that may be formed with the processes disclosed herein include circuit elements such as co-planar waveguides, quantum LC oscillators, qubits (e.g., flux qubits or charge qubits), superconducting quantum interference devices (SQUIDs) (e.g., RF-SQUID or DCSQUID), inductors, capacitors, transmission lines, ground planes, among others.

[0098] In contrast, classical circuit elements generally process data in a deterministic manner. Classical circuit elements may be configured to collectively carry out instructions of a computer program by performing basic arithmetical, logical, and / or input / output operations on data, in which the data is represented in analogue or digital form. In some implementations, classical circuit elements may be used to transmit data to and / or receive data from the quantum circuit elements through electrical or electromagnetic connections. Examples of classical circuit elements that may be formed with the processes disclosed herein include rapid single flux quantum (RSFQ) devices, reciprocal quantum logic (RQL) devices and ERSFQ devices, which are an energy-efficient version of RSFQ that does not use bias resistors. Other classical circuit elements may be formed with the processes disclosed herein as well.

[0099] During operation of a quantum computational system that uses superconducting quantum circuit elements and / or superconducting classical circuit elements, such as the circuit elements described herein, the superconducting circuit elements are cooled down within a cryostat to temperatures that allow a superconductor material to exhibit superconducting properties.

[0100] While operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous.

[0101] A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the scope of the claims. Other implementations are within the scope of the following claims.

Claims

1. A method for performing binary classification of a quantum state on a quantum computer, the method comprising: preparing (4.1), by a quantum computer, a plurality of qubits of the quantum computer in an input state, said plurality of qubits comprising a plurality of data qubits representing a state to be classified and a readout qubit; applying (4.2), by the quantum computer, a sequence of layers of parameterised quantum gates to the plurality of qubits of the quantum computer to transform the input state to an output state, wherein each layer of parameterised quantum gates comprises a plurality of two-qubit quantum gates, each of the two-qubit quantum gates acting between the readout qubit and a different one of the plurality of data qubits; measuring (4.3), by the quantum computer, a readout state of the readout qubits of the quantum computer to determine a binary classification of the input state, wherein a readout state of 1 or -1 of the readout qubit corresponds to a subset majority classification, wherein the plurality of two-qubit quantum gates implement a unitary transformation of the form: exp i β 2 ∑ j = 1 n θ j Z j X n + 1 , where θj are learned parameters parameterising the quantum gate, Zj is a Pauli Z operator acting on the j-th data qubit and Xn+1 is a Pauli X operator acting on the readout qubit.

2. The method of claim 1, wherein determining the binary classification comprises repeatedly: preparing the plurality of qubits in the input state; applying the parameterised quantum gates to the input state; and measuring the readout state of the readout qubit.

3. The method of any preceding claim, wherein each layer of parameterised quantum gates further comprises one or more single qubit quantum gate.

4. The method of any preceding claim, wherein the input state comprises a superposition of binary strings.

5. The method of any of claims 1 to 3, wherein the input state comprises an arbitrary quantum state.

6. The method of any preceding claim, comprising using a classical artificial neural network to prepare the input state.

7. The method of any preceding claim, comprising determining the classifier from the readout state using a classical artificial neural network.

8. A quantum computing system comprising: a plurality of qubits, comprising a plurality of data qubits (108) and a readout qubit (110); and one or more parameterised quantum gates (104), wherein the system is configured to perform the method of any preceding claim.