Skip to content

Commit

Permalink
Adding contribution guidelines to TF Privacy
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 328740117
  • Loading branch information
tensorflower-gardener committed Aug 27, 2020
1 parent f90c78b commit f677c9c
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 0 deletions.
5 changes: 5 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,11 @@ use GitHub pull requests for this purpose. Consult
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
information on using pull requests.

## Attack library

If you wish to add novel attacks to the attack library, please check our
[guidelines](https://github.com/tensorflow/privacy/blob/master/tensorflow_privacy/privacy/membership_inference_attack/CONTRIBUTING.md)

## Community Guidelines

This project follows Google's
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# How to Contribute

We are happy to accept contributions to this project under the research folder.
The research folder is intended for the attacks that are not yet generic enough
to be included into the main library.

We are happy to accept contributions to the primary codebase, see below for more
details.

Please follow these guidelines when sending us a pull request.

## Contributor License Agreement

Contributions to this project must be accompanied by a Contributor License
Agreement. You (or your employer) retain the copyright to your contribution,
this simply gives us permission to use and redistribute your contributions as
part of the project. Head over to <https://cla.developers.google.com/> to see
your current agreements on file or to sign a new one.

You generally only need to submit a CLA once, so if you've already submitted
one (even if it was for a different project), you probably don't need to do it
again.

## Community Guidelines

This project follows
[Google's Open Source Community Guidelines](https://opensource.google.com/conduct/).

## Does my new feature belong here?

### Research folder

We use the following principles to guide what we add to our libraries. If your
contribution doesn't align with these principles, we're likely to decline.

* **Novelty:** The code should provide new attacks to the library. We will not
accept code that duplicates existing attacks.
* **Appropriate context and explanation:** The code should contain a README.md
file based on the provided template.This template should explain the code's functionality, and provide basic steps on how to use it.
* **Experiment-driven:** The code should contain an runnable example or a colab (e.g. on a toy model such as MNIST or CIFAR-10).
* **Quality requirements:** (1) The code should adhere to the
[Google Python style guide](https://google.github.io/styleguide/pyguide).
(2) The public API of the attack should have clear code documentation (expected inputs/outputs)
(3) The code should have reasonable unit test coverage (>60%);

### Primary codebase

The primary codebase should include attacks that are of general interest and
have a wide range of applications. For example, the standard membership
inference test is applicable to virtually any classification model.

The code contributed to the primary codebase should have a production style API
which is consistent with the API of other attacks. Most likely, Google and the
contributing team will need to meet and discuss the API before starting the
contribution.


If you're uncertain whether a planned contribution fits with these principles,
[open an issue](https://github.com/tensorflow/privacy/issues/new)
and describe what you want to add. We'll let you know whether it's something we
want to include and will help you figure out the best way to implement it.

Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,11 @@ Among other things, the `run_attack` functionality allows to control:
Reach out to tf-privacy@google.com and let us know how you’re using this module.
We’re keen on hearing your stories, feedback, and suggestions!

## Contributing

If you wish to add novel attacks to the attack library, please check our
[guidelines](https://github.com/tensorflow/privacy/blob/master/tensorflow_privacy/privacy/membership_inference_attack/CONTRIBUTING.md)

## Copyright

Copyright 2020 - Google LLC

0 comments on commit f677c9c

Please sign in to comment.