# python train_model.py \
#         name=cifar_c_cnn_gru \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise'

python train_model.py \
        name=cifar100_c_cnn_gru_gn_width_128_act_0.5 \
        problem=cifar100_c \
        problem/model=dt_net_2d_custom \
        problem.model.model=cnn_gru_gn_act \
        problem.model.num_class=100 \
        problem.hyp.epochs=200 \
        problem.hyp.alpha=0.0 \
        problem.hyp.beta=0.5 \
        problem.hyp.act=0.5 \
        problem.hyp.self_verify=0.0 \
        problem.hyp.train_batch_size=128 \
        problem.hyp.test_batch_size=128 \
        problem.model.max_iters=30 \
        problem.model.width=128 \
        problem.model.test_iterations.high=30 \
        problem.hyp.noise_problem='Gaussian Noise' \
        problem.test_data=hard \

# python train_model.py \
#         name=cifar_c_cnn_gru_pos_enc_gn \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru_pos_enc_gn \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise'

# python train_model.py \
#         name=cifar_c_cnn_gru_pos_enc \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru_pos_enc \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise'


# python train_model.py \
#         name=cifar_c_cnn_gru_gn_beta_0.0 \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru_gn \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.0 \
#         problem.hyp.noise_problem='Gaussian Noise'


# python train_model.py \
#         name=cifar_c_resnet_cifar \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=resnet_cifar \
#         problem.model.max_iters=30 \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise'


# python train_model.py \
#         name=cifar_c_cnn_gru_gn_act_0.0002 \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru_gn_act \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=150 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.act=0.0002 \
#         problem.hyp.noise_problem='Gaussian Noise' \

# python train_model.py \
#         name=cifar_c_cnn_transformer \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_transformer \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=150 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.act=0.0 \
#         problem.hyp.noise_problem='Gaussian Noise' \

# python test_model.py \
#         name=cifar_c_cnn_gru_gn_act \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=cnn_gru_gn_act \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=50 \
#         problem.hyp.alpha=0.0 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.act=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise' \

# python train_model.py \
#         name=cifar_c_resnet_cifar \
#         problem=cifar_c \
#         problem/model=dt_net_2d_custom \
#         problem.model.model=resnet_cifar \
#         problem.model.num_class=10 \
#         problem.hyp.epochs=200 \
#         problem.hyp.alpha=0.0 \
#         problem.model.max_iters=4 \
#         problem.model.test_iterations.high=4 \
#         problem.hyp.beta=0.5 \
#         problem.hyp.noise_problem='Gaussian Noise'


# Augmentation problem hyp
# 'Total Noise'
# 'Gaussian Noise'
# 'Shot Noise'
# 'Impulse Noise'
# 'Defocus Blur'
# 'Glass Blur'
# 'Motion Blur'
# 'Zoom Blur'
# 'Snow'
# 'Frost'
# 'Fog'
# 'Brightness'
# 'Contrast'
# 'Elastic'
# 'Pixelate'
# 'JPEG'
# 'Speckle Noise'
# 'Gaussian Blur'
# 'Spatter'
# 'Saturate'