Giter Club home page Giter Club logo

privayattack_at_fl's Introduction

Exploiting Adversarial Training models to compromise privacy

This repository contains the code and models necessary to replicate the results of our paper:

TBD...

Overview

Adversarial Training (AT) is crucial for obtaining deep neural networks that are robust to adversarial attacks, yet recent works found that it could also make models more vulnerable to privacy attacks. In this work, we further reveal this unsettling property of AT by designing a novel privacy attack that is practically applicable to the privacy-sensitive Federated Learning (FL) systems. Using our method, the attacker can exploit AT models in the FL system to accurately reconstruct users’ private training images even when the training batch size is large, despite that previously large batch training was thought to be able to protect the privacy. The above figure is an overview of our attack. See our paper for details!

This figure visualizes the reconstructed images using Adversarial Training models (first row in each pair) and the ground-truth ones. The attacker can pretty accurately recover the training images of FL clients and thus compromise their privacy.

Get started

Environment

Follow the commands below to set up the environment.

  1. Clone the repo: git clone https://github.com/zjysteven/PrivayAttack_AT_FL.git

  2. Create a conda environment

conda create -n AT-privacy python=3.8
conda activate AT-privacy
python -m pip install -r requirements.txt

Dataset

We use ImageNet as the dataset. To run our experiments, make sure that you download the ImageNet and have train/, val/ subfolder inside the root directory.

Models

We use pre-trained models from robust-transfer repo. download_pretrained_models.sh is a sample download script.

Reproducing experiments

All experiments can be reproduced by running main.py. We provide a sample script main.sh. Remember to change the directory of ImageNet to your own version.

Reference

If you find our work/code helpful, please consider citing our work.

TBD

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.