Classification via the noise-enhanced Adam: Implemented in Tensorflow(Keras)

NE_fashionMNIST.py: the code for F1 configuration described in the paper. 
NE_cifar10.py: the code for C1 configuration described in the paper. 
NE_cifar100.py: the code for C2 configuration described in the paper. 

Before running the code, please change the followings in the code:

(1) Specify CUDA device. Multiple GPUs can also be used.
--------------------------------------------------------------------
# which GPU is used? 
os.environ["CUDA_VISIBLE_DEVICES"]="0" 
--------------------------------------------------------------------

(2) Modify some variables as you like. If NE=True (False), the noise enhancement is (not) applied.
enh_noise corresponds to $\alpha$ in the paper (enh_noise=1 means no noise enhancement applied).
batch_size is the minibatch size used for training. In C1 and C2, we use ghost batch normalization of size 100, so please specify it as batch_size = (integer)*(the number of GPUs)*100.
--------------------------------------------------------------------
# variables
NE = True
enh_noise=1.5
batch_size=500
--------------------------------------------------------------------

Run the code:
python3 NE_***.py
Results are written in the output file created. The filename of the output file indicates the values of enh_noise and batch_size.

Kind Regards,
The Authors




