robust-ml
Interfaces for defining Robust ML models and precisely specifying the threat models under which they claim to be secure. Also includes interfaces for specifying attacks and evaluating attacks against models.
The motivation behind this project is to make it easy to make specific, testable claims about the robustness about machine learning models. Read more in the FAQ.
Installation
You can install from PyPI: pip install robustml.
Usage
See this repository for a complete example of implenenting a model, implementing an attack, and evaluating the attack against the model.
If you’re implementing a defense, you should implement robustml.model.Model. See here for an example.
If you’re implementing an attack against a specific defense, you should implement robustml.attack.Attack. See here for an example.
To evaluate a specific attack against a specific defense, use robustml.evaluate.evaluate(). See here for an example.
Contributing
Do you have ideas on how to improve the robustml package? Have a feature request (such as a specification of a new threat model) or bug report? Great! Please open an issue or submit a pull request.
Before contributing a major change, it’s recommended that you open a pull request first and get feedback on the idea before investing time in the implementation.
Packaging
Update version information.
Build the package using python setup.py sdist bdist_wheel.
Sign and upload the package using twine upload -s dist/*.
Create a signed tag in the git repo with the version number that was uploaded to PyPI.
Metadata
Release files for robustml 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| robustml-0.0.3.tar.gz | 6.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| robustml-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.7 kB
Release files / robustml-0.0.3.tar.gz
| Download URL | robustml-0.0.3.tar.gz |
|---|---|
| Size | 6.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a00b099edbc51d9efdf9fb1b76f15f140e2694068489017d8fc9d4eac6e3c153
|
|
BLAKE2b-256 checksum How to use checksums |
53f12306cd63beb35617705c0e0b3dd6f3f98b61ea54147d68ddc81b091caf94
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3
|
Release files / robustml-0.0.3-py3-none-any.whl
| Download URL | robustml-0.0.3-py3-none-any.whl |
|---|---|
| Size | 9.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
099a33c0abbbac28419aefb220dacb0441239a782e912df98700071202364a92
|
|
BLAKE2b-256 checksum How to use checksums |
c61c4f419ee34a7dd4e31e96cdfbccbf2b209f0c6acf4874ec932d1613c7895c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3
|