Secure machine learning model training using encryption
AssigneeMicrosoft Technology Licensing, LLC
InventorsXinwei Gong, Abelino E. Jimenez Gajardo, Kinjal Basu
Life of this patent
Estimating the term…
Abstract
Embodiments of the disclosed technologies include, at a data processor, extracting a subset of messages, creating a set of training samples, creating an encrypted training set, and sending the encrypted training set to a model training system, and, at the model training system, labeling the encrypted training set, training the machine learning model, and decrypting the trained machine learning model.
Claims20
A method for securely training a machine learning model to classify messages, the method comprising:
- at a model training system, (i) creating a pre-training set comprising unencrypted negative training samples, and (ii) pre-training the machine learning model on the pre-training set of negative samples to produce a pre-trained machine learning model;
- at a data processor, (i) encrypting the pre-trained machine learning model by applying a homomorphic encryption mechanism to the pre-trained machine learning model using a public key, (ii) extracting a subset of messages from a set of messages stored at a storage associated with a location identifier, the messages in the set of messages each comprising a source identifier, a destination identifier, and message content, and the messages in the subset of messages each comprising the message content, (iii) creating a set of training samples by applying at least one irreversible content processing mechanism to the subset of messages, (iv) creating an encrypted training set by applying the homomorphic encryption mechanism to each sample of the set of training samples using the public key, and (v) sending the encrypted training set to a model training system;
- and
- at the model training system, (i) based on the location identifier, labeling each sample of the encrypted training set with a label used for downstream routing to produce a labeled encrypted training set, (ii) based on the labeled encrypted training set, further training the pre-trained machine learning model to classify input messages with the label, wherein training the pre-trained machine learning model to classify the input messages with the label occurs after the data processor encrypts the pre- trained machine learning model, and (iii) decrypting the trained machine learning model using a private key associated with the public key, the private key accessible to the model training system but not the data processor.
A system for securely training a machine learning model to classify messages as abusive or not abusive, the system comprising:
- a data processor;
- and
- a model training system coupled to the data processor;
- wherein the model training system is to (i) create a pre-training set comprising unencrypted negative training samples, wherein the unencrypted negative training samples are labeled not abusive and (ii) pre-train the machine learning model on the pre-training set of negative samples to produce a pre-trained machine learning model;
- wherein the data processor is to (i) encrypt the pre-trained machine learning model by applying a homomorphic encryption mechanism to the pre-trained machine learning model using a public key, (ii) extract a subset of messages from a set of messages stored at a storage associated with a location identifier, the messages in the set of messages each comprising a source identifier, a destination identifier, and message content, and the messages in the subset of messages each comprising the message content, (iii) create a set of training samples by applying at least one irreversible content processing mechanism to the subset of messages, (iv) create an encrypted training set by applying the homomorphic encryption mechanism to each sample of the set of training samples using the public key, and (iv) send the encrypted training set to the model training system;
- and
- wherein the model training system is further to (i) based on the location identifier, label each sample of the encrypted training set as abusive or not abusive to produce a labeled encrypted training set, (ii) based on the labeled encrypted training set, further train the pre-trained machine learning model to classify input messages as abusive or not abusive, for downstream routing, wherein training the pre-trained machine learning model to classify the input messages as abusive or not abusive occurs after the data processor encrypts the pre-trained machine learning model, and (iii) decrypt the trained machine learning model using a private key associated with the public key, the private key accessible to the model training system but not the data processor.
Dependencies are inferred from the claim text.