IP Library › Granted Patent US 10,460,234
Granted Patent B2
US 10,460,234 · App. 15/917,091 · Granted Oct 29, 2019

Private deep neural network training

Inventors: Nishanth Chandran (Bangalore, IN); Divya Gupta (Redmond, WA); Sameer Wagh (Princeton, NJ)
Assignee: Microsoft Technology Licensing, LLC
G06N3/08G06F1/02G06F17/13G06F17/16G06N3/04
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 10,460,234
App. No.
15/917,091
Granted
Oct 29, 2019
Kind
B2
Abstract

Systems and methods for private deep neural network training are disclosed. Method includes storing first private values at first machine and second private values at second machine; providing, to third machine, first share of first private values and first share of second private values; providing, to fourth machine, second share of first private values and second share of second private values; computing, at third machine, third machine-value based on first share of first private values and first share of second private values; computing, at fourth machine, fourth machine-value based on second share of first private values and second share of second private values; providing, to first machine and second machine, third machine-value and fourth machine-value; and computing, at first machine, a mathematical function of first private values and second private values, mathematical function being computed based on first private values stored at first machine, third machine-value, and fourth machine-value.

Claims (32)

1. A method comprising:

storing first private values at a first machine and second private values at a second machine;

providing, to a third machine, a first share of the first private values and a first share of the second private values;

providing, to a fourth machine, a second share of the first private values and a second share of the second private values;

computing, at the third machine, a third machine value based on the first share of the first private values and the first share of the second private values;

computing, at the fourth machine, a fourth machine value based on the second share of the first private values and the second share of the second private values;

providing, to the first machine and the second machine, the third machine value and the fourth machine value;

computing, at the first machine, a mathematical function of the first private values and the second private values, the mathematical function being computed based on the first private values stored at the first machine, the third machine value, and the fourth machine value; and

providing an output of the computed mathematical function.

2. The method of claim 1 , further comprising:

computing, at the second machine, the mathematical function of the first private values and the second private values, the mathematical function being computed based on the second private values stored at the second machine, the third machine value, and the fourth machine value.

3. The method of claim 2 , wherein the second machine lacks access to the first private values stored at the first machine.

4. The method of claim 1 , wherein the first machine lacks access to the second private values stored at the second machine.

5. The method of claim 1 , wherein the first private values are constructible based on the first share of the first private values and the second share of the first private values, and wherein the second private values are constructible based on the first share of the second private values and the second share of the second private values.

6. The method of claim 5 , wherein the first private values comprise an additional mathematical function of the first share of the first private values and the second share of the first private values, and wherein the second private values comprise the additional mathematical function of the first share of the second private values and the second share of the second private values.

7. The method of claim 6 , wherein the additional mathematical function comprises a sum.

8. One or more non-transitory machine-readable media storing instructions which, when executed by processing circuitry of one or more machines, cause the processing circuitry to perform operations comprising:

storing first private values at a first machine and second private values at a second machine;

providing, to a third machine, a first share of the first private values and a first share of the second private values;

providing, to a fourth machine, a second share of the first private values and a second share of the second private values;

computing, at the third machine, a third machine value based on the first share of the first private values and the first share of the second private values;

computing, at the fourth machine, a fourth machine value based on the second share of the first private values and the second share of the second private values;

providing, to the first machine and the second machine, the third machine value and the fourth machine value;

computing, at the first machine, a mathematical function of the first private values and the second private values, the mathematical function being computed based on the first private values stored at the first machine, the third machine value, and the fourth machine value; and

providing an output of the computed mathematical function.

9. The one or more machine-readable media of claim 8 , the operations further comprising:

computing, at the second machine, the mathematical function of the first private values and the second private values, the mathematical function being computed based on the second private values stored at the second machine, the third machine value, and the fourth machine value.

10. The one or more machine-readable media of claim 9 , wherein the second machine lacks access to the first private values stored at the first machine.

11. The one or more machine-readable media of claim 8 , wherein the first machine lacks access to the second private values stored at the second machine.

12. The one or more machine-readable media of claim 8 , wherein the first private values are constructible based on the first share of the first private values and the second share of the first private values, and wherein the second private values are constructible based on the first share of the second private values and the second share of the second private values.

13. The one or more machine-readable media of claim 12 , wherein the first private values comprise an additional mathematical function of the first share of the first private values and the second share of the first private values, and wherein the second private values comprise the additional mathematical function of the first share of the second private values and the second share of the second private values.

14. The one or more machine-readable media of claim 13 , wherein the additional mathematical function comprises a sum.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2018
From: CHANDRAN, NISHANTH; GUPTA, DIVYA
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 045289/0121 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2018
From: WAGH, SAMEER
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 045161/0766 →
Continuity (2)
Provisional Application 62619451 · Jan 19, 2018
Related Publication 20190228299A1 · Jul 25, 2019