| CPC H04L 63/0428 (2013.01) [G06F 17/16 (2013.01); G06F 18/2113 (2023.01); G06F 18/24 (2023.01); G06N 3/04 (2013.01); G06N 3/082 (2013.01); G06Q 20/401 (2013.01); G06Q 30/0623 (2013.01); H04L 9/008 (2013.01); H04L 9/0625 (2013.01); G06Q 2220/00 (2013.01); H04L 2209/46 (2013.01)] | 17 Claims |

|
1. A method comprising:
dividing, at a first computing device, a trained model into a first portion of the trained model and a second portion of the trained model;
transmitting the second portion of the trained model to a second computing device, wherein the second computing device provides private data to the second portion of the trained model to generate activation values and wherein the private data is kept secret from the first computing device;
receiving the activation values at the first computing device from the second computing device;
applying the activation values to the first portion of the trained model to yield a trained model output, wherein applying the activation values to the first portion of the trained model is part of a prediction process of predicting the trained model output based on the private data that preservers privacy between the first computing device and the second computing device;
and transmitting the trained model output from the first computing device to the second computing device, wherein computations occurring with the first portion of the trained model on the first computing device and computations occurring with the second portion of the trained model on the second computing device both use secure multi-party computation which implements a Secure Multi function, and a SecureCompare function operating on a Ring R and wherein the Secure Multi function and SecureCompare function enables the first computing device and the second computing device to securely perform multiplication and comparison on their respective portion of the trained model utilizing the Ring R to yield the trained model output.
|