US 12,282,867 B2
Privacy preserving machine learning using secure multi-party computation
Gang Wang, Frederick, MD (US); and Marcel M. Moti Yung, New York, NY (US)
Assigned to Google LLC, Mountain View, CA (US)
Appl. No. 17/927,923
Filed by Google LLC, Mountain View, CA (US)
PCT Filed Sep. 29, 2021, PCT No. PCT/US2021/052540
§ 371(c)(1), (2) Date Nov. 28, 2022,
PCT Pub. No. WO2022/072415, PCT Pub. Date Apr. 7, 2022.
Claims priority of application No. 277761 (IL), filed on Oct. 2, 2020.
Prior Publication US 2023/0214684 A1, Jul. 6, 2023
Int. Cl. G06N 5/04 (2023.01); G06F 18/2413 (2023.01); G06F 21/60 (2013.01)
CPC G06N 5/04 (2013.01) [G06F 18/24147 (2023.01); G06F 21/602 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
receiving, by a first computing system of a plurality of multi-party computation (MPC) systems, an inference request comprising a first share of a given user profile comprising data about a given user;
identifying a number k of nearest neighbor user profiles that are considered most similar to the given user profile among a plurality of user profiles, wherein k is a positive integer, and wherein each user profile comprises a respective label indicating one or more user groups to which the user profile is assigned, the identifying comprising:
identifying, by the first computing system and based on the first share of the given user profile and a first k-nearest neighbor model trained using the plurality of user profiles, a first set of nearest neighbor user profiles;
receiving, by the first computing system and from each of one or more second computing systems of the plurality of MPC systems, data indicating a respective second set of nearest neighbor profiles identified by the second computing system based on a respective second share of the given user profile and a respective second k-nearest neighbor model trained by the second computing system;
identifying, by the first computing system and based on the first set of nearest neighbor user profiles and each second set of nearest neighbor user profiles, the number k of nearest neighbor user profiles;
generating, by the first computing system, a first share of an inference result based on the respective label for each of the k nearest neighbor user profiles, wherein the inference result indicates whether the given user corresponding to the given user profile is to be added to a given user group indicated by the respective label of at least one of the k nearest neighbor user profiles; and
providing, by the first computing system and to a client device, the first share of the inference result.