Information
-
Patent Application
-
20230300115
-
Publication Number
20230300115
-
Date Filed
September 07, 20222 years ago
-
Date Published
September 21, 2023a year ago
-
Inventors
-
Original Assignees
-
CPC
-
-
International Classifications
- H04L9/40
- G06F18/2113
- H04L9/06
- H04L9/00
- G06N3/082
- G06Q30/0601
- G06N3/04
- G06F18/24
- G06Q20/40
- G06F17/16
Abstract
A system and method are disclosed for training a recommendation system. The method includes initiating, at a server device, an item-vector matrix V, wherein the item-vector matrix V includes a value m related to a total number of items across one or more client devices and a value d representing a hidden dimension, transmitting the item-vector matrix V to each client device, wherein each client device trains a local matrix factorization model using a respective user vector U and the item-vector matrix V to generate a respective set of gradients on each respective client device, receiving, via a secure multi-party compute protocol, and from each client device, the respective set of gradients, updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V and downloading the updated item-vector matrix V to at least one client device.
Claims
- 1. A method comprising:
initiating, at a server device, an item-vector matrix V, wherein the item-vector matrix V comprises a value m related to a total number of items across one or more client devices and a value d representing a hidden dimension;transmitting the item-vector matrix V to each client device of a set of client devices, wherein each client device trains a local matrix factorization model using a respective user vector U and the item-vector matrix V to generate a respective set of gradients on each respective client device;receiving, via a secure multi-party compute protocol, and from each client device of the set of client devices, the respective set of gradients;updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V; anddownloading the updated item-vector matrix V to at least one client device of the set of client devices.
- 2. The method of claim 1, wherein each client device trains the local matrix factorization model using a stochastic gradient descent method.
- 3. The method of claim 1, wherein the respective set of gradients is encrypted at each client device.
- 4. The method of claim 1, wherein updating the item-vector matrix V at the server using a privacy-preserving aggregation method.
- 5. The method of claim 1, wherein the updated item-vector matrix V is trained when a specific threshold is reached or a specific model accuracy is reached.
- 6. The method of claim 1, wherein each client device can predict top items based on the updated item-vector matrix V.
- 7. The method of claim 1, wherein the secure multi-party compute protocol comprises a secure multi-party compute inference protocol.
- 8. The method of claim 1, wherein updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V further comprises aggregating the respective set of gradients from each client device to generate the updated item-vector matrix V.
- 9. The method of claim 8, further comprising:
receiving, via the secure multi-party compute protocol, and from each client device of the set of client devices, an updated respective set of gradients; andupdating the updated item-vector matrix V using the updated respective set of gradients from each client device to generate a second updated item-vector matrix V.
- 10. A system comprising:
a processor; anda computer-readable storage device storing instructions which, when executed by the processor, cause the processor to perform operations comprising:
initiating an item-vector matrix V, wherein the item-vector matrix V comprises a value m related to a total number of items across one or more client devices and a value d representing a hidden dimension;transmitting the item-vector matrix V to each client device of a set of client devices, wherein each client device trains a local matrix factorization model using a respective user vector U and the item-vector matrix V to generate a respective set of gradients on each respective client device;receiving, via a secure multi-party compute protocol, and from each client device of the set of client devices, the respective set of gradients;updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V; anddownloading the updated item-vector matrix V to at least one client device of the set of client devices.
- 11. The system of claim 10, wherein each client device trains the local matrix factorization model using a stochastic gradient descent method.
- 12. The system of claim 10, wherein the respective set of gradients is encrypted at each client device.
- 13. The system of claim 10, wherein updating the item-vector matrix V at the server using a privacy-preserving aggregation method.
- 14. The system of claim 10, wherein the updated item-vector matrix V is trained when a specific threshold is reached or a specific model accuracy is reached.
- 15. The system of claim 10, wherein each client device can predict top items based on the updated item-vector matrix V.
- 16. The system of claim 10, wherein the secure multi-party compute protocol comprises a secure multi-party compute inference protocol.
- 17. The system of claim 10, wherein updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V further comprises aggregating the respective set of gradients from each client device to generate the updated item-vector matrix V.
- 18. The system of claim 17, wherein the computer-readable storage device stores additional instructions which, when executed by the processor, cause the processor to perform operations further comprising:
receiving, via the secure multi-party compute protocol, and from each client device of the set of client devices, an updated respective set of gradients; andupdating the updated item-vector matrix V using the updated respective set of gradients from each client device to generate a second updated item-vector matrix V.
- 19. A method comprising:
receiving an item-vector matrix V at a client device of a set of client devices, wherein the item-vector matrix V was initiated at a server device and wherein the item-vector matrix V comprises a value m related to a total number of items across one or more client devices and a value d representing a hidden dimension;training a local matrix factorization model using a respective user vector U and the item-vector matrix V to generate a set of gradients on the client device;transmitting, via a secure multi-party compute protocol, the set of gradients to the server device, wherein the server device updates the item-vector matrix V using the set of gradients from the client device and other respective sets of gradients from other respective client devices of the set of client devices to generate an updated item-vector matrix V; andreceiving the updated item-vector matrix V at the client device.
- 20. The system of claim 19, wherein the client device trains the local matrix factorization model using a stochastic gradient descent method.
Provisional Applications (6)
|
Number |
Date |
Country |
|
63241255 |
Sep 2021 |
US |
|
63020930 |
May 2020 |
US |
|
62948105 |
Dec 2019 |
US |
|
62948105 |
Dec 2019 |
US |
|
62948105 |
Dec 2019 |
US |
|
62948105 |
Dec 2019 |
US |
Continuations (4)
|
Number |
Date |
Country |
Parent |
17743887 |
May 2022 |
US |
Child |
17939585 |
|
US |
Parent |
17742808 |
May 2022 |
US |
Child |
17939585 |
|
US |
Parent |
17180475 |
Feb 2021 |
US |
Child |
17939585 |
|
US |
Parent |
16828354 |
Mar 2020 |
US |
Child |
17176530 |
|
US |
Continuation in Parts (4)
|
Number |
Date |
Country |
Parent |
17176530 |
Feb 2021 |
US |
Child |
17180475 |
|
US |
Parent |
16828085 |
Mar 2020 |
US |
Child |
17180475 |
|
US |
Parent |
16828216 |
Mar 2020 |
US |
Child |
17180475 |
|
US |
Parent |
16828420 |
Mar 2020 |
US |
Child |
17180475 |
|
US |