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/seed37/stage_one_erm_model_b_epoch0_seed37.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: 37
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=37-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/seed37/stage_one_erm_model_b_epoch0_seed37.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8232, 0.0277],
        [0.1321, 0.0170]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 89.922 | Val Loss: 0.003 | Val Acc: 82.856
Training:
Accuracies by groups:
0, 0  acc:  9579 / 18831 =  50.868
0, 1  acc:  5551 /  9315 =  59.592
1, 0  acc: 123762 / 126424 =  97.894
1, 1  acc:  7474 /  8200 =  91.146
--------------------------------------
Average acc: 146366 / 162770 =  89.922
Robust  acc:  9579 / 18831 =  50.868
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6424 /  8535 =  75.267
0, 1  acc:  7032 /  8276 =  84.969
1, 0  acc:  2836 /  2874 =  98.678
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 16461 / 19867 =  82.856
Robust  acc:  6424 /  8535 =  75.267
------------------------------------
New max robust acc: 75.26654950205038
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 84.631
Robust Acc: 80.762 | Best Acc: 98.589
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  7888 /  9767 =  80.762
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16894 / 19962 =  84.631
Robust  acc:  7888 /  9767 =  80.762
------------------------------------
Accuracies by groups:
0, 0  acc:  7888 /  9767 =  80.762
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16894 / 19962 =  84.631
Robust  acc:  7888 /  9767 =  80.762
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7888 /  9767 =  80.762
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16894 / 19962 =  84.631
Robust  acc:  7888 /  9767 =  80.762
------------------------------------
Epoch:   2 | Train Loss: 0.001 | Train Acc: 93.869 | Val Loss: 0.002 | Val Acc: 87.834
Training:
Accuracies by groups:
0, 0  acc: 13013 / 18792 =  69.248
0, 1  acc:  7357 /  9152 =  80.387
1, 0  acc: 124900 / 126578 =  98.674
1, 1  acc:  7521 /  8248 =  91.186
--------------------------------------
Average acc: 152791 / 162770 =  93.869
Robust  acc: 13013 / 18792 =  69.248
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6876 /  8535 =  80.562
0, 1  acc:  7582 /  8276 =  91.614
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17450 / 19867 =  87.834
Robust  acc:  6876 /  8535 =  80.562
------------------------------------
New max robust acc: 80.56239015817224
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.164
Robust Acc: 84.867 | Best Acc: 97.984
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  8289 /  9767 =  84.867
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17799 / 19962 =  89.164
Robust  acc:  8289 /  9767 =  84.867
------------------------------------
Accuracies by groups:
0, 0  acc:  8289 /  9767 =  84.867
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17799 / 19962 =  89.164
Robust  acc:  8289 /  9767 =  84.867
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8289 /  9767 =  84.867
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17799 / 19962 =  89.164
Robust  acc:  8289 /  9767 =  84.867
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 94.609 | Val Loss: 0.002 | Val Acc: 88.061
Training:
Accuracies by groups:
0, 0  acc: 13586 / 18935 =  71.751
0, 1  acc:  7870 /  9214 =  85.414
1, 0  acc: 124698 / 126194 =  98.815
1, 1  acc:  7841 /  8427 =  93.046
--------------------------------------
Average acc: 153995 / 162770 =  94.609
Robust  acc: 13586 / 18935 =  71.751
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6878 /  8535 =  80.586
0, 1  acc:  7618 /  8276 =  92.049
1, 0  acc:  2827 /  2874 =  98.365
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 17495 / 19867 =  88.061
Robust  acc:  6878 /  8535 =  80.586
------------------------------------
New max robust acc: 80.58582308142941
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.290
Robust Acc: 84.857 | Best Acc: 98.185
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8288 /  9767 =  84.857
0, 1  acc:  6942 /  7535 =  92.130
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17824 / 19962 =  89.290
Robust  acc:  8288 /  9767 =  84.857
------------------------------------
Accuracies by groups:
0, 0  acc:  8288 /  9767 =  84.857
0, 1  acc:  6942 /  7535 =  92.130
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17824 / 19962 =  89.290
Robust  acc:  8288 /  9767 =  84.857
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8288 /  9767 =  84.857
0, 1  acc:  6942 /  7535 =  92.130
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17824 / 19962 =  89.290
Robust  acc:  8288 /  9767 =  84.857
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 95.274 | Val Loss: 0.002 | Val Acc: 89.133
Training:
Accuracies by groups:
0, 0  acc: 14306 / 19171 =  74.623
0, 1  acc:  7968 /  9076 =  87.792
1, 0  acc: 125205 / 126401 =  99.054
1, 1  acc:  7599 /  8122 =  93.561
--------------------------------------
Average acc: 155078 / 162770 =  95.274
Robust  acc: 14306 / 19171 =  74.623
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7045 /  8535 =  82.542
0, 1  acc:  7670 /  8276 =  92.678
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17708 / 19867 =  89.133
Robust  acc:  7045 /  8535 =  82.542
------------------------------------
New max robust acc: 82.54247217340364
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.806
Robust Acc: 85.850 | Best Acc: 97.702
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8385 /  9767 =  85.850
0, 1  acc:  6961 /  7535 =  92.382
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17927 / 19962 =  89.806
Robust  acc:  8385 /  9767 =  85.850
------------------------------------
Accuracies by groups:
0, 0  acc:  8385 /  9767 =  85.850
0, 1  acc:  6961 /  7535 =  92.382
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17927 / 19962 =  89.806
Robust  acc:  8385 /  9767 =  85.850
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8385 /  9767 =  85.850
0, 1  acc:  6961 /  7535 =  92.382
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17927 / 19962 =  89.806
Robust  acc:  8385 /  9767 =  85.850
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 95.882 | Val Loss: 0.002 | Val Acc: 91.035
Training:
Accuracies by groups:
0, 0  acc: 14576 / 19004 =  76.700
0, 1  acc:  8317 /  9283 =  89.594
1, 0  acc: 125169 / 126162 =  99.213
1, 1  acc:  8005 /  8321 =  96.202
--------------------------------------
Average acc: 156067 / 162770 =  95.882
Robust  acc: 14576 / 19004 =  76.700
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7254 /  8535 =  84.991
0, 1  acc:  7866 /  8276 =  95.046
1, 0  acc:  2801 /  2874 =  97.460
1, 1  acc:   165 /   182 =  90.659
------------------------------------
Average acc: 18086 / 19867 =  91.035
Robust  acc:  7254 /  8535 =  84.991
------------------------------------
New max robust acc: 84.99121265377856
debias model - Saving best checkpoint at epoch 4
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.484
Robust Acc: 81.667 | Best Acc: 97.177
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8583 /  9767 =  87.878
0, 1  acc:  7122 /  7535 =  94.519
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18262 / 19962 =  91.484
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8583 /  9767 =  87.878
0, 1  acc:  7122 /  7535 =  94.519
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18262 / 19962 =  91.484
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8583 /  9767 =  87.878
0, 1  acc:  7122 /  7535 =  94.519
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18262 / 19962 =  91.484
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.576 | Val Loss: 0.002 | Val Acc: 91.010
Training:
Accuracies by groups:
0, 0  acc: 15080 / 19078 =  79.044
0, 1  acc:  8438 /  9233 =  91.390
1, 0  acc: 125627 / 126208 =  99.540
1, 1  acc:  8052 /  8251 =  97.588
--------------------------------------
Average acc: 157197 / 162770 =  96.576
Robust  acc: 15080 / 19078 =  79.044
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7245 /  8535 =  84.886
0, 1  acc:  7870 /  8276 =  95.094
1, 0  acc:  2804 /  2874 =  97.564
1, 1  acc:   162 /   182 =  89.011
------------------------------------
Average acc: 18081 / 19867 =  91.010
Robust  acc:  7245 /  8535 =  84.886
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.574
Robust Acc: 81.667 | Best Acc: 97.258
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8579 /  9767 =  87.837
0, 1  acc:  7142 /  7535 =  94.784
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18280 / 19962 =  91.574
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8579 /  9767 =  87.837
0, 1  acc:  7142 /  7535 =  94.784
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18280 / 19962 =  91.574
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8579 /  9767 =  87.837
0, 1  acc:  7142 /  7535 =  94.784
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18280 / 19962 =  91.574
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.324 | Val Loss: 0.001 | Val Acc: 93.079
Training:
Accuracies by groups:
0, 0  acc: 15515 / 18911 =  82.042
0, 1  acc:  8620 /  9249 =  93.199
1, 0  acc: 126146 / 126407 =  99.794
1, 1  acc:  8133 /  8203 =  99.147
--------------------------------------
Average acc: 158414 / 162770 =  97.324
Robust  acc: 15515 / 18911 =  82.042
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7569 /  8535 =  88.682
0, 1  acc:  8029 /  8276 =  97.015
1, 0  acc:  2749 /  2874 =  95.651
1, 1  acc:   145 /   182 =  79.670
------------------------------------
Average acc: 18492 / 19867 =  93.079
Robust  acc:   145 /   182 =  79.670
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.428
Robust Acc: 73.889 | Best Acc: 96.775
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8861 /  9767 =  90.724
0, 1  acc:  7292 /  7535 =  96.775
1, 0  acc:  2364 /  2480 =  95.323
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18650 / 19962 =  93.428
Robust  acc:   133 /   180 =  73.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8861 /  9767 =  90.724
0, 1  acc:  7292 /  7535 =  96.775
1, 0  acc:  2364 /  2480 =  95.323
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18650 / 19962 =  93.428
Robust  acc:   133 /   180 =  73.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8861 /  9767 =  90.724
0, 1  acc:  7292 /  7535 =  96.775
1, 0  acc:  2364 /  2480 =  95.323
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18650 / 19962 =  93.428
Robust  acc:   133 /   180 =  73.889
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 97.961 | Val Loss: 0.001 | Val Acc: 93.602
Training:
Accuracies by groups:
0, 0  acc: 16350 / 19029 =  85.921
0, 1  acc:  8834 /  9346 =  94.522
1, 0  acc: 126019 / 126118 =  99.922
1, 1  acc:  8248 /  8277 =  99.650
--------------------------------------
Average acc: 159451 / 162770 =  97.961
Robust  acc: 16350 / 19029 =  85.921
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7695 /  8535 =  90.158
0, 1  acc:  8056 /  8276 =  97.342
1, 0  acc:  2706 /  2874 =  94.154
1, 1  acc:   139 /   182 =  76.374
------------------------------------
Average acc: 18596 / 19867 =  93.602
Robust  acc:   139 /   182 =  76.374
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.888
Robust Acc: 66.111 | Best Acc: 97.067
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  8984 /  9767 =  91.983
0, 1  acc:  7314 /  7535 =  97.067
1, 0  acc:  2325 /  2480 =  93.750
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18742 / 19962 =  93.888
Robust  acc:   119 /   180 =  66.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8984 /  9767 =  91.983
0, 1  acc:  7314 /  7535 =  97.067
1, 0  acc:  2325 /  2480 =  93.750
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18742 / 19962 =  93.888
Robust  acc:   119 /   180 =  66.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8984 /  9767 =  91.983
0, 1  acc:  7314 /  7535 =  97.067
1, 0  acc:  2325 /  2480 =  93.750
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18742 / 19962 =  93.888
Robust  acc:   119 /   180 =  66.111
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.441 | Val Loss: 0.001 | Val Acc: 94.196
Training:
Accuracies by groups:
0, 0  acc: 16971 / 19018 =  89.237
0, 1  acc:  8852 /  9255 =  95.646
1, 0  acc: 126105 / 126178 =  99.942
1, 1  acc:  8304 /  8319 =  99.820
--------------------------------------
Average acc: 160232 / 162770 =  98.441
Robust  acc: 16971 / 19018 =  89.237
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7811 /  8535 =  91.517
0, 1  acc:  8126 /  8276 =  98.188
1, 0  acc:  2655 /  2874 =  92.380
1, 1  acc:   122 /   182 =  67.033
------------------------------------
Average acc: 18714 / 19867 =  94.196
Robust  acc:   122 /   182 =  67.033
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.329
Robust Acc: 63.333 | Best Acc: 97.863
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  9076 /  9767 =  92.925
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18830 / 19962 =  94.329
Robust  acc:   114 /   180 =  63.333
------------------------------------
Accuracies by groups:
0, 0  acc:  9076 /  9767 =  92.925
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18830 / 19962 =  94.329
Robust  acc:   114 /   180 =  63.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9076 /  9767 =  92.925
0, 1  acc:  7374 /  7535 =  97.863
1, 0  acc:  2266 /  2480 =  91.371
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18830 / 19962 =  94.329
Robust  acc:   114 /   180 =  63.333
------------------------------------
Epoch:  10 | Train Loss: 0.001 | Train Acc: 98.636 | Val Loss: 0.001 | Val Acc: 92.852
Training:
Accuracies by groups:
0, 0  acc: 17424 / 19204 =  90.731
0, 1  acc:  8923 /  9225 =  96.726
1, 0  acc: 125989 / 126090 =  99.920
1, 1  acc:  8214 /  8251 =  99.552
--------------------------------------
Average acc: 160550 / 162770 =  98.636
Robust  acc: 17424 / 19204 =  90.731
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7576 /  8535 =  88.764
0, 1  acc:  8039 /  8276 =  97.136
1, 0  acc:  2700 /  2874 =  93.946
1, 1  acc:   132 /   182 =  72.527
------------------------------------
Average acc: 18447 / 19867 =  92.852
Robust  acc:   132 /   182 =  72.527
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.192
Robust Acc: 69.444 | Best Acc: 96.470
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  8893 /  9767 =  91.051
0, 1  acc:  7269 /  7535 =  96.470
1, 0  acc:  2316 /  2480 =  93.387
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18603 / 19962 =  93.192
Robust  acc:   125 /   180 =  69.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8893 /  9767 =  91.051
0, 1  acc:  7269 /  7535 =  96.470
1, 0  acc:  2316 /  2480 =  93.387
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18603 / 19962 =  93.192
Robust  acc:   125 /   180 =  69.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8893 /  9767 =  91.051
0, 1  acc:  7269 /  7535 =  96.470
1, 0  acc:  2316 /  2480 =  93.387
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18603 / 19962 =  93.192
Robust  acc:   125 /   180 =  69.444
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.682 | Val Loss: 0.001 | Val Acc: 93.940
Training:
Accuracies by groups:
0, 0  acc: 17353 / 18963 =  91.510
0, 1  acc:  9028 /  9330 =  96.763
1, 0  acc: 126048 / 126236 =  99.851
1, 1  acc:  8196 /  8241 =  99.454
--------------------------------------
Average acc: 160625 / 162770 =  98.682
Robust  acc: 17353 / 18963 =  91.510
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7830 /  8535 =  91.740
0, 1  acc:  8088 /  8276 =  97.728
1, 0  acc:  2616 /  2874 =  91.023
1, 1  acc:   129 /   182 =  70.879
------------------------------------
Average acc: 18663 / 19867 =  93.940
Robust  acc:   129 /   182 =  70.879
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.204
Robust Acc: 65.556 | Best Acc: 97.439
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  9095 /  9767 =  93.120
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2250 /  2480 =  90.726
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   118 /   180 =  65.556
------------------------------------
Accuracies by groups:
0, 0  acc:  9095 /  9767 =  93.120
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2250 /  2480 =  90.726
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   118 /   180 =  65.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9095 /  9767 =  93.120
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2250 /  2480 =  90.726
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   118 /   180 =  65.556
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.353 | Val Loss: 0.002 | Val Acc: 92.762
Training:
Accuracies by groups:
0, 0  acc: 17009 / 18947 =  89.771
0, 1  acc:  8871 /  9181 =  96.623
1, 0  acc: 126069 / 126405 =  99.734
1, 1  acc:  8140 /  8237 =  98.822
--------------------------------------
Average acc: 160089 / 162770 =  98.353
Robust  acc: 17009 / 18947 =  89.771
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7654 /  8535 =  89.678
0, 1  acc:  7939 /  8276 =  95.928
1, 0  acc:  2690 /  2874 =  93.598
1, 1  acc:   146 /   182 =  80.220
------------------------------------
Average acc: 18429 / 19867 =  92.762
Robust  acc:   146 /   182 =  80.220
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.962
Robust Acc: 76.111 | Best Acc: 95.528
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  8942 /  9767 =  91.553
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18557 / 19962 =  92.962
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8942 /  9767 =  91.553
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18557 / 19962 =  92.962
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8942 /  9767 =  91.553
0, 1  acc:  7198 /  7535 =  95.528
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18557 / 19962 =  92.962
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 97.906 | Val Loss: 0.001 | Val Acc: 93.980
Training:
Accuracies by groups:
0, 0  acc: 16602 / 18889 =  87.892
0, 1  acc:  8862 /  9264 =  95.661
1, 0  acc: 125665 / 126225 =  99.556
1, 1  acc:  8233 /  8392 =  98.105
--------------------------------------
Average acc: 159362 / 162770 =  97.906
Robust  acc: 16602 / 18889 =  87.892
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7854 /  8535 =  92.021
0, 1  acc:  8086 /  8276 =  97.704
1, 0  acc:  2608 /  2874 =  90.745
1, 1  acc:   123 /   182 =  67.582
------------------------------------
Average acc: 18671 / 19867 =  93.980
Robust  acc:   123 /   182 =  67.582
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.254
Robust Acc: 63.889 | Best Acc: 97.080
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  9150 /  9767 =  93.683
0, 1  acc:  7315 /  7535 =  97.080
1, 0  acc:  2235 /  2480 =  90.121
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18815 / 19962 =  94.254
Robust  acc:   115 /   180 =  63.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9150 /  9767 =  93.683
0, 1  acc:  7315 /  7535 =  97.080
1, 0  acc:  2235 /  2480 =  90.121
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18815 / 19962 =  94.254
Robust  acc:   115 /   180 =  63.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9150 /  9767 =  93.683
0, 1  acc:  7315 /  7535 =  97.080
1, 0  acc:  2235 /  2480 =  90.121
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18815 / 19962 =  94.254
Robust  acc:   115 /   180 =  63.889
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.286 | Val Loss: 0.002 | Val Acc: 92.430
Training:
Accuracies by groups:
0, 0  acc: 16159 / 18993 =  85.079
0, 1  acc:  8684 /  9228 =  94.105
1, 0  acc: 125551 / 126345 =  99.372
1, 1  acc:  7959 /  8204 =  97.014
--------------------------------------
Average acc: 158353 / 162770 =  97.286
Robust  acc: 16159 / 18993 =  85.079
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7456 /  8535 =  87.358
0, 1  acc:  7985 /  8276 =  96.484
1, 0  acc:  2771 /  2874 =  96.416
1, 1  acc:   151 /   182 =  82.967
------------------------------------
Average acc: 18363 / 19867 =  92.430
Robust  acc:   151 /   182 =  82.967
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.626
Robust Acc: 77.222 | Best Acc: 95.594
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  8780 /  9767 =  89.895
0, 1  acc:  7203 /  7535 =  95.594
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18490 / 19962 =  92.626
Robust  acc:   139 /   180 =  77.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8780 /  9767 =  89.895
0, 1  acc:  7203 /  7535 =  95.594
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18490 / 19962 =  92.626
Robust  acc:   139 /   180 =  77.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8780 /  9767 =  89.895
0, 1  acc:  7203 /  7535 =  95.594
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18490 / 19962 =  92.626
Robust  acc:   139 /   180 =  77.222
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.770 | Val Loss: 0.002 | Val Acc: 92.576
Training:
Accuracies by groups:
0, 0  acc: 15623 / 18917 =  82.587
0, 1  acc:  8517 /  9196 =  92.616
1, 0  acc: 125399 / 126407 =  99.203
1, 1  acc:  7973 /  8250 =  96.642
--------------------------------------
Average acc: 157512 / 162770 =  96.770
Robust  acc: 15623 / 18917 =  82.587
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7523 /  8535 =  88.143
0, 1  acc:  8018 /  8276 =  96.883
1, 0  acc:  2704 /  2874 =  94.085
1, 1  acc:   147 /   182 =  80.769
------------------------------------
Average acc: 18392 / 19867 =  92.576
Robust  acc:   147 /   182 =  80.769
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.881
Robust Acc: 69.444 | Best Acc: 96.284
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  8841 /  9767 =  90.519
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18541 / 19962 =  92.881
Robust  acc:   125 /   180 =  69.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8841 /  9767 =  90.519
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18541 / 19962 =  92.881
Robust  acc:   125 /   180 =  69.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8841 /  9767 =  90.519
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18541 / 19962 =  92.881
Robust  acc:   125 /   180 =  69.444
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 96.139 | Val Loss: 0.001 | Val Acc: 94.519
Training:
Accuracies by groups:
0, 0  acc: 15111 / 19044 =  79.348
0, 1  acc:  8431 /  9186 =  91.781
1, 0  acc: 125038 / 126263 =  99.030
1, 1  acc:  7905 /  8277 =  95.506
--------------------------------------
Average acc: 156485 / 162770 =  96.139
Robust  acc: 15111 / 19044 =  79.348
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7920 /  8535 =  92.794
0, 1  acc:  8140 /  8276 =  98.357
1, 0  acc:  2601 /  2874 =  90.501
1, 1  acc:   117 /   182 =  64.286
------------------------------------
Average acc: 18778 / 19867 =  94.519
Robust  acc:   117 /   182 =  64.286
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.860
Robust Acc: 60.556 | Best Acc: 98.036
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  9207 /  9767 =  94.266
0, 1  acc:  7387 /  7535 =  98.036
1, 0  acc:  2233 /  2480 =  90.040
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18936 / 19962 =  94.860
Robust  acc:   109 /   180 =  60.556
------------------------------------
Accuracies by groups:
0, 0  acc:  9207 /  9767 =  94.266
0, 1  acc:  7387 /  7535 =  98.036
1, 0  acc:  2233 /  2480 =  90.040
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18936 / 19962 =  94.860
Robust  acc:   109 /   180 =  60.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9207 /  9767 =  94.266
0, 1  acc:  7387 /  7535 =  98.036
1, 0  acc:  2233 /  2480 =  90.040
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18936 / 19962 =  94.860
Robust  acc:   109 /   180 =  60.556
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 95.588 | Val Loss: 0.001 | Val Acc: 95.007
Training:
Accuracies by groups:
0, 0  acc: 14574 / 18933 =  76.977
0, 1  acc:  8194 /  9155 =  89.503
1, 0  acc: 125091 / 126482 =  98.900
1, 1  acc:  7730 /  8200 =  94.268
--------------------------------------
Average acc: 155589 / 162770 =  95.588
Robust  acc: 14574 / 18933 =  76.977
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8132 /  8535 =  95.278
0, 1  acc:  8210 /  8276 =  99.203
1, 0  acc:  2436 /  2874 =  84.760
1, 1  acc:    97 /   182 =  53.297
------------------------------------
Average acc: 18875 / 19867 =  95.007
Robust  acc:    97 /   182 =  53.297
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 95.266
Robust Acc: 42.222 | Best Acc: 99.084
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  9412 /  9767 =  96.365
0, 1  acc:  7466 /  7535 =  99.084
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    76 /   180 =  42.222
------------------------------------
Average acc: 19017 / 19962 =  95.266
Robust  acc:    76 /   180 =  42.222
------------------------------------
Accuracies by groups:
0, 0  acc:  9412 /  9767 =  96.365
0, 1  acc:  7466 /  7535 =  99.084
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    76 /   180 =  42.222
------------------------------------
Average acc: 19017 / 19962 =  95.266
Robust  acc:    76 /   180 =  42.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9412 /  9767 =  96.365
0, 1  acc:  7466 /  7535 =  99.084
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    76 /   180 =  42.222
------------------------------------
Average acc: 19017 / 19962 =  95.266
Robust  acc:    76 /   180 =  42.222
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 95.143 | Val Loss: 0.004 | Val Acc: 79.010
Training:
Accuracies by groups:
0, 0  acc: 14096 / 18719 =  75.303
0, 1  acc:  8199 /  9266 =  88.485
1, 0  acc: 124861 / 126516 =  98.692
1, 1  acc:  7708 /  8269 =  93.216
--------------------------------------
Average acc: 154864 / 162770 =  95.143
Robust  acc: 14096 / 18719 =  75.303
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5825 /  8535 =  68.248
0, 1  acc:  6834 /  8276 =  82.576
1, 0  acc:  2858 /  2874 =  99.443
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15697 / 19867 =  79.010
Robust  acc:  5825 /  8535 =  68.248
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 80.628
Robust Acc: 73.748 | Best Acc: 99.435
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  7203 /  9767 =  73.748
0, 1  acc:  6254 /  7535 =  82.999
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16095 / 19962 =  80.628
Robust  acc:  7203 /  9767 =  73.748
------------------------------------
Accuracies by groups:
0, 0  acc:  7203 /  9767 =  73.748
0, 1  acc:  6254 /  7535 =  82.999
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16095 / 19962 =  80.628
Robust  acc:  7203 /  9767 =  73.748
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7203 /  9767 =  73.748
0, 1  acc:  6254 /  7535 =  82.999
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16095 / 19962 =  80.628
Robust  acc:  7203 /  9767 =  73.748
------------------------------------
Epoch:  19 | Train Loss: 0.002 | Train Acc: 94.670 | Val Loss: 0.005 | Val Acc: 68.848
Training:
Accuracies by groups:
0, 0  acc: 14029 / 19047 =  73.655
0, 1  acc:  8113 /  9348 =  86.789
1, 0  acc: 124243 / 126047 =  98.569
1, 1  acc:  7710 /  8328 =  92.579
--------------------------------------
Average acc: 154095 / 162770 =  94.670
Robust  acc: 14029 / 19047 =  73.655
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4785 /  8535 =  56.063
0, 1  acc:  5841 /  8276 =  70.578
1, 0  acc:  2870 /  2874 =  99.861
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 13678 / 19867 =  68.848
Robust  acc:  4785 /  8535 =  56.063
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 70.759
Robust Acc: 63.059 | Best Acc: 99.798
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  6159 /  9767 =  63.059
0, 1  acc:  5314 /  7535 =  70.524
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14125 / 19962 =  70.759
Robust  acc:  6159 /  9767 =  63.059
------------------------------------
Accuracies by groups:
0, 0  acc:  6159 /  9767 =  63.059
0, 1  acc:  5314 /  7535 =  70.524
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14125 / 19962 =  70.759
Robust  acc:  6159 /  9767 =  63.059
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6159 /  9767 =  63.059
0, 1  acc:  5314 /  7535 =  70.524
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14125 / 19962 =  70.759
Robust  acc:  6159 /  9767 =  63.059
------------------------------------
Epoch:  20 | Train Loss: 0.002 | Train Acc: 94.320 | Val Loss: 0.002 | Val Acc: 93.144
Training:
Accuracies by groups:
0, 0  acc: 13707 / 18975 =  72.237
0, 1  acc:  7783 /  9130 =  85.246
1, 0  acc: 124391 / 126402 =  98.409
1, 1  acc:  7644 /  8263 =  92.509
--------------------------------------
Average acc: 153525 / 162770 =  94.320
Robust  acc: 13707 / 18975 =  72.237
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7803 /  8535 =  91.424
0, 1  acc:  7932 /  8276 =  95.843
1, 0  acc:  2631 /  2874 =  91.545
1, 1  acc:   139 /   182 =  76.374
------------------------------------
Average acc: 18505 / 19867 =  93.144
Robust  acc:   139 /   182 =  76.374
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.014
Robust Acc: 70.000 | Best Acc: 96.032
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  9153 /  9767 =  93.714
0, 1  acc:  7236 /  7535 =  96.032
1, 0  acc:  2252 /  2480 =  90.806
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18767 / 19962 =  94.014
Robust  acc:   126 /   180 =  70.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9153 /  9767 =  93.714
0, 1  acc:  7236 /  7535 =  96.032
1, 0  acc:  2252 /  2480 =  90.806
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18767 / 19962 =  94.014
Robust  acc:   126 /   180 =  70.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9153 /  9767 =  93.714
0, 1  acc:  7236 /  7535 =  96.032
1, 0  acc:  2252 /  2480 =  90.806
1, 1  acc:   126 /   180 =  70.000
------------------------------------
Average acc: 18767 / 19962 =  94.014
Robust  acc:   126 /   180 =  70.000
------------------------------------
Epoch:  21 | Train Loss: 0.002 | Train Acc: 93.989 | Val Loss: 0.003 | Val Acc: 86.193
Training:
Accuracies by groups:
0, 0  acc: 13290 / 18825 =  70.598
0, 1  acc:  7809 /  9297 =  83.995
1, 0  acc: 124322 / 126434 =  98.330
1, 1  acc:  7565 /  8214 =  92.099
--------------------------------------
Average acc: 152986 / 162770 =  93.989
Robust  acc: 13290 / 18825 =  70.598
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6591 /  8535 =  77.223
0, 1  acc:  7526 /  8276 =  90.938
1, 0  acc:  2837 /  2874 =  98.713
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17124 / 19867 =  86.193
Robust  acc:  6591 /  8535 =  77.223
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.391
Robust Acc: 81.714 | Best Acc: 98.468
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  7981 /  9767 =  81.714
0, 1  acc:  6865 /  7535 =  91.108
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17445 / 19962 =  87.391
Robust  acc:  7981 /  9767 =  81.714
------------------------------------
Accuracies by groups:
0, 0  acc:  7981 /  9767 =  81.714
0, 1  acc:  6865 /  7535 =  91.108
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17445 / 19962 =  87.391
Robust  acc:  7981 /  9767 =  81.714
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7981 /  9767 =  81.714
0, 1  acc:  6865 /  7535 =  91.108
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17445 / 19962 =  87.391
Robust  acc:  7981 /  9767 =  81.714
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 94.014 | Val Loss: 0.002 | Val Acc: 93.678
Training:
Accuracies by groups:
0, 0  acc: 13199 / 18686 =  70.636
0, 1  acc:  7688 /  9266 =  82.970
1, 0  acc: 124502 / 126563 =  98.372
1, 1  acc:  7637 /  8255 =  92.514
--------------------------------------
Average acc: 153026 / 162770 =  94.014
Robust  acc: 13199 / 18686 =  70.636
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7802 /  8535 =  91.412
0, 1  acc:  8017 /  8276 =  96.870
1, 0  acc:  2657 /  2874 =  92.450
1, 1  acc:   135 /   182 =  74.176
------------------------------------
Average acc: 18611 / 19867 =  93.678
Robust  acc:   135 /   182 =  74.176
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.149
Robust Acc: 71.667 | Best Acc: 96.695
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7286 /  7535 =  96.695
1, 0  acc:  2263 /  2480 =  91.250
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18794 / 19962 =  94.149
Robust  acc:   129 /   180 =  71.667
------------------------------------
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7286 /  7535 =  96.695
1, 0  acc:  2263 /  2480 =  91.250
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18794 / 19962 =  94.149
Robust  acc:   129 /   180 =  71.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7286 /  7535 =  96.695
1, 0  acc:  2263 /  2480 =  91.250
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18794 / 19962 =  94.149
Robust  acc:   129 /   180 =  71.667
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 93.695 | Val Loss: 0.004 | Val Acc: 83.571
Training:
Accuracies by groups:
0, 0  acc: 13091 / 19047 =  68.730
0, 1  acc:  7472 /  9164 =  81.536
1, 0  acc: 124280 / 126283 =  98.414
1, 1  acc:  7664 /  8276 =  92.605
--------------------------------------
Average acc: 152507 / 162770 =  93.695
Robust  acc: 13091 / 19047 =  68.730
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6451 /  8535 =  75.583
0, 1  acc:  7140 /  8276 =  86.274
1, 0  acc:  2836 /  2874 =  98.678
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 16603 / 19867 =  83.571
Robust  acc:  6451 /  8535 =  75.583
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 85.252
Robust Acc: 80.321 | Best Acc: 98.266
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  7845 /  9767 =  80.321
0, 1  acc:  6568 /  7535 =  87.167
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 17018 / 19962 =  85.252
Robust  acc:  7845 /  9767 =  80.321
------------------------------------
Accuracies by groups:
0, 0  acc:  7845 /  9767 =  80.321
0, 1  acc:  6568 /  7535 =  87.167
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 17018 / 19962 =  85.252
Robust  acc:  7845 /  9767 =  80.321
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7845 /  9767 =  80.321
0, 1  acc:  6568 /  7535 =  87.167
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 17018 / 19962 =  85.252
Robust  acc:  7845 /  9767 =  80.321
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 93.633 | Val Loss: 0.002 | Val Acc: 93.678
Training:
Accuracies by groups:
0, 0  acc: 12793 / 18772 =  68.149
0, 1  acc:  7468 /  9351 =  79.863
1, 0  acc: 124465 / 126391 =  98.476
1, 1  acc:  7680 /  8256 =  93.023
--------------------------------------
Average acc: 152406 / 162770 =  93.633
Robust  acc: 12793 / 18772 =  68.149
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8302 /  8535 =  97.270
0, 1  acc:  8204 /  8276 =  99.130
1, 0  acc:  2021 /  2874 =  70.320
1, 1  acc:    84 /   182 =  46.154
------------------------------------
Average acc: 18611 / 19867 =  93.678
Robust  acc:    84 /   182 =  46.154
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.979
Robust Acc: 38.889 | Best Acc: 98.898
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  9548 /  9767 =  97.758
0, 1  acc:  7452 /  7535 =  98.898
1, 0  acc:  1690 /  2480 =  68.145
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18760 / 19962 =  93.979
Robust  acc:    70 /   180 =  38.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9548 /  9767 =  97.758
0, 1  acc:  7452 /  7535 =  98.898
1, 0  acc:  1690 /  2480 =  68.145
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18760 / 19962 =  93.979
Robust  acc:    70 /   180 =  38.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9548 /  9767 =  97.758
0, 1  acc:  7452 /  7535 =  98.898
1, 0  acc:  1690 /  2480 =  68.145
1, 1  acc:    70 /   180 =  38.889
------------------------------------
Average acc: 18760 / 19962 =  93.979
Robust  acc:    70 /   180 =  38.889
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 93.565 | Val Loss: 0.006 | Val Acc: 66.432
Training:
Accuracies by groups:
0, 0  acc: 12834 / 19003 =  67.537
0, 1  acc:  7242 /  9132 =  79.304
1, 0  acc: 124605 / 126459 =  98.534
1, 1  acc:  7614 /  8176 =  93.126
--------------------------------------
Average acc: 152295 / 162770 =  93.565
Robust  acc: 12834 / 19003 =  67.537
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4459 /  8535 =  52.244
0, 1  acc:  5694 /  8276 =  68.801
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13198 / 19867 =  66.432
Robust  acc:  4459 /  8535 =  52.244
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 68.505
Robust Acc: 58.964 | Best Acc: 99.556
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  5759 /  9767 =  58.964
0, 1  acc:  5274 /  7535 =  69.993
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 13675 / 19962 =  68.505
Robust  acc:  5759 /  9767 =  58.964
------------------------------------
Accuracies by groups:
0, 0  acc:  5759 /  9767 =  58.964
0, 1  acc:  5274 /  7535 =  69.993
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 13675 / 19962 =  68.505
Robust  acc:  5759 /  9767 =  58.964
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5759 /  9767 =  58.964
0, 1  acc:  5274 /  7535 =  69.993
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 13675 / 19962 =  68.505
Robust  acc:  5759 /  9767 =  58.964
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 93.470 | Val Loss: 0.005 | Val Acc: 77.108
Training:
Accuracies by groups:
0, 0  acc: 12708 / 18974 =  66.976
0, 1  acc:  7229 /  9236 =  78.270
1, 0  acc: 124606 / 126422 =  98.564
1, 1  acc:  7598 /  8138 =  93.364
--------------------------------------
Average acc: 152141 / 162770 =  93.470
Robust  acc: 12708 / 18974 =  66.976
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5735 /  8535 =  67.194
0, 1  acc:  6549 /  8276 =  79.132
1, 0  acc:  2857 /  2874 =  99.408
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 15319 / 19867 =  77.108
Robust  acc:  5735 /  8535 =  67.194
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.810
Robust Acc: 72.796 | Best Acc: 99.234
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  7110 /  9767 =  72.796
0, 1  acc:  5990 /  7535 =  79.496
1, 0  acc:  2461 /  2480 =  99.234
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15732 / 19962 =  78.810
Robust  acc:  7110 /  9767 =  72.796
------------------------------------
Accuracies by groups:
0, 0  acc:  7110 /  9767 =  72.796
0, 1  acc:  5990 /  7535 =  79.496
1, 0  acc:  2461 /  2480 =  99.234
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15732 / 19962 =  78.810
Robust  acc:  7110 /  9767 =  72.796
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7110 /  9767 =  72.796
0, 1  acc:  5990 /  7535 =  79.496
1, 0  acc:  2461 /  2480 =  99.234
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15732 / 19962 =  78.810
Robust  acc:  7110 /  9767 =  72.796
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 93.411 | Val Loss: 0.005 | Val Acc: 73.131
Training:
Accuracies by groups:
0, 0  acc: 12562 / 18879 =  66.540
0, 1  acc:  7158 /  9266 =  77.250
1, 0  acc: 124611 / 126329 =  98.640
1, 1  acc:  7714 /  8296 =  92.985
--------------------------------------
Average acc: 152045 / 162770 =  93.411
Robust  acc: 12562 / 18879 =  66.540
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5576 /  8535 =  65.331
0, 1  acc:  5916 /  8276 =  71.484
1, 0  acc:  2858 /  2874 =  99.443
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 14529 / 19867 =  73.131
Robust  acc:  5576 /  8535 =  65.331
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 74.842
Robust Acc: 70.503 | Best Acc: 99.435
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  6886 /  9767 =  70.503
0, 1  acc:  5412 /  7535 =  71.825
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14940 / 19962 =  74.842
Robust  acc:  6886 /  9767 =  70.503
------------------------------------
Accuracies by groups:
0, 0  acc:  6886 /  9767 =  70.503
0, 1  acc:  5412 /  7535 =  71.825
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14940 / 19962 =  74.842
Robust  acc:  6886 /  9767 =  70.503
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6886 /  9767 =  70.503
0, 1  acc:  5412 /  7535 =  71.825
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14940 / 19962 =  74.842
Robust  acc:  6886 /  9767 =  70.503
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 93.490 | Val Loss: 0.003 | Val Acc: 93.441
Training:
Accuracies by groups:
0, 0  acc: 12538 / 18878 =  66.416
0, 1  acc:  7213 /  9291 =  77.634
1, 0  acc: 124611 / 126265 =  98.690
1, 1  acc:  7812 /  8336 =  93.714
--------------------------------------
Average acc: 152174 / 162770 =  93.490
Robust  acc: 12538 / 18878 =  66.416
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7900 /  8535 =  92.560
0, 1  acc:  8029 /  8276 =  97.015
1, 0  acc:  2516 /  2874 =  87.543
1, 1  acc:   119 /   182 =  65.385
------------------------------------
Average acc: 18564 / 19867 =  93.441
Robust  acc:   119 /   182 =  65.385
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.269
Robust Acc: 60.000 | Best Acc: 97.253
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  9251 /  9767 =  94.717
0, 1  acc:  7328 /  7535 =  97.253
1, 0  acc:  2131 /  2480 =  85.927
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18818 / 19962 =  94.269
Robust  acc:   108 /   180 =  60.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9251 /  9767 =  94.717
0, 1  acc:  7328 /  7535 =  97.253
1, 0  acc:  2131 /  2480 =  85.927
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18818 / 19962 =  94.269
Robust  acc:   108 /   180 =  60.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9251 /  9767 =  94.717
0, 1  acc:  7328 /  7535 =  97.253
1, 0  acc:  2131 /  2480 =  85.927
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18818 / 19962 =  94.269
Robust  acc:   108 /   180 =  60.000
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 93.508 | Val Loss: 0.003 | Val Acc: 91.312
Training:
Accuracies by groups:
0, 0  acc: 12402 / 18749 =  66.148
0, 1  acc:  7119 /  9216 =  77.246
1, 0  acc: 124934 / 126530 =  98.739
1, 1  acc:  7748 /  8275 =  93.631
--------------------------------------
Average acc: 152203 / 162770 =  93.508
Robust  acc: 12402 / 18749 =  66.148
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7479 /  8535 =  87.627
0, 1  acc:  7771 /  8276 =  93.898
1, 0  acc:  2736 /  2874 =  95.198
1, 1  acc:   155 /   182 =  85.165
------------------------------------
Average acc: 18141 / 19867 =  91.312
Robust  acc:   155 /   182 =  85.165
------------------------------------
New max robust acc: 85.16483516483517
debias model - Saving best checkpoint at epoch 28
replace: True
-> Updating checkpoint debias-wga-best_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed37.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 92.050
Robust Acc: 80.556 | Best Acc: 94.234
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  8825 /  9767 =  90.355
0, 1  acc:  7068 /  7535 =  93.802
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18375 / 19962 =  92.050
Robust  acc:   145 /   180 =  80.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8825 /  9767 =  90.355
0, 1  acc:  7068 /  7535 =  93.802
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18375 / 19962 =  92.050
Robust  acc:   145 /   180 =  80.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8825 /  9767 =  90.355
0, 1  acc:  7068 /  7535 =  93.802
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18375 / 19962 =  92.050
Robust  acc:   145 /   180 =  80.556
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 93.423 | Val Loss: 0.007 | Val Acc: 61.987
Training:
Accuracies by groups:
0, 0  acc: 12536 / 18972 =  66.076
0, 1  acc:  7052 /  9230 =  76.403
1, 0  acc: 124647 / 126248 =  98.732
1, 1  acc:  7830 /  8320 =  94.111
--------------------------------------
Average acc: 152065 / 162770 =  93.423
Robust  acc: 12536 / 18972 =  66.076
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4453 /  8535 =  52.173
0, 1  acc:  4816 /  8276 =  58.192
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 12315 / 19867 =  61.987
Robust  acc:  4453 /  8535 =  52.173
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 63.195
Robust Acc: 57.253 | Best Acc: 99.597
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  5653 /  9767 =  57.879
0, 1  acc:  4314 /  7535 =  57.253
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12615 / 19962 =  63.195
Robust  acc:  4314 /  7535 =  57.253
------------------------------------
Accuracies by groups:
0, 0  acc:  5653 /  9767 =  57.879
0, 1  acc:  4314 /  7535 =  57.253
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12615 / 19962 =  63.195
Robust  acc:  4314 /  7535 =  57.253
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5653 /  9767 =  57.879
0, 1  acc:  4314 /  7535 =  57.253
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12615 / 19962 =  63.195
Robust  acc:  4314 /  7535 =  57.253
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 93.434 | Val Loss: 0.006 | Val Acc: 62.687
Training:
Accuracies by groups:
0, 0  acc: 12378 / 18860 =  65.631
0, 1  acc:  7142 /  9300 =  76.796
1, 0  acc: 124912 / 126479 =  98.761
1, 1  acc:  7651 /  8131 =  94.097
--------------------------------------
Average acc: 152083 / 162770 =  93.434
Robust  acc: 12378 / 18860 =  65.631
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4490 /  8535 =  52.607
0, 1  acc:  4920 /  8276 =  59.449
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12454 / 19867 =  62.687
Robust  acc:  4490 /  8535 =  52.607
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 64.563
Robust Acc: 59.031 | Best Acc: 99.677
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  5790 /  9767 =  59.281
0, 1  acc:  4448 /  7535 =  59.031
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12888 / 19962 =  64.563
Robust  acc:  4448 /  7535 =  59.031
------------------------------------
Accuracies by groups:
0, 0  acc:  5790 /  9767 =  59.281
0, 1  acc:  4448 /  7535 =  59.031
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12888 / 19962 =  64.563
Robust  acc:  4448 /  7535 =  59.031
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5790 /  9767 =  59.281
0, 1  acc:  4448 /  7535 =  59.031
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12888 / 19962 =  64.563
Robust  acc:  4448 /  7535 =  59.031
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 93.346 | Val Loss: 0.003 | Val Acc: 89.601
Training:
Accuracies by groups:
0, 0  acc: 12511 / 19168 =  65.270
0, 1  acc:  7192 /  9288 =  77.433
1, 0  acc: 124660 / 126234 =  98.753
1, 1  acc:  7577 /  8080 =  93.775
--------------------------------------
Average acc: 151940 / 162770 =  93.346
Robust  acc: 12511 / 19168 =  65.270
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7289 /  8535 =  85.401
0, 1  acc:  7593 /  8276 =  91.747
1, 0  acc:  2768 /  2874 =  96.312
1, 1  acc:   151 /   182 =  82.967
------------------------------------
Average acc: 17801 / 19867 =  89.601
Robust  acc:   151 /   182 =  82.967
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.667
Robust Acc: 79.444 | Best Acc: 95.282
-------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  8679 /  9767 =  88.860
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2363 /  2480 =  95.282
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18099 / 19962 =  90.667
Robust  acc:   143 /   180 =  79.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8679 /  9767 =  88.860
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2363 /  2480 =  95.282
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18099 / 19962 =  90.667
Robust  acc:   143 /   180 =  79.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8679 /  9767 =  88.860
0, 1  acc:  6914 /  7535 =  91.758
1, 0  acc:  2363 /  2480 =  95.282
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18099 / 19962 =  90.667
Robust  acc:   143 /   180 =  79.444
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 93.520 | Val Loss: 0.005 | Val Acc: 77.843
Training:
Accuracies by groups:
0, 0  acc: 12763 / 19169 =  66.581
0, 1  acc:  7229 /  9360 =  77.233
1, 0  acc: 124465 / 125993 =  98.787
1, 1  acc:  7765 /  8248 =  94.144
--------------------------------------
Average acc: 152222 / 162770 =  93.520
Robust  acc: 12763 / 19169 =  66.581
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5819 /  8535 =  68.178
0, 1  acc:  6609 /  8276 =  79.857
1, 0  acc:  2856 /  2874 =  99.374
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 15465 / 19867 =  77.843
Robust  acc:  5819 /  8535 =  68.178
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 79.641
Robust Acc: 74.076 | Best Acc: 99.153
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  7235 /  9767 =  74.076
0, 1  acc:  6030 /  7535 =  80.027
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15898 / 19962 =  79.641
Robust  acc:  7235 /  9767 =  74.076
------------------------------------
Accuracies by groups:
0, 0  acc:  7235 /  9767 =  74.076
0, 1  acc:  6030 /  7535 =  80.027
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15898 / 19962 =  79.641
Robust  acc:  7235 /  9767 =  74.076
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7235 /  9767 =  74.076
0, 1  acc:  6030 /  7535 =  80.027
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15898 / 19962 =  79.641
Robust  acc:  7235 /  9767 =  74.076
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 93.361 | Val Loss: 0.004 | Val Acc: 82.745
Training:
Accuracies by groups:
0, 0  acc: 12354 / 18924 =  65.282
0, 1  acc:  7276 /  9429 =  77.166
1, 0  acc: 124697 / 126269 =  98.755
1, 1  acc:  7636 /  8148 =  93.716
--------------------------------------
Average acc: 151963 / 162770 =  93.361
Robust  acc: 12354 / 18924 =  65.282
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6406 /  8535 =  75.056
0, 1  acc:  7017 /  8276 =  84.787
1, 0  acc:  2839 /  2874 =  98.782
1, 1  acc:   177 /   182 =  97.253
------------------------------------
Average acc: 16439 / 19867 =  82.745
Robust  acc:  6406 /  8535 =  75.056
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.440
Robust Acc: 80.424 | Best Acc: 98.427
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  7855 /  9767 =  80.424
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2441 /  2480 =  98.427
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16856 / 19962 =  84.440
Robust  acc:  7855 /  9767 =  80.424
------------------------------------
Accuracies by groups:
0, 0  acc:  7855 /  9767 =  80.424
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2441 /  2480 =  98.427
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16856 / 19962 =  84.440
Robust  acc:  7855 /  9767 =  80.424
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7855 /  9767 =  80.424
0, 1  acc:  6394 /  7535 =  84.857
1, 0  acc:  2441 /  2480 =  98.427
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16856 / 19962 =  84.440
Robust  acc:  7855 /  9767 =  80.424
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 93.416 | Val Loss: 0.003 | Val Acc: 92.998
Training:
Accuracies by groups:
0, 0  acc: 12415 / 18916 =  65.632
0, 1  acc:  7157 /  9354 =  76.513
1, 0  acc: 124528 / 126075 =  98.773
1, 1  acc:  7954 /  8425 =  94.409
--------------------------------------
Average acc: 152054 / 162770 =  93.416
Robust  acc: 12415 / 18916 =  65.632
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7789 /  8535 =  91.260
0, 1  acc:  7976 /  8276 =  96.375
1, 0  acc:  2589 /  2874 =  90.084
1, 1  acc:   122 /   182 =  67.033
------------------------------------
Average acc: 18476 / 19867 =  92.998
Robust  acc:   122 /   182 =  67.033
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.438
Robust Acc: 58.889 | Best Acc: 96.390
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  9090 /  9767 =  93.068
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2193 /  2480 =  88.427
1, 1  acc:   106 /   180 =  58.889
------------------------------------
Average acc: 18652 / 19962 =  93.438
Robust  acc:   106 /   180 =  58.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9090 /  9767 =  93.068
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2193 /  2480 =  88.427
1, 1  acc:   106 /   180 =  58.889
------------------------------------
Average acc: 18652 / 19962 =  93.438
Robust  acc:   106 /   180 =  58.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9090 /  9767 =  93.068
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2193 /  2480 =  88.427
1, 1  acc:   106 /   180 =  58.889
------------------------------------
Average acc: 18652 / 19962 =  93.438
Robust  acc:   106 /   180 =  58.889
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 93.449 | Val Loss: 0.004 | Val Acc: 80.676
Training:
Accuracies by groups:
0, 0  acc: 12495 / 18938 =  65.978
0, 1  acc:  7160 /  9333 =  76.717
1, 0  acc: 124712 / 126284 =  98.755
1, 1  acc:  7740 /  8215 =  94.218
--------------------------------------
Average acc: 152107 / 162770 =  93.449
Robust  acc: 12495 / 18938 =  65.978
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6093 /  8535 =  71.388
0, 1  acc:  6908 /  8276 =  83.470
1, 0  acc:  2849 /  2874 =  99.130
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 16028 / 19867 =  80.676
Robust  acc:  6093 /  8535 =  71.388
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 82.377
Robust Acc: 77.383 | Best Acc: 98.952
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  7558 /  9767 =  77.383
0, 1  acc:  6263 /  7535 =  83.119
1, 0  acc:  2454 /  2480 =  98.952
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16444 / 19962 =  82.377
Robust  acc:  7558 /  9767 =  77.383
------------------------------------
Accuracies by groups:
0, 0  acc:  7558 /  9767 =  77.383
0, 1  acc:  6263 /  7535 =  83.119
1, 0  acc:  2454 /  2480 =  98.952
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16444 / 19962 =  82.377
Robust  acc:  7558 /  9767 =  77.383
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7558 /  9767 =  77.383
0, 1  acc:  6263 /  7535 =  83.119
1, 0  acc:  2454 /  2480 =  98.952
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16444 / 19962 =  82.377
Robust  acc:  7558 /  9767 =  77.383
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 93.400 | Val Loss: 0.003 | Val Acc: 89.103
Training:
Accuracies by groups:
0, 0  acc: 12482 / 18934 =  65.924
0, 1  acc:  7097 /  9271 =  76.551
1, 0  acc: 124809 / 126415 =  98.730
1, 1  acc:  7639 /  8150 =  93.730
--------------------------------------
Average acc: 152027 / 162770 =  93.400
Robust  acc: 12482 / 18934 =  65.924
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7148 /  8535 =  83.749
0, 1  acc:  7609 /  8276 =  91.941
1, 0  acc:  2791 /  2874 =  97.112
1, 1  acc:   154 /   182 =  84.615
------------------------------------
Average acc: 17702 / 19867 =  89.103
Robust  acc:  7148 /  8535 =  83.749
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.292
Robust Acc: 81.111 | Best Acc: 96.653
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6952 /  7535 =  92.263
1, 0  acc:  2397 /  2480 =  96.653
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18024 / 19962 =  90.292
Robust  acc:   146 /   180 =  81.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6952 /  7535 =  92.263
1, 0  acc:  2397 /  2480 =  96.653
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18024 / 19962 =  90.292
Robust  acc:   146 /   180 =  81.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6952 /  7535 =  92.263
1, 0  acc:  2397 /  2480 =  96.653
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18024 / 19962 =  90.292
Robust  acc:   146 /   180 =  81.111
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 93.402 | Val Loss: 0.004 | Val Acc: 83.591
Training:
Accuracies by groups:
0, 0  acc: 12760 / 19256 =  66.265
0, 1  acc:  7080 /  9208 =  76.890
1, 0  acc: 124403 / 126045 =  98.697
1, 1  acc:  7788 /  8261 =  94.274
--------------------------------------
Average acc: 152031 / 162770 =  93.402
Robust  acc: 12760 / 19256 =  66.265
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6399 /  8535 =  74.974
0, 1  acc:  7201 /  8276 =  87.011
1, 0  acc:  2833 /  2874 =  98.573
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 16607 / 19867 =  83.591
Robust  acc:  6399 /  8535 =  74.974
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 85.137
Robust Acc: 80.178 | Best Acc: 98.226
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  7831 /  9767 =  80.178
0, 1  acc:  6567 /  7535 =  87.153
1, 0  acc:  2436 /  2480 =  98.226
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16995 / 19962 =  85.137
Robust  acc:  7831 /  9767 =  80.178
------------------------------------
Accuracies by groups:
0, 0  acc:  7831 /  9767 =  80.178
0, 1  acc:  6567 /  7535 =  87.153
1, 0  acc:  2436 /  2480 =  98.226
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16995 / 19962 =  85.137
Robust  acc:  7831 /  9767 =  80.178
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7831 /  9767 =  80.178
0, 1  acc:  6567 /  7535 =  87.153
1, 0  acc:  2436 /  2480 =  98.226
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16995 / 19962 =  85.137
Robust  acc:  7831 /  9767 =  80.178
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 93.579 | Val Loss: 0.004 | Val Acc: 82.604
Training:
Accuracies by groups:
0, 0  acc: 12473 / 18817 =  66.286
0, 1  acc:  7152 /  9254 =  77.285
1, 0  acc: 124913 / 126432 =  98.799
1, 1  acc:  7780 /  8267 =  94.109
--------------------------------------
Average acc: 152318 / 162770 =  93.579
Robust  acc: 12473 / 18817 =  66.286
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6419 /  8535 =  75.208
0, 1  acc:  6981 /  8276 =  84.352
1, 0  acc:  2833 /  2874 =  98.573
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 16411 / 19867 =  82.604
Robust  acc:  6419 /  8535 =  75.208
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.340
Robust Acc: 80.281 | Best Acc: 98.306
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  7841 /  9767 =  80.281
0, 1  acc:  6391 /  7535 =  84.818
1, 0  acc:  2438 /  2480 =  98.306
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16836 / 19962 =  84.340
Robust  acc:  7841 /  9767 =  80.281
------------------------------------
Accuracies by groups:
0, 0  acc:  7841 /  9767 =  80.281
0, 1  acc:  6391 /  7535 =  84.818
1, 0  acc:  2438 /  2480 =  98.306
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16836 / 19962 =  84.340
Robust  acc:  7841 /  9767 =  80.281
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7841 /  9767 =  80.281
0, 1  acc:  6391 /  7535 =  84.818
1, 0  acc:  2438 /  2480 =  98.306
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16836 / 19962 =  84.340
Robust  acc:  7841 /  9767 =  80.281
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 93.455 | Val Loss: 0.003 | Val Acc: 93.623
Training:
Accuracies by groups:
0, 0  acc: 12558 / 19007 =  66.070
0, 1  acc:  7128 /  9209 =  77.403
1, 0  acc: 124767 / 126375 =  98.728
1, 1  acc:  7664 /  8179 =  93.703
--------------------------------------
Average acc: 152117 / 162770 =  93.455
Robust  acc: 12558 / 19007 =  66.070
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7825 /  8535 =  91.681
0, 1  acc:  8097 /  8276 =  97.837
1, 0  acc:  2568 /  2874 =  89.353
1, 1  acc:   110 /   182 =  60.440
------------------------------------
Average acc: 18600 / 19867 =  93.623
Robust  acc:   110 /   182 =  60.440
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.294
Robust Acc: 60.556 | Best Acc: 97.611
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  9149 /  9767 =  93.673
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2210 /  2480 =  89.113
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18823 / 19962 =  94.294
Robust  acc:   109 /   180 =  60.556
------------------------------------
Accuracies by groups:
0, 0  acc:  9149 /  9767 =  93.673
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2210 /  2480 =  89.113
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18823 / 19962 =  94.294
Robust  acc:   109 /   180 =  60.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9149 /  9767 =  93.673
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2210 /  2480 =  89.113
1, 1  acc:   109 /   180 =  60.556
------------------------------------
Average acc: 18823 / 19962 =  94.294
Robust  acc:   109 /   180 =  60.556
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 93.585 | Val Loss: 0.005 | Val Acc: 77.510
Training:
Accuracies by groups:
0, 0  acc: 12536 / 18874 =  66.419
0, 1  acc:  7134 /  9234 =  77.258
1, 0  acc: 124842 / 126363 =  98.796
1, 1  acc:  7817 /  8299 =  94.192
--------------------------------------
Average acc: 152329 / 162770 =  93.585
Robust  acc: 12536 / 18874 =  66.419
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5977 /  8535 =  70.029
0, 1  acc:  6404 /  8276 =  77.380
1, 0  acc:  2838 /  2874 =  98.747
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15399 / 19867 =  77.510
Robust  acc:  5977 /  8535 =  70.029
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 79.050
Robust Acc: 74.854 | Best Acc: 98.710
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  7311 /  9767 =  74.854
0, 1  acc:  5853 /  7535 =  77.678
1, 0  acc:  2448 /  2480 =  98.710
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 15780 / 19962 =  79.050
Robust  acc:  7311 /  9767 =  74.854
------------------------------------
Accuracies by groups:
0, 0  acc:  7311 /  9767 =  74.854
0, 1  acc:  5853 /  7535 =  77.678
1, 0  acc:  2448 /  2480 =  98.710
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 15780 / 19962 =  79.050
Robust  acc:  7311 /  9767 =  74.854
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7311 /  9767 =  74.854
0, 1  acc:  5853 /  7535 =  77.678
1, 0  acc:  2448 /  2480 =  98.710
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 15780 / 19962 =  79.050
Robust  acc:  7311 /  9767 =  74.854
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 93.627 | Val Loss: 0.008 | Val Acc: 53.113
Training:
Accuracies by groups:
0, 0  acc: 12739 / 18993 =  67.072
0, 1  acc:  7271 /  9308 =  78.116
1, 0  acc: 124746 / 126348 =  98.732
1, 1  acc:  7641 /  8121 =  94.089
--------------------------------------
Average acc: 152397 / 162770 =  93.627
Robust  acc: 12739 / 18993 =  67.072
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3496 /  8535 =  40.961
0, 1  acc:  4006 /  8276 =  48.405
1, 0  acc:  2869 /  2874 =  99.826
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 10552 / 19867 =  53.113
Robust  acc:  3496 /  8535 =  40.961
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 54.529
Robust Acc: 46.422 | Best Acc: 99.798
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  4534 /  9767 =  46.422
0, 1  acc:  3697 /  7535 =  49.064
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc: 10885 / 19962 =  54.529
Robust  acc:  4534 /  9767 =  46.422
------------------------------------
Accuracies by groups:
0, 0  acc:  4534 /  9767 =  46.422
0, 1  acc:  3697 /  7535 =  49.064
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc: 10885 / 19962 =  54.529
Robust  acc:  4534 /  9767 =  46.422
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4534 /  9767 =  46.422
0, 1  acc:  3697 /  7535 =  49.064
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc: 10885 / 19962 =  54.529
Robust  acc:  4534 /  9767 =  46.422
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 93.585 | Val Loss: 0.011 | Val Acc: 31.142
Training:
Accuracies by groups:
0, 0  acc: 12581 / 18873 =  66.661
0, 1  acc:  7268 /  9314 =  78.033
1, 0  acc: 124801 / 126408 =  98.729
1, 1  acc:  7678 /  8175 =  93.920
--------------------------------------
Average acc: 152328 / 162770 =  93.585
Robust  acc: 12581 / 18873 =  66.661
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  1605 /  8535 =  18.805
0, 1  acc:  1526 /  8276 =  18.439
1, 0  acc:  2874 /  2874 = 100.000
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  6187 / 19867 =  31.142
Robust  acc:  1526 /  8276 =  18.439
------------------------------------
-------------------------------------------
Avg Test Loss: 0.011 | Avg Test Acc: 31.259
Robust Acc: 18.832 | Best Acc: 99.960
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  2163 /  9767 =  22.146
0, 1  acc:  1419 /  7535 =  18.832
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  6240 / 19962 =  31.259
Robust  acc:  1419 /  7535 =  18.832
------------------------------------
Accuracies by groups:
0, 0  acc:  2163 /  9767 =  22.146
0, 1  acc:  1419 /  7535 =  18.832
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  6240 / 19962 =  31.259
Robust  acc:  1419 /  7535 =  18.832
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  2163 /  9767 =  22.146
0, 1  acc:  1419 /  7535 =  18.832
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  6240 / 19962 =  31.259
Robust  acc:  1419 /  7535 =  18.832
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 93.679 | Val Loss: 0.005 | Val Acc: 78.527
Training:
Accuracies by groups:
0, 0  acc: 12532 / 18744 =  66.859
0, 1  acc:  7208 /  9238 =  78.026
1, 0  acc: 125066 / 126641 =  98.756
1, 1  acc:  7675 /  8147 =  94.206
--------------------------------------
Average acc: 152481 / 162770 =  93.679
Robust  acc: 12532 / 18744 =  66.859
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5809 /  8535 =  68.061
0, 1  acc:  6754 /  8276 =  81.609
1, 0  acc:  2859 /  2874 =  99.478
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15601 / 19867 =  78.527
Robust  acc:  5809 /  8535 =  68.061
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 79.822
Robust Acc: 73.615 | Best Acc: 99.194
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  7190 /  9767 =  73.615
0, 1  acc:  6112 /  7535 =  81.115
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15934 / 19962 =  79.822
Robust  acc:  7190 /  9767 =  73.615
------------------------------------
Accuracies by groups:
0, 0  acc:  7190 /  9767 =  73.615
0, 1  acc:  6112 /  7535 =  81.115
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15934 / 19962 =  79.822
Robust  acc:  7190 /  9767 =  73.615
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7190 /  9767 =  73.615
0, 1  acc:  6112 /  7535 =  81.115
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 15934 / 19962 =  79.822
Robust  acc:  7190 /  9767 =  73.615
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 93.628 | Val Loss: 0.004 | Val Acc: 86.062
Training:
Accuracies by groups:
0, 0  acc: 12637 / 18918 =  66.799
0, 1  acc:  7235 /  9242 =  78.284
1, 0  acc: 124677 / 126259 =  98.747
1, 1  acc:  7849 /  8351 =  93.989
--------------------------------------
Average acc: 152398 / 162770 =  93.628
Robust  acc: 12637 / 18918 =  66.799
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6633 /  8535 =  77.715
0, 1  acc:  7484 /  8276 =  90.430
1, 0  acc:  2821 /  2874 =  98.156
1, 1  acc:   160 /   182 =  87.912
------------------------------------
Average acc: 17098 / 19867 =  86.062
Robust  acc:  6633 /  8535 =  77.715
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.261
Robust Acc: 82.083 | Best Acc: 98.105
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  8017 /  9767 =  82.083
0, 1  acc:  6820 /  7535 =  90.511
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17419 / 19962 =  87.261
Robust  acc:  8017 /  9767 =  82.083
------------------------------------
Accuracies by groups:
0, 0  acc:  8017 /  9767 =  82.083
0, 1  acc:  6820 /  7535 =  90.511
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17419 / 19962 =  87.261
Robust  acc:  8017 /  9767 =  82.083
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8017 /  9767 =  82.083
0, 1  acc:  6820 /  7535 =  90.511
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17419 / 19962 =  87.261
Robust  acc:  8017 /  9767 =  82.083
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 93.624 | Val Loss: 0.006 | Val Acc: 64.977
Training:
Accuracies by groups:
0, 0  acc: 12929 / 19230 =  67.233
0, 1  acc:  7352 /  9355 =  78.589
1, 0  acc: 124456 / 126021 =  98.758
1, 1  acc:  7655 /  8164 =  93.765
--------------------------------------
Average acc: 152392 / 162770 =  93.624
Robust  acc: 12929 / 19230 =  67.233
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4538 /  8535 =  53.169
0, 1  acc:  5320 /  8276 =  64.282
1, 0  acc:  2870 /  2874 =  99.861
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12909 / 19867 =  64.977
Robust  acc:  4538 /  8535 =  53.169
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 66.842
Robust Acc: 60.264 | Best Acc: 99.597
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  5886 /  9767 =  60.264
0, 1  acc:  4811 /  7535 =  63.849
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13343 / 19962 =  66.842
Robust  acc:  5886 /  9767 =  60.264
------------------------------------
Accuracies by groups:
0, 0  acc:  5886 /  9767 =  60.264
0, 1  acc:  4811 /  7535 =  63.849
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13343 / 19962 =  66.842
Robust  acc:  5886 /  9767 =  60.264
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5886 /  9767 =  60.264
0, 1  acc:  4811 /  7535 =  63.849
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 13343 / 19962 =  66.842
Robust  acc:  5886 /  9767 =  60.264
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 93.748 | Val Loss: 0.003 | Val Acc: 90.346
Training:
Accuracies by groups:
0, 0  acc: 12713 / 18801 =  67.619
0, 1  acc:  7264 /  9245 =  78.572
1, 0  acc: 124866 / 126445 =  98.751
1, 1  acc:  7751 /  8279 =  93.622
--------------------------------------
Average acc: 152594 / 162770 =  93.748
Robust  acc: 12713 / 18801 =  67.619
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7449 /  8535 =  87.276
0, 1  acc:  7687 /  8276 =  92.883
1, 0  acc:  2677 /  2874 =  93.145
1, 1  acc:   136 /   182 =  74.725
------------------------------------
Average acc: 17949 / 19867 =  90.346
Robust  acc:   136 /   182 =  74.725
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.694
Robust Acc: 76.111 | Best Acc: 93.245
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  8865 /  9767 =  90.765
0, 1  acc:  7026 /  7535 =  93.245
1, 0  acc:  2276 /  2480 =  91.774
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18304 / 19962 =  91.694
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8865 /  9767 =  90.765
0, 1  acc:  7026 /  7535 =  93.245
1, 0  acc:  2276 /  2480 =  91.774
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18304 / 19962 =  91.694
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8865 /  9767 =  90.765
0, 1  acc:  7026 /  7535 =  93.245
1, 0  acc:  2276 /  2480 =  91.774
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18304 / 19962 =  91.694
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 93.597 | Val Loss: 0.003 | Val Acc: 88.010
Training:
Accuracies by groups:
0, 0  acc: 12695 / 18984 =  66.872
0, 1  acc:  7268 /  9316 =  78.016
1, 0  acc: 124580 / 126179 =  98.733
1, 1  acc:  7805 /  8291 =  94.138
--------------------------------------
Average acc: 152348 / 162770 =  93.597
Robust  acc: 12695 / 18984 =  66.872
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6888 /  8535 =  80.703
0, 1  acc:  7641 /  8276 =  92.327
1, 0  acc:  2795 /  2874 =  97.251
1, 1  acc:   161 /   182 =  88.462
------------------------------------
Average acc: 17485 / 19867 =  88.010
Robust  acc:  6888 /  8535 =  80.703
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.114
Robust Acc: 82.222 | Best Acc: 96.532
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  8315 /  9767 =  85.134
0, 1  acc:  6932 /  7535 =  91.997
1, 0  acc:  2394 /  2480 =  96.532
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 17789 / 19962 =  89.114
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8315 /  9767 =  85.134
0, 1  acc:  6932 /  7535 =  91.997
1, 0  acc:  2394 /  2480 =  96.532
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 17789 / 19962 =  89.114
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8315 /  9767 =  85.134
0, 1  acc:  6932 /  7535 =  91.997
1, 0  acc:  2394 /  2480 =  96.532
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 17789 / 19962 =  89.114
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 93.689 | Val Loss: 0.007 | Val Acc: 55.197
Training:
Accuracies by groups:
0, 0  acc: 13093 / 19291 =  67.871
0, 1  acc:  7284 /  9222 =  78.985
1, 0  acc: 124349 / 125980 =  98.705
1, 1  acc:  7772 /  8277 =  93.899
--------------------------------------
Average acc: 152498 / 162770 =  93.689
Robust  acc: 13093 / 19291 =  67.871
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3845 /  8535 =  45.050
0, 1  acc:  4073 /  8276 =  49.215
1, 0  acc:  2867 /  2874 =  99.756
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 10966 / 19867 =  55.197
Robust  acc:  3845 /  8535 =  45.050
------------------------------------
-------------------------------------------
Avg Test Loss: 0.007 | Avg Test Acc: 56.608
Robust Acc: 48.679 | Best Acc: 99.718
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  4981 /  9767 =  50.998
0, 1  acc:  3668 /  7535 =  48.679
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11300 / 19962 =  56.608
Robust  acc:  3668 /  7535 =  48.679
------------------------------------
Accuracies by groups:
0, 0  acc:  4981 /  9767 =  50.998
0, 1  acc:  3668 /  7535 =  48.679
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11300 / 19962 =  56.608
Robust  acc:  3668 /  7535 =  48.679
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4981 /  9767 =  50.998
0, 1  acc:  3668 /  7535 =  48.679
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11300 / 19962 =  56.608
Robust  acc:  3668 /  7535 =  48.679
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 93.699 | Val Loss: 0.003 | Val Acc: 91.700
Training:
Accuracies by groups:
0, 0  acc: 12835 / 18997 =  67.563
0, 1  acc:  7362 /  9292 =  79.229
1, 0  acc: 124595 / 126260 =  98.681
1, 1  acc:  7722 /  8221 =  93.930
--------------------------------------
Average acc: 152514 / 162770 =  93.699
Robust  acc: 12835 / 18997 =  67.563
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7494 /  8535 =  87.803
0, 1  acc:  7858 /  8276 =  94.949
1, 0  acc:  2726 /  2874 =  94.850
1, 1  acc:   140 /   182 =  76.923
------------------------------------
Average acc: 18218 / 19867 =  91.700
Robust  acc:   140 /   182 =  76.923
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 92.766
Robust Acc: 68.333 | Best Acc: 95.514
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  8872 /  9767 =  90.836
0, 1  acc:  7197 /  7535 =  95.514
1, 0  acc:  2326 /  2480 =  93.790
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18518 / 19962 =  92.766
Robust  acc:   123 /   180 =  68.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8872 /  9767 =  90.836
0, 1  acc:  7197 /  7535 =  95.514
1, 0  acc:  2326 /  2480 =  93.790
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18518 / 19962 =  92.766
Robust  acc:   123 /   180 =  68.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8872 /  9767 =  90.836
0, 1  acc:  7197 /  7535 =  95.514
1, 0  acc:  2326 /  2480 =  93.790
1, 1  acc:   123 /   180 =  68.333
------------------------------------
Average acc: 18518 / 19962 =  92.766
Robust  acc:   123 /   180 =  68.333
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed37.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed37.pt
