carlini/nn_robust_attacks

Parameter setting for L_0 and L_inf attack

ariewahyu opened this issue · 3 comments

I can not reproduce the same result of L0 and Li attacks with your paper.

Based on your L2 example:

attack = CarliniL2(sess, model, batch_size=9, max_iterations=1000, confidence=0)

Because in L0 and Li don't have batch size and confidence parameters, I used these settings:

attack = CarliniL0(sess, model, max_iterations=1000)

and

attack = CarliniLi(sess, model, max_iterations=1000)

I checked that there should be some additional parameters for them.

CarliniL0(sess, model, targeted = TARGETED, learning_rate = LEARNING_RATE, max_iterations = MAX_ITERATIONS, abort_early = ABORT_EARLY, initial_const = INITIAL_CONST, largest_const = LARGEST_CONST, reduce_const = REDUCE_CONST, const_factor = CONST_FACTOR, independent_channels = False)

CarliniL2(sess, model, batch_size=1, confidence = CONFIDENCE, targeted = TARGETED, learning_rate = LEARNING_RATE, binary_search_steps = BINARY_SEARCH_STEPS, max_iterations = MAX_ITERATIONS, abort_early = ABORT_EARLY, initial_const = INITIAL_CONST)

CarliniLi(sess, model, targeted = TARGETED, learning_rate = LEARNING_RATE, max_iterations = MAX_ITERATIONS, abort_early = ABORT_EARLY, initial_const = INITIAL_CONST, largest_const = LARGEST_CONST, reduce_const = REDUCE_CONST, decrease_factor = DECREASE_FACTOR, const_factor = CONST_FACTOR)

So, can you describe your attack parameter settings to get the result in your paper?

Huh. The constants should be what I put at the top of the file. Which of the results aren't coming out the same? MNIST? CIFAR? If you want I can email you with the exact models I used and you should be able to get identical results.

Basically, I can reproduce the L2 attack result of MNIST and CIFAR similar with yours. However, my result of L0 and Li on both MNIST and CIFAR are different with yours. If possible, please send it to my email address ariewahyu@gmail.com
Thanks

Will do. Taking offline.