IP Library › Granted Patent US 12,505,376
Granted Patent B2
US 12,505,376 · App. 17/227,851 · Granted Dec 23, 2025

Federated learning with only positive labels

Inventors: Ankit Singh Rawat (New York, NY); Xinnan Yu (Forest Hill, NY); Aditya Krishna Menon (New York, NY); Sanjiv Kumar (Jericho, NY)
Assignee: GOOGLE LLC
G06N20/00G06F17/16G06N5/027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,505,376
App. No.
17/227,851
Filed
Apr 12, 2021
Granted
Dec 23, 2025
Kind
B2
Art Unit
2123
USPC
706/10
Abstract

Generally, the present disclosure is directed to systems and methods that perform spreadout regularization to enable learning of a multi-class classification model in the federated setting, where each user has access to the positive data associated with only a limited number of classes (e.g., a single class). Examples of such settings include decentralized training of face recognition models or speaker identification models, where in addition to the user specific facial images and voice samples, the class embeddings for the users also constitute sensitive information that cannot be shared with other users.

Claims (46)

1 . A computing system that performs spreadout regularization to prevent model collapse in a federated learning setting with only positive labels, the computing system comprising:

a coordinating computing system comprising one or more processors and one or more memory devices storing instructions that, when executed by the one or more processors, cause the coordinating computing system to perform coordinating operations, the coordinating operations comprising, for at least one of one or more update iterations:

accessing, from one or more databases stored in the one or more memory devices, a current classification matrix that comprises a plurality of class embeddings respectively associated with a plurality of classes;

receiving, via a network interface and respectively from one or more client computing devices, one or more updates respectively to one or more class embeddings of the plurality of class embeddings, wherein each update to one of the class embeddings was generated by a corresponding client computing device based on only positive training examples that have positive labels for a corresponding class, wherein the client computing devices lack access to negative class embeddings for other classes, and wherein each update is transmitted to the coordinating computing system without transmitting the positive training examples themselves, thereby reducing communication of private information;

generating an intermediate classification matrix that comprises a plurality of intermediate class embeddings, wherein generating the intermediate classification matrix comprises applying the one or more updates respectively to the one or more class embeddings of the plurality of class embeddings;

performing a spreadout regularization on at least a subset of the intermediate class embeddings contained in the intermediate classification matrix to obtain an updated classification matrix, wherein performing the spreadout regularization comprises modifying at least one of the class embeddings included in at least the subset of the intermediate class embeddings to increase a cumulative spacing among at least the subset of the intermediate class embeddings, thereby preventing the class embeddings from collapsing to a shared point in an embedding space; and

outputting the updated classification matrix for use in performing classification.

2 . The computing system of claim 1 , wherein:

receiving, via the network interface and respectively from the one or more client computing devices, the one or more updates respectively to the one or more class embeddings comprises receiving, via a network interface and respectively from the one or more client computing devices, one or more replacement class embeddings respectively for the one or more class embeddings; and

applying the one or more updates respectively to the one or more class embeddings comprises respectively replacing the one or more class embeddings with the one or more replacement class embeddings.

3 . The computing system of claim 1 , wherein performing the spreadout regularization on at least the subset of the intermediate class embeddings comprises performing a single unified spreadout regularization on all of the class embeddings contained in the intermediate classification matrix to obtain the updated classification matrix.

4 . The computing system of claim 1 , wherein performing the spreadout regularization on at least the subset of the intermediate class embeddings comprises performing, separately for each of one or more class embeddings, the spreadout regularization relative to only a subset of nearest class embeddings surrounding such class embedding.

5 . The computing system of claim 4 , wherein performing, separately for each of the one or more class embeddings, the spreadout regularization relative to only the subset of nearest class embeddings surrounding such class embedding comprises performing, separately for each of the class embeddings contained in the intermediate classification matrix, the spreadout regularization relative to only the subset of nearest class embeddings surrounding such class embedding.

6 . The computing system of claim 1 , wherein performing the spreadout regularization comprises updating one or more of the class embeddings contained in the classification matrix according to a learning rate and in a direction negative to a gradient of a spreadout regularization function.

7 . The computing system of claim 1 , wherein performing the spreadout regularization comprises evaluating a spreadout regularization function that evaluates the cumulative spacing among at least the subset of the intermediate class embeddings, and wherein a spacing between a pair of class embeddings comprises a square of a maximum of a first value or a second value, wherein the first value equals zero and the second value equals a margin value minus a distance between the pair of class embeddings.

8 . The computing system of claim 1 , wherein performing the spreadout regularization comprises evaluating a spreadout regularization function that evaluates the cumulative spacing among only the subset of the intermediate class embeddings, and wherein a spacing between a pair of class embeddings comprises a negative of a squared distance between the pair of class embeddings.

9 . The computing system of claim 1 , wherein outputting the updated classification matrix for use in performing classification comprises respectively transmitting one or more of the class embeddings from the updated classification matrix to the one or more client computing devices for use at the client computing devices in performing classification of inputs relative to the corresponding class.

10 . The computing system of claim 1 , further comprising:

at least one client computing device of the one or more client computing devices, wherein the at least one client computing device is configured to perform client operations, the client operations comprising, for at least one of the one or more update iterations:

receiving a current version of a first class embedding from the coordinating computing system for a first class of the plurality of classes, wherein the current version of the first class embedding is contained in the updated classification matrix, and wherein at least a majority of training examples accessible by the client computing device comprise positive training examples that have positive labels for the first class;

determining an update to the first class embedding for the first class based on the positive training examples; and

communicating the update to the first class embedding to the coordinating computing system.

11 . The computing system of claim 10 , wherein the client computing device comprises a smartphone.

12 . The computing system of claim 1 , wherein the plurality of classes comprises a plurality of facial recognition classes or speech recognition classes.

13 . The computing system of claim 12 , wherein the positive training examples for each class comprise facial images or speech audio that has a positive label for such class.

14 . A client computing device, comprising:

one or more processors; and

one or more non-transitory computer-readable media that collectively store:

one or more positive training examples that have a positive label for a first class of a plurality of different classes; and

instructions that, when executed by the one or more processors, cause the client computing device to perform client operations, the client operations comprising, for at least one of one or more update iterations:

receiving, via a network interface and from a coordinating computing system, a current version of a first class embedding associated with the first class;

determining an update to the first class embedding for the first class based only on the one or more positive training examples, and wherein the client computing device lacks access to negative class embeddings for other classes; and

communicating, via the network interface, the update to the first class embedding to the coordinating computing system for spreadout regularization by the coordinating computing system, wherein the update is communicated to the coordinating computing system without transmitting the positive training examples themselves, thereby reducing communication of private information, wherein the spreadout regularization increases a cumulative spacing among at least a subset of a plurality of class embeddings associated with the plurality of different classes, thereby preventing the class embeddings from collapsing to a shared point in an embedding space, and wherein the first class embedding is included in at least the subset of the plurality of class embeddings.

15 . One or more non-transitory computer-readable media that collectively store class embeddings from an updated class classification matrix having been generated by performance of operations, the operations comprising:

accessing, from one or more databases stored in the one or more memory devices, a current classification matrix that comprises a plurality of class embeddings respectively associated with a plurality of classes;

receiving, via a network interface and respectively from one or more client computing devices, one or more updates respectively to one or more class embeddings of the plurality of class embeddings, wherein each update to one of the class embeddings was generated by a corresponding client computing device based on only positive training examples that have positive labels for a corresponding class, wherein the client computing devices lack access to negative class embeddings for other classes, and wherein each update is transmitted to the coordinating computing system without transmitting the positive training examples themselves, thereby reducing communication of private information;

generating an intermediate classification matrix that comprises a plurality of intermediate class embeddings, wherein generating the intermediate classification matrix comprises applying the one or more updates respectively to the one or more class embeddings of the plurality of class embeddings;

performing a spreadout regularization on at least a subset of the intermediate class embeddings contained in the intermediate classification matrix to obtain the updated classification matrix, wherein performing the spreadout regularization comprises modifying at least one of the class embeddings included in at least the subset of the intermediate class embeddings to increase a cumulative spacing among at least the subset of the intermediate class embeddings, thereby preventing the class embeddings from collapsing to a shared point in an embedding space; and

outputting the updated classification matrix for use in performing classification.

16 . The one or more non-transitory computer-readable media of claim 15 , wherein:

receiving, via the network interface and respectively from the one or more client computing devices, the one or more updates respectively to the one or more class embeddings comprises receiving, via the network interface and respectively from the one or more client computing devices, one or more replacement class embeddings respectively for the one or more class embeddings; and

applying the one or more updates respectively to the one or more class embeddings comprises respectively replacing the one or more class embeddings with the one or more replacement class embeddings.

17 . The one or more non-transitory computer-readable media of claim 15 , wherein performing the spreadout regularization on at least the subset of the intermediate class embeddings comprises performing a single unified spreadout regularization on all of the class embeddings contained in the intermediate classification matrix to obtain the updated classification matrix.

18 . The one or more non-transitory computer-readable media of claim 15 , wherein performing the spreadout regularization on at least the subset of the intermediate class embeddings comprises performing, separately for each of one or more class embeddings, the spreadout regularization relative to only a subset of nearest class embeddings surrounding such class embedding.

19 . The one or more non-transitory computer-readable media of claim 18 , wherein performing, separately for each of the one or more class embeddings, the spreadout regularization relative to only the subset of nearest class embeddings surrounding such class embedding comprises performing, separately for each of the class embeddings contained in the intermediate classification matrix, the spreadout regularization relative to only the subset of nearest class embeddings surrounding such class embedding.

20 . The one or more non-transitory computer-readable media of claim 15 , wherein performing the spreadout regularization comprises updating one or more of the class embeddings contained in the classification matrix according to a learning rate and in a direction negative to a gradient of a spreadout regularization function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2021
From: RAWAT, ANKIT SINGH; YU, XINNAN; MENON, ADITYA KRISHNA; KUMAR, SANJIV
To: GOOGLE LLC
Reel/Frame 055943/0276 →
Continuity (2)
Provisional Application 63008254 · Apr 10, 2020
Related Publication 20210326757A1 · Oct 21, 2021
References Cited (30)
US 20150206064A1 · Levman · 2015 [cited by examiner]
US 20210117780A1 · Malik · 2021 [cited by examiner]
Zhang, Xu, Felix X. Yu, Sanjiv Kumar, and Shih-Fu Chang. “Learning spread-out local feature descriptors.” In Proceedings of the IEEE international conference on computer vision, pp. 4595-4603. 2017. (Year: 2017). [cited by examiner]
Abadi et al, “Deep Learning with Differential Privacy”, arXiv:1607v2, Oct. 24, 2016, 14 pages. [cited by applicant]
Agarwal et al, “cpSGD: Communication-Efficient and Differentially-Private Distributed SGD”, arXiv:1805v1, May 27, 2018, 28 pages. [cited by applicant]
Augenstein et al, “Generative Models for Effective ML on Private, Decentralized Dataset”, arXiv:1911v2, Feb. 4, 2020, 26 pages. [cited by applicant]
Barlett et al, “Convexity, Classification, and Risk Bounds”, Journal of American Statistical Association, 36 pages. [cited by applicant]
Bonawitz et al, “Practical Secure Aggregation for Federated Learning on User-Held Data”, arXiv:1611v1. Nov. 14, 2016, 5 pages. [cited by applicant]
Chechik et al., “Large Scale Online Learning of Image Similarity Through Ranking”, Journal of Machine Research, vol. 11, 2010, 27 pages. [cited by applicant]
Chopra et al, “Learning a Similarity Metric Discriminatively, with Application to Face Verification”, Computer Vision and Pattern Recognition, 8 pages. [cited by applicant]
Dietterich et al, “Error-Correcting Output Codes: A General Method for Improving Multiclass Inductive Learning Programs”, Connectionist Representations, pp. 572-577. [cited by applicant]
Elkan et al, “Learning Classifiers from Only Positive and Unlabeled Data”, International Conference on Knowledge Discovery and Data Mining, 2008, pp. 213-220. [cited by applicant]
Guo et al, “Breaking the Glass Ceiling for Embedding-Based Classifiers for Large Output Spaces”, Conference on Neural Information Processing Systems, Vancouver, Canada, 11 pages. [cited by applicant]
Hadsell et al, “Dimensionality Reduction by Learning an Invariant Mapping”, Computer Vision and Pattern Recognition, 8 pages. [cited by applicant]
He et al, “Deep Residual Learning for Image Recognition”, arXiv:1512v1, Dec. 10, 2015, 12 pages. [cited by applicant]
He et al, “Identity Mappings in Deep Residual Networks”, arXiv:1603v3, Jul. 25, 2016, 15 pages. [cited by applicant]
Hsieh et al, “PU Learning for Matrix Completion”, International Conference on Machine Learning, 2015, 9 pages. [cited by applicant]
Li et al, “Federated Learning; Challenges, Methods, and Future Directions”, arXiv:1908v1, Aug. 21, 2019, 21 pages. [cited by applicant]
Liu et al, “Partially Supervised Classification of Text Documents”, International Conference on Machine Learning, 2002, 8 pages. [cited by applicant]
Manevitz et al, “One-Class SVMS for Document Classification”, Journal of Machine Learning Research, 2001, pp. 139-154. [cited by applicant]
McMahan et al, “Communication-Efficient Learning of Deep Networks from Decentralized Data”, arXiv:1602v3, Feb. 28, 2017, 11 pages. [cited by applicant]
Mohri et al, “Agnostic Federated Learning”, arXiv:1902v1, Feb. 1, 2019, 30 pages. [cited by applicant]
Moya et al, “Network Constraints and Multi-Objective Optimization for One-Class Classification”, Neural Networks, vol. 9, No. 3, pp. 463-474. [cited by applicant]
Plessis et al, “Convex Formulation for Learning from Positive and Unlabeled Data”, International Conference on Machine Learning, 2015, 9 pages. [cited by applicant]
Pujol et al, “Discriminant ECOC: A Heuristic Method for Application Dependent Design of Error Correcting Output Codes”, Pattern Analysis and Machine Intelligence, vol. 28, No. 6, Jun. 2006, pp. 1007-1012. [cited by applicant]
Reddi et al, “Stochastic Negative Mining for Learning with Large Output Spaces”, arXiv:1801v1, Oct. 16, 2018, 18 pages. [cited by applicant]
Varma et al, “Extreme Classification Repository”, http://manikvarma.org/downloads/XC/XMLRepository.html, retrieved on Apr. 12, 2021. [cited by applicant]
Yu et al, “Designing Category-Level Attributes for Discriminative Visual Recognition”, Computer Vision and Pattern Recognition, 8 pages. [cited by applicant]
Zhang et al, “Statistical Behavior and Consistency of Classification Methods Based on Convex Risk Minimization”, the Annals of Statistics, vol. 32, No. 1, 2004, pp. 56-85. [cited by applicant]
Zhang et al, “Learning Spread-Out Local Feature Descriptors”, International Conference on Computer Vision, 9 pages. [cited by applicant]