Implementation of Zeroth Order Optimization Attack (ZOO Attack)

ZOO attack was second black box attack came out after substitute model based attack. Black Box adversarial attacks are transferable and more practical use case of adversarial attack. In this method authors propose the Zeroth Order Optimization which can estimate the gradient of the DNN user need to attack. They provide results on CIFAR, MNIST, and ImageNet dataset and use ZOO_Adam and ZOO_Newton methods of Coordinate Descent Solvers. More details on this paper can be found here.

The original implementation has been done in tensorflow by IBM which can found here, in order to replicate this in PyTorch with similar success rate results for small sized dataset CIFAR and MNIST I have provided the first dedicated implementation in PyTorch for this attack which can seen in this repo. This code has been made public to use in any research or project freely.