US 11,748,661 B2
Training method and apparatus for a distributed machine learning model and medium
Bo Jing, Beijing (CN)
Assigned to BEIJING BAIDU NETCOM SCIENCE TECHNOLOGY CO., LTD., Beijing (CN)
Filed by BEIJING BAIDU NETCOM SCIENCE TECHNOLOGY CO., LTD., Beijing (CN)
Filed on Sep. 15, 2022, as Appl. No. 17/932,405.
Claims priority of application No. 202111079943.4 (CN), filed on Sep. 15, 2021.
Prior Publication US 2023/0078726 A1, Mar. 16, 2023
Int. Cl. H04L 9/00 (2022.01); G06N 20/00 (2019.01); H04L 9/08 (2006.01)
CPC G06N 20/00 (2019.01) [H04L 9/008 (2013.01); H04L 9/088 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A training method for a distributed machine learning model, the method being executed by one participant of a plurality of participants participating in training of the model; the one participant being denoted as a first participant; among the plurality of participants, a participant other than the one participant being denoted as a second participant; and wherein the method comprises:
acquiring a first homomorphic encryption intermediate parameter and a second homomorphic encryption intermediate parameter;
generating a first interference parameter, and forming a first encryption interference parameter by encrypting the first interference parameter by using a second homomorphic public key of the second participant;
performing calculation based on the first homomorphic encryption intermediate parameter, the second homomorphic encryption intermediate parameter, the first encryption interference parameter and a homomorphic calculation function of a first submodel to generate a first encryption key parameter;
transmitting the first encryption key parameter to the second participant, and decrypting, by the second participant, the first encryption key parameter by using a second homomorphic private key;
acquiring a first key parameter obtained by the decrypting the first encryption key parameter by the second participant; and
iteratively updating the first submodel according to the first key parameter and the first interference parameter until training of the first submodel is completed;
wherein the first homomorphic encryption intermediate parameter is data obtained by encrypting a first training intermediate parameter by using the second homomorphic public key of the second participant, and the first training intermediate parameter is an intermediate parameter obtained by training the first submodel by the first participant based on first sample data;
the second homomorphic encryption intermediate parameter is data obtained by encrypting a second training intermediate parameter by using the second homomorphic public key of the second participant, and the second training intermediate parameter is an intermediate parameter obtained by training the second submodel by the second participant based on second sample data; and
the machine learning model comprises respective local submodels of at least two of the plurality of participants;
before the acquiring the first homomorphic encryption intermediate parameter and the second homomorphic encryption intermediate parameter, the method further comprising:
normalizing first original sample data of the first participant to obtain a first normalized value of a sample feature dimension and the first sample data, wherein the first sample data obtained by normalizing the first original sample data is configured for model training; and
forming a first encrypted normalized value by encrypting the first normalized value by using a third encryption key, and providing the first encrypted normalized value for a trusted third party; and
wherein after the training of the first submodel is completed, the method further comprises:
forming a first encrypted submodel by encrypting the first submodel by using the third encryption key, providing the first encrypted submodel for the trusted third party, so that the trusted third party combines the first encrypted submodel with encrypted submodels provided by the plurality of participants, performing denormalization on combined encrypted submodels based on encrypted normalized values provided by the plurality of participants, and then performing segmentation on denormalized submodels; and
receiving a first denormalized submodel returned by the trusted third party after the denormalized submodels are segmented.