Skip to content

LyuH3/zkucb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Privacy-Preserving UCB Decision Process Verification via Zk-SNARKs

This repository contains the code and experiments for the paper "Privacy-Preserving UCB Decision Process Verification via Zk-SNARKs" presented at IJCAI 2024.

Citation

If you use this code in your research, please cite our paper:

@inproceedings{jiangPrivacyPreservingUCBDecision2024,
  title = {Privacy-{{Preserving UCB Decision Process Verification}} via Zk-{{SNARKs}}},
  booktitle = {Proceedings of the {{Thirty-ThirdInternational Joint Conference}} on {{Artificial Intelligence}}},
  author = {Jiang, Xikun and Lyu, He and Ying, Chenhao and Xu, Yibin and D{\"u}dder, Boris and Luo, Yuan},
  year = {2024},
  month = aug,
  pages = {5900--5908},
  publisher = {International Joint Conferences on Artificial Intelligence Organization},
  address = {Jeju, South Korea},
  doi = {10.24963/ijcai.2024/652},
  isbn = {978-1-956792-04-1}
}

Abstract

With the increasingly widespread application of machine learning, how to strike a balance between protecting the privacy of data and algorithm parameters and ensuring the verifiability of machine learning has always been a challenge. This study explores the intersection of reinforcement learning and data privacy, specifically addressing the Multi-Armed Bandit (MAB) problem with the Upper Confidence Bound (UCB) algorithm. We introduce zkUCB, an innovative algorithm that employs the Zero-Knowledge Succinct Non-Interactive Argument of Knowledge (zk-SNARKs) to enhance UCB. zkUCB is carefully designed to safeguard the confidentiality of training data and algorithmic parameters, ensuring transparent UCB decision-making.

Requirements

  • ZoKrates 0.8.8
  • Python 3.11.2
  • Bash 5.2.15

Usage

  1. After setting up the environment, run experiment.sh to conduct the experiments.
  2. The experimental results are divided into multiple parts:
    • The lists folder contains the "paths" composed of the results of reinforcement learning agents interacting with the environment in each experiment, as well as the random number sequences generated by the random number seeds corresponding to specific steps.
    • output_p.csv contains statistical data for each step of each experiment, including the time required to execute each step and the size of the key files generated.
  3. To reproduce the results in the paper, use fig_performance.ipynb and fig_time.ipynb for the two parts of the data respectively.

File Structure

  • ZoKrates code is in the ucb folder.
  • Performance experiment results are in the lists folder.

License

This project is licensed under the MIT License.

Contact

For any questions or concerns, please contact:

He Lyu - lyuhe2000@gmail.com

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages