Method, apparatus and system for secure vertical federated learning

US11836583B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11836583-B2
Application numberUS-202017014204-A
CountryUS
Kind codeB2
Filing dateSep 8, 2020
Priority dateSep 9, 2019
Publication dateDec 5, 2023
Grant dateDec 5, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A machine learning model is learned using secure vertical federated learning by receiving, by a network machine learning model, from a plurality of private machine learning models, a set of private machine learning model outputs. The set of private machine learning model outputs is based on data owned exclusively by each of the plurality of private machine learning models. The set of private machine learning model machine learning outputs is aligned based on sample IDs of the data. The network machine learning model, a prediction, the prediction being the output of the network model based on the set of private machine learning model outputs. Transmitting, by the network model, the prediction, to one of the plurality of private machine learning models, the one of the plurality of private machine learning models comprising labels. Receiving, by the network model, from the one of the plurality of private machine learning models, a loss based on the labels and the prediction, and calculating a gradient based on the loss, and updating a parameter of the network model based on the loss.

First claim

Opening claim text (preview).

We claim: 1. A method for operating a machine learning model, the method comprising: receiving, by a server operating a central machine learning model g 0 , from a plurality of computing systems each operating a different respective one of a plurality of private machine learning models a set of outputs g 1 , . . . , g k ; a set of outputs o 1 , . . . , o k of the private machine learning models, wherein each one of the plurality of computing systems transmits a different respective member o j of the set of outputs for said receipt by the server, each respective member o j of the set of outputs being generated by a different respective one of the private machine learning models g j based on a different respective portion x i,j of an identified data sample x i , such that at least one respective portion x i,j is strictly contained within the data sample x i and each respective portion x i,j is contained within or is equal to the data sample x i , wherein the data sample x i is data for a single entity, the data sample consists of multiple features corresponding to different aspects of the single entity, and the different respective portions x i,j are different subsets of said multiple features, the set of outputs being aligned based on a sample ID identifying said data sample x i ; providing, by the server, a prediction o 0 computed by the central machine learning model g 0 based on the set of outputs o 1 , . . . , o k in combination; receiving, at the server, a loss, the loss computed based on a comparison of the prediction with a label corresponding to the data sample; and initiating updating of current model parameters of the machine learning model based on the loss. 2. The method of claim 1 , further comprising computing, by the server, a gradient of the loss relative to model parameters of the central machine learning model, wherein said updating the current model parameters of the machine learning model being trained is based directly or indirectly on said gradient of the loss. 3. The method of claim 1 , wherein providing the prediction comprises transmitting the prediction to a designated computing system of the plurality of computing systems, said designated computing system storing the label, the loss is computed by the designated computing system, and wherein receiving the loss comprises receiving the loss from the designated computing system. 4. The method of claim 1 , wherein providing the prediction comprises providing the prediction to a training function of the server, said training function storing the label, and wherein receiving the loss comprises receiving the loss from the training function, the method further comprising: prior to said receiving the prediction, receiving, by the server from a designated computing system of the computing systems, the label and storing the label in a memory accessible to the server; and computing the loss using the training function. 5. The method of claim 1 , wherein the machine learning model being trained is the central machine learning model, the method further comprising, by the server, updating said current model parameters of the central machine learning model based on the loss. 6. The method of claim 1 , wherein the machine learning model being trained is one of the plurality of private machine learning models, wherein initiating updating of current model parameters of the machine learning model being trained comprises transmitting, by the server, an indication of the loss or an indication of a gradient of the loss to a computing system operating one of the plurality of private machine learning models. 7. The method of claim 6 , wherein said gradient of the loss is a gradient relative to model parameters of the central machine learning model, wherein said updating the current model parameters of said one of the private machine learning models is based directly or a gradient of the loss relative to the current model parameters, said gradient of the loss relative to the current model parameters computed from said gradient relative to model parameters of the central machine learning model using a computation implementing a chain rule of derivatives. 8. The method of claim 1 , further comprising repeating said method until a convergence condition is reached. 9. A server comprising a computer processor operatively coupled to memory, and a communication interface, the server operating a central machine learning model and configured to: receive, from a plurality of computing systems each operating a different respective one of a plurality of private machine learning models g 1 , . . . , g k : a set of outputs o 1 , . . . , o k of the private machine learning models, wherein each one of the plurality of computing systems transmits a different respective member o j of the set of outputs for said receipt by the server, each respective member o j of the set of outputs being generated by a different respective one of the private machine learning models g j based on a different respective portion x i,j of an identified data sample x i , such that at least one respective portion x i,j is strictly contained within the data sample x i , and each respective portion x i,j is contained within or is equal to the data sample x i , wherein the data sample x i is data for a single entity, the data sample consists of multiple features corresponding to different aspects of the single entity, and the different respective portions x i,j are different subsets of said multiple features, the set of outputs being aligned based on a sample ID identifying said data sample x i ; provide a prediction o 0 computed by the central machine learning model g 0 based on the set of outputs o 1 , . . . , o k in combination; receive a loss computed based on a comparison of the prediction with a label corresponding to the data sample; and initiate updating of current model parameters of the machine learning model based on the loss. 10. The server of claim 9 , further configured to compute a gradient of the loss relative to model parameters of the central machine learning model, wherein said updating the current model parameters of the machine learning model being trained is based directly or indirectly on said gradient of the loss. 11. The server of claim 9 , wherein providing the prediction comprises transmitting the prediction to a designated computing system of the plurality of computing systems, said designated computing system holding the label, the loss is computed by the designated computing system, and wherein receiving the loss comprises receiving the loss from the designated computing system. 12. The server of claim 9 , wherein providing the prediction comprises providing the prediction to a training function of the server, said training function holding the label, and wherein receiving the loss comprises receiving the loss from the training function, the server further configured to: prior to said receiving the prediction, receive, from a designated computing system of the computing systems, the label; store the label in a memory accessible to the server; and compute the loss using the training function. 13. The server of claim 9 , wherein the machine learning model being trained is the central machine learning model, the server further configured to update said current model parameters of the central machine learning model based on the loss. 14. The server of claim 9 , wherein the machine learning model being trained is one of the plurality of private machine learning models, wherein initiating updating of current model parameters of the machine learning model being trained comprises transmitting, by t

Assignees

Inventors

Classifications

  • Supervised learning · CPC title

  • Distributed learning, e.g. federated learning · CPC title

  • G06N20/00Primary

    Machine learning · CPC title

  • Market modelling; Market analysis; Collecting market data · CPC title

  • G06N3/045Primary

    Combinations of networks · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11836583B2 cover?
A machine learning model is learned using secure vertical federated learning by receiving, by a network machine learning model, from a plurality of private machine learning models, a set of private machine learning model outputs. The set of private machine learning model outputs is based on data owned exclusively by each of the plurality of private machine learning models. The set of private ma…
Who is the assignee on this patent?
Huawei Cloud Computing Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06N20/00. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 05 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).