From 122546faf4f1781d23f00af88b3ff739cd97eab3 Mon Sep 17 00:00:00 2001 From: jin-xiulang Date: Sat, 20 Feb 2021 15:03:13 +0800 Subject: [PATCH] Fix an issue of ImageInversionAttack --- mindarmour/privacy/evaluation/__init__.py | 3 ++- mindarmour/privacy/evaluation/inversion_attack.py | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/mindarmour/privacy/evaluation/__init__.py b/mindarmour/privacy/evaluation/__init__.py index ec8b921..586bf74 100644 --- a/mindarmour/privacy/evaluation/__init__.py +++ b/mindarmour/privacy/evaluation/__init__.py @@ -17,5 +17,6 @@ given model. """ from .membership_inference import MembershipInference +from .inversion_attack import ImageInversionAttack -__all__ = ['MembershipInference'] +__all__ = ['MembershipInference', 'ImageInversionAttack'] diff --git a/mindarmour/privacy/evaluation/inversion_attack.py b/mindarmour/privacy/evaluation/inversion_attack.py index 6650c06..8080d03 100644 --- a/mindarmour/privacy/evaluation/inversion_attack.py +++ b/mindarmour/privacy/evaluation/inversion_attack.py @@ -111,6 +111,12 @@ class ImageInversionAttack: for shape_dim in input_shape: check_int_positive('shape_dim', shape_dim) self._input_bound = check_param_multi_types('input_bound', input_bound, [list, tuple]) + for value_bound in self._input_bound: + check_param_multi_types('value_bound', value_bound, [float, int]) + if self._input_bound[0] > self._input_bound[1]: + msg = 'input_bound[0] should not be larger than input_bound[1], but got them as {} and {}'.format( + self._input_bound[0], self._input_bound[1]) + raise ValueError(msg) def generate(self, target_features, iters=100): """