IP Library Granted Patent US 11,295,207
Granted Patent B2
US 11,295,207 · App. 15/532,996 · Granted Apr 5, 2022

Quantum deep learning

Inventors: Nathan Wiebe (Redmond, WA); Krysta Svore (Seattle, WA); Ashish Kapoor (Kirkland, WA)
Assignee: Microsoft Technology Licensing, LLC
G06N3/08A01D5/00D02G1/008D02G1/10G06N3/0445G06N10/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,295,207
App. No.
15/532,996
Granted
Apr 5, 2022
Kind
B2
Abstract

Boltzmann machines are trained using an objective function that is evaluated by sampling quantum states that approximate a Gibbs state. Classical processing is used to produce the objective function, and the approximate Gibbs state is based on weights and biases that are refined using the sample results. In some examples, amplitude estimation is used. A combined classical/quantum computer produces suitable weights and biases for classification of shapes and other applications.

Claims (37)

1. A method of efficiently training a Boltzmann machine, comprising:

with a classical computer, receiving a specification of a Boltzmann machine, an objective function, and associated training data, and

in a quantum computer, determining at least one gradient of the objective function by:

based on the specification of the Boltzmann machine, preparing a plurality of qubits to represent a Gibbs distribution;

adding a qubit to the plurality of qubits and applying a rotation operator so that the added qubit has amplitudes of first and second states based on a joint probability distribution of hidden and visible unit values;

producing the at least one gradient of the objective function by sampling the states of each of the plurality of qubits; and

based on the at least one gradient of the objective function, specifying at least one visible bias, at least one hidden bias or at least one weight of the Boltzmann machine so as to produce a trained Boltzmann machine.

2. The method of claim 1 , wherein the objective function is a sum of an average log-likelihood of the training data and a regularization function.

3. The method of claim 1 , further comprising, in the quantum computer, producing a quantum state associated with model values, and in the classical computer, establishing the model values based on sampling of the quantum state.

4. The method of claim 3 , wherein the model values are is revised using gradient ascent.

5. The method of claim 3 , further comprising, in the quantum computer, producing a quantum state associated with data values, and in the classical computer, revising the model values based on sampling of the quantum state.

6. The method of claim 5 , wherein the quantum state associated with the data values is produced based on a mean-field approximation to a Gibbs distribution.

7. A method, comprising:

preparing at least one quantum state in a quantum computer to approximate a Gibbs state and sampling the at least one quantum state;

preparing a qubit string storing energy values associated with a plurality of hidden weights and biases;

adding a qubit to the prepared qubit string and applying a rotation operator so that the added qubit has amplitudes of first and second states based on a joint probability distribution of hidden and visible unit values;

applying amplitude estimation to the prepared qubit string with the added qubit and measuring a state of the added qubit;

determining a distribution of hidden and visible unit values based on the measured state of the added qubit; and

estimating in a classical computer, gradients of an objective function based on the determined distribution of hidden and visible unit values.

8. The method of claim 7 , further comprising defining weights or biases for a Boltzmann machine based on the estimated gradients of the objective function.

9. The method of claim 8 , further comprising processing a data example based on the defined weights and biases of the Boltzmann machine.

10. The method of claim 9 , wherein the data example is associated with an image, a shape, speech, a text, an audio recording, a video recording, or a quantum state.

11. The method of claim 8 , further comprising updating weights or biases associated with the Boltzmann machine based on gradients of at least one of Boltzmann machine weights, hidden biases, and visible biases.

12. The method of claim 8 , wherein the objective function is associated with a sum of an average log-likelihood of the training data and a regularization function.

13. The method of claim 8 , wherein the Boltzmann machine is a deep restricted Boltzmann machine having two or more layers.

14. The method of claim 7 , wherein the preparing at least one state in the quantum computer comprises preparing a state associated with model weights, and hidden and variable biases.

15. The method of claim 14 , further comprising computing a mean-field partition function, wherein the at least one state is based in part on the mean-field partition function.

16. The method of claim 7 , wherein the preparing at least one quantum state in the quantum computer comprises preparing a state associated with model weights, and hidden and variable biases, with visible units fixed so as to correspond to a selected training vector.

17. The method of claim 16 , further comprising computing a mean-field partition function, wherein the at least one state associated with model weights, and hidden and variable biases is based in part on the mean-field partition function associated with the selected training vector.

18. A method, comprising:

in a classical computer,

receiving a training data set, a specification of a deep Boltzmann machine, and an objective function;

in a quantum computer, establishing a mean-field state on a plurality of qubits based on a mean-field approximation so as to approximate a Gibbs state; and

adding a qubit to the plurality of qubits and applying a rotation operator so that the added qubit has amplitudes based on a joint probability distribution of hidden and visible unit values; and

in the classical computer,

estimating a gradient of the objective function based on sampling the mean-field state, and determining hidden biases and weights of the deep Boltzmann machine; and

processing an input data example associated with an image, a shape, speech data, a text, an audio recording, a video or a quantum state output by a quantum device based on the Boltzmann machine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2017
From: WIEBE, NATHAN; SVORE, KRYSTA; KAPOOR, ASHISH
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 042640/0828 →
Continuity (2)
Provisional Application 62088409 · Dec 5, 2014
Related Publication 20170364796A1 · Dec 21, 2017
Cited By (2)
US 12,340,796 US 12,705,526