def test_torch_input(self): fgsm = FGSM(data='x', loss='loss', outputs='y') x = self.torch_data * self.torch_data output = fgsm.forward(data=[self.torch_data, x], state={'tape': None}) self.assertTrue(is_equal(output, self.torch_output))
def test_tf_input(self): fgsm = FGSM(data='x', loss='loss', outputs='y') with tf.GradientTape(persistent=True) as tape: x = self.tf_data * self.tf_data output = fgsm.forward(data=[self.tf_data, x], state={'tape': tape}) self.assertTrue(np.array_equal(output, self.tf_output))