From 27069d347d3848142a58c29c136e21967ebe955b Mon Sep 17 00:00:00 2001 From: Shuang Song Date: Thu, 10 Aug 2023 11:29:52 -0700 Subject: [PATCH] Fixes comments and membership scores for thresholds attack. PiperOrigin-RevId: 555579896 --- research/mi_lira_2021/README.md | 10 +++++----- research/mi_lira_2021/fprtpr.png | Bin 38693 -> 37841 bytes research/mi_lira_2021/inference.py | 2 +- research/mi_poison_2022/README.md | 8 ++++---- research/mi_poison_2022/fprtpr.png | Bin 32788 -> 32936 bytes .../membership_inference_attack.py | 8 ++++---- .../membership_inference_attack/models.py | 6 +++--- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/research/mi_lira_2021/README.md b/research/mi_lira_2021/README.md index 9c025f0..72cd48f 100644 --- a/research/mi_lira_2021/README.md +++ b/research/mi_lira_2021/README.md @@ -94,15 +94,15 @@ which should give (something like) the following output ``` Attack Ours (online) - AUC 0.6675, Accuracy 0.6074, TPR@0.1%FPR of 0.0104 + AUC 0.6676, Accuracy 0.6077, TPR@0.1%FPR of 0.0169 Attack Ours (online, fixed variance) - AUC 0.6831, Accuracy 0.6140, TPR@0.1%FPR of 0.0541 + AUC 0.6856, Accuracy 0.6137, TPR@0.1%FPR of 0.0593 Attack Ours (offline) - AUC 0.5465, Accuracy 0.5486, TPR@0.1%FPR of 0.0073 + AUC 0.5488, Accuracy 0.5500, TPR@0.1%FPR of 0.0130 Attack Ours (offline, fixed variance) - AUC 0.5518, Accuracy 0.5485, TPR@0.1%FPR of 0.0259 + AUC 0.5549, Accuracy 0.5537, TPR@0.1%FPR of 0.0299 Attack Global threshold - AUC 0.5900, Accuracy 0.6018, TPR@0.1%FPR of 0.0007 + AUC 0.5921, Accuracy 0.6044, TPR@0.1%FPR of 0.0009 ``` where the global threshold attack is the baseline, and our online, diff --git a/research/mi_lira_2021/fprtpr.png b/research/mi_lira_2021/fprtpr.png index 5ad9dcae0f94a3cb2b901ed967c72a5874cc7b64..8419ca1d9ff3a2ce6edd2836d30e502c273668b6 100644 GIT binary patch literal 37841 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 TE$8&3z#mOjJ(c@PM=$?BO#PkF literal 38693 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 XEnt12KWdePe~zo3P$^Qjx%R&RoA#rs diff --git a/research/mi_lira_2021/inference.py b/research/mi_lira_2021/inference.py index fbe8170..9d78d0b 100644 --- a/research/mi_lira_2021/inference.py +++ b/research/mi_lira_2021/inference.py @@ -69,7 +69,7 @@ def main(argv): for dy in range(0, 2*shift+1, stride): this_x = aug_pad[:, dx:dx+32, dy:dy+32, :].transpose((0,3,1,2)) - logits = model.model(this_x, training=False) + logits = model.model(this_x, training=True) outs.append(logits) print(np.array(outs).shape) diff --git a/research/mi_poison_2022/README.md b/research/mi_poison_2022/README.md index 5066046..a20444d 100644 --- a/research/mi_poison_2022/README.md +++ b/research/mi_poison_2022/README.md @@ -88,13 +88,13 @@ which should give (something like) the following output ``` Attack No poison (LiRA) - AUC 0.6992, Accuracy 0.6240, TPR@0.1%FPR of 0.0529 + AUC 0.7025, Accuracy 0.6258, TPR@0.1%FPR of 0.0544 Attack No poison (Global threshold) - AUC 0.6200, Accuracy 0.6167, TPR@0.1%FPR of 0.0011 + AUC 0.6191, Accuracy 0.6173, TPR@0.1%FPR of 0.0012 Attack With poison (LiRA) - AUC 0.9904, Accuracy 0.9617, TPR@0.1%FPR of 0.3730 + AUC 0.9943, Accuracy 0.9653, TPR@0.1%FPR of 0.4945 Attack With poison (Global threshold) - AUC 0.9911, Accuracy 0.9580, TPR@0.1%FPR of 0.2130 + AUC 0.9922, Accuracy 0.9603, TPR@0.1%FPR of 0.3930 ``` where the baselines are LiRA and a simple global threshold on the membership diff --git a/research/mi_poison_2022/fprtpr.png b/research/mi_poison_2022/fprtpr.png index 14fe1d042a3b064d2bdfa7841460b47c2130f462..a870cb96e91c44f568ee83c02ef636a49d94fcfa 100644 GIT binary patch literal 32936 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
)pw`qkHAS?v_{1+? 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%0Av`Xum{8W#$06As1EH8M8#$UiwA$Hp5Q-t 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 D&Dt`g diff --git a/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/membership_inference_attack.py b/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/membership_inference_attack.py index 9c21131..988a50d 100644 --- a/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/membership_inference_attack.py +++ b/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/membership_inference_attack.py @@ -109,8 +109,7 @@ def _run_trained_attack( labels[train_indices], sample_weight=sample_weights_train, ) - predictions = attacker.predict(features[test_indices]) - scores[test_indices] = predictions + scores[test_indices] = attacker.predict(features[test_indices]) except ValueError as ve: if 'cannot be greater than the number of members in each class.' in str(ve): logging.warning('kf.split in _run_trained_attack fails with: %s', str(ve)) @@ -200,8 +199,9 @@ def _run_threshold_attack(attack_input: AttackInputData): slice_spec=_get_slice_spec(attack_input), data_size=DataSize(ntrain=ntrain, ntest=ntest), attack_type=AttackType.THRESHOLD_ATTACK, - membership_scores_train=attack_input.get_loss_train(), - membership_scores_test=attack_input.get_loss_test(), + # Negate loss because training examples are expected to have lower loss. + membership_scores_train=-attack_input.get_loss_train(), + membership_scores_test=-attack_input.get_loss_test(), roc_curve=roc_curve, epsilon_lower_bound_value=epsilon_lower_bound_value, ) diff --git a/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/models.py b/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/models.py index f74a9ef..cf45cd5 100644 --- a/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/models.py +++ b/tensorflow_privacy/privacy/privacy_tests/membership_inference_attack/models.py @@ -185,19 +185,19 @@ class TrainedAttacker(object): raise NotImplementedError() def predict(self, input_features): - """Predicts whether input_features belongs to train or test. + """Predicts the probability that input_features belongs to train. Args: input_features : A vector of features with the same semantics as x_train passed to train_model. Returns: - An array of probabilities denoting whether the example belongs to test. + An array of probabilities that the examples belongs to train. """ if self.model is None: raise AssertionError( 'Model not trained yet. Please call train_model first.') - return self.model.predict_proba(input_features)[:, 1] + return self.model.predict_proba(input_features)[:, 1] # Train has label 1 class LogisticRegressionAttacker(TrainedAttacker):