Arch: resnet50_pt
Bs trn: 128
Bs val: 128
Hidden dim: 256
Dataset: celebA
Resample class: 
Slice with: rep
Rep cluster method: gmm
Num anchor: 32
Num positive: 32
Num negative: 32
Num negative easy: 0
Weight anc by loss: False
Weight pos by loss: False
Weight neg by loss: False
Anc loss temp: 0.5
Pos loss temp: 0.5
Neg loss temp: 0.5
Data wide pos: False
Target sample ratio: 1
Balance targets: False
Additional negatives: False
Hard negative factor: 0
Full contrastive: False
Train encoder: False
No projection head: False
Projection dim: 128
Batch factor: None
Temperature: 0.05
Single pos: False
Supervised linear scale up: False
Supervised update delay: 0
Contrastive weight: 0.5
Classifier update interval: 8
Optim: sgd
Max epoch: 50
Lr: 0.0001
Momentum: 0.9
Weight decay: 0.1
Weight decay c: 0.1
Stopping window: 30
Load encoder: 
Freeze encoder: False
Finetune epochs: 0
Clip grad norm: False
Lr scheduler classifier: 
Lr scheduler: 
Grad clip grad norm: False
Erm: False
Erm only: False
Pretrained spurious path: ./model/celebA/config/stage_one_erm/seed35/stage_one_erm_model_b_epoch0_seed35.pt
Max epoch s: 1
Bs trn s: 32
Lr s: 0.001
Momentum s: 0.9
Weight decay s: 0.0005
Slice temp: 10
Log loss interval: 10
Checkpoint interval: 50
Grad checkpoint interval: 50
Log visual interval: 100
Log grad visual interval: 50
Verbose: True
Seed: 35
Replicate: 0
No cuda: False
Resume: False
New slice: False
Num workers: 12
Evaluate: False
Data cmap: hsv
Test cmap: 
P correlation: 0.9
P corr by class: None
Train classes: ['blond', 'nonblond']
Train class ratios: None
Test shift: random
Flipped: False
Q: 0.7
Pretrained bmodel: True
Cosine: False
Exp: ours
Tau: 1.1
Gamma: None
Remove label noise: False
Model for remove samples: 
Remove ratio: 0.03
Supervised contrast: True
Prioritize spurious pos: False
Contrastive type: cnc
Compute auroc: False
Model type: resnet50_pt_cnc
Criterion: cross_entropy
Pretrained: False
Max grad norm: 1.0
Adam epsilon: 1e-08
Warmup steps: 0
Max grad norm s: 1.0
Adam epsilon s: 1e-08
Warmup steps s: 0
Grad max grad norm: 1.0
Grad adam epsilon: 1e-08
Grad warmup steps: 0
Device: cuda
Img file type: .png
Display image: False
Image path: ./images/celebA/celebA/config/contrastive_umaps
Log interval: 1
Log path: ./logs/celebA/config
Results path: ./results/celebA/config
Model path: ./model/celebA/config
Loss factor: 1
Supersample labels: False
Subsample labels: False
Weigh slice samples by loss: True
Val split: 0.2
Spurious train split: 0.2
Subsample groups: False
Train method: sc
Max robust acc: -1
Max robust epoch: -1
Max robust group acc: (None, None)
Root dir: ./datasets/data/CelebA/
Target name: Blond_Hair
Confounder names: ['Male']
Image mean: 0.449
Image std: 0.226
Augment data: False
Task: celebA
Num classes: 2
Experiment configs: config
Experiment name: cnc-celebA-sw=re-na=32-np=32-nn=32-nne=0-tsr=1-t=0.05-bf=None-cw=0.5-sud=0-me=50-bst=128-o=sgd-lr=0.0001-mo=0.9-wd=0.1-wdc=0.1-spur-me=1-bst=32-lr=0.001-mo=0.9-wd=0.0005-sts=0.2-s=35-r=0
Mi resampled: None

Loading checkpoints for train split:
[-1 -1 -1 ... -1 -1 -1]
<class 'numpy.ndarray'>
[0 1 2 3] [71629 66874 22880  1387]
Loading checkpoints for val split:
[-1 -1 -1 ... -1  1 -1]
<class 'numpy.ndarray'>
[0 1 2 3] [8535 8276 2874  182]
Loading checkpoints for test split:
[-1 -1 -1 ... -1 -1  1]
<class 'numpy.ndarray'>
[0 1 2 3] [9767 7535 2480  180]
Train dataset:
    Blond_Hair = 0, Male = 0 : n = 71629
    Blond_Hair = 0, Male = 1 : n = 66874
    Blond_Hair = 1, Male = 0 : n = 22880
    Blond_Hair = 1, Male = 1 : n = 1387
Val dataset:
    Blond_Hair = 0, Male = 0 : n = 8535
    Blond_Hair = 0, Male = 1 : n = 8276
    Blond_Hair = 1, Male = 0 : n = 2874
    Blond_Hair = 1, Male = 1 : n = 182
Test dataset:
    Blond_Hair = 0, Male = 0 : n = 9767
    Blond_Hair = 0, Male = 1 : n = 7535
    Blond_Hair = 1, Male = 0 : n = 2480
    Blond_Hair = 1, Male = 1 : n = 180
------------------------
> Loading spurious model
------------------------
Pretrained model loaded from ./model/celebA/config/stage_one_erm/seed35/stage_one_erm_model_b_epoch0_seed35.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8229, 0.0280],
        [0.1310, 0.0181]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 89.832 | Val Loss: 0.003 | Val Acc: 84.260
Training:
Accuracies by groups:
0, 0  acc:  9953 / 19294 =  51.586
0, 1  acc:  5354 /  9207 =  58.151
1, 0  acc: 123284 / 125997 =  97.847
1, 1  acc:  7629 /  8272 =  92.227
--------------------------------------
Average acc: 146220 / 162770 =  89.832
Robust  acc:  9953 / 19294 =  51.586
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6599 /  8535 =  77.317
0, 1  acc:  7147 /  8276 =  86.358
1, 0  acc:  2829 /  2874 =  98.434
1, 1  acc:   165 /   182 =  90.659
------------------------------------
Average acc: 16740 / 19867 =  84.260
Robust  acc:  6599 /  8535 =  77.317
------------------------------------
New max robust acc: 77.31693028705331
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 85.783
Robust Acc: 81.960 | Best Acc: 98.347
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  8005 /  9767 =  81.960
0, 1  acc:  6521 /  7535 =  86.543
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17124 / 19962 =  85.783
Robust  acc:  8005 /  9767 =  81.960
------------------------------------
Accuracies by groups:
0, 0  acc:  8005 /  9767 =  81.960
0, 1  acc:  6521 /  7535 =  86.543
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17124 / 19962 =  85.783
Robust  acc:  8005 /  9767 =  81.960
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8005 /  9767 =  81.960
0, 1  acc:  6521 /  7535 =  86.543
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17124 / 19962 =  85.783
Robust  acc:  8005 /  9767 =  81.960
------------------------------------
Epoch:   2 | Train Loss: 0.001 | Train Acc: 93.726 | Val Loss: 0.002 | Val Acc: 86.973
Training:
Accuracies by groups:
0, 0  acc: 13596 / 19541 =  69.577
0, 1  acc:  7447 /  9274 =  80.300
1, 0  acc: 123954 / 125664 =  98.639
1, 1  acc:  7561 /  8291 =  91.195
--------------------------------------
Average acc: 152558 / 162770 =  93.726
Robust  acc: 13596 / 19541 =  69.577
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6777 /  8535 =  79.402
0, 1  acc:  7503 /  8276 =  90.660
1, 0  acc:  2831 /  2874 =  98.504
1, 1  acc:   168 /   182 =  92.308
------------------------------------
Average acc: 17279 / 19867 =  86.973
Robust  acc:  6777 /  8535 =  79.402
------------------------------------
New max robust acc: 79.40246045694201
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 88.077
Robust Acc: 83.629 | Best Acc: 98.185
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  8168 /  9767 =  83.629
0, 1  acc:  6817 /  7535 =  90.471
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17582 / 19962 =  88.077
Robust  acc:  8168 /  9767 =  83.629
------------------------------------
Accuracies by groups:
0, 0  acc:  8168 /  9767 =  83.629
0, 1  acc:  6817 /  7535 =  90.471
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17582 / 19962 =  88.077
Robust  acc:  8168 /  9767 =  83.629
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8168 /  9767 =  83.629
0, 1  acc:  6817 /  7535 =  90.471
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17582 / 19962 =  88.077
Robust  acc:  8168 /  9767 =  83.629
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 94.694 | Val Loss: 0.002 | Val Acc: 88.539
Training:
Accuracies by groups:
0, 0  acc: 13965 / 19250 =  72.545
0, 1  acc:  8002 /  9320 =  85.858
1, 0  acc: 124204 / 125634 =  98.862
1, 1  acc:  7963 /  8566 =  92.961
--------------------------------------
Average acc: 154134 / 162770 =  94.694
Robust  acc: 13965 / 19250 =  72.545
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6939 /  8535 =  81.301
0, 1  acc:  7656 /  8276 =  92.508
1, 0  acc:  2826 /  2874 =  98.330
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17590 / 19867 =  88.539
Robust  acc:  6939 /  8535 =  81.301
------------------------------------
New max robust acc: 81.30052724077329
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.395
Robust Acc: 85.052 | Best Acc: 98.024
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8307 /  9767 =  85.052
0, 1  acc:  6951 /  7535 =  92.250
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17845 / 19962 =  89.395
Robust  acc:  8307 /  9767 =  85.052
------------------------------------
Accuracies by groups:
0, 0  acc:  8307 /  9767 =  85.052
0, 1  acc:  6951 /  7535 =  92.250
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17845 / 19962 =  89.395
Robust  acc:  8307 /  9767 =  85.052
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8307 /  9767 =  85.052
0, 1  acc:  6951 /  7535 =  92.250
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17845 / 19962 =  89.395
Robust  acc:  8307 /  9767 =  85.052
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 95.265 | Val Loss: 0.002 | Val Acc: 90.180
Training:
Accuracies by groups:
0, 0  acc: 14765 / 19710 =  74.911
0, 1  acc:  8166 /  9215 =  88.616
1, 0  acc: 124481 / 125693 =  99.036
1, 1  acc:  7651 /  8152 =  93.854
--------------------------------------
Average acc: 155063 / 162770 =  95.265
Robust  acc: 14765 / 19710 =  74.911
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7158 /  8535 =  83.866
0, 1  acc:  7779 /  8276 =  93.995
1, 0  acc:  2816 /  2874 =  97.982
1, 1  acc:   163 /   182 =  89.560
------------------------------------
Average acc: 17916 / 19867 =  90.180
Robust  acc:  7158 /  8535 =  83.866
------------------------------------
New max robust acc: 83.86643233743409
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.602
Robust Acc: 84.444 | Best Acc: 97.500
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8472 /  9767 =  86.741
0, 1  acc:  7044 /  7535 =  93.484
1, 0  acc:  2418 /  2480 =  97.500
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18086 / 19962 =  90.602
Robust  acc:   152 /   180 =  84.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8472 /  9767 =  86.741
0, 1  acc:  7044 /  7535 =  93.484
1, 0  acc:  2418 /  2480 =  97.500
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18086 / 19962 =  90.602
Robust  acc:   152 /   180 =  84.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8472 /  9767 =  86.741
0, 1  acc:  7044 /  7535 =  93.484
1, 0  acc:  2418 /  2480 =  97.500
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18086 / 19962 =  90.602
Robust  acc:   152 /   180 =  84.444
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 95.905 | Val Loss: 0.002 | Val Acc: 90.809
Training:
Accuracies by groups:
0, 0  acc: 14902 / 19315 =  77.152
0, 1  acc:  8321 /  9275 =  89.714
1, 0  acc: 125025 / 125958 =  99.259
1, 1  acc:  7857 /  8222 =  95.561
--------------------------------------
Average acc: 156105 / 162770 =  95.905
Robust  acc: 14902 / 19315 =  77.152
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7221 /  8535 =  84.605
0, 1  acc:  7858 /  8276 =  94.949
1, 0  acc:  2798 /  2874 =  97.356
1, 1  acc:   164 /   182 =  90.110
------------------------------------
Average acc: 18041 / 19867 =  90.809
Robust  acc:  7221 /  8535 =  84.605
------------------------------------
New max robust acc: 84.60456942003515
debias model - Saving best checkpoint at epoch 4
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.293
Robust Acc: 83.889 | Best Acc: 97.218
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7126 /  7535 =  94.572
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   151 /   180 =  83.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7126 /  7535 =  94.572
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   151 /   180 =  83.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7126 /  7535 =  94.572
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   151 /   180 =  83.889
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.657 | Val Loss: 0.002 | Val Acc: 91.780
Training:
Accuracies by groups:
0, 0  acc: 15430 / 19351 =  79.737
0, 1  acc:  8468 /  9286 =  91.191
1, 0  acc: 125450 / 125985 =  99.575
1, 1  acc:  7980 /  8148 =  97.938
--------------------------------------
Average acc: 157328 / 162770 =  96.657
Robust  acc: 15430 / 19351 =  79.737
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7367 /  8535 =  86.315
0, 1  acc:  7936 /  8276 =  95.892
1, 0  acc:  2775 /  2874 =  96.555
1, 1  acc:   156 /   182 =  85.714
------------------------------------
Average acc: 18234 / 19867 =  91.780
Robust  acc:   156 /   182 =  85.714
------------------------------------
New max robust acc: 85.71428571428571
debias model - Saving best checkpoint at epoch 5
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.295
Robust Acc: 80.000 | Best Acc: 96.573
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8687 /  9767 =  88.942
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18424 / 19962 =  92.295
Robust  acc:   144 /   180 =  80.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8687 /  9767 =  88.942
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18424 / 19962 =  92.295
Robust  acc:   144 /   180 =  80.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8687 /  9767 =  88.942
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18424 / 19962 =  92.295
Robust  acc:   144 /   180 =  80.000
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.321 | Val Loss: 0.001 | Val Acc: 93.104
Training:
Accuracies by groups:
0, 0  acc: 16093 / 19478 =  82.621
0, 1  acc:  8641 /  9298 =  92.934
1, 0  acc: 125462 / 125716 =  99.798
1, 1  acc:  8213 /  8278 =  99.215
--------------------------------------
Average acc: 158409 / 162770 =  97.321
Robust  acc: 16093 / 19478 =  82.621
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7614 /  8535 =  89.209
0, 1  acc:  8020 /  8276 =  96.907
1, 0  acc:  2719 /  2874 =  94.607
1, 1  acc:   144 /   182 =  79.121
------------------------------------
Average acc: 18497 / 19867 =  93.104
Robust  acc:   144 /   182 =  79.121
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.117
Robust Acc: 74.444 | Best Acc: 96.191
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8859 /  9767 =  90.703
0, 1  acc:  7248 /  7535 =  96.191
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18588 / 19962 =  93.117
Robust  acc:   134 /   180 =  74.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8859 /  9767 =  90.703
0, 1  acc:  7248 /  7535 =  96.191
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18588 / 19962 =  93.117
Robust  acc:   134 /   180 =  74.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8859 /  9767 =  90.703
0, 1  acc:  7248 /  7535 =  96.191
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18588 / 19962 =  93.117
Robust  acc:   134 /   180 =  74.444
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 98.021 | Val Loss: 0.001 | Val Acc: 93.623
Training:
Accuracies by groups:
0, 0  acc: 16699 / 19304 =  86.505
0, 1  acc:  8793 /  9279 =  94.762
1, 0  acc: 125857 / 125960 =  99.918
1, 1  acc:  8200 /  8227 =  99.672
--------------------------------------
Average acc: 159549 / 162770 =  98.021
Robust  acc: 16699 / 19304 =  86.505
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7740 /  8535 =  90.685
0, 1  acc:  8037 /  8276 =  97.112
1, 0  acc:  2681 /  2874 =  93.285
1, 1  acc:   142 /   182 =  78.022
------------------------------------
Average acc: 18600 / 19867 =  93.623
Robust  acc:   142 /   182 =  78.022
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.723
Robust Acc: 70.000 | Best Acc: 96.735
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  8997 /  9767 =  92.116
0, 1  acc:  7289 /  7535 =  96.735
1, 0  acc:  2297 /  2480 =  92.621
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18709 / 19962 =  93.723
Robust  acc:   126 /   180 =  70.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8997 /  9767 =  92.116
0, 1  acc:  7289 /  7535 =  96.735
1, 0  acc:  2297 /  2480 =  92.621
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18709 / 19962 =  93.723
Robust  acc:   126 /   180 =  70.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8997 /  9767 =  92.116
0, 1  acc:  7289 /  7535 =  96.735
1, 0  acc:  2297 /  2480 =  92.621
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18709 / 19962 =  93.723
Robust  acc:   126 /   180 =  70.000
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.497 | Val Loss: 0.001 | Val Acc: 93.668
Training:
Accuracies by groups:
0, 0  acc: 17291 / 19291 =  89.632
0, 1  acc:  8846 /  9209 =  96.058
1, 0  acc: 125772 / 125841 =  99.945
1, 1  acc:  8415 /  8429 =  99.834
--------------------------------------
Average acc: 160324 / 162770 =  98.497
Robust  acc: 17291 / 19291 =  89.632
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7695 /  8535 =  90.158
0, 1  acc:  8090 /  8276 =  97.753
1, 0  acc:  2689 /  2874 =  93.563
1, 1  acc:   135 /   182 =  74.176
------------------------------------
Average acc: 18609 / 19867 =  93.668
Robust  acc:   135 /   182 =  74.176
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.883
Robust Acc: 66.667 | Best Acc: 97.465
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  8990 /  9767 =  92.045
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   120 /   180 =  66.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8990 /  9767 =  92.045
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   120 /   180 =  66.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8990 /  9767 =  92.045
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   120 /   180 =  66.667
------------------------------------
Epoch:  10 | Train Loss: 0.001 | Train Acc: 98.793 | Val Loss: 0.001 | Val Acc: 93.809
Training:
Accuracies by groups:
0, 0  acc: 17655 / 19255 =  91.690
0, 1  acc:  9066 /  9317 =  97.306
1, 0  acc: 125855 / 125955 =  99.921
1, 1  acc:  8230 /  8243 =  99.842
--------------------------------------
Average acc: 160806 / 162770 =  98.793
Robust  acc: 17655 / 19255 =  91.690
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7693 /  8535 =  90.135
0, 1  acc:  8135 /  8276 =  98.296
1, 0  acc:  2687 /  2874 =  93.493
1, 1  acc:   122 /   182 =  67.033
------------------------------------
Average acc: 18637 / 19867 =  93.809
Robust  acc:   122 /   182 =  67.033
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.044
Robust Acc: 61.111 | Best Acc: 97.863
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  9000 /  9767 =  92.147
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2289 /  2480 =  92.298
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18773 / 19962 =  94.044
Robust  acc:   110 /   180 =  61.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9000 /  9767 =  92.147
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2289 /  2480 =  92.298
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18773 / 19962 =  94.044
Robust  acc:   110 /   180 =  61.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9000 /  9767 =  92.147
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2289 /  2480 =  92.298
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18773 / 19962 =  94.044
Robust  acc:   110 /   180 =  61.111
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.750 | Val Loss: 0.001 | Val Acc: 94.463
Training:
Accuracies by groups:
0, 0  acc: 17798 / 19381 =  91.832
0, 1  acc:  9093 /  9347 =  97.283
1, 0  acc: 125432 / 125586 =  99.877
1, 1  acc:  8412 /  8456 =  99.480
--------------------------------------
Average acc: 160735 / 162770 =  98.750
Robust  acc: 17798 / 19381 =  91.832
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7979 /  8535 =  93.486
0, 1  acc:  8155 /  8276 =  98.538
1, 0  acc:  2521 /  2874 =  87.717
1, 1  acc:   112 /   182 =  61.538
------------------------------------
Average acc: 18767 / 19867 =  94.463
Robust  acc:   112 /   182 =  61.538
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.600
Robust Acc: 57.778 | Best Acc: 98.115
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  9245 /  9767 =  94.655
0, 1  acc:  7393 /  7535 =  98.115
1, 0  acc:  2142 /  2480 =  86.371
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18884 / 19962 =  94.600
Robust  acc:   104 /   180 =  57.778
------------------------------------
Accuracies by groups:
0, 0  acc:  9245 /  9767 =  94.655
0, 1  acc:  7393 /  7535 =  98.115
1, 0  acc:  2142 /  2480 =  86.371
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18884 / 19962 =  94.600
Robust  acc:   104 /   180 =  57.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9245 /  9767 =  94.655
0, 1  acc:  7393 /  7535 =  98.115
1, 0  acc:  2142 /  2480 =  86.371
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18884 / 19962 =  94.600
Robust  acc:   104 /   180 =  57.778
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.483 | Val Loss: 0.002 | Val Acc: 90.623
Training:
Accuracies by groups:
0, 0  acc: 17493 / 19248 =  90.882
0, 1  acc:  8859 /  9188 =  96.419
1, 0  acc: 125751 / 126048 =  99.764
1, 1  acc:  8197 /  8286 =  98.926
--------------------------------------
Average acc: 160300 / 162770 =  98.483
Robust  acc: 17493 / 19248 =  90.882
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7191 /  8535 =  84.253
0, 1  acc:  7871 /  8276 =  95.106
1, 0  acc:  2783 /  2874 =  96.834
1, 1  acc:   159 /   182 =  87.363
------------------------------------
Average acc: 18004 / 19867 =  90.623
Robust  acc:  7191 /  8535 =  84.253
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.998
Robust Acc: 82.222 | Best Acc: 96.250
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7128 /  7535 =  94.599
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18165 / 19962 =  90.998
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7128 /  7535 =  94.599
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18165 / 19962 =  90.998
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7128 /  7535 =  94.599
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18165 / 19962 =  90.998
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 97.952 | Val Loss: 0.001 | Val Acc: 94.156
Training:
Accuracies by groups:
0, 0  acc: 17021 / 19273 =  88.315
0, 1  acc:  8714 /  9130 =  95.444
1, 0  acc: 125470 / 125992 =  99.586
1, 1  acc:  8231 /  8375 =  98.281
--------------------------------------
Average acc: 159436 / 162770 =  97.952
Robust  acc: 17021 / 19273 =  88.315
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7832 /  8535 =  91.763
0, 1  acc:  8085 /  8276 =  97.692
1, 0  acc:  2656 /  2874 =  92.415
1, 1  acc:   133 /   182 =  73.077
------------------------------------
Average acc: 18706 / 19867 =  94.156
Robust  acc:   133 /   182 =  73.077
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.264
Robust Acc: 65.000 | Best Acc: 97.107
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  9117 /  9767 =  93.345
0, 1  acc:  7317 /  7535 =  97.107
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18817 / 19962 =  94.264
Robust  acc:   117 /   180 =  65.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9117 /  9767 =  93.345
0, 1  acc:  7317 /  7535 =  97.107
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18817 / 19962 =  94.264
Robust  acc:   117 /   180 =  65.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9117 /  9767 =  93.345
0, 1  acc:  7317 /  7535 =  97.107
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18817 / 19962 =  94.264
Robust  acc:   117 /   180 =  65.000
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.296 | Val Loss: 0.002 | Val Acc: 90.950
Training:
Accuracies by groups:
0, 0  acc: 16704 / 19576 =  85.329
0, 1  acc:  8681 /  9202 =  94.338
1, 0  acc: 125052 / 125839 =  99.375
1, 1  acc:  7932 /  8153 =  97.289
--------------------------------------
Average acc: 158369 / 162770 =  97.296
Robust  acc: 16704 / 19576 =  85.329
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7221 /  8535 =  84.605
0, 1  acc:  7899 /  8276 =  95.445
1, 0  acc:  2791 /  2874 =  97.112
1, 1  acc:   158 /   182 =  86.813
------------------------------------
Average acc: 18069 / 19867 =  90.950
Robust  acc:  7221 /  8535 =  84.605
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.123
Robust Acc: 77.778 | Best Acc: 97.339
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  8489 /  9767 =  86.915
0, 1  acc:  7147 /  7535 =  94.851
1, 0  acc:  2414 /  2480 =  97.339
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18190 / 19962 =  91.123
Robust  acc:   140 /   180 =  77.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8489 /  9767 =  86.915
0, 1  acc:  7147 /  7535 =  94.851
1, 0  acc:  2414 /  2480 =  97.339
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18190 / 19962 =  91.123
Robust  acc:   140 /   180 =  77.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8489 /  9767 =  86.915
0, 1  acc:  7147 /  7535 =  94.851
1, 0  acc:  2414 /  2480 =  97.339
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18190 / 19962 =  91.123
Robust  acc:   140 /   180 =  77.778
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.786 | Val Loss: 0.002 | Val Acc: 90.371
Training:
Accuracies by groups:
0, 0  acc: 16055 / 19357 =  82.942
0, 1  acc:  8548 /  9195 =  92.964
1, 0  acc: 125105 / 126086 =  99.222
1, 1  acc:  7830 /  8132 =  96.286
--------------------------------------
Average acc: 157538 / 162770 =  96.786
Robust  acc: 16055 / 19357 =  82.942
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7203 /  8535 =  84.394
0, 1  acc:  7816 /  8276 =  94.442
1, 0  acc:  2776 /  2874 =  96.590
1, 1  acc:   159 /   182 =  87.363
------------------------------------
Average acc: 17954 / 19867 =  90.371
Robust  acc:  7203 /  8535 =  84.394
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.422
Robust Acc: 81.111 | Best Acc: 96.129
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  8466 /  9767 =  86.680
0, 1  acc:  7054 /  7535 =  93.616
1, 0  acc:  2384 /  2480 =  96.129
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18050 / 19962 =  90.422
Robust  acc:   146 /   180 =  81.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8466 /  9767 =  86.680
0, 1  acc:  7054 /  7535 =  93.616
1, 0  acc:  2384 /  2480 =  96.129
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18050 / 19962 =  90.422
Robust  acc:   146 /   180 =  81.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8466 /  9767 =  86.680
0, 1  acc:  7054 /  7535 =  93.616
1, 0  acc:  2384 /  2480 =  96.129
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18050 / 19962 =  90.422
Robust  acc:   146 /   180 =  81.111
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 96.184 | Val Loss: 0.002 | Val Acc: 89.379
Training:
Accuracies by groups:
0, 0  acc: 15673 / 19498 =  80.383
0, 1  acc:  8601 /  9403 =  91.471
1, 0  acc: 124292 / 125521 =  99.021
1, 1  acc:  7993 /  8348 =  95.747
--------------------------------------
Average acc: 156559 / 162770 =  96.184
Robust  acc: 15673 / 19498 =  80.383
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7061 /  8535 =  82.730
0, 1  acc:  7714 /  8276 =  93.209
1, 0  acc:  2815 /  2874 =  97.947
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17757 / 19867 =  89.379
Robust  acc:  7061 /  8535 =  82.730
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.106
Robust Acc: 83.889 | Best Acc: 97.661
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  8376 /  9767 =  85.758
0, 1  acc:  7038 /  7535 =  93.404
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17987 / 19962 =  90.106
Robust  acc:   151 /   180 =  83.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8376 /  9767 =  85.758
0, 1  acc:  7038 /  7535 =  93.404
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17987 / 19962 =  90.106
Robust  acc:   151 /   180 =  83.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8376 /  9767 =  85.758
0, 1  acc:  7038 /  7535 =  93.404
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17987 / 19962 =  90.106
Robust  acc:   151 /   180 =  83.889
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 95.695 | Val Loss: 0.002 | Val Acc: 92.440
Training:
Accuracies by groups:
0, 0  acc: 15090 / 19307 =  78.158
0, 1  acc:  8467 /  9383 =  90.238
1, 0  acc: 124223 / 125616 =  98.891
1, 1  acc:  7982 /  8464 =  94.305
--------------------------------------
Average acc: 155762 / 162770 =  95.695
Robust  acc: 15090 / 19307 =  78.158
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7601 /  8535 =  89.057
0, 1  acc:  7860 /  8276 =  94.973
1, 0  acc:  2746 /  2874 =  95.546
1, 1  acc:   158 /   182 =  86.813
------------------------------------
Average acc: 18365 / 19867 =  92.440
Robust  acc:   158 /   182 =  86.813
------------------------------------
New max robust acc: 86.81318681318682
debias model - Saving best checkpoint at epoch 16
replace: True
-> Updating checkpoint debias-wga-best_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed35.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.992
Robust Acc: 82.222 | Best Acc: 95.222
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  8881 /  9767 =  90.929
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18563 / 19962 =  92.992
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8881 /  9767 =  90.929
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18563 / 19962 =  92.992
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8881 /  9767 =  90.929
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18563 / 19962 =  92.992
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 94.987 | Val Loss: 0.002 | Val Acc: 93.280
Training:
Accuracies by groups:
0, 0  acc: 14385 / 19160 =  75.078
0, 1  acc:  8356 /  9466 =  88.274
1, 0  acc: 124159 / 125867 =  98.643
1, 1  acc:  7710 /  8277 =  93.150
--------------------------------------
Average acc: 154610 / 162770 =  94.987
Robust  acc: 14385 / 19160 =  75.078
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7638 /  8535 =  89.490
0, 1  acc:  8027 /  8276 =  96.991
1, 0  acc:  2729 /  2874 =  94.955
1, 1  acc:   138 /   182 =  75.824
------------------------------------
Average acc: 18532 / 19867 =  93.280
Robust  acc:   138 /   182 =  75.824
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.758
Robust Acc: 68.333 | Best Acc: 97.160
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  8937 /  9767 =  91.502
0, 1  acc:  7321 /  7535 =  97.160
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18716 / 19962 =  93.758
Robust  acc:   123 /   180 =  68.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8937 /  9767 =  91.502
0, 1  acc:  7321 /  7535 =  97.160
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18716 / 19962 =  93.758
Robust  acc:   123 /   180 =  68.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8937 /  9767 =  91.502
0, 1  acc:  7321 /  7535 =  97.160
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18716 / 19962 =  93.758
Robust  acc:   123 /   180 =  68.333
------------------------------------
Epoch:  19 | Train Loss: 0.001 | Train Acc: 94.706 | Val Loss: 0.002 | Val Acc: 90.577
Training:
Accuracies by groups:
0, 0  acc: 14006 / 18964 =  73.856
0, 1  acc:  8132 /  9336 =  87.104
1, 0  acc: 124259 / 126107 =  98.535
1, 1  acc:  7756 /  8363 =  92.742
--------------------------------------
Average acc: 154153 / 162770 =  94.706
Robust  acc: 14006 / 18964 =  73.856
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7231 /  8535 =  84.722
0, 1  acc:  7794 /  8276 =  94.176
1, 0  acc:  2801 /  2874 =  97.460
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17995 / 19867 =  90.577
Robust  acc:  7231 /  8535 =  84.722
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.253
Robust Acc: 84.444 | Best Acc: 97.097
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7086 /  7535 =  94.041
1, 0  acc:  2408 /  2480 =  97.097
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   152 /   180 =  84.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7086 /  7535 =  94.041
1, 0  acc:  2408 /  2480 =  97.097
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   152 /   180 =  84.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7086 /  7535 =  94.041
1, 0  acc:  2408 /  2480 =  97.097
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   152 /   180 =  84.444
------------------------------------
Epoch:  20 | Train Loss: 0.002 | Train Acc: 94.213 | Val Loss: 0.002 | Val Acc: 94.574
Training:
Accuracies by groups:
0, 0  acc: 13947 / 19314 =  72.212
0, 1  acc:  7979 /  9358 =  85.264
1, 0  acc: 123883 / 125861 =  98.428
1, 1  acc:  7542 /  8237 =  91.562
--------------------------------------
Average acc: 153351 / 162770 =  94.213
Robust  acc: 13947 / 19314 =  72.212
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8270 /  8535 =  96.895
0, 1  acc:  8224 /  8276 =  99.372
1, 0  acc:  2232 /  2874 =  77.662
1, 1  acc:    63 /   182 =  34.615
------------------------------------
Average acc: 18789 / 19867 =  94.574
Robust  acc:    63 /   182 =  34.615
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 95.006
Robust Acc: 38.889 | Best Acc: 99.310
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  9529 /  9767 =  97.563
0, 1  acc:  7483 /  7535 =  99.310
1, 0  acc:  1883 /  2480 =  75.927
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18965 / 19962 =  95.006
Robust  acc:    70 /   180 =  38.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9529 /  9767 =  97.563
0, 1  acc:  7483 /  7535 =  99.310
1, 0  acc:  1883 /  2480 =  75.927
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18965 / 19962 =  95.006
Robust  acc:    70 /   180 =  38.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9529 /  9767 =  97.563
0, 1  acc:  7483 /  7535 =  99.310
1, 0  acc:  1883 /  2480 =  75.927
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18965 / 19962 =  95.006
Robust  acc:    70 /   180 =  38.889
------------------------------------
Epoch:  21 | Train Loss: 0.002 | Train Acc: 93.924 | Val Loss: 0.002 | Val Acc: 94.866
Training:
Accuracies by groups:
0, 0  acc: 13749 / 19439 =  70.729
0, 1  acc:  7791 /  9304 =  83.738
1, 0  acc: 123619 / 125682 =  98.359
1, 1  acc:  7721 /  8345 =  92.522
--------------------------------------
Average acc: 152880 / 162770 =  93.924
Robust  acc: 13749 / 19439 =  70.729
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8171 /  8535 =  95.735
0, 1  acc:  8148 /  8276 =  98.453
1, 0  acc:  2416 /  2874 =  84.064
1, 1  acc:   112 /   182 =  61.538
------------------------------------
Average acc: 18847 / 19867 =  94.866
Robust  acc:   112 /   182 =  61.538
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 95.056
Robust Acc: 54.444 | Best Acc: 98.275
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  9413 /  9767 =  96.376
0, 1  acc:  7405 /  7535 =  98.275
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18975 / 19962 =  95.056
Robust  acc:    98 /   180 =  54.444
------------------------------------
Accuracies by groups:
0, 0  acc:  9413 /  9767 =  96.376
0, 1  acc:  7405 /  7535 =  98.275
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18975 / 19962 =  95.056
Robust  acc:    98 /   180 =  54.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9413 /  9767 =  96.376
0, 1  acc:  7405 /  7535 =  98.275
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18975 / 19962 =  95.056
Robust  acc:    98 /   180 =  54.444
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 93.821 | Val Loss: 0.005 | Val Acc: 70.378
Training:
Accuracies by groups:
0, 0  acc: 13650 / 19336 =  70.594
0, 1  acc:  7673 /  9296 =  82.541
1, 0  acc: 123737 / 125838 =  98.330
1, 1  acc:  7652 /  8300 =  92.193
--------------------------------------
Average acc: 152712 / 162770 =  93.821
Robust  acc: 13650 / 19336 =  70.594
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5121 /  8535 =  60.000
0, 1  acc:  5814 /  8276 =  70.251
1, 0  acc:  2865 /  2874 =  99.687
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 13982 / 19867 =  70.378
Robust  acc:  5121 /  8535 =  60.000
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 71.882
Robust Acc: 66.059 | Best Acc: 99.556
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  6452 /  9767 =  66.059
0, 1  acc:  5250 /  7535 =  69.675
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14349 / 19962 =  71.882
Robust  acc:  6452 /  9767 =  66.059
------------------------------------
Accuracies by groups:
0, 0  acc:  6452 /  9767 =  66.059
0, 1  acc:  5250 /  7535 =  69.675
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14349 / 19962 =  71.882
Robust  acc:  6452 /  9767 =  66.059
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6452 /  9767 =  66.059
0, 1  acc:  5250 /  7535 =  69.675
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14349 / 19962 =  71.882
Robust  acc:  6452 /  9767 =  66.059
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 93.673 | Val Loss: 0.005 | Val Acc: 75.542
Training:
Accuracies by groups:
0, 0  acc: 13396 / 19317 =  69.348
0, 1  acc:  7512 /  9267 =  81.062
1, 0  acc: 123737 / 125741 =  98.406
1, 1  acc:  7827 /  8445 =  92.682
--------------------------------------
Average acc: 152472 / 162770 =  93.673
Robust  acc: 13396 / 19317 =  69.348
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5379 /  8535 =  63.023
0, 1  acc:  6592 /  8276 =  79.652
1, 0  acc:  2859 /  2874 =  99.478
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 15008 / 19867 =  75.542
Robust  acc:  5379 /  8535 =  63.023
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.112
Robust Acc: 69.387 | Best Acc: 99.395
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  6777 /  9767 =  69.387
0, 1  acc:  5979 /  7535 =  79.350
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15393 / 19962 =  77.112
Robust  acc:  6777 /  9767 =  69.387
------------------------------------
Accuracies by groups:
0, 0  acc:  6777 /  9767 =  69.387
0, 1  acc:  5979 /  7535 =  79.350
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15393 / 19962 =  77.112
Robust  acc:  6777 /  9767 =  69.387
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6777 /  9767 =  69.387
0, 1  acc:  5979 /  7535 =  79.350
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15393 / 19962 =  77.112
Robust  acc:  6777 /  9767 =  69.387
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 93.598 | Val Loss: 0.004 | Val Acc: 81.723
Training:
Accuracies by groups:
0, 0  acc: 13398 / 19490 =  68.743
0, 1  acc:  7280 /  9143 =  79.624
1, 0  acc: 123977 / 125864 =  98.501
1, 1  acc:  7695 /  8273 =  93.013
--------------------------------------
Average acc: 152350 / 162770 =  93.598
Robust  acc: 13398 / 19490 =  68.743
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6327 /  8535 =  74.130
0, 1  acc:  6888 /  8276 =  83.229
1, 0  acc:  2844 /  2874 =  98.956
1, 1  acc:   177 /   182 =  97.253
------------------------------------
Average acc: 16236 / 19867 =  81.723
Robust  acc:  6327 /  8535 =  74.130
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.193
Robust Acc: 78.683 | Best Acc: 98.266
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  7685 /  9767 =  78.683
0, 1  acc:  6313 /  7535 =  83.782
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16607 / 19962 =  83.193
Robust  acc:  7685 /  9767 =  78.683
------------------------------------
Accuracies by groups:
0, 0  acc:  7685 /  9767 =  78.683
0, 1  acc:  6313 /  7535 =  83.782
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16607 / 19962 =  83.193
Robust  acc:  7685 /  9767 =  78.683
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7685 /  9767 =  78.683
0, 1  acc:  6313 /  7535 =  83.782
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16607 / 19962 =  83.193
Robust  acc:  7685 /  9767 =  78.683
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 93.488 | Val Loss: 0.004 | Val Acc: 77.717
Training:
Accuracies by groups:
0, 0  acc: 13160 / 19343 =  68.035
0, 1  acc:  7389 /  9315 =  79.324
1, 0  acc: 123939 / 125838 =  98.491
1, 1  acc:  7682 /  8274 =  92.845
--------------------------------------
Average acc: 152170 / 162770 =  93.488
Robust  acc: 13160 / 19343 =  68.035
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5831 /  8535 =  68.319
0, 1  acc:  6577 /  8276 =  79.471
1, 0  acc:  2853 /  2874 =  99.269
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15440 / 19867 =  77.717
Robust  acc:  5831 /  8535 =  68.319
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 79.706
Robust Acc: 74.086 | Best Acc: 99.395
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  7236 /  9767 =  74.086
0, 1  acc:  6036 /  7535 =  80.106
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7236 /  9767 =  74.086
------------------------------------
Accuracies by groups:
0, 0  acc:  7236 /  9767 =  74.086
0, 1  acc:  6036 /  7535 =  80.106
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7236 /  9767 =  74.086
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7236 /  9767 =  74.086
0, 1  acc:  6036 /  7535 =  80.106
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7236 /  9767 =  74.086
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 93.482 | Val Loss: 0.008 | Val Acc: 49.041
Training:
Accuracies by groups:
0, 0  acc: 13062 / 19410 =  67.295
0, 1  acc:  7352 /  9300 =  79.054
1, 0  acc: 124005 / 125788 =  98.583
1, 1  acc:  7742 /  8272 =  93.593
--------------------------------------
Average acc: 152161 / 162770 =  93.482
Robust  acc: 13062 / 19410 =  67.295
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3029 /  8535 =  35.489
0, 1  acc:  3662 /  8276 =  44.248
1, 0  acc:  2870 /  2874 =  99.861
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  9743 / 19867 =  49.041
Robust  acc:  3029 /  8535 =  35.489
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 48.813
Robust Acc: 39.398 | Best Acc: 99.879
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  3848 /  9767 =  39.398
0, 1  acc:  3241 /  7535 =  43.013
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9744 / 19962 =  48.813
Robust  acc:  3848 /  9767 =  39.398
------------------------------------
Accuracies by groups:
0, 0  acc:  3848 /  9767 =  39.398
0, 1  acc:  3241 /  7535 =  43.013
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9744 / 19962 =  48.813
Robust  acc:  3848 /  9767 =  39.398
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  3848 /  9767 =  39.398
0, 1  acc:  3241 /  7535 =  43.013
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9744 / 19962 =  48.813
Robust  acc:  3848 /  9767 =  39.398
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 93.352 | Val Loss: 0.007 | Val Acc: 55.086
Training:
Accuracies by groups:
0, 0  acc: 12997 / 19486 =  66.699
0, 1  acc:  7220 /  9303 =  77.609
1, 0  acc: 124076 / 125769 =  98.654
1, 1  acc:  7656 /  8212 =  93.229
--------------------------------------
Average acc: 151949 / 162770 =  93.352
Robust  acc: 12997 / 19486 =  66.699
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3972 /  8535 =  46.538
0, 1  acc:  3922 /  8276 =  47.390
1, 0  acc:  2868 /  2874 =  99.791
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 10944 / 19867 =  55.086
Robust  acc:  3972 /  8535 =  46.538
------------------------------------
-------------------------------------------
Avg Test Loss: 0.007 | Avg Test Acc: 56.412
Robust Acc: 46.768 | Best Acc: 99.798
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  5084 /  9767 =  52.053
0, 1  acc:  3524 /  7535 =  46.768
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11261 / 19962 =  56.412
Robust  acc:  3524 /  7535 =  46.768
------------------------------------
Accuracies by groups:
0, 0  acc:  5084 /  9767 =  52.053
0, 1  acc:  3524 /  7535 =  46.768
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11261 / 19962 =  56.412
Robust  acc:  3524 /  7535 =  46.768
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5084 /  9767 =  52.053
0, 1  acc:  3524 /  7535 =  46.768
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11261 / 19962 =  56.412
Robust  acc:  3524 /  7535 =  46.768
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 93.404 | Val Loss: 0.006 | Val Acc: 64.554
Training:
Accuracies by groups:
0, 0  acc: 12846 / 19462 =  66.006
0, 1  acc:  7008 /  9077 =  77.206
1, 0  acc: 124396 / 125940 =  98.774
1, 1  acc:  7784 /  8291 =  93.885
--------------------------------------
Average acc: 152034 / 162770 =  93.404
Robust  acc: 12846 / 19462 =  66.006
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4323 /  8535 =  50.650
0, 1  acc:  5459 /  8276 =  65.962
1, 0  acc:  2862 /  2874 =  99.582
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12825 / 19867 =  64.554
Robust  acc:  4323 /  8535 =  50.650
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 65.459
Robust Acc: 55.892 | Best Acc: 99.798
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  5459 /  9767 =  55.892
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13067 / 19962 =  65.459
Robust  acc:  5459 /  9767 =  55.892
------------------------------------
Accuracies by groups:
0, 0  acc:  5459 /  9767 =  55.892
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13067 / 19962 =  65.459
Robust  acc:  5459 /  9767 =  55.892
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5459 /  9767 =  55.892
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13067 / 19962 =  65.459
Robust  acc:  5459 /  9767 =  55.892
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 93.277 | Val Loss: 0.005 | Val Acc: 77.329
Training:
Accuracies by groups:
0, 0  acc: 12715 / 19410 =  65.507
0, 1  acc:  7165 /  9351 =  76.623
1, 0  acc: 124290 / 125845 =  98.764
1, 1  acc:  7657 /  8164 =  93.790
--------------------------------------
Average acc: 151827 / 162770 =  93.277
Robust  acc: 12715 / 19410 =  65.507
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5958 /  8535 =  69.807
0, 1  acc:  6377 /  8276 =  77.054
1, 0  acc:  2848 /  2874 =  99.095
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15363 / 19867 =  77.329
Robust  acc:  5958 /  8535 =  69.807
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.875
Robust Acc: 75.642 | Best Acc: 98.871
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  7388 /  9767 =  75.642
0, 1  acc:  5731 /  7535 =  76.058
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15745 / 19962 =  78.875
Robust  acc:  7388 /  9767 =  75.642
------------------------------------
Accuracies by groups:
0, 0  acc:  7388 /  9767 =  75.642
0, 1  acc:  5731 /  7535 =  76.058
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15745 / 19962 =  78.875
Robust  acc:  7388 /  9767 =  75.642
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7388 /  9767 =  75.642
0, 1  acc:  5731 /  7535 =  76.058
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15745 / 19962 =  78.875
Robust  acc:  7388 /  9767 =  75.642
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 93.397 | Val Loss: 0.003 | Val Acc: 92.772
Training:
Accuracies by groups:
0, 0  acc: 12864 / 19488 =  66.010
0, 1  acc:  7067 /  9226 =  76.599
1, 0  acc: 124269 / 125754 =  98.819
1, 1  acc:  7823 /  8302 =  94.230
--------------------------------------
Average acc: 152023 / 162770 =  93.397
Robust  acc: 12864 / 19488 =  66.010
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7687 /  8535 =  90.064
0, 1  acc:  7937 /  8276 =  95.904
1, 0  acc:  2672 /  2874 =  92.971
1, 1  acc:   135 /   182 =  74.176
------------------------------------
Average acc: 18431 / 19867 =  92.772
Robust  acc:   135 /   182 =  74.176
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.257
Robust Acc: 68.333 | Best Acc: 95.780
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  8989 /  9767 =  92.034
0, 1  acc:  7217 /  7535 =  95.780
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18616 / 19962 =  93.257
Robust  acc:   123 /   180 =  68.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8989 /  9767 =  92.034
0, 1  acc:  7217 /  7535 =  95.780
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18616 / 19962 =  93.257
Robust  acc:   123 /   180 =  68.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8989 /  9767 =  92.034
0, 1  acc:  7217 /  7535 =  95.780
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18616 / 19962 =  93.257
Robust  acc:   123 /   180 =  68.333
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 93.465 | Val Loss: 0.004 | Val Acc: 85.433
Training:
Accuracies by groups:
0, 0  acc: 12754 / 19284 =  66.138
0, 1  acc:  7165 /  9286 =  77.159
1, 0  acc: 124696 / 126210 =  98.800
1, 1  acc:  7518 /  7990 =  94.093
--------------------------------------
Average acc: 152133 / 162770 =  93.465
Robust  acc: 12754 / 19284 =  66.138
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6644 /  8535 =  77.844
0, 1  acc:  7328 /  8276 =  88.545
1, 0  acc:  2829 /  2874 =  98.434
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16973 / 19867 =  85.433
Robust  acc:  6644 /  8535 =  77.844
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 86.625
Robust Acc: 82.052 | Best Acc: 98.105
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  8014 /  9767 =  82.052
0, 1  acc:  6683 /  7535 =  88.693
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17292 / 19962 =  86.625
Robust  acc:  8014 /  9767 =  82.052
------------------------------------
Accuracies by groups:
0, 0  acc:  8014 /  9767 =  82.052
0, 1  acc:  6683 /  7535 =  88.693
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17292 / 19962 =  86.625
Robust  acc:  8014 /  9767 =  82.052
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8014 /  9767 =  82.052
0, 1  acc:  6683 /  7535 =  88.693
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17292 / 19962 =  86.625
Robust  acc:  8014 /  9767 =  82.052
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 93.399 | Val Loss: 0.004 | Val Acc: 82.680
Training:
Accuracies by groups:
0, 0  acc: 12810 / 19420 =  65.963
0, 1  acc:  6980 /  9164 =  76.168
1, 0  acc: 124397 / 125857 =  98.840
1, 1  acc:  7838 /  8329 =  94.105
--------------------------------------
Average acc: 152025 / 162770 =  93.399
Robust  acc: 12810 / 19420 =  65.963
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6289 /  8535 =  73.685
0, 1  acc:  7130 /  8276 =  86.153
1, 0  acc:  2834 /  2874 =  98.608
1, 1  acc:   173 /   182 =  95.055
------------------------------------
Average acc: 16426 / 19867 =  82.680
Robust  acc:  6289 /  8535 =  73.685
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.295
Robust Acc: 78.939 | Best Acc: 98.629
-------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  7710 /  9767 =  78.939
0, 1  acc:  6509 /  7535 =  86.384
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 16827 / 19962 =  84.295
Robust  acc:  7710 /  9767 =  78.939
------------------------------------
Accuracies by groups:
0, 0  acc:  7710 /  9767 =  78.939
0, 1  acc:  6509 /  7535 =  86.384
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 16827 / 19962 =  84.295
Robust  acc:  7710 /  9767 =  78.939
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7710 /  9767 =  78.939
0, 1  acc:  6509 /  7535 =  86.384
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 16827 / 19962 =  84.295
Robust  acc:  7710 /  9767 =  78.939
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 93.330 | Val Loss: 0.009 | Val Acc: 41.964
Training:
Accuracies by groups:
0, 0  acc: 12741 / 19426 =  65.587
0, 1  acc:  7159 /  9337 =  76.673
1, 0  acc: 124294 / 125800 =  98.803
1, 1  acc:  7720 /  8207 =  94.066
--------------------------------------
Average acc: 151914 / 162770 =  93.330
Robust  acc: 12741 / 19426 =  65.587
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  2634 /  8535 =  30.861
0, 1  acc:  2652 /  8276 =  32.044
1, 0  acc:  2869 /  2874 =  99.826
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  8337 / 19867 =  41.964
Robust  acc:  2634 /  8535 =  30.861
------------------------------------
-------------------------------------------
Avg Test Loss: 0.009 | Avg Test Acc: 41.935
Robust Acc: 30.299 | Best Acc: 99.919
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  3432 /  9767 =  35.139
0, 1  acc:  2283 /  7535 =  30.299
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8371 / 19962 =  41.935
Robust  acc:  2283 /  7535 =  30.299
------------------------------------
Accuracies by groups:
0, 0  acc:  3432 /  9767 =  35.139
0, 1  acc:  2283 /  7535 =  30.299
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8371 / 19962 =  41.935
Robust  acc:  2283 /  7535 =  30.299
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  3432 /  9767 =  35.139
0, 1  acc:  2283 /  7535 =  30.299
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8371 / 19962 =  41.935
Robust  acc:  2283 /  7535 =  30.299
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 93.437 | Val Loss: 0.003 | Val Acc: 94.383
Training:
Accuracies by groups:
0, 0  acc: 12705 / 19358 =  65.632
0, 1  acc:  7118 /  9231 =  77.110
1, 0  acc: 124466 / 125892 =  98.867
1, 1  acc:  7798 /  8289 =  94.076
--------------------------------------
Average acc: 152087 / 162770 =  93.437
Robust  acc: 12705 / 19358 =  65.632
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8008 /  8535 =  93.825
0, 1  acc:  8148 /  8276 =  98.453
1, 0  acc:  2483 /  2874 =  86.395
1, 1  acc:   112 /   182 =  61.538
------------------------------------
Average acc: 18751 / 19867 =  94.383
Robust  acc:   112 /   182 =  61.538
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.805
Robust Acc: 53.333 | Best Acc: 98.076
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  9295 /  9767 =  95.167
0, 1  acc:  7390 /  7535 =  98.076
1, 0  acc:  2144 /  2480 =  86.452
1, 1  acc:    96 /   180 =  53.333
------------------------------------
Average acc: 18925 / 19962 =  94.805
Robust  acc:    96 /   180 =  53.333
------------------------------------
Accuracies by groups:
0, 0  acc:  9295 /  9767 =  95.167
0, 1  acc:  7390 /  7535 =  98.076
1, 0  acc:  2144 /  2480 =  86.452
1, 1  acc:    96 /   180 =  53.333
------------------------------------
Average acc: 18925 / 19962 =  94.805
Robust  acc:    96 /   180 =  53.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9295 /  9767 =  95.167
0, 1  acc:  7390 /  7535 =  98.076
1, 0  acc:  2144 /  2480 =  86.452
1, 1  acc:    96 /   180 =  53.333
------------------------------------
Average acc: 18925 / 19962 =  94.805
Robust  acc:    96 /   180 =  53.333
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 93.324 | Val Loss: 0.004 | Val Acc: 82.277
Training:
Accuracies by groups:
0, 0  acc: 12690 / 19449 =  65.248
0, 1  acc:  7070 /  9249 =  76.441
1, 0  acc: 124491 / 125971 =  98.825
1, 1  acc:  7653 /  8101 =  94.470
--------------------------------------
Average acc: 151904 / 162770 =  93.324
Robust  acc: 12690 / 19449 =  65.248
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6227 /  8535 =  72.958
0, 1  acc:  7104 /  8276 =  85.839
1, 0  acc:  2840 /  2874 =  98.817
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 16346 / 19867 =  82.277
Robust  acc:  6227 /  8535 =  72.958
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.990
Robust Acc: 78.581 | Best Acc: 98.750
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  7675 /  9767 =  78.581
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16766 / 19962 =  83.990
Robust  acc:  7675 /  9767 =  78.581
------------------------------------
Accuracies by groups:
0, 0  acc:  7675 /  9767 =  78.581
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16766 / 19962 =  83.990
Robust  acc:  7675 /  9767 =  78.581
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7675 /  9767 =  78.581
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16766 / 19962 =  83.990
Robust  acc:  7675 /  9767 =  78.581
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 93.491 | Val Loss: 0.006 | Val Acc: 66.673
Training:
Accuracies by groups:
0, 0  acc: 13032 / 19583 =  66.548
0, 1  acc:  7173 /  9326 =  76.914
1, 0  acc: 124233 / 125620 =  98.896
1, 1  acc:  7737 /  8241 =  93.884
--------------------------------------
Average acc: 152175 / 162770 =  93.491
Robust  acc: 13032 / 19583 =  66.548
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4824 /  8535 =  56.520
0, 1  acc:  5381 /  8276 =  65.019
1, 0  acc:  2861 /  2874 =  99.548
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 13246 / 19867 =  66.673
Robust  acc:  4824 /  8535 =  56.520
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 68.721
Robust Acc: 62.721 | Best Acc: 99.556
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  6126 /  9767 =  62.721
0, 1  acc:  4946 /  7535 =  65.640
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13718 / 19962 =  68.721
Robust  acc:  6126 /  9767 =  62.721
------------------------------------
Accuracies by groups:
0, 0  acc:  6126 /  9767 =  62.721
0, 1  acc:  4946 /  7535 =  65.640
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13718 / 19962 =  68.721
Robust  acc:  6126 /  9767 =  62.721
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6126 /  9767 =  62.721
0, 1  acc:  4946 /  7535 =  65.640
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13718 / 19962 =  68.721
Robust  acc:  6126 /  9767 =  62.721
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 93.420 | Val Loss: 0.004 | Val Acc: 82.106
Training:
Accuracies by groups:
0, 0  acc: 12637 / 19274 =  65.565
0, 1  acc:  7294 /  9395 =  77.637
1, 0  acc: 124414 / 125853 =  98.857
1, 1  acc:  7714 /  8248 =  93.526
--------------------------------------
Average acc: 152059 / 162770 =  93.420
Robust  acc: 12637 / 19274 =  65.565
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6241 /  8535 =  73.122
0, 1  acc:  7055 /  8276 =  85.246
1, 0  acc:  2841 /  2874 =  98.852
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 16312 / 19867 =  82.106
Robust  acc:  6241 /  8535 =  73.122
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.614
Robust Acc: 77.895 | Best Acc: 98.548
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  7608 /  9767 =  77.895
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2444 /  2480 =  98.548
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16691 / 19962 =  83.614
Robust  acc:  7608 /  9767 =  77.895
------------------------------------
Accuracies by groups:
0, 0  acc:  7608 /  9767 =  77.895
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2444 /  2480 =  98.548
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16691 / 19962 =  83.614
Robust  acc:  7608 /  9767 =  77.895
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7608 /  9767 =  77.895
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2444 /  2480 =  98.548
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16691 / 19962 =  83.614
Robust  acc:  7608 /  9767 =  77.895
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 93.396 | Val Loss: 0.005 | Val Acc: 70.363
Training:
Accuracies by groups:
0, 0  acc: 12667 / 19289 =  65.670
0, 1  acc:  7157 /  9223 =  77.599
1, 0  acc: 124415 / 125947 =  98.784
1, 1  acc:  7781 /  8311 =  93.623
--------------------------------------
Average acc: 152020 / 162770 =  93.396
Robust  acc: 12667 / 19289 =  65.670
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5364 /  8535 =  62.847
0, 1  acc:  5579 /  8276 =  67.412
1, 0  acc:  2855 /  2874 =  99.339
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13979 / 19867 =  70.363
Robust  acc:  5364 /  8535 =  62.847
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 71.857
Robust Acc: 66.264 | Best Acc: 99.194
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  6717 /  9767 =  68.772
0, 1  acc:  4993 /  7535 =  66.264
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14344 / 19962 =  71.857
Robust  acc:  4993 /  7535 =  66.264
------------------------------------
Accuracies by groups:
0, 0  acc:  6717 /  9767 =  68.772
0, 1  acc:  4993 /  7535 =  66.264
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14344 / 19962 =  71.857
Robust  acc:  4993 /  7535 =  66.264
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6717 /  9767 =  68.772
0, 1  acc:  4993 /  7535 =  66.264
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14344 / 19962 =  71.857
Robust  acc:  4993 /  7535 =  66.264
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 93.536 | Val Loss: 0.004 | Val Acc: 80.374
Training:
Accuracies by groups:
0, 0  acc: 12807 / 19430 =  65.914
0, 1  acc:  7220 /  9269 =  77.894
1, 0  acc: 124362 / 125732 =  98.910
1, 1  acc:  7860 /  8339 =  94.256
--------------------------------------
Average acc: 152249 / 162770 =  93.536
Robust  acc: 12807 / 19430 =  65.914
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5978 /  8535 =  70.041
0, 1  acc:  6981 /  8276 =  84.352
1, 0  acc:  2840 /  2874 =  98.817
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 15968 / 19867 =  80.374
Robust  acc:  5978 /  8535 =  70.041
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 81.840
Robust Acc: 75.038 | Best Acc: 98.911
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  7329 /  9767 =  75.038
0, 1  acc:  6397 /  7535 =  84.897
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7329 /  9767 =  75.038
------------------------------------
Accuracies by groups:
0, 0  acc:  7329 /  9767 =  75.038
0, 1  acc:  6397 /  7535 =  84.897
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7329 /  9767 =  75.038
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7329 /  9767 =  75.038
0, 1  acc:  6397 /  7535 =  84.897
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7329 /  9767 =  75.038
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 93.458 | Val Loss: 0.004 | Val Acc: 84.306
Training:
Accuracies by groups:
0, 0  acc: 12813 / 19493 =  65.731
0, 1  acc:  7230 /  9251 =  78.154
1, 0  acc: 124477 / 125908 =  98.863
1, 1  acc:  7602 /  8118 =  93.644
--------------------------------------
Average acc: 152122 / 162770 =  93.458
Robust  acc: 12813 / 19493 =  65.731
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6512 /  8535 =  76.298
0, 1  acc:  7245 /  8276 =  87.542
1, 0  acc:  2822 /  2874 =  98.191
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 16749 / 19867 =  84.306
Robust  acc:  6512 /  8535 =  76.298
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 85.432
Robust Acc: 80.577 | Best Acc: 97.702
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  7870 /  9767 =  80.577
0, 1  acc:  6600 /  7535 =  87.591
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17054 / 19962 =  85.432
Robust  acc:  7870 /  9767 =  80.577
------------------------------------
Accuracies by groups:
0, 0  acc:  7870 /  9767 =  80.577
0, 1  acc:  6600 /  7535 =  87.591
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17054 / 19962 =  85.432
Robust  acc:  7870 /  9767 =  80.577
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7870 /  9767 =  80.577
0, 1  acc:  6600 /  7535 =  87.591
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17054 / 19962 =  85.432
Robust  acc:  7870 /  9767 =  80.577
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 93.468 | Val Loss: 0.004 | Val Acc: 88.111
Training:
Accuracies by groups:
0, 0  acc: 12753 / 19353 =  65.897
0, 1  acc:  7241 /  9338 =  77.543
1, 0  acc: 124374 / 125772 =  98.888
1, 1  acc:  7770 /  8307 =  93.536
--------------------------------------
Average acc: 152138 / 162770 =  93.468
Robust  acc: 12753 / 19353 =  65.897
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6935 /  8535 =  81.254
0, 1  acc:  7594 /  8276 =  91.759
1, 0  acc:  2809 /  2874 =  97.738
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17505 / 19867 =  88.111
Robust  acc:  6935 /  8535 =  81.254
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 88.964
Robust Acc: 85.175 | Best Acc: 97.056
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  8319 /  9767 =  85.175
0, 1  acc:  6878 /  7535 =  91.281
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17759 / 19962 =  88.964
Robust  acc:  8319 /  9767 =  85.175
------------------------------------
Accuracies by groups:
0, 0  acc:  8319 /  9767 =  85.175
0, 1  acc:  6878 /  7535 =  91.281
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17759 / 19962 =  88.964
Robust  acc:  8319 /  9767 =  85.175
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8319 /  9767 =  85.175
0, 1  acc:  6878 /  7535 =  91.281
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17759 / 19962 =  88.964
Robust  acc:  8319 /  9767 =  85.175
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 93.523 | Val Loss: 0.003 | Val Acc: 88.911
Training:
Accuracies by groups:
0, 0  acc: 12883 / 19486 =  66.114
0, 1  acc:  7162 /  9265 =  77.302
1, 0  acc: 124526 / 125900 =  98.909
1, 1  acc:  7657 /  8119 =  94.310
--------------------------------------
Average acc: 152228 / 162770 =  93.523
Robust  acc: 12883 / 19486 =  66.114
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7062 /  8535 =  82.742
0, 1  acc:  7633 /  8276 =  92.231
1, 0  acc:  2807 /  2874 =  97.669
1, 1  acc:   162 /   182 =  89.011
------------------------------------
Average acc: 17664 / 19867 =  88.911
Robust  acc:  7062 /  8535 =  82.742
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.690
Robust Acc: 86.506 | Best Acc: 96.210
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6912 /  7535 =  91.732
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17904 / 19962 =  89.690
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6912 /  7535 =  91.732
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17904 / 19962 =  89.690
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6912 /  7535 =  91.732
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17904 / 19962 =  89.690
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 93.582 | Val Loss: 0.003 | Val Acc: 93.074
Training:
Accuracies by groups:
0, 0  acc: 13113 / 19600 =  66.903
0, 1  acc:  7267 /  9291 =  78.215
1, 0  acc: 124253 / 125662 =  98.879
1, 1  acc:  7691 /  8217 =  93.599
--------------------------------------
Average acc: 152324 / 162770 =  93.582
Robust  acc: 13113 / 19600 =  66.903
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8383 /  8535 =  98.219
0, 1  acc:  8242 /  8276 =  99.589
1, 0  acc:  1818 /  2874 =  63.257
1, 1  acc:    48 /   182 =  26.374
------------------------------------
Average acc: 18491 / 19867 =  93.074
Robust  acc:    48 /   182 =  26.374
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.633
Robust Acc: 29.444 | Best Acc: 99.390
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  9623 /  9767 =  98.526
0, 1  acc:  7489 /  7535 =  99.390
1, 0  acc:  1526 /  2480 =  61.532
1, 1  acc:    53 /   180 =  29.444
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:    53 /   180 =  29.444
------------------------------------
Accuracies by groups:
0, 0  acc:  9623 /  9767 =  98.526
0, 1  acc:  7489 /  7535 =  99.390
1, 0  acc:  1526 /  2480 =  61.532
1, 1  acc:    53 /   180 =  29.444
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:    53 /   180 =  29.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9623 /  9767 =  98.526
0, 1  acc:  7489 /  7535 =  99.390
1, 0  acc:  1526 /  2480 =  61.532
1, 1  acc:    53 /   180 =  29.444
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:    53 /   180 =  29.444
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 93.514 | Val Loss: 0.003 | Val Acc: 93.029
Training:
Accuracies by groups:
0, 0  acc: 12691 / 19260 =  65.893
0, 1  acc:  7223 /  9302 =  77.650
1, 0  acc: 124447 / 125869 =  98.870
1, 1  acc:  7852 /  8339 =  94.160
--------------------------------------
Average acc: 152213 / 162770 =  93.514
Robust  acc: 12691 / 19260 =  65.893
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7689 /  8535 =  90.088
0, 1  acc:  8009 /  8276 =  96.774
1, 0  acc:  2652 /  2874 =  92.276
1, 1  acc:   132 /   182 =  72.527
------------------------------------
Average acc: 18482 / 19867 =  93.029
Robust  acc:   132 /   182 =  72.527
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.453
Robust Acc: 66.111 | Best Acc: 96.311
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  9019 /  9767 =  92.342
0, 1  acc:  7257 /  7535 =  96.311
1, 0  acc:  2260 /  2480 =  91.129
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18655 / 19962 =  93.453
Robust  acc:   119 /   180 =  66.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9019 /  9767 =  92.342
0, 1  acc:  7257 /  7535 =  96.311
1, 0  acc:  2260 /  2480 =  91.129
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18655 / 19962 =  93.453
Robust  acc:   119 /   180 =  66.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9019 /  9767 =  92.342
0, 1  acc:  7257 /  7535 =  96.311
1, 0  acc:  2260 /  2480 =  91.129
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18655 / 19962 =  93.453
Robust  acc:   119 /   180 =  66.111
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 93.659 | Val Loss: 0.003 | Val Acc: 88.735
Training:
Accuracies by groups:
0, 0  acc: 12801 / 19274 =  66.416
0, 1  acc:  7393 /  9364 =  78.951
1, 0  acc: 124401 / 125781 =  98.903
1, 1  acc:  7853 /  8351 =  94.037
--------------------------------------
Average acc: 152448 / 162770 =  93.659
Robust  acc: 12801 / 19274 =  66.416
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7059 /  8535 =  82.707
0, 1  acc:  7629 /  8276 =  92.182
1, 0  acc:  2785 /  2874 =  96.903
1, 1  acc:   156 /   182 =  85.714
------------------------------------
Average acc: 17629 / 19867 =  88.735
Robust  acc:  7059 /  8535 =  82.707
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.605
Robust Acc: 81.667 | Best Acc: 96.250
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  8439 /  9767 =  86.403
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8439 /  9767 =  86.403
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8439 /  9767 =  86.403
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 93.639 | Val Loss: 0.003 | Val Acc: 93.165
Training:
Accuracies by groups:
0, 0  acc: 12772 / 19290 =  66.210
0, 1  acc:  7344 /  9307 =  78.908
1, 0  acc: 124415 / 125826 =  98.879
1, 1  acc:  7885 /  8347 =  94.465
--------------------------------------
Average acc: 152416 / 162770 =  93.639
Robust  acc: 12772 / 19290 =  66.210
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7716 /  8535 =  90.404
0, 1  acc:  8037 /  8276 =  97.112
1, 0  acc:  2632 /  2874 =  91.580
1, 1  acc:   124 /   182 =  68.132
------------------------------------
Average acc: 18509 / 19867 =  93.165
Robust  acc:   124 /   182 =  68.132
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.853
Robust Acc: 65.556 | Best Acc: 97.147
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  9043 /  9767 =  92.587
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18735 / 19962 =  93.853
Robust  acc:   118 /   180 =  65.556
------------------------------------
Accuracies by groups:
0, 0  acc:  9043 /  9767 =  92.587
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18735 / 19962 =  93.853
Robust  acc:   118 /   180 =  65.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9043 /  9767 =  92.587
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18735 / 19962 =  93.853
Robust  acc:   118 /   180 =  65.556
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 93.628 | Val Loss: 0.003 | Val Acc: 93.331
Training:
Accuracies by groups:
0, 0  acc: 12868 / 19398 =  66.337
0, 1  acc:  7418 /  9422 =  78.731
1, 0  acc: 124289 / 125651 =  98.916
1, 1  acc:  7823 /  8299 =  94.264
--------------------------------------
Average acc: 152398 / 162770 =  93.628
Robust  acc: 12868 / 19398 =  66.337
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7762 /  8535 =  90.943
0, 1  acc:  8022 /  8276 =  96.931
1, 0  acc:  2629 /  2874 =  91.475
1, 1  acc:   129 /   182 =  70.879
------------------------------------
Average acc: 18542 / 19867 =  93.331
Robust  acc:   129 /   182 =  70.879
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.943
Robust Acc: 61.667 | Best Acc: 96.894
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  9100 /  9767 =  93.171
0, 1  acc:  7301 /  7535 =  96.894
1, 0  acc:  2241 /  2480 =  90.363
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18753 / 19962 =  93.943
Robust  acc:   111 /   180 =  61.667
------------------------------------
Accuracies by groups:
0, 0  acc:  9100 /  9767 =  93.171
0, 1  acc:  7301 /  7535 =  96.894
1, 0  acc:  2241 /  2480 =  90.363
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18753 / 19962 =  93.943
Robust  acc:   111 /   180 =  61.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9100 /  9767 =  93.171
0, 1  acc:  7301 /  7535 =  96.894
1, 0  acc:  2241 /  2480 =  90.363
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18753 / 19962 =  93.943
Robust  acc:   111 /   180 =  61.667
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 93.698 | Val Loss: 0.003 | Val Acc: 92.555
Training:
Accuracies by groups:
0, 0  acc: 13052 / 19381 =  67.344
0, 1  acc:  7300 /  9324 =  78.293
1, 0  acc: 124419 / 125829 =  98.879
1, 1  acc:  7742 /  8236 =  94.002
--------------------------------------
Average acc: 152513 / 162770 =  93.698
Robust  acc: 13052 / 19381 =  67.344
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8440 /  8535 =  98.887
0, 1  acc:  8253 /  8276 =  99.722
1, 0  acc:  1656 /  2874 =  57.620
1, 1  acc:    39 /   182 =  21.429
------------------------------------
Average acc: 18388 / 19867 =  92.555
Robust  acc:    39 /   182 =  21.429
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.092
Robust Acc: 31.111 | Best Acc: 99.562
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  9647 /  9767 =  98.771
0, 1  acc:  7502 /  7535 =  99.562
1, 0  acc:  1378 /  2480 =  55.565
1, 1  acc:    56 /   180 =  31.111
------------------------------------
Average acc: 18583 / 19962 =  93.092
Robust  acc:    56 /   180 =  31.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9647 /  9767 =  98.771
0, 1  acc:  7502 /  7535 =  99.562
1, 0  acc:  1378 /  2480 =  55.565
1, 1  acc:    56 /   180 =  31.111
------------------------------------
Average acc: 18583 / 19962 =  93.092
Robust  acc:    56 /   180 =  31.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9647 /  9767 =  98.771
0, 1  acc:  7502 /  7535 =  99.562
1, 0  acc:  1378 /  2480 =  55.565
1, 1  acc:    56 /   180 =  31.111
------------------------------------
Average acc: 18583 / 19962 =  93.092
Robust  acc:    56 /   180 =  31.111
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 93.581 | Val Loss: 0.004 | Val Acc: 83.279
Training:
Accuracies by groups:
0, 0  acc: 12635 / 19200 =  65.807
0, 1  acc:  7139 /  9137 =  78.133
1, 0  acc: 124603 / 126021 =  98.875
1, 1  acc:  7945 /  8412 =  94.448
--------------------------------------
Average acc: 152322 / 162770 =  93.581
Robust  acc: 12635 / 19200 =  65.807
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6341 /  8535 =  74.294
0, 1  acc:  7195 /  8276 =  86.938
1, 0  acc:  2839 /  2874 =  98.782
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 16545 / 19867 =  83.279
Robust  acc:  6341 /  8535 =  74.294
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.946
Robust Acc: 78.960 | Best Acc: 98.750
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  7712 /  9767 =  78.960
0, 1  acc:  6630 /  7535 =  87.989
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16957 / 19962 =  84.946
Robust  acc:  7712 /  9767 =  78.960
------------------------------------
Accuracies by groups:
0, 0  acc:  7712 /  9767 =  78.960
0, 1  acc:  6630 /  7535 =  87.989
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16957 / 19962 =  84.946
Robust  acc:  7712 /  9767 =  78.960
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7712 /  9767 =  78.960
0, 1  acc:  6630 /  7535 =  87.989
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16957 / 19962 =  84.946
Robust  acc:  7712 /  9767 =  78.960
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 93.675 | Val Loss: 0.003 | Val Acc: 93.879
Training:
Accuracies by groups:
0, 0  acc: 12725 / 19073 =  66.717
0, 1  acc:  7115 /  9157 =  77.700
1, 0  acc: 124881 / 126294 =  98.881
1, 1  acc:  7754 /  8246 =  94.033
--------------------------------------
Average acc: 152475 / 162770 =  93.675
Robust  acc: 12725 / 19073 =  66.717
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7984 /  8535 =  93.544
0, 1  acc:  8150 /  8276 =  98.478
1, 0  acc:  2438 /  2874 =  84.830
1, 1  acc:    79 /   182 =  43.407
------------------------------------
Average acc: 18651 / 19867 =  93.879
Robust  acc:    79 /   182 =  43.407
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.389
Robust Acc: 45.000 | Best Acc: 98.421
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  9286 /  9767 =  95.075
0, 1  acc:  7416 /  7535 =  98.421
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    81 /   180 =  45.000
------------------------------------
Average acc: 18842 / 19962 =  94.389
Robust  acc:    81 /   180 =  45.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9286 /  9767 =  95.075
0, 1  acc:  7416 /  7535 =  98.421
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    81 /   180 =  45.000
------------------------------------
Average acc: 18842 / 19962 =  94.389
Robust  acc:    81 /   180 =  45.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9286 /  9767 =  95.075
0, 1  acc:  7416 /  7535 =  98.421
1, 0  acc:  2059 /  2480 =  83.024
1, 1  acc:    81 /   180 =  45.000
------------------------------------
Average acc: 18842 / 19962 =  94.389
Robust  acc:    81 /   180 =  45.000
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed35.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed35.pt
