IP Library › Granted Patent US 12,248,617
Granted Patent B2
US 12,248,617 · App. 17/811,166 · Granted Mar 11, 2025

Defending against adversarial attacks in federated learning

Inventors: Yi Zhou (San Jose, CA); Kamala Micaela Noelle Varma (Minneapolis, MN); Nathalie Baracaldo Angel (San Jose, CA)
Assignee: International Business Machines Corporation
G06F21/64G06N20/20
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,248,617
App. No.
17/811,166
Granted
Mar 11, 2025
Kind
B2
Abstract

A computer-implemented method, a computer program product, and a computer system for defending against adversarial attacks in federated learning. In the federated learning comprising an aggregator and parties, the aggregator receives weights sent from the respective parties. The aggregator computes values of a performance metric for weight arrays obtained by the respective parties, using a validation dataset. The aggregator ranks the values of the performance metric in a list. The aggregator recursively splits the list in half until one or more adversary updates of the weights are isolated. The aggregator excludes one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning.

Claims (125)

1. A computer-implemented method for defending against adversarial attacks in federated learning, the method comprising:

receiving, by an aggregator in the federated learning, weights sent from respective parties in the federated learning;

computing, by the aggregator, values of a performance metric for weight arrays obtained by the respective parties, using a validation dataset;

ranking, by the aggregator, the values of the performance metric in a list;

recursively splitting, by the aggregator, the list in half, and respective bottom halves thereafter, until one or more adversary updates of the weights are isolated by identifying two halves that are not statistically different and do have a difference in performance;

performing recursive splitting on a top half with higher performance of the two halves that are not statistically different until an honest update in the top half is isolated; and

excluding, by the aggregator, one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning, wherein the one or more adversary updates are a bottom half of the two halves that are not statistically different and the top half with the honest update excluded.

2. The computer-implemented method of claim 1 , further comprising:

averaging, by the aggregator, the weight arrays obtained by respective remaining parties, to update a global model in the federated learning.

3. The computer-implemented method of claim 1 , for recursively splitting the list, further comprising:

recursively splitting, by the aggregator, a half with lower performance into halves;

computing, by the aggregator, a mean of the values of the performance metric for each of the halves;

comparing, by the aggregator, means for the halves, using a statistical metric;

determining, by the aggregator, whether the halves are statistically different; and

in response to determining that the halves are statistically different, continuing, by the aggregator, recursive splitting.

4. The computer-implemented method of claim 3 , further comprising:

in response to determining that the halves are not statistically different, stopping, by the aggregator, the recursive splitting; and

identifying, by the aggregator, updates corresponding to current halves as the adversary updates.

5. The computer-implemented method of claim 3 , further comprising:

in response to determining that the halves are not statistically different, starting, by the aggregator, backtracking to recursively split a half with higher performance into two partitions;

computing, by the aggregator, a mean of the values of the performance metric for each of the two partitions;

comparing, by the aggregator, means for the two partitions, using the statistical metric;

determining, by the aggregator, whether the two partitions are statistically different;

in response to determining that the two partitions are not statistically different, continuing, by the aggregator, the backtracking, until a point separating honest updates and the one or more adversarial updates is found; and

in response to determining that the two partitions are statistically different, recursively splitting, by the aggregator, a partition with lower performance.

6. A computer program product for defending against adversarial attacks in federated learning, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors, the program instructions executable to:

receive, by an aggregator in the federated learning, weights sent from respective parties in the federated learning;

compute, by the aggregator, values of a performance metric for weight arrays obtained by the respective parties, using a validation dataset;

rank, by the aggregator, the values of the performance metric in a list;

recursively split, by the aggregator, the list in half, and respective bottom halves thereafter, until one or more adversary updates of the weights are isolated by identifying two halves that are not statistically different and do have a difference in performance;

perform recursive splitting on a top half with higher performance of the two halves that are not statistically different until an honest update in the top half is isolated; and

exclude, by the aggregator, one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning, wherein the one or more adversary updates are a bottom half of the two halves that are not statistically different and the top half with the honest update excluded.

7. The computer program product of claim 6 , further comprising the program instructions executable to:

average, by the aggregator, the weight arrays obtained by respective remaining parties, to update a global model in the federated learning.

8. The computer program product of claim 6 , for recursively splitting the list, further comprising the program instructions executable to:

recursively split, by the aggregator, a half with lower performance into halves;

compute, by the aggregator, a mean of the values of the performance metric for each of the halves;

compare, by the aggregator, means for the halves, using a statistical metric;

determine, by the aggregator, whether the halves are statistically different; and

in response to determining that the halves are statistically different, continue, by the aggregator, recursive splitting.

9. The computer program product of claim 8 , further comprising the program instructions executable to:

in response to determining that the halves are not statistically different, stop, by the aggregator, the recursive splitting; and

identify, by the aggregator, updates corresponding to current halves as the adversary updates.

10. The computer program product of claim 8 , further comprising program instructions executable to:

in response to determining that the halves are not statistically different, start, by the aggregator, backtracking to recursively split a half with higher performance into two partitions;

compute, by the aggregator, a mean of the values of the performance metric for each of the two partitions;

compare, by the aggregator, means for the two partitions, using the statistical metric;

determine, by the aggregator, whether the two partitions are statistically different;

in response to determining that the two partitions are not statistically different, continue, by the aggregator, the backtracking, until a point separating honest updates and the one or more adversarial updates is found; and

in response to determining that the two partitions are statistically different, recursively split, by the aggregator, a partition with lower performance.

11. A computer system for defending against adversarial attacks in federated learning, the computer system comprising one or more processors, one or more computer readable tangible storage devices, and program instructions stored on at least one of the one or more computer readable tangible storage devices for execution by at least one of the one or more processors, the program instructions executable to:

receive, by an aggregator in the federated learning, weights sent from respective parties in the federated learning;

compute, by the aggregator, values of a performance metric for weight arrays obtained by the respective parties, using a validation dataset;

rank, by the aggregator, the values of the performance metric in a list;

recursively split, by the aggregator, the list in half, and respective bottom halves thereafter, until one or more adversary updates of the weights are isolated by identifying two halves that are not statistically different and do have a difference in performance;

perform recursive splitting on a top half with higher performance of the two halves that are not statistically different until an honest update in the top half is isolated; and

exclude, by the aggregator, one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning, wherein the one or more adversary updates are a bottom half of the two halves that are not statistically different and the top half with the honest update excluded.

12. The computer system of claim 11 , further comprising the program instructions executable to:

average, by the aggregator, the weight arrays obtained by respective remaining parties, to update a global model in the federated learning.

13. The computer system of claim 11 , for recursively splitting the list, further comprising the program instructions executable to:

recursively split, by the aggregator, a half with lower performance into halves;

compute, by the aggregator, a mean of the values of the performance metric for each of the halves;

compare, by the aggregator, means for the halves, using a statistical metric;

determine, by the aggregator, whether the halves are statistically different; and

in response to determining that the halves are statistically different, continue, by the aggregator, recursive splitting.

14. The computer system of claim 13 , further comprising the program instructions executable to:

in response to determining that the halves are not statistically different, stop, by the aggregator, the recursive splitting; and

identify, by the aggregator, updates corresponding to current halves as the adversary updates.

15. The computer system of claim 13 , further comprising program instructions executable to:

in response to determining that the halves are not statistically different, starting, by the aggregator, backtracking to recursively split a half with higher performance into two partitions;

compute, by the aggregator, a mean of the values of the performance metric for each of the two partitions;

compare, by the aggregator, means for the two partitions, using the statistical metric;

determine, by the aggregator, whether the two partitions are statistically different;

in response to determining that the two partitions are not statistically different, continue, by the aggregator, the backtracking, until a point separating honest updates and the one or more adversarial updates is found; and

in response to determining that the two partitions are statistically different, recursively split, by the aggregator, a partition with lower performance.

16. A computer-implemented method for defending against adversarial attacks in federated learning, the method comprising:

receiving, by an aggregator in the federated learning, weights sent from respective parties in the federated learning;

computing, by the aggregator, values of loss for weight arrays obtained by the respective parties, using a validation dataset;

ranking, by the aggregator, the values of the loss in a list;

recursively splitting, by the aggregator, the list in half, and respective bottom halves thereafter, until one or more adversary updates of the weights are isolated by identifying two halves that are not statistically different and do have a difference in performance;

performing recursive splitting on a top half with higher performance of the two halves that are not statistically different until an honest update in the top half is isolated; and

excluding, by the aggregator, one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning, wherein the one or more adversary updates are a bottom half of the two halves that are not statistically different and the top half with the honest update excluded.

17. The computer-implemented method of claim 16 , further comprising:

averaging, by the aggregator, the weight arrays obtained by respective remaining parties, to update a global model in the federated learning.

18. The computer-implemented method of claim 16 , for recursively splitting the list, further comprising:

recursively split, by the aggregator, a half with higher loss values into halves;

computing, by the aggregator, a mean of the values of the loss for each of the halves;

comparing, by the aggregator, means for the halves, using a t-test;

determining, by the aggregator, whether the halves are statistically different; and

in response to determining that the halves are statistically different, continuing, by the aggregator, recursive splitting.

19. The computer-implemented method of claim 18 , further comprising:

in response to determining that the halves are not statistically different, stopping, by the aggregator, the recursive splitting; and

identifying, by the aggregator, updates corresponding to current halves as the adversary updates.

20. The computer-implemented method of claim 18 , further comprising:

in response to determining that the halves are not statistically different, starting, by the aggregator, backtracking to recursively split a half with lower loss values into two partitions;

computing, by the aggregator, a mean of the values of the loss for each of the two partitions;

comparing, by the aggregator, means for the two partitions, using the t-test;

determining, by the aggregator, whether the two partitions are statistically different;

in response to determining that the two partitions are not statistically different, continuing, by the aggregator, the backtracking, until a point separating honest updates and the one or more adversarial updates is found; and

in response to determining that the two partitions are statistically different, recursively splitting, by the aggregator, a partition with higher loss values.

21. A computer-implemented method for defending against adversarial attacks in federated learning, the method comprising:

receiving, by an aggregator in the federated learning, weights sent from respective parties in the federated learning;

computing, by the aggregator, values of accuracy for weight arrays obtained by the respective parties, using a validation dataset;

ranking, by the aggregator, the values of the accuracy in a list;

recursively splitting, by the aggregator, the list in half, and respective bottom halves thereafter, until one or more adversary updates of the weights are isolated by identifying two halves that are not statistically different and do have a difference in performance;

performing recursive splitting on a top half with higher performance of the two halves that are not statistically different until an honest update in the top half is isolated; and

excluding, by the aggregator, one or more parties that send the one or more adversary updates from participating in a current round of training in the federated learning, wherein the one or more adversary updates are a bottom half of the two halves that are not statistically different and the top half with the honest update excluded.

22. The computer-implemented method of claim 21 , further comprising:

averaging, by the aggregator, the weight arrays obtained by respective remaining parties, to update a global model in the federated learning.

23. The computer-implemented method of claim 21 , for recursively splitting the list, further comprising:

recursively split, by the aggregator, a half with lower accuracy values into halves;

computing, by the aggregator, a mean of the values of the accuracy for each of the halves;

comparing, by the aggregator, means for the halves, using a t-test;

determining, by the aggregator, whether the halves are statistically different; and

in response to determining that the halves are statistically different, continuing, by the aggregator, recursive splitting.

24. The computer-implemented method of claim 23 , further comprising:

in response to determining that the halves are not statistically different, stopping, by the aggregator, the recursive splitting; and

identifying, by the aggregator, updates corresponding to current halves as the adversary updates.

25. The computer-implemented method of claim 23 , further comprising:

in response to determining that the halves are not statistically different, starting, by the aggregator, backtracking to recursively split a half with higher accuracy values into two partitions;

computing, by the aggregator, a mean of the values of the accuracy for each of the two partitions;

comparing, by the aggregator, means for the two partitions, using the t-test;

determining, by the aggregator, whether the two partitions are statistically different;

in response to determining that the two partitions are not statistically different, continuing, by the aggregator, the backtracking, until a point separating honest updates and the one or more adversarial updates is found; and

in response to determining that the two partitions are statistically different, recursively splitting, by the aggregator, a partition with lower accuracy values.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2022
From: ZHOU, YI; VARMA, KAMALA MICAELA NOELLE; BARACALDO ANGEL, NATHALIE
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 060431/0060 →
Continuity (1)
Related Publication 20240012942A1 · Jan 11, 2024
References Cited (24)
US 20210051169A1 · Karame · 2021 [cited by examiner]
US 20210089579A1 · Shu · 2021 [cited by examiner]
US 20220108177A1 · Samek · 2022 [cited by examiner]
CN 114091356A · 2022 [cited by applicant]
WO 2021008675A1 · 2021 [cited by applicant]
Bagdasaryan, et al., “How To Backdoor Federated Learning,” arXiv:1807.00459v3 [cs.CR] Aug. 6, 2019, 15 pages. [cited by applicant]
Blanchard, et al., “Byzantine-Tolerant Machine Learning,” arXiv:1703.02757v1 [cs.DC] Mar. 8, 2017, 16 pages. [cited by applicant]
Fang, et al., “Local Model Poisoning Attacks to Byzantine-Robust Federated Learning,” in the Proceedings of the 29th USENIX Security Symposium, Aug. 12-14, 2020, 19 pages. [cited by applicant]
Jin, et al., “Stochastic-Sign SGD for Federated Learning with Theoretical Guarantees,” arXiv:2002.10940v5 [cs.LG] Sep. 27, 2021, 35 pages. [cited by applicant]
Mell et al., “The NIST Definition of Cloud Computing”, NIST National Institute of Standards and Technology U.S. Department of Commerce, Special Publication 800-145, Sep. 2011, 7 pages. [cited by applicant]
Rieger, et al., “Client Adaptation improves Federated Learning with Simulated Non-IID Clients,” arXiv:2007.04806v1 [cs.LG] Jul. 9, 2020, 11 pages. [cited by applicant]
Shejwalkar et al.,, “Manipulating the Byzantine: Optimizing Model Poisoning Attacks and Defenses for Federated Learning,” Network and Distributed Systems Security (NDSS), 2021, 19 pages. [cited by applicant]
Tolpegin, et al., “Data Poisoning Attacks Against Federated Learning Systems,” arXiv:2007.08432v2 [cs.LG] Aug. 11, 2020, 20 pages. [cited by applicant]
Varma, et al., “LEGATO: A LayerwisE Gradient AggregaTiOn Algorithm for Mitigating Byzantine Attacks in Federated Learning,” arXiv:2107.12490v1 [cs.LG] Jul. 26, 2021, 10 pages. [cited by applicant]
Wu et al., “Mitigating Backdoor Attacks in Federated Learning,” arXiv:2011.01767v2 [cs.CR] Jan. 14, 2021, 11 pages. [cited by applicant]
Xie, et al., “Fall of Empires: Breaking Byzantine-tolerant SGD by Inner Product Manipulation,” arXiv:1903.03936v1 [cs.LG] Mar. 10, 2019, 10 pages. [cited by applicant]
Xie, et al., “Generalized Byzantine-Tolerant SGD,” arXiv:1802.10116v3 [cs.DC] Mar. 23, 2018, 25 pages. [cited by applicant]
Xie, et al., “Zeno: Distributed Stochastic Gradient Descent with Suspicion-based Fault-tolerance,” Proceedings of the 36th International Conference on Machine Learning, Long Beach, California, PMLR 97, 2019, 9 pages. [cited by applicant]
Yin, et al., “Byzantine-Robust Distributed Learning: Towards Optimal Statistical Rates,” arXiv:1803.01498v2 [cs.LG] Feb. 25, 2021, 33 pages. [cited by applicant]
Zhu et al., “MANDERA: Malicious Node Detection in Federated Learning via Ranking,” arXiv:2110.1173v1 [cs.LG] Oct. 22, 2021, 14 pages. [cited by applicant]
Zhao et al: “FederatedReverse: A Detection and Defense Method Against Backdoor Attacks in Federated Learning”, Proceedings of the 2023 Conference on Human Information Interaction and Retrieval, ACMPUB27, Jun. 17, 2021 (… [cited by applicant]
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for Application PCT/EP2023/066459, Sep. 29, 2023, 11 pages. [cited by applicant]
Roux et al., “A Comparative Study of Divisive and Agglomerative Hierarchical Clustering Algorithms”, Journal of Classification, Springer, Aug. 7, 2018 (Aug. 7, 2018) , pp. 345-366, vol. 35, No. 2, Berlin, DE. [cited by applicant]
Sattler et al., “Clustered Federated Learning: Model-Agnostic Distributed Multitask Optimization Under Privacy Constraints,” IEEE Transactions on Neural Networks and Learning Systems, IEEE, Aug. 24, 2020, pp. 3710-3722,… [cited by applicant]