📓 Notebooks on Federated Learning Unlearning
My Final Year Project (COMP4801) of 🎓 BEng(CompSc) at 🏫 HKU.
FYP22002: A Repository of Jupyter Notebooks on Unlearning in Federated Learning
👉 For more info on the project, check out the 🌐 project website (backup on HKU CS server in case GitHub goes down)
This repo aims to provide materials, in the form of Jupyter Notebooks, for studying machine unlearning in federated learning (FL), both of which are new research areas that are developing rapidly.
Note The data collection ended in early April 2023 and I have done my best to scrape the internet on this topic. If you are checking out this repo in the future, you may find it incomplete. However, it is helpful that we have this snapshot, so that future researchers can see how this new area grew and take inspirations from earlier research.
The contents of the notebooks consist of
- general introduction to the area and it's background (0-2);
- research progress in 2021 (3-5);
- research progress in 2022 (6-15);
- research progress in 2023 (until early April) (16-19).
The notebooks, except those in the 1st part, are ordered according to the publication dates (or conference dates, or last edit date of preprints) of the papers.
📖-marked notebooks are summaries of the paper with key concepts, figures and tables presented.
💻-marked notebooks are instructions on how to run the code for the design algorithms, with tweaks made to get rid of bugs that usually exist in the original code.
Clicking on 📖 or 💻 can open the corresponding notebook in Google Colab.
- Machine Learning
- Computer Security
- Operating Systems
🎲 Optional:
- Cryptography
- Distributed Systems
# | Topics | Contents | References |
---|---|---|---|
0 | 👋 Intro to unlearning and FL | 📖 intro-unlearning.ipynb 📖 intro-fl.ipynb 💻 code-amnesiac-ml.ipynb 💻 code-flwr.ipynb |
123456789 |
1 | 🔍 More on unlearning | 📖 unlearning-definition.ipynb 📖 unlearning-framework.ipynb |
1 |
2 | 🌉 Unlearning in FL | 📖 ul-in-fl.ipynb | 18 |
3 | 🎉 FedEraser: 1st attempt | 📖 federaser.ipynb 💻 code-federaser.ipynb |
10 |
4 | 🌳 RevFRF: federated unlearning in RF | 📖 revfrf.ipynb | 11 |
5 | 🪙 Bayesian variational FL and unlearning | 📖 bayesian-variational.ipynb | 12 |
6 | 🧪 Federated unlearing with distillation | 📖 distillation.ipynb | 13 |
7 | ✂️ Federated unlearning with class-discriminative pruning | 📖 channel-prune.ipynb | 14 |
8 | 🏋️ Federated unlearing with rapid retraining | 📖 rapid-retrain.ipynb 💻 code-rapid-retrain.ipynb |
15 |
9 | 💫 Forget-SVGD: particle-based Bayesian federated unlearning | 📖 forget-svgd.ipynb | 16 |
10 | ✔️ VeriFi: Verifiable federated unlearning | 📖 verifi.ipynb | 17 |
11 | 🙅 Client opt-out | 📖 opt-out-unlearning.ipynb | 18 |
12 | 💊 FedRecover: recover from poison | 📖 fedrecover.ipynb | 19 |
13 | 👥 Unlearning of federated clusters | 📖 unlearning-cluster.ipynb | 20 |
14 | 🚀 Unlearning in federated optimization | 📖 sequential-informed.ipynb | 21 |
15 | 🚰 General Pipeline | 📖 federated-unlearning.ipynb | 22 |
16 | 🌌 Subspace-based federated unlearning | 📖 subspace.ipynb | 23 |
17 | 📊 Federated knowledge graph embedding learning and unlearning | 📖 heterogeneous-kg-embedding.ipynb | 24 |
18 | 👍 Federated unlearning for on-device recommendation | 📖 on-device-recommend.ipynb | 25 |
19 | 🔗 Knot: asynchronous federated unlearning | 📖 knot.ipynb 💻 code-knot.ipynb |
26 |
Footnotes
-
T. T. Nguyen, T. T. Huynh, P. L. Nguyen, A. W.-C. Liew, H. Yin, and Q. V. H. Nguyen, A Survey of Machine Unlearning. arXiv, 2022. [Paper] ↩ ↩2 ↩3
-
Q.-V. Dang, “Right to Be Forgotten in the Age of Machine Learning,” in Advances in Digital Science, 2021, pp. 403–411. [Paper] ↩
-
N. Pitropakis, E. Panaousis, T. Giannetsos, E. Anastasiadis, and G. Loukas, “A taxonomy and survey of attacks against machine learning,” Computer Science Review, vol. 34, p. 100199, 2019. [Paper] ↩
-
R. Shwartz-Ziv and N. Tishby, Opening the Black Box of Deep Neural Networks via Information. arXiv, 2017. [Paper] ↩
-
Y. Cao and J. Yang, “Towards Making Systems Forget with Machine Unlearning,” in 2015 IEEE Symposium on Security and Privacy, 2015, pp. 463–480. [Paper] [Video] ↩
-
L. Bourtoule et al., “Machine Unlearning,” in 2021 IEEE Symposium on Security and Privacy (SP), 2021, pp. 141–159. [Paper] [Video] ↩
-
C. Zhang, Y. Xie, H. Bai, B. Yu, W. Li, and Y. Gao, “A survey on federated learning,” Knowledge-Based Systems, vol. 216, p. 106775, 2021. [Paper] ↩
-
B. McMahan, E. Moore, D. Ramage, S. Hampson, and B. A. y Arcas, “Communication-Efficient Learning of Deep Networks from Decentralized Data,” in Proceedings of the 20th International Conference on Artificial Intelligence and Statistics, Apr. 2017, vol. 54, pp. 1273–1282. [Paper] ↩ ↩2
-
Graves, L., Nagisetty, V., & Ganesh, V. (2021). Amnesiac Machine Learning. Proceedings of the AAAI Conference on Artificial Intelligence, 35(13), 11516-11524. [Paper] ↩
-
G. Liu, X. Ma, Y. Yang, C. Wang, and J. Liu, “FedEraser: Enabling Efficient Client-Level Data Removal from Federated Learning Models,” in 2021 IEEE/ACM 29th International Symposium on Quality of Service (IWQOS), 2021, pp. 1–10. [Paper] ↩
-
Y. Liu, Z. Ma, Y. Yang, X. Liu, J. Ma, and K. Ren, “RevFRF: Enabling Cross-Domain Random Forest Training With Revocable Federated Learning,” IEEE Transactions on Dependable and Secure Computing, vol. 19, no. 6, pp. 3671–3685, 2022. [Paper] ↩
-
J. Gong, O. Simeone, and J. Kang, “Bayesian Variational Federated Learning and Unlearning in Decentralized Networks,” in 2021 IEEE 22nd International Workshop on Signal Processing Advances in Wireless Communications (SPAWC), 2021, pp. 216–220. [Paper] ↩
-
C. Wu, S. Zhu, and P. Mitra, Federated Unlearning with Knowledge Distillation. arXiv, 2022. [Paper] ↩
-
J. Wang, S. Guo, X. Xie, and H. Qi, “Federated Unlearning via Class-Discriminative Pruning,” in Proceedings of the ACM Web Conference 2022, 2022, pp. 622–632. [Paper] ↩
-
Y. Liu, L. Xu, X. Yuan, C. Wang, and B. Li, “The Right to be Forgotten in Federated Learning: An Efficient Realization with Rapid Retraining,” May 2022. doi: 10.1109/infocom48880.2022.9796721. [Paper] ↩
-
J. Gong, J. Kang, O. Simeone and R. Kassab, "Forget-SVGD: Particle-Based Bayesian Federated Unlearning," 2022 IEEE Data Science and Learning Workshop (DSLW), 2022, pp. 1-6, doi: 10.1109/DSLW53931.2022.9820602. [Paper] ↩
-
X. Gao et al., VeriFi: Towards Verifiable Federated Unlearning. arXiv, 2022. doi: 10.48550/ARXIV.2205.12709. [Paper] ↩
-
A. Halimi, S. Kadhe, A. Rawat, and N. Baracaldo, Federated Unlearning: How to Efficiently Erase a Client in FL? arXiv, 2022. doi: 10.48550/ARXIV.2207.05521. [Paper] ↩
-
X. Cao, J. Jia, Z. Zhang, and N. Z. Gong, FedRecover: Recovering from Poisoning Attacks in Federated Learning using Historical Information. arXiv, 2022. doi: 10.48550/ARXIV.2210.10936. [Paper] ↩
-
C. Pan, J. Sima, S. Prakash, V. Rana, and O. Milenkovic, Machine Unlearning of Federated Clusters. arXiv, 2022. doi: 10.48550/ARXIV.2210.16424. [Paper] ↩
-
Y. Fraboni, R. Vidal, L. Kameni, and M. Lorenzi, Sequential Informed Federated Unlearning: Efficient and Provable Client Unlearning in Federated Optimization. arXiv, 2022. doi: 10.48550/ARXIV.2211.11656. [Paper] ↩
-
L. Wu, S. Guo, J. Wang, Z. Hong, J. Zhang, and Y. Ding, “Federated Unlearning: Guarantee the Right of Clients to Forget,” IEEE Network, vol. 36, no. 5, pp. 129–135, 2022, doi: 10.1109/MNET.001.2200198. [Paper] ↩
-
G. Li, L. Shen, Y. Sun, Y. Hu, H. Hu, and D. Tao, Subspace based Federated Unlearning. arXiv, 2023. doi: 10.48550/ARXIV.2302.12448. [Paper] ↩
-
X. Zhu, G. Li, and W. Hu, Heterogeneous Federated Knowledge Graph Embedding Learning and Unlearning. arXiv, 2023. doi: 10.48550/ARXIV.2302.02069 [Paper] ↩
-
W. Yuan, H. Yin, F. Wu, S. Zhang, T. He, and H. Wang, “Federated Unlearning for On-Device Recommendation,” in Proceedings of the Sixteenth ACM International Conference on Web Search and Data Mining, 2023, pp. 393–401. doi: 10.1145/3539597.3570463. [Paper] ↩
-
N. Su and B. Li, “Asynchronous Federated Unlearning,” Proceedings of International Conference on Computer Communications (INFOCOM), 2023. [Paper] ↩