abigailt
d58934a4b6
Remove unused import
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-07-03 13:58:17 +03:00
abigailt
bcb7c47cc6
Formatting
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-07-03 13:42:29 +03:00
abigailt
367cae679b
ModelOutputType is now a Flag instead of regular enum. Combinations of the base flags are provided for all of the previous output types for convenience. All checks in the code now use the basic flags and not the complex types.
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-07-03 13:29:37 +03:00
abigailt
2895b40f05
Addressing review comments
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-06-19 11:17:17 +03:00
abigailt
846de0f753
Remove check of correct shape of predictions which becomes too complicated with the new output types supported.
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-05-02 18:56:31 +03:00
abigailt
a4816878f9
Formatting
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-05-02 17:04:34 +03:00
abigailt
0f5a1bcaa0
Tests and support for additional model output types
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-05-02 15:17:51 +03:00
abigailt
a8ec87f922
Add tests for single label binary pytorch models
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-05-02 14:46:08 +03:00
abigailt
aa65f0f6f2
Add tests that check the transforemd is identical when no generalizations
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-05-02 12:33:27 +03:00
abigailt
b3f87623b1
Test for sklearn (currently not passing due to ART dependency)
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-04-30 14:51:35 +03:00
abigailt
8b8b461143
Support for multi-label logits/probabilities
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-03-17 11:49:05 +02:00
abigailt
7e34f0d2ff
Support for multi-label binary models in minimizer. First test with pytorch model passing.
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-03-13 09:59:02 +02:00
abigailt
076503b248
Working example of anonymization with pytorch multi-output binary model
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-03-12 13:25:31 +02:00
abigailt
5e19d4ae27
New model output types + single implementation of score method that supports multiple output types. Existing tests pass. Still need more tests for new types.
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-03-07 19:00:09 +02:00
abigailt
79534b69db
Initial support+test for pytorch multi-label binary classifier
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-02-19 14:16:03 +02:00
abigailt
f197199e54
Initial version of general model wrappers and methods supporting multi-label classifiers
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-02-12 09:45:36 +02:00
abigailgold
a8f5326572
Fix issue with computed ranges for one-hot encoded features ( #90 )
...
Signed-off-by: abigailt <abigailt@il.ibm.com>
2024-01-17 12:45:22 -05:00
abigailgold
6d81cd8ed4
Support for one-hot encoded features in minimization ( #87 )
...
* Initial version with first working test
* Make sure representative values in generalizations for 1-hot encoded features are consistent.
* Updated notebooks for one-hot encoded data
* Review comments
Signed-off-by: abigailt <abigailt@il.ibm.com>
2023-12-24 18:18:18 -05:00
abigailgold
5dce961092
Support 1-hot encoded features in anonymization + fixes related to encoding in minimization ( #86 )
...
* Support 1-hot encoded features in anonymization (#72 )
* Fix anonymization adult notebook + new notebook to demonstrate anonymization on 1-hot encoded data
* Minimizer: No default encoder, if none provided data is supplied to the model as is. Fix data type of representative values. Fix and add more tests.
Signed-off-by: abigailt <abigailt@il.ibm.com>
2023-10-19 11:48:15 +03:00
abigailgold
26addd192f
Support pytorch models in data minimization ( #85 )
...
* Support pytorch models in data minimization
Signed-off-by: abigailt <abigailt@il.ibm.com>
2023-09-21 17:48:15 +03:00
andersonm-ibm
a40484e0c9
Add column distribution comparison, and a third method for dataset asssessment by membership classification ( #84 )
...
* Add column distribution comparison, and a third method for dataset assessment by membership classification
* Address review comments, add additional distribution comparison tests and make them externally configurable too, in addition to the alpha becoming configurable.
Signed-off-by: Maya Anderson <mayaa@il.ibm.com>
2023-09-21 16:43:19 +03:00
abigailgold
13a0567183
Make data minimization more consistent and performant ( #83 )
...
* Update requirements
* Update incompatible scipy version
* Reduce runtime of dataset assessment tests
* ncp is now a class that contains 3 values: fit_score, transform_score and generalizations_score so that it doesn't matter in what order the different methods are called, all calculated ncp scores are stored.
Generalizations can now be applied either from tree cells or from global generalizations struct depending on the value of generalize_using_transform. Representative values can also be computed from global generalizations.
Removing a feature from the generalization can also be applied in either mode.
* Compute generalizations with test data when possible (for computing better representatives).
* Externalize common test code to methods.
2023-08-21 18:39:15 +03:00
andersonm-ibm
e9a225501f
Limit scikit-learn version because of API changes ( #81 )
...
* Limit scikit-learn versions between 0.22.2 and 1.1.3, remove deprecated load_boston().
* Set pytest configuration option to show test progress in detail.
* Change np.int to int according to DeprecationWarning
Signed-off-by: Maya Anderson <mayaa@il.ibm.com>
2023-05-14 08:52:06 +03:00
andersonm-ibm
3885ab9d9d
Change back flake8 warnings to errors. Fix tests not to fail it. ( #76 )
...
Signed-off-by: Maya Anderson <mayaa@il.ibm.com>
2023-05-11 11:33:50 +03:00
abigailgold
8a9ef80146
Increase version to 0.2.0 ( #74 )
...
* Remove tensorflow dependency if not using keras model
* Remove xgboost dependency if not using xgboost model
* Documentation updates
Signed-off-by: abigailt <abigailt@il.ibm.com>
2023-05-08 12:50:55 +03:00
Maya Anderson
dbb958f791
Merge pull request #71 from IBM/dataset_assessment
...
Add AI privacy Dataset assessment module with two attack implementations.
Signed-off-by: Maya Anderson <mayaa@il.ibm.com>
2023-03-20 14:21:29 +02:00
abigailgold
d52fcd0041
Formatting ( #68 )
...
Fix most flake/lint errors and ignore a few others
Signed-off-by: abigailt <abigailt@il.ibm.com>
2022-12-25 15:13:57 +02:00
Maya Anderson
89bdcfc00e
Prepare project for CI: cleanup dependencies, fix test data location, cleanup assert.
...
Signed-off-by: Maya Anderson <mayaa@il.ibm.com>
2022-12-20 16:00:36 +02:00
abigailt
64038f76f9
Merge with main
2022-08-01 18:12:03 +03:00
abigailt
dc5cc793ee
Merge with main
2022-08-01 18:11:34 +03:00
abigailt
a9e2a35e18
Add support for xgboost XGBClassifier ( #53 )
2022-07-28 17:21:24 +03:00
olasaadi
74ce92acc4
fix
2022-07-26 18:37:44 +03:00
abigailt
a13415ad67
Externalize BlackboxClassifier dataset (x and predictions)
2022-07-25 16:31:45 +03:00
abigailt
fb534f7a0f
BlackboxClassifier based on predictions to work with DatasetWithPredictions
2022-07-25 16:31:45 +03:00
abigailt
77a6e08c8e
Keras regression support
2022-07-24 18:45:50 +03:00
Ron Shmelkin
c77e34e373
update pytorch wrapper to use torch loaders
...
fix tests
and dataset style
2022-07-24 14:31:47 +03:00
olasaadi
6f69f5557b
fix bug
2022-07-20 18:29:48 +03:00
olasaadi
3bf26b67d2
fix
2022-07-20 17:36:00 +03:00
abigailt
a7d156660e
Wrap predict method in BlackBoxClassifierPredictMethod to avoid exception in ART when supplied method returns scalars
2022-07-20 13:33:19 +03:00
abigailt
1cc73b3da1
Check for mismatch between model output type and actual output
2022-07-20 13:33:19 +03:00
abigailt
bc7ab0cc7f
Add model type to blackbox classifier ( #49 )
2022-07-20 13:33:19 +03:00
olasaadi
4973fbebc6
fix
2022-07-19 21:16:39 +03:00
abigailgold
00f9c16863
Support additional use cases for data ( #46 )
...
* Make ART black box classifier not apply preprocessing to data
* Add option to store predictions (in addition to x,y) in Dataset and Data classes
2022-07-11 14:28:09 +03:00
Shlomit Shachor
e25e58b253
enhance calculation of nb classes + tests ( #45 )
...
* update get_nb_classes method to handle 1-hot and scalar input
2022-07-05 11:32:17 +03:00
abigailgold
c6eb553a9f
Blackbox predict method ( #43 )
...
* Support output probabilities
* Support black box classifier with predict method
* Update requirements (security alert #1 )
2022-06-30 18:23:53 +03:00
Shlomit Shachor
1c4b963add
Wrappers no train ( #40 )
...
1) Handle train None in Data
2) Update BB Classifier to handle None either for train or test (x or y)
2022-06-26 14:43:22 +03:00
olasaadi
21cba95a28
fix
2022-06-06 14:32:34 +03:00
olasaadi
c954f53ad7
fix
2022-06-06 14:02:40 +03:00
olasaadi
302d0c4b8c
update
2022-06-02 15:25:07 +03:00
olasaadi
a3fb68fb56
update
2022-05-30 12:52:32 +03:00