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/seed36/stage_one_erm_model_b_epoch0_seed36.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: 18
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.0
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=18-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/seed36/stage_one_erm_model_b_epoch0_seed36.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8309, 0.0200],
        [0.1350, 0.0141]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 90.874 | Val Loss: 0.004 | Val Acc: 78.693
Training:
Accuracies by groups:
0, 0  acc:  5891 / 14499 =  40.630
0, 1  acc:  2714 /  6412 =  42.327
1, 0  acc: 131038 / 133162 =  98.405
1, 1  acc:  8272 /  8697 =  95.113
--------------------------------------
Average acc: 147915 / 162770 =  90.874
Robust  acc:  5891 / 14499 =  40.630
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6114 /  8535 =  71.634
0, 1  acc:  6503 /  8276 =  78.577
1, 0  acc:  2848 /  2874 =  99.095
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 15634 / 19867 =  78.693
Robust  acc:  6114 /  8535 =  71.634
------------------------------------
New max robust acc: 71.63444639718804
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 80.733
Robust Acc: 77.352 | Best Acc: 98.871
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  7555 /  9767 =  77.352
0, 1  acc:  5939 /  7535 =  78.819
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16116 / 19962 =  80.733
Robust  acc:  7555 /  9767 =  77.352
------------------------------------
Accuracies by groups:
0, 0  acc:  7555 /  9767 =  77.352
0, 1  acc:  5939 /  7535 =  78.819
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16116 / 19962 =  80.733
Robust  acc:  7555 /  9767 =  77.352
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7555 /  9767 =  77.352
0, 1  acc:  5939 /  7535 =  78.819
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16116 / 19962 =  80.733
Robust  acc:  7555 /  9767 =  77.352
------------------------------------
Epoch:   2 | Train Loss: 0.001 | Train Acc: 94.589 | Val Loss: 0.003 | Val Acc: 82.992
Training:
Accuracies by groups:
0, 0  acc:  9113 / 14335 =  63.572
0, 1  acc:  4864 /  6668 =  72.945
1, 0  acc: 131885 / 133143 =  99.055
1, 1  acc:  8101 /  8624 =  93.936
--------------------------------------
Average acc: 153963 / 162770 =  94.589
Robust  acc:  9113 / 14335 =  63.572
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6369 /  8535 =  74.622
0, 1  acc:  7098 /  8276 =  85.766
1, 0  acc:  2846 /  2874 =  99.026
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 16488 / 19867 =  82.992
Robust  acc:  6369 /  8535 =  74.622
------------------------------------
New max robust acc: 74.62214411247803
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 84.460
Robust Acc: 79.932 | Best Acc: 98.750
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  7807 /  9767 =  79.932
0, 1  acc:  6435 /  7535 =  85.401
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16860 / 19962 =  84.460
Robust  acc:  7807 /  9767 =  79.932
------------------------------------
Accuracies by groups:
0, 0  acc:  7807 /  9767 =  79.932
0, 1  acc:  6435 /  7535 =  85.401
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16860 / 19962 =  84.460
Robust  acc:  7807 /  9767 =  79.932
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7807 /  9767 =  79.932
0, 1  acc:  6435 /  7535 =  85.401
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16860 / 19962 =  84.460
Robust  acc:  7807 /  9767 =  79.932
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 95.312 | Val Loss: 0.003 | Val Acc: 85.821
Training:
Accuracies by groups:
0, 0  acc:  9602 / 14401 =  66.676
0, 1  acc:  5176 /  6426 =  80.548
1, 0  acc: 132198 / 133339 =  99.144
1, 1  acc:  8163 /  8604 =  94.874
--------------------------------------
Average acc: 155139 / 162770 =  95.312
Robust  acc:  9602 / 14401 =  66.676
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6659 /  8535 =  78.020
0, 1  acc:  7378 /  8276 =  89.149
1, 0  acc:  2840 /  2874 =  98.817
1, 1  acc:   173 /   182 =  95.055
------------------------------------
Average acc: 17050 / 19867 =  85.821
Robust  acc:  6659 /  8535 =  78.020
------------------------------------
New max robust acc: 78.01991798476861
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 86.960
Robust Acc: 82.523 | Best Acc: 98.468
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8060 /  9767 =  82.523
0, 1  acc:  6693 /  7535 =  88.825
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   164 /   180 =  91.111
------------------------------------
Average acc: 17359 / 19962 =  86.960
Robust  acc:  8060 /  9767 =  82.523
------------------------------------
Accuracies by groups:
0, 0  acc:  8060 /  9767 =  82.523
0, 1  acc:  6693 /  7535 =  88.825
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   164 /   180 =  91.111
------------------------------------
Average acc: 17359 / 19962 =  86.960
Robust  acc:  8060 /  9767 =  82.523
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8060 /  9767 =  82.523
0, 1  acc:  6693 /  7535 =  88.825
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   164 /   180 =  91.111
------------------------------------
Average acc: 17359 / 19962 =  86.960
Robust  acc:  8060 /  9767 =  82.523
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 95.797 | Val Loss: 0.003 | Val Acc: 86.213
Training:
Accuracies by groups:
0, 0  acc: 10000 / 14407 =  69.411
0, 1  acc:  5494 /  6578 =  83.521
1, 0  acc: 132141 / 133130 =  99.257
1, 1  acc:  8294 /  8655 =  95.829
--------------------------------------
Average acc: 155929 / 162770 =  95.797
Robust  acc: 10000 / 14407 =  69.411
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6667 /  8535 =  78.114
0, 1  acc:  7444 /  8276 =  89.947
1, 0  acc:  2842 /  2874 =  98.887
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 17128 / 19867 =  86.213
Robust  acc:  6667 /  8535 =  78.114
------------------------------------
New max robust acc: 78.1136496777973
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.251
Robust Acc: 82.625 | Best Acc: 98.468
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8070 /  9767 =  82.625
0, 1  acc:  6743 /  7535 =  89.489
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17417 / 19962 =  87.251
Robust  acc:  8070 /  9767 =  82.625
------------------------------------
Accuracies by groups:
0, 0  acc:  8070 /  9767 =  82.625
0, 1  acc:  6743 /  7535 =  89.489
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17417 / 19962 =  87.251
Robust  acc:  8070 /  9767 =  82.625
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8070 /  9767 =  82.625
0, 1  acc:  6743 /  7535 =  89.489
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17417 / 19962 =  87.251
Robust  acc:  8070 /  9767 =  82.625
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 96.316 | Val Loss: 0.002 | Val Acc: 88.655
Training:
Accuracies by groups:
0, 0  acc: 10402 / 14358 =  72.447
0, 1  acc:  5687 /  6612 =  86.010
1, 0  acc: 132392 / 133187 =  99.403
1, 1  acc:  8292 /  8613 =  96.273
--------------------------------------
Average acc: 156773 / 162770 =  96.316
Robust  acc: 10402 / 14358 =  72.447
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6950 /  8535 =  81.429
0, 1  acc:  7666 /  8276 =  92.629
1, 0  acc:  2827 /  2874 =  98.365
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17613 / 19867 =  88.655
Robust  acc:  6950 /  8535 =  81.429
------------------------------------
New max robust acc: 81.42940831868776
debias model - Saving best checkpoint at epoch 4
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.515
Robust Acc: 85.226 | Best Acc: 97.903
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8324 /  9767 =  85.226
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17869 / 19962 =  89.515
Robust  acc:  8324 /  9767 =  85.226
------------------------------------
Accuracies by groups:
0, 0  acc:  8324 /  9767 =  85.226
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17869 / 19962 =  89.515
Robust  acc:  8324 /  9767 =  85.226
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8324 /  9767 =  85.226
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   157 /   180 =  87.222
------------------------------------
Average acc: 17869 / 19962 =  89.515
Robust  acc:  8324 /  9767 =  85.226
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.792 | Val Loss: 0.002 | Val Acc: 89.933
Training:
Accuracies by groups:
0, 0  acc: 10613 / 14272 =  74.362
0, 1  acc:  5739 /  6515 =  88.089
1, 0  acc: 132597 / 133196 =  99.550
1, 1  acc:  8599 /  8787 =  97.860
--------------------------------------
Average acc: 157548 / 162770 =  96.792
Robust  acc: 10613 / 14272 =  74.362
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7077 /  8535 =  82.917
0, 1  acc:  7806 /  8276 =  94.321
1, 0  acc:  2817 /  2874 =  98.017
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17867 / 19867 =  89.933
Robust  acc:  7077 /  8535 =  82.917
------------------------------------
New max robust acc: 82.91739894551846
debias model - Saving best checkpoint at epoch 5
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.642
Robust Acc: 85.000 | Best Acc: 97.782
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  7084 /  7535 =  94.015
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 18094 / 19962 =  90.642
Robust  acc:   153 /   180 =  85.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  7084 /  7535 =  94.015
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 18094 / 19962 =  90.642
Robust  acc:   153 /   180 =  85.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  7084 /  7535 =  94.015
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 18094 / 19962 =  90.642
Robust  acc:   153 /   180 =  85.000
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.289 | Val Loss: 0.002 | Val Acc: 91.101
Training:
Accuracies by groups:
0, 0  acc: 11089 / 14373 =  77.152
0, 1  acc:  5936 /  6609 =  89.817
1, 0  acc: 132770 / 133122 =  99.736
1, 1  acc:  8562 /  8666 =  98.800
--------------------------------------
Average acc: 158357 / 162770 =  97.289
Robust  acc: 11089 / 14373 =  77.152
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7268 /  8535 =  85.155
0, 1  acc:  7869 /  8276 =  95.082
1, 0  acc:  2799 /  2874 =  97.390
1, 1  acc:   163 /   182 =  89.560
------------------------------------
Average acc: 18099 / 19867 =  91.101
Robust  acc:  7268 /  8535 =  85.155
------------------------------------
New max robust acc: 85.15524311657879
debias model - Saving best checkpoint at epoch 6
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.669
Robust Acc: 82.222 | Best Acc: 97.056
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8615 /  9767 =  88.205
0, 1  acc:  7129 /  7535 =  94.612
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18299 / 19962 =  91.669
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8615 /  9767 =  88.205
0, 1  acc:  7129 /  7535 =  94.612
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18299 / 19962 =  91.669
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8615 /  9767 =  88.205
0, 1  acc:  7129 /  7535 =  94.612
1, 0  acc:  2407 /  2480 =  97.056
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18299 / 19962 =  91.669
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 97.782 | Val Loss: 0.002 | Val Acc: 91.010
Training:
Accuracies by groups:
0, 0  acc: 11642 / 14486 =  80.367
0, 1  acc:  6049 /  6578 =  91.958
1, 0  acc: 132910 / 133102 =  99.856
1, 1  acc:  8558 /  8604 =  99.465
--------------------------------------
Average acc: 159159 / 162770 =  97.782
Robust  acc: 11642 / 14486 =  80.367
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7219 /  8535 =  84.581
0, 1  acc:  7896 /  8276 =  95.408
1, 0  acc:  2805 /  2874 =  97.599
1, 1  acc:   161 /   182 =  88.462
------------------------------------
Average acc: 18081 / 19867 =  91.010
Robust  acc:  7219 /  8535 =  84.581
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.444
Robust Acc: 82.778 | Best Acc: 96.976
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  8561 /  9767 =  87.652
0, 1  acc:  7139 /  7535 =  94.745
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18254 / 19962 =  91.444
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8561 /  9767 =  87.652
0, 1  acc:  7139 /  7535 =  94.745
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18254 / 19962 =  91.444
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8561 /  9767 =  87.652
0, 1  acc:  7139 /  7535 =  94.745
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18254 / 19962 =  91.444
Robust  acc:   149 /   180 =  82.778
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.170 | Val Loss: 0.002 | Val Acc: 92.188
Training:
Accuracies by groups:
0, 0  acc: 12019 / 14455 =  83.148
0, 1  acc:  6093 /  6517 =  93.494
1, 0  acc: 133079 / 133173 =  99.929
1, 1  acc:  8600 /  8625 =  99.710
--------------------------------------
Average acc: 159791 / 162770 =  98.170
Robust  acc: 12019 / 14455 =  83.148
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7458 /  8535 =  87.381
0, 1  acc:  7953 /  8276 =  96.097
1, 0  acc:  2754 /  2874 =  95.825
1, 1  acc:   150 /   182 =  82.418
------------------------------------
Average acc: 18315 / 19867 =  92.188
Robust  acc:   150 /   182 =  82.418
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.651
Robust Acc: 78.333 | Best Acc: 95.687
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  8782 /  9767 =  89.915
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2362 /  2480 =  95.242
1, 1  acc:   141 /   180 =  78.333
------------------------------------
Average acc: 18495 / 19962 =  92.651
Robust  acc:   141 /   180 =  78.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8782 /  9767 =  89.915
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2362 /  2480 =  95.242
1, 1  acc:   141 /   180 =  78.333
------------------------------------
Average acc: 18495 / 19962 =  92.651
Robust  acc:   141 /   180 =  78.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8782 /  9767 =  89.915
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2362 /  2480 =  95.242
1, 1  acc:   141 /   180 =  78.333
------------------------------------
Average acc: 18495 / 19962 =  92.651
Robust  acc:   141 /   180 =  78.333
------------------------------------
Epoch:  10 | Train Loss: 0.001 | Train Acc: 98.446 | Val Loss: 0.002 | Val Acc: 92.163
Training:
Accuracies by groups:
0, 0  acc: 12440 / 14490 =  85.852
0, 1  acc:  6115 /  6464 =  94.601
1, 0  acc: 132996 / 133098 =  99.923
1, 1  acc:  8689 /  8718 =  99.667
--------------------------------------
Average acc: 160240 / 162770 =  98.446
Robust  acc: 12440 / 14490 =  85.852
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7445 /  8535 =  87.229
0, 1  acc:  7983 /  8276 =  96.460
1, 0  acc:  2738 /  2874 =  95.268
1, 1  acc:   144 /   182 =  79.121
------------------------------------
Average acc: 18310 / 19867 =  92.163
Robust  acc:   144 /   182 =  79.121
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.391
Robust Acc: 76.111 | Best Acc: 95.740
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  8755 /  9767 =  89.639
0, 1  acc:  7214 /  7535 =  95.740
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18443 / 19962 =  92.391
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8755 /  9767 =  89.639
0, 1  acc:  7214 /  7535 =  95.740
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18443 / 19962 =  92.391
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8755 /  9767 =  89.639
0, 1  acc:  7214 /  7535 =  95.740
1, 0  acc:  2337 /  2480 =  94.234
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18443 / 19962 =  92.391
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.484 | Val Loss: 0.002 | Val Acc: 92.490
Training:
Accuracies by groups:
0, 0  acc: 12490 / 14446 =  86.460
0, 1  acc:  6212 /  6511 =  95.408
1, 0  acc: 133087 / 133255 =  99.874
1, 1  acc:  8514 /  8558 =  99.486
--------------------------------------
Average acc: 160303 / 162770 =  98.484
Robust  acc: 12490 / 14446 =  86.460
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7516 /  8535 =  88.061
0, 1  acc:  7978 /  8276 =  96.399
1, 0  acc:  2737 /  2874 =  95.233
1, 1  acc:   144 /   182 =  79.121
------------------------------------
Average acc: 18375 / 19867 =  92.490
Robust  acc:   144 /   182 =  79.121
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.861
Robust Acc: 74.444 | Best Acc: 95.926
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  8842 /  9767 =  90.529
0, 1  acc:  7228 /  7535 =  95.926
1, 0  acc:  2333 /  2480 =  94.073
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18537 / 19962 =  92.861
Robust  acc:   134 /   180 =  74.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8842 /  9767 =  90.529
0, 1  acc:  7228 /  7535 =  95.926
1, 0  acc:  2333 /  2480 =  94.073
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18537 / 19962 =  92.861
Robust  acc:   134 /   180 =  74.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8842 /  9767 =  90.529
0, 1  acc:  7228 /  7535 =  95.926
1, 0  acc:  2333 /  2480 =  94.073
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18537 / 19962 =  92.861
Robust  acc:   134 /   180 =  74.444
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.260 | Val Loss: 0.002 | Val Acc: 92.299
Training:
Accuracies by groups:
0, 0  acc: 12362 / 14462 =  85.479
0, 1  acc:  6004 /  6357 =  94.447
1, 0  acc: 132901 / 133205 =  99.772
1, 1  acc:  8671 /  8746 =  99.142
--------------------------------------
Average acc: 159938 / 162770 =  98.260
Robust  acc: 12362 / 14462 =  85.479
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7418 /  8535 =  86.913
0, 1  acc:  7997 /  8276 =  96.629
1, 0  acc:  2774 /  2874 =  96.521
1, 1  acc:   148 /   182 =  81.319
------------------------------------
Average acc: 18337 / 19867 =  92.299
Robust  acc:   148 /   182 =  81.319
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.681
Robust Acc: 75.556 | Best Acc: 96.324
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  8739 /  9767 =  89.475
0, 1  acc:  7258 /  7535 =  96.324
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18501 / 19962 =  92.681
Robust  acc:   136 /   180 =  75.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8739 /  9767 =  89.475
0, 1  acc:  7258 /  7535 =  96.324
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18501 / 19962 =  92.681
Robust  acc:   136 /   180 =  75.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8739 /  9767 =  89.475
0, 1  acc:  7258 /  7535 =  96.324
1, 0  acc:  2368 /  2480 =  95.484
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18501 / 19962 =  92.681
Robust  acc:   136 /   180 =  75.556
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 97.845 | Val Loss: 0.002 | Val Acc: 93.139
Training:
Accuracies by groups:
0, 0  acc: 12099 / 14529 =  83.275
0, 1  acc:  5943 /  6404 =  92.801
1, 0  acc: 132713 / 133191 =  99.641
1, 1  acc:  8507 /  8646 =  98.392
--------------------------------------
Average acc: 159262 / 162770 =  97.845
Robust  acc: 12099 / 14529 =  83.275
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7639 /  8535 =  89.502
0, 1  acc:  7990 /  8276 =  96.544
1, 0  acc:  2726 /  2874 =  94.850
1, 1  acc:   149 /   182 =  81.868
------------------------------------
Average acc: 18504 / 19867 =  93.139
Robust  acc:   149 /   182 =  81.868
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.793
Robust Acc: 75.000 | Best Acc: 96.417
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  8978 /  9767 =  91.922
0, 1  acc:  7265 /  7535 =  96.417
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18723 / 19962 =  93.793
Robust  acc:   135 /   180 =  75.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8978 /  9767 =  91.922
0, 1  acc:  7265 /  7535 =  96.417
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18723 / 19962 =  93.793
Robust  acc:   135 /   180 =  75.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8978 /  9767 =  91.922
0, 1  acc:  7265 /  7535 =  96.417
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18723 / 19962 =  93.793
Robust  acc:   135 /   180 =  75.000
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.379 | Val Loss: 0.002 | Val Acc: 90.582
Training:
Accuracies by groups:
0, 0  acc: 11683 / 14575 =  80.158
0, 1  acc:  6145 /  6716 =  91.498
1, 0  acc: 132378 / 133009 =  99.526
1, 1  acc:  8298 /  8470 =  97.969
--------------------------------------
Average acc: 158504 / 162770 =  97.379
Robust  acc: 11683 / 14575 =  80.158
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7179 /  8535 =  84.112
0, 1  acc:  7860 /  8276 =  94.973
1, 0  acc:  2796 /  2874 =  97.286
1, 1  acc:   161 /   182 =  88.462
------------------------------------
Average acc: 17996 / 19867 =  90.582
Robust  acc:  7179 /  8535 =  84.112
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.028
Robust Acc: 78.889 | Best Acc: 96.774
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7127 /  7535 =  94.585
1, 0  acc:  2400 /  2480 =  96.774
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18171 / 19962 =  91.028
Robust  acc:   142 /   180 =  78.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7127 /  7535 =  94.585
1, 0  acc:  2400 /  2480 =  96.774
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18171 / 19962 =  91.028
Robust  acc:   142 /   180 =  78.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7127 /  7535 =  94.585
1, 0  acc:  2400 /  2480 =  96.774
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18171 / 19962 =  91.028
Robust  acc:   142 /   180 =  78.889
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.857 | Val Loss: 0.003 | Val Acc: 82.841
Training:
Accuracies by groups:
0, 0  acc: 11100 / 14433 =  76.907
0, 1  acc:  5778 /  6493 =  88.988
1, 0  acc: 132346 / 133167 =  99.383
1, 1  acc:  8430 /  8677 =  97.153
--------------------------------------
Average acc: 157654 / 162770 =  96.857
Robust  acc: 11100 / 14433 =  76.907
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6110 /  8535 =  71.588
0, 1  acc:  7322 /  8276 =  88.473
1, 0  acc:  2854 /  2874 =  99.304
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16458 / 19867 =  82.841
Robust  acc:  6110 /  8535 =  71.588
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 83.348
Robust Acc: 75.581 | Best Acc: 98.790
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  7382 /  9767 =  75.581
0, 1  acc:  6643 /  7535 =  88.162
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7382 /  9767 =  75.581
------------------------------------
Accuracies by groups:
0, 0  acc:  7382 /  9767 =  75.581
0, 1  acc:  6643 /  7535 =  88.162
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7382 /  9767 =  75.581
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7382 /  9767 =  75.581
0, 1  acc:  6643 /  7535 =  88.162
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7382 /  9767 =  75.581
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 96.443 | Val Loss: 0.002 | Val Acc: 90.633
Training:
Accuracies by groups:
0, 0  acc: 10813 / 14543 =  74.352
0, 1  acc:  5744 /  6547 =  87.735
1, 0  acc: 132115 / 133035 =  99.308
1, 1  acc:  8309 /  8645 =  96.113
--------------------------------------
Average acc: 156981 / 162770 =  96.443
Robust  acc: 10813 / 14543 =  74.352
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7213 /  8535 =  84.511
0, 1  acc:  7831 /  8276 =  94.623
1, 0  acc:  2802 /  2874 =  97.495
1, 1  acc:   160 /   182 =  87.912
------------------------------------
Average acc: 18006 / 19867 =  90.633
Robust  acc:  7213 /  8535 =  84.511
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.293
Robust Acc: 81.111 | Best Acc: 97.218
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  8552 /  9767 =  87.560
0, 1  acc:  7115 /  7535 =  94.426
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   146 /   180 =  81.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8552 /  9767 =  87.560
0, 1  acc:  7115 /  7535 =  94.426
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   146 /   180 =  81.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8552 /  9767 =  87.560
0, 1  acc:  7115 /  7535 =  94.426
1, 0  acc:  2411 /  2480 =  97.218
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18224 / 19962 =  91.293
Robust  acc:   146 /   180 =  81.111
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 95.977 | Val Loss: 0.003 | Val Acc: 88.267
Training:
Accuracies by groups:
0, 0  acc: 10462 / 14495 =  72.177
0, 1  acc:  5395 /  6340 =  85.095
1, 0  acc: 132156 / 133333 =  99.117
1, 1  acc:  8209 /  8602 =  95.431
--------------------------------------
Average acc: 156222 / 162770 =  95.977
Robust  acc: 10462 / 14495 =  72.177
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6911 /  8535 =  80.972
0, 1  acc:  7633 /  8276 =  92.231
1, 0  acc:  2825 /  2874 =  98.295
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17536 / 19867 =  88.267
Robust  acc:  6911 /  8535 =  80.972
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.024
Robust Acc: 82.778 | Best Acc: 97.903
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  8213 /  9767 =  84.089
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17771 / 19962 =  89.024
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8213 /  9767 =  84.089
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17771 / 19962 =  89.024
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8213 /  9767 =  84.089
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17771 / 19962 =  89.024
Robust  acc:   149 /   180 =  82.778
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 95.637 | Val Loss: 0.003 | Val Acc: 89.470
Training:
Accuracies by groups:
0, 0  acc: 10095 / 14490 =  69.669
0, 1  acc:  5299 /  6336 =  83.633
1, 0  acc: 132178 / 133441 =  99.054
1, 1  acc:  8096 /  8503 =  95.213
--------------------------------------
Average acc: 155668 / 162770 =  95.637
Robust  acc: 10095 / 14490 =  69.669
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6983 /  8535 =  81.816
0, 1  acc:  7804 /  8276 =  94.297
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   165 /   182 =  90.659
------------------------------------
Average acc: 17775 / 19867 =  89.470
Robust  acc:  6983 /  8535 =  81.816
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.322
Robust Acc: 83.333 | Best Acc: 97.984
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  8355 /  9767 =  85.543
0, 1  acc:  7095 /  7535 =  94.161
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18030 / 19962 =  90.322
Robust  acc:   150 /   180 =  83.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8355 /  9767 =  85.543
0, 1  acc:  7095 /  7535 =  94.161
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18030 / 19962 =  90.322
Robust  acc:   150 /   180 =  83.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8355 /  9767 =  85.543
0, 1  acc:  7095 /  7535 =  94.161
1, 0  acc:  2430 /  2480 =  97.984
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18030 / 19962 =  90.322
Robust  acc:   150 /   180 =  83.333
------------------------------------
Epoch:  19 | Train Loss: 0.001 | Train Acc: 95.295 | Val Loss: 0.003 | Val Acc: 85.841
Training:
Accuracies by groups:
0, 0  acc:  9541 / 14168 =  67.342
0, 1  acc:  5329 /  6542 =  81.458
1, 0  acc: 131956 / 133284 =  99.004
1, 1  acc:  8285 /  8776 =  94.405
--------------------------------------
Average acc: 155111 / 162770 =  95.295
Robust  acc:  9541 / 14168 =  67.342
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6937 /  8535 =  81.277
0, 1  acc:  7130 /  8276 =  86.153
1, 0  acc:  2807 /  2874 =  97.669
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 17054 / 19867 =  85.841
Robust  acc:  6937 /  8535 =  81.277
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 86.740
Robust Acc: 84.376 | Best Acc: 96.815
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  8241 /  9767 =  84.376
0, 1  acc:  6508 /  7535 =  86.370
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 17315 / 19962 =  86.740
Robust  acc:  8241 /  9767 =  84.376
------------------------------------
Accuracies by groups:
0, 0  acc:  8241 /  9767 =  84.376
0, 1  acc:  6508 /  7535 =  86.370
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 17315 / 19962 =  86.740
Robust  acc:  8241 /  9767 =  84.376
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8241 /  9767 =  84.376
0, 1  acc:  6508 /  7535 =  86.370
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 17315 / 19962 =  86.740
Robust  acc:  8241 /  9767 =  84.376
------------------------------------
Epoch:  20 | Train Loss: 0.001 | Train Acc: 94.970 | Val Loss: 0.005 | Val Acc: 76.262
Training:
Accuracies by groups:
0, 0  acc:  9704 / 14542 =  66.731
0, 1  acc:  5278 /  6693 =  78.859
1, 0  acc: 131408 / 132855 =  98.911
1, 1  acc:  8193 /  8680 =  94.389
--------------------------------------
Average acc: 154583 / 162770 =  94.970
Robust  acc:  9704 / 14542 =  66.731
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5710 /  8535 =  66.901
0, 1  acc:  6405 /  8276 =  77.392
1, 0  acc:  2857 /  2874 =  99.408
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15151 / 19867 =  76.262
Robust  acc:  5710 /  8535 =  66.901
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 78.103
Robust Acc: 72.305 | Best Acc: 99.315
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  7062 /  9767 =  72.305
0, 1  acc:  5891 /  7535 =  78.182
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15591 / 19962 =  78.103
Robust  acc:  7062 /  9767 =  72.305
------------------------------------
Accuracies by groups:
0, 0  acc:  7062 /  9767 =  72.305
0, 1  acc:  5891 /  7535 =  78.182
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15591 / 19962 =  78.103
Robust  acc:  7062 /  9767 =  72.305
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7062 /  9767 =  72.305
0, 1  acc:  5891 /  7535 =  78.182
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15591 / 19962 =  78.103
Robust  acc:  7062 /  9767 =  72.305
------------------------------------
Epoch:  21 | Train Loss: 0.001 | Train Acc: 94.823 | Val Loss: 0.005 | Val Acc: 72.698
Training:
Accuracies by groups:
0, 0  acc:  9362 / 14482 =  64.646
0, 1  acc:  5106 /  6623 =  77.095
1, 0  acc: 131725 / 133053 =  99.002
1, 1  acc:  8151 /  8612 =  94.647
--------------------------------------
Average acc: 154344 / 162770 =  94.823
Robust  acc:  9362 / 14482 =  64.646
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5416 /  8535 =  63.456
0, 1  acc:  5983 /  8276 =  72.293
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14443 / 19867 =  72.698
Robust  acc:  5416 /  8535 =  63.456
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 74.717
Robust Acc: 69.632 | Best Acc: 99.476
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  6801 /  9767 =  69.632
0, 1  acc:  5471 /  7535 =  72.608
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14915 / 19962 =  74.717
Robust  acc:  6801 /  9767 =  69.632
------------------------------------
Accuracies by groups:
0, 0  acc:  6801 /  9767 =  69.632
0, 1  acc:  5471 /  7535 =  72.608
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14915 / 19962 =  74.717
Robust  acc:  6801 /  9767 =  69.632
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6801 /  9767 =  69.632
0, 1  acc:  5471 /  7535 =  72.608
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14915 / 19962 =  74.717
Robust  acc:  6801 /  9767 =  69.632
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 94.633 | Val Loss: 0.004 | Val Acc: 81.039
Training:
Accuracies by groups:
0, 0  acc:  9237 / 14549 =  63.489
0, 1  acc:  4746 /  6416 =  73.971
1, 0  acc: 131767 / 133081 =  99.013
1, 1  acc:  8284 /  8724 =  94.956
--------------------------------------
Average acc: 154034 / 162770 =  94.633
Robust  acc:  9237 / 14549 =  63.489
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6101 /  8535 =  71.482
0, 1  acc:  6966 /  8276 =  84.171
1, 0  acc:  2855 /  2874 =  99.339
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 16100 / 19867 =  81.039
Robust  acc:  6101 /  8535 =  71.482
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 82.692
Robust Acc: 76.748 | Best Acc: 98.871
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  7496 /  9767 =  76.748
0, 1  acc:  6392 /  7535 =  84.831
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16507 / 19962 =  82.692
Robust  acc:  7496 /  9767 =  76.748
------------------------------------
Accuracies by groups:
0, 0  acc:  7496 /  9767 =  76.748
0, 1  acc:  6392 /  7535 =  84.831
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16507 / 19962 =  82.692
Robust  acc:  7496 /  9767 =  76.748
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7496 /  9767 =  76.748
0, 1  acc:  6392 /  7535 =  84.831
1, 0  acc:  2452 /  2480 =  98.871
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 16507 / 19962 =  82.692
Robust  acc:  7496 /  9767 =  76.748
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 94.628 | Val Loss: 0.003 | Val Acc: 93.134
Training:
Accuracies by groups:
0, 0  acc:  8964 / 14271 =  62.813
0, 1  acc:  4705 /  6498 =  72.407
1, 0  acc: 132251 / 133485 =  99.076
1, 1  acc:  8106 /  8516 =  95.186
--------------------------------------
Average acc: 154026 / 162770 =  94.628
Robust  acc:  8964 / 14271 =  62.813
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7791 /  8535 =  91.283
0, 1  acc:  7969 /  8276 =  96.290
1, 0  acc:  2608 /  2874 =  90.745
1, 1  acc:   135 /   182 =  74.176
------------------------------------
Average acc: 18503 / 19867 =  93.134
Robust  acc:   135 /   182 =  74.176
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.913
Robust Acc: 67.222 | Best Acc: 96.682
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  9101 /  9767 =  93.181
0, 1  acc:  7285 /  7535 =  96.682
1, 0  acc:  2240 /  2480 =  90.323
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18747 / 19962 =  93.913
Robust  acc:   121 /   180 =  67.222
------------------------------------
Accuracies by groups:
0, 0  acc:  9101 /  9767 =  93.181
0, 1  acc:  7285 /  7535 =  96.682
1, 0  acc:  2240 /  2480 =  90.323
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18747 / 19962 =  93.913
Robust  acc:   121 /   180 =  67.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9101 /  9767 =  93.181
0, 1  acc:  7285 /  7535 =  96.682
1, 0  acc:  2240 /  2480 =  90.323
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18747 / 19962 =  93.913
Robust  acc:   121 /   180 =  67.222
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 94.472 | Val Loss: 0.004 | Val Acc: 89.299
Training:
Accuracies by groups:
0, 0  acc:  8919 / 14429 =  61.813
0, 1  acc:  4754 /  6612 =  71.900
1, 0  acc: 131858 / 133073 =  99.087
1, 1  acc:  8241 /  8656 =  95.206
--------------------------------------
Average acc: 153772 / 162770 =  94.472
Robust  acc:  8919 / 14429 =  61.813
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7198 /  8535 =  84.335
0, 1  acc:  7600 /  8276 =  91.832
1, 0  acc:  2780 /  2874 =  96.729
1, 1  acc:   163 /   182 =  89.560
------------------------------------
Average acc: 17741 / 19867 =  89.299
Robust  acc:  7198 /  8535 =  84.335
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.552
Robust Acc: 82.222 | Best Acc: 96.008
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  8571 /  9767 =  87.755
0, 1  acc:  6976 /  7535 =  92.581
1, 0  acc:  2381 /  2480 =  96.008
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18076 / 19962 =  90.552
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8571 /  9767 =  87.755
0, 1  acc:  6976 /  7535 =  92.581
1, 0  acc:  2381 /  2480 =  96.008
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18076 / 19962 =  90.552
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8571 /  9767 =  87.755
0, 1  acc:  6976 /  7535 =  92.581
1, 0  acc:  2381 /  2480 =  96.008
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18076 / 19962 =  90.552
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 94.410 | Val Loss: 0.003 | Val Acc: 93.462
Training:
Accuracies by groups:
0, 0  acc:  8894 / 14407 =  61.734
0, 1  acc:  4822 /  6692 =  72.056
1, 0  acc: 131787 / 133140 =  98.984
1, 1  acc:  8168 /  8531 =  95.745
--------------------------------------
Average acc: 153671 / 162770 =  94.410
Robust  acc:  8894 / 14407 =  61.734
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7748 /  8535 =  90.779
0, 1  acc:  8049 /  8276 =  97.257
1, 0  acc:  2653 /  2874 =  92.310
1, 1  acc:   118 /   182 =  64.835
------------------------------------
Average acc: 18568 / 19867 =  93.462
Robust  acc:   118 /   182 =  64.835
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.399
Robust Acc: 63.333 | Best Acc: 97.412
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2274 /  2480 =  91.694
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18844 / 19962 =  94.399
Robust  acc:   114 /   180 =  63.333
------------------------------------
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2274 /  2480 =  91.694
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18844 / 19962 =  94.399
Robust  acc:   114 /   180 =  63.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9116 /  9767 =  93.335
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2274 /  2480 =  91.694
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18844 / 19962 =  94.399
Robust  acc:   114 /   180 =  63.333
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 94.365 | Val Loss: 0.003 | Val Acc: 92.410
Training:
Accuracies by groups:
0, 0  acc:  8715 / 14399 =  60.525
0, 1  acc:  4495 /  6408 =  70.147
1, 0  acc: 132199 / 133405 =  99.096
1, 1  acc:  8189 /  8558 =  95.688
--------------------------------------
Average acc: 153598 / 162770 =  94.365
Robust  acc:  8715 / 14399 =  60.525
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7662 /  8535 =  89.772
0, 1  acc:  7887 /  8276 =  95.300
1, 0  acc:  2666 /  2874 =  92.763
1, 1  acc:   144 /   182 =  79.121
------------------------------------
Average acc: 18359 / 19867 =  92.410
Robust  acc:   144 /   182 =  79.121
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.087
Robust Acc: 76.111 | Best Acc: 95.169
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7171 /  7535 =  95.169
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18582 / 19962 =  93.087
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7171 /  7535 =  95.169
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18582 / 19962 =  93.087
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7171 /  7535 =  95.169
1, 0  acc:  2287 /  2480 =  92.218
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18582 / 19962 =  93.087
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 94.234 | Val Loss: 0.003 | Val Acc: 90.160
Training:
Accuracies by groups:
0, 0  acc:  8606 / 14501 =  59.348
0, 1  acc:  4464 /  6542 =  68.236
1, 0  acc: 131927 / 133028 =  99.172
1, 1  acc:  8388 /  8699 =  96.425
--------------------------------------
Average acc: 153385 / 162770 =  94.234
Robust  acc:  8606 / 14501 =  59.348
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7347 /  8535 =  86.081
0, 1  acc:  7640 /  8276 =  92.315
1, 0  acc:  2767 /  2874 =  96.277
1, 1  acc:   158 /   182 =  86.813
------------------------------------
Average acc: 17912 / 19867 =  90.160
Robust  acc:  7347 /  8535 =  86.081
------------------------------------
New max robust acc: 86.08084358523726
debias model - Saving best checkpoint at epoch 26
replace: True
-> Updating checkpoint debias-wga-best_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed18.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.509
Robust Acc: 85.556 | Best Acc: 95.403
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  8734 /  9767 =  89.424
0, 1  acc:  7013 /  7535 =  93.072
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   154 /   180 =  85.556
------------------------------------
Average acc: 18267 / 19962 =  91.509
Robust  acc:   154 /   180 =  85.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8734 /  9767 =  89.424
0, 1  acc:  7013 /  7535 =  93.072
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   154 /   180 =  85.556
------------------------------------
Average acc: 18267 / 19962 =  91.509
Robust  acc:   154 /   180 =  85.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8734 /  9767 =  89.424
0, 1  acc:  7013 /  7535 =  93.072
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   154 /   180 =  85.556
------------------------------------
Average acc: 18267 / 19962 =  91.509
Robust  acc:   154 /   180 =  85.556
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 94.070 | Val Loss: 0.004 | Val Acc: 79.851
Training:
Accuracies by groups:
0, 0  acc:  8343 / 14457 =  57.709
0, 1  acc:  4436 /  6628 =  66.928
1, 0  acc: 132159 / 133184 =  99.230
1, 1  acc:  8180 /  8501 =  96.224
--------------------------------------
Average acc: 153118 / 162770 =  94.070
Robust  acc:  8343 / 14457 =  57.709
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5946 /  8535 =  69.666
0, 1  acc:  6899 /  8276 =  83.362
1, 0  acc:  2848 /  2874 =  99.095
1, 1  acc:   171 /   182 =  93.956
------------------------------------
Average acc: 15864 / 19867 =  79.851
Robust  acc:  5946 /  8535 =  69.666
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 81.840
Robust Acc: 75.745 | Best Acc: 98.911
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  7398 /  9767 =  75.745
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7398 /  9767 =  75.745
------------------------------------
Accuracies by groups:
0, 0  acc:  7398 /  9767 =  75.745
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7398 /  9767 =  75.745
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7398 /  9767 =  75.745
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16337 / 19962 =  81.840
Robust  acc:  7398 /  9767 =  75.745
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 94.168 | Val Loss: 0.006 | Val Acc: 62.033
Training:
Accuracies by groups:
0, 0  acc:  8400 / 14422 =  58.244
0, 1  acc:  4377 /  6525 =  67.080
1, 0  acc: 132223 / 133211 =  99.258
1, 1  acc:  8278 /  8612 =  96.122
--------------------------------------
Average acc: 153278 / 162770 =  94.168
Robust  acc:  8400 / 14422 =  58.244
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4500 /  8535 =  52.724
0, 1  acc:  4781 /  8276 =  57.769
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 12324 / 19867 =  62.033
Robust  acc:  4500 /  8535 =  52.724
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 62.910
Robust Acc: 56.775 | Best Acc: 99.435
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  5636 /  9767 =  57.705
0, 1  acc:  4278 /  7535 =  56.775
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12558 / 19962 =  62.910
Robust  acc:  4278 /  7535 =  56.775
------------------------------------
Accuracies by groups:
0, 0  acc:  5636 /  9767 =  57.705
0, 1  acc:  4278 /  7535 =  56.775
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12558 / 19962 =  62.910
Robust  acc:  4278 /  7535 =  56.775
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5636 /  9767 =  57.705
0, 1  acc:  4278 /  7535 =  56.775
1, 0  acc:  2466 /  2480 =  99.435
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 12558 / 19962 =  62.910
Robust  acc:  4278 /  7535 =  56.775
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 94.078 | Val Loss: 0.006 | Val Acc: 62.999
Training:
Accuracies by groups:
0, 0  acc:  8234 / 14477 =  56.876
0, 1  acc:  4370 /  6571 =  66.504
1, 0  acc: 132245 / 133141 =  99.327
1, 1  acc:  8281 /  8581 =  96.504
--------------------------------------
Average acc: 153130 / 162770 =  94.078
Robust  acc:  8234 / 14477 =  56.876
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4164 /  8535 =  48.787
0, 1  acc:  5305 /  8276 =  64.101
1, 0  acc:  2867 /  2874 =  99.756
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 12516 / 19867 =  62.999
Robust  acc:  4164 /  8535 =  48.787
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 63.621
Robust Acc: 53.957 | Best Acc: 99.718
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  5270 /  9767 =  53.957
0, 1  acc:  4780 /  7535 =  63.437
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12700 / 19962 =  63.621
Robust  acc:  5270 /  9767 =  53.957
------------------------------------
Accuracies by groups:
0, 0  acc:  5270 /  9767 =  53.957
0, 1  acc:  4780 /  7535 =  63.437
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12700 / 19962 =  63.621
Robust  acc:  5270 /  9767 =  53.957
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5270 /  9767 =  53.957
0, 1  acc:  4780 /  7535 =  63.437
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12700 / 19962 =  63.621
Robust  acc:  5270 /  9767 =  53.957
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 94.046 | Val Loss: 0.005 | Val Acc: 73.428
Training:
Accuracies by groups:
0, 0  acc:  8111 / 14368 =  56.452
0, 1  acc:  4340 /  6592 =  65.837
1, 0  acc: 132335 / 133214 =  99.340
1, 1  acc:  8293 /  8596 =  96.475
--------------------------------------
Average acc: 153079 / 162770 =  94.046
Robust  acc:  8111 / 14368 =  56.452
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5507 /  8535 =  64.523
0, 1  acc:  6038 /  8276 =  72.958
1, 0  acc:  2862 /  2874 =  99.582
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 14588 / 19867 =  73.428
Robust  acc:  5507 /  8535 =  64.523
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 75.508
Robust Acc: 70.237 | Best Acc: 99.315
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  6860 /  9767 =  70.237
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15073 / 19962 =  75.508
Robust  acc:  6860 /  9767 =  70.237
------------------------------------
Accuracies by groups:
0, 0  acc:  6860 /  9767 =  70.237
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15073 / 19962 =  75.508
Robust  acc:  6860 /  9767 =  70.237
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6860 /  9767 =  70.237
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15073 / 19962 =  75.508
Robust  acc:  6860 /  9767 =  70.237
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 94.060 | Val Loss: 0.005 | Val Acc: 76.660
Training:
Accuracies by groups:
0, 0  acc:  8319 / 14581 =  57.054
0, 1  acc:  4288 /  6511 =  65.858
1, 0  acc: 132251 / 133160 =  99.317
1, 1  acc:  8243 /  8518 =  96.772
--------------------------------------
Average acc: 153101 / 162770 =  94.060
Robust  acc:  8319 / 14581 =  57.054
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6028 /  8535 =  70.627
0, 1  acc:  6178 /  8276 =  74.650
1, 0  acc:  2846 /  2874 =  99.026
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 15230 / 19867 =  76.660
Robust  acc:  6028 /  8535 =  70.627
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.294
Robust Acc: 74.811 | Best Acc: 98.790
-------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  7365 /  9767 =  75.407
0, 1  acc:  5637 /  7535 =  74.811
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15629 / 19962 =  78.294
Robust  acc:  5637 /  7535 =  74.811
------------------------------------
Accuracies by groups:
0, 0  acc:  7365 /  9767 =  75.407
0, 1  acc:  5637 /  7535 =  74.811
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15629 / 19962 =  78.294
Robust  acc:  5637 /  7535 =  74.811
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7365 /  9767 =  75.407
0, 1  acc:  5637 /  7535 =  74.811
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15629 / 19962 =  78.294
Robust  acc:  5637 /  7535 =  74.811
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 93.988 | Val Loss: 0.005 | Val Acc: 74.958
Training:
Accuracies by groups:
0, 0  acc:  8271 / 14615 =  56.593
0, 1  acc:  4209 /  6499 =  64.764
1, 0  acc: 132044 / 132942 =  99.325
1, 1  acc:  8461 /  8714 =  97.097
--------------------------------------
Average acc: 152985 / 162770 =  93.988
Robust  acc:  8271 / 14615 =  56.593
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5690 /  8535 =  66.667
0, 1  acc:  6198 /  8276 =  74.891
1, 0  acc:  2832 /  2874 =  98.539
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 14892 / 19867 =  74.958
Robust  acc:  5690 /  8535 =  66.667
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.232
Robust Acc: 71.670 | Best Acc: 98.911
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  7000 /  9767 =  71.670
0, 1  acc:  5788 /  7535 =  76.815
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15417 / 19962 =  77.232
Robust  acc:  7000 /  9767 =  71.670
------------------------------------
Accuracies by groups:
0, 0  acc:  7000 /  9767 =  71.670
0, 1  acc:  5788 /  7535 =  76.815
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15417 / 19962 =  77.232
Robust  acc:  7000 /  9767 =  71.670
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7000 /  9767 =  71.670
0, 1  acc:  5788 /  7535 =  76.815
1, 0  acc:  2453 /  2480 =  98.911
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15417 / 19962 =  77.232
Robust  acc:  7000 /  9767 =  71.670
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 94.107 | Val Loss: 0.004 | Val Acc: 85.619
Training:
Accuracies by groups:
0, 0  acc:  8176 / 14438 =  56.628
0, 1  acc:  4289 /  6488 =  66.107
1, 0  acc: 132422 / 133284 =  99.353
1, 1  acc:  8291 /  8560 =  96.857
--------------------------------------
Average acc: 153178 / 162770 =  94.107
Robust  acc:  8176 / 14438 =  56.628
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6887 /  8535 =  80.691
0, 1  acc:  7173 /  8276 =  86.672
1, 0  acc:  2782 /  2874 =  96.799
1, 1  acc:   168 /   182 =  92.308
------------------------------------
Average acc: 17010 / 19867 =  85.619
Robust  acc:  6887 /  8535 =  80.691
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 87.100
Robust Acc: 84.745 | Best Acc: 96.210
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  8277 /  9767 =  84.745
0, 1  acc:  6558 /  7535 =  87.034
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 17387 / 19962 =  87.100
Robust  acc:  8277 /  9767 =  84.745
------------------------------------
Accuracies by groups:
0, 0  acc:  8277 /  9767 =  84.745
0, 1  acc:  6558 /  7535 =  87.034
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 17387 / 19962 =  87.100
Robust  acc:  8277 /  9767 =  84.745
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8277 /  9767 =  84.745
0, 1  acc:  6558 /  7535 =  87.034
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 17387 / 19962 =  87.100
Robust  acc:  8277 /  9767 =  84.745
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 94.067 | Val Loss: 0.005 | Val Acc: 76.574
Training:
Accuracies by groups:
0, 0  acc:  8207 / 14450 =  56.796
0, 1  acc:  4437 /  6755 =  65.685
1, 0  acc: 132333 / 133157 =  99.381
1, 1  acc:  8136 /  8408 =  96.765
--------------------------------------
Average acc: 153113 / 162770 =  94.067
Robust  acc:  8207 / 14450 =  56.796
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5890 /  8535 =  69.010
0, 1  acc:  6291 /  8276 =  76.015
1, 0  acc:  2856 /  2874 =  99.374
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 15213 / 19867 =  76.574
Robust  acc:  5890 /  8535 =  69.010
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.439
Robust Acc: 74.393 | Best Acc: 99.194
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  7266 /  9767 =  74.393
0, 1  acc:  5761 /  7535 =  76.457
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15658 / 19962 =  78.439
Robust  acc:  7266 /  9767 =  74.393
------------------------------------
Accuracies by groups:
0, 0  acc:  7266 /  9767 =  74.393
0, 1  acc:  5761 /  7535 =  76.457
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15658 / 19962 =  78.439
Robust  acc:  7266 /  9767 =  74.393
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7266 /  9767 =  74.393
0, 1  acc:  5761 /  7535 =  76.457
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 15658 / 19962 =  78.439
Robust  acc:  7266 /  9767 =  74.393
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 94.118 | Val Loss: 0.005 | Val Acc: 80.304
Training:
Accuracies by groups:
0, 0  acc:  8187 / 14329 =  57.136
0, 1  acc:  4306 /  6569 =  65.550
1, 0  acc: 132458 / 133332 =  99.344
1, 1  acc:  8245 /  8540 =  96.546
--------------------------------------
Average acc: 153196 / 162770 =  94.118
Robust  acc:  8187 / 14329 =  57.136
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6381 /  8535 =  74.763
0, 1  acc:  6568 /  8276 =  79.362
1, 0  acc:  2832 /  2874 =  98.539
1, 1  acc:   173 /   182 =  95.055
------------------------------------
Average acc: 15954 / 19867 =  80.304
Robust  acc:  6381 /  8535 =  74.763
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 81.981
Robust Acc: 79.052 | Best Acc: 98.185
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  7721 /  9767 =  79.052
0, 1  acc:  6040 /  7535 =  80.159
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16365 / 19962 =  81.981
Robust  acc:  7721 /  9767 =  79.052
------------------------------------
Accuracies by groups:
0, 0  acc:  7721 /  9767 =  79.052
0, 1  acc:  6040 /  7535 =  80.159
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16365 / 19962 =  81.981
Robust  acc:  7721 /  9767 =  79.052
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7721 /  9767 =  79.052
0, 1  acc:  6040 /  7535 =  80.159
1, 0  acc:  2435 /  2480 =  98.185
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16365 / 19962 =  81.981
Robust  acc:  7721 /  9767 =  79.052
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 94.148 | Val Loss: 0.005 | Val Acc: 83.062
Training:
Accuracies by groups:
0, 0  acc:  8314 / 14384 =  57.800
0, 1  acc:  4241 /  6504 =  65.206
1, 0  acc: 132235 / 133149 =  99.314
1, 1  acc:  8455 /  8733 =  96.817
--------------------------------------
Average acc: 153245 / 162770 =  94.148
Robust  acc:  8314 / 14384 =  57.800
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6663 /  8535 =  78.067
0, 1  acc:  6846 /  8276 =  82.721
1, 0  acc:  2820 /  2874 =  98.121
1, 1  acc:   173 /   182 =  95.055
------------------------------------
Average acc: 16502 / 19867 =  83.062
Robust  acc:  6663 /  8535 =  78.067
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.561
Robust Acc: 82.257 | Best Acc: 97.863
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  8034 /  9767 =  82.257
0, 1  acc:  6251 /  7535 =  82.960
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16880 / 19962 =  84.561
Robust  acc:  8034 /  9767 =  82.257
------------------------------------
Accuracies by groups:
0, 0  acc:  8034 /  9767 =  82.257
0, 1  acc:  6251 /  7535 =  82.960
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16880 / 19962 =  84.561
Robust  acc:  8034 /  9767 =  82.257
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8034 /  9767 =  82.257
0, 1  acc:  6251 /  7535 =  82.960
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16880 / 19962 =  84.561
Robust  acc:  8034 /  9767 =  82.257
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 94.130 | Val Loss: 0.004 | Val Acc: 84.326
Training:
Accuracies by groups:
0, 0  acc:  8516 / 14622 =  58.241
0, 1  acc:  4367 /  6553 =  66.641
1, 0  acc: 132095 / 133052 =  99.281
1, 1  acc:  8237 /  8543 =  96.418
--------------------------------------
Average acc: 153215 / 162770 =  94.130
Robust  acc:  8516 / 14622 =  58.241
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6598 /  8535 =  77.305
0, 1  acc:  7154 /  8276 =  86.443
1, 0  acc:  2829 /  2874 =  98.434
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16753 / 19867 =  84.326
Robust  acc:  6598 /  8535 =  77.305
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 85.838
Robust Acc: 81.837 | Best Acc: 98.266
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  7993 /  9767 =  81.837
0, 1  acc:  6542 /  7535 =  86.821
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 17135 / 19962 =  85.838
Robust  acc:  7993 /  9767 =  81.837
------------------------------------
Accuracies by groups:
0, 0  acc:  7993 /  9767 =  81.837
0, 1  acc:  6542 /  7535 =  86.821
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 17135 / 19962 =  85.838
Robust  acc:  7993 /  9767 =  81.837
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7993 /  9767 =  81.837
0, 1  acc:  6542 /  7535 =  86.821
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   163 /   180 =  90.556
------------------------------------
Average acc: 17135 / 19962 =  85.838
Robust  acc:  7993 /  9767 =  81.837
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 94.181 | Val Loss: 0.008 | Val Acc: 49.650
Training:
Accuracies by groups:
0, 0  acc:  8285 / 14392 =  57.567
0, 1  acc:  4354 /  6505 =  66.933
1, 0  acc: 132395 / 133298 =  99.323
1, 1  acc:  8265 /  8575 =  96.385
--------------------------------------
Average acc: 153299 / 162770 =  94.181
Robust  acc:  8285 / 14392 =  57.567
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3262 /  8535 =  38.219
0, 1  acc:  3551 /  8276 =  42.907
1, 0  acc:  2869 /  2874 =  99.826
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  9864 / 19867 =  49.650
Robust  acc:  3262 /  8535 =  38.219
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 49.259
Robust Acc: 41.367 | Best Acc: 99.839
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  4062 /  9767 =  41.589
0, 1  acc:  3117 /  7535 =  41.367
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9833 / 19962 =  49.259
Robust  acc:  3117 /  7535 =  41.367
------------------------------------
Accuracies by groups:
0, 0  acc:  4062 /  9767 =  41.589
0, 1  acc:  3117 /  7535 =  41.367
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9833 / 19962 =  49.259
Robust  acc:  3117 /  7535 =  41.367
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4062 /  9767 =  41.589
0, 1  acc:  3117 /  7535 =  41.367
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9833 / 19962 =  49.259
Robust  acc:  3117 /  7535 =  41.367
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 94.186 | Val Loss: 0.005 | Val Acc: 72.180
Training:
Accuracies by groups:
0, 0  acc:  8323 / 14367 =  57.931
0, 1  acc:  4413 /  6630 =  66.561
1, 0  acc: 132367 / 133275 =  99.319
1, 1  acc:  8203 /  8498 =  96.529
--------------------------------------
Average acc: 153306 / 162770 =  94.186
Robust  acc:  8323 / 14367 =  57.931
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5343 /  8535 =  62.601
0, 1  acc:  5964 /  8276 =  72.064
1, 0  acc:  2859 /  2874 =  99.478
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 14340 / 19867 =  72.180
Robust  acc:  5343 /  8535 =  62.601
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 73.680
Robust Acc: 68.066 | Best Acc: 99.315
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  6648 /  9767 =  68.066
0, 1  acc:  5422 /  7535 =  71.958
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14708 / 19962 =  73.680
Robust  acc:  6648 /  9767 =  68.066
------------------------------------
Accuracies by groups:
0, 0  acc:  6648 /  9767 =  68.066
0, 1  acc:  5422 /  7535 =  71.958
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14708 / 19962 =  73.680
Robust  acc:  6648 /  9767 =  68.066
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6648 /  9767 =  68.066
0, 1  acc:  5422 /  7535 =  71.958
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14708 / 19962 =  73.680
Robust  acc:  6648 /  9767 =  68.066
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 94.163 | Val Loss: 0.006 | Val Acc: 73.318
Training:
Accuracies by groups:
0, 0  acc:  8303 / 14336 =  57.917
0, 1  acc:  4393 /  6561 =  66.956
1, 0  acc: 132353 / 133353 =  99.250
1, 1  acc:  8220 /  8520 =  96.479
--------------------------------------
Average acc: 153269 / 162770 =  94.163
Robust  acc:  8303 / 14336 =  57.917
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5511 /  8535 =  64.569
0, 1  acc:  6013 /  8276 =  72.656
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 14566 / 19867 =  73.318
Robust  acc:  5511 /  8535 =  64.569
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 75.103
Robust Acc: 69.991 | Best Acc: 99.516
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  6836 /  9767 =  69.991
0, 1  acc:  5512 /  7535 =  73.152
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14992 / 19962 =  75.103
Robust  acc:  6836 /  9767 =  69.991
------------------------------------
Accuracies by groups:
0, 0  acc:  6836 /  9767 =  69.991
0, 1  acc:  5512 /  7535 =  73.152
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14992 / 19962 =  75.103
Robust  acc:  6836 /  9767 =  69.991
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6836 /  9767 =  69.991
0, 1  acc:  5512 /  7535 =  73.152
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14992 / 19962 =  75.103
Robust  acc:  6836 /  9767 =  69.991
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 94.199 | Val Loss: 0.004 | Val Acc: 85.730
Training:
Accuracies by groups:
0, 0  acc:  8385 / 14509 =  57.792
0, 1  acc:  4288 /  6393 =  67.073
1, 0  acc: 132302 / 133242 =  99.295
1, 1  acc:  8353 /  8626 =  96.835
--------------------------------------
Average acc: 153328 / 162770 =  94.199
Robust  acc:  8385 / 14509 =  57.792
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6893 /  8535 =  80.762
0, 1  acc:  7179 /  8276 =  86.745
1, 0  acc:  2801 /  2874 =  97.460
1, 1  acc:   159 /   182 =  87.363
------------------------------------
Average acc: 17032 / 19867 =  85.730
Robust  acc:  6893 /  8535 =  80.762
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 87.376
Robust Acc: 85.144 | Best Acc: 96.976
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  8316 /  9767 =  85.144
0, 1  acc:  6560 /  7535 =  87.060
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17442 / 19962 =  87.376
Robust  acc:  8316 /  9767 =  85.144
------------------------------------
Accuracies by groups:
0, 0  acc:  8316 /  9767 =  85.144
0, 1  acc:  6560 /  7535 =  87.060
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17442 / 19962 =  87.376
Robust  acc:  8316 /  9767 =  85.144
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8316 /  9767 =  85.144
0, 1  acc:  6560 /  7535 =  87.060
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17442 / 19962 =  87.376
Robust  acc:  8316 /  9767 =  85.144
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 94.224 | Val Loss: 0.004 | Val Acc: 87.658
Training:
Accuracies by groups:
0, 0  acc:  8633 / 14669 =  58.852
0, 1  acc:  4425 /  6540 =  67.661
1, 0  acc: 131924 / 132872 =  99.287
1, 1  acc:  8387 /  8689 =  96.524
--------------------------------------
Average acc: 153369 / 162770 =  94.224
Robust  acc:  8633 / 14669 =  58.852
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7108 /  8535 =  83.281
0, 1  acc:  7396 /  8276 =  89.367
1, 0  acc:  2758 /  2874 =  95.964
1, 1  acc:   153 /   182 =  84.066
------------------------------------
Average acc: 17415 / 19867 =  87.658
Robust  acc:  7108 /  8535 =  83.281
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 89.174
Robust Acc: 81.667 | Best Acc: 94.395
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  8503 /  9767 =  87.058
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2341 /  2480 =  94.395
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17801 / 19962 =  89.174
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8503 /  9767 =  87.058
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2341 /  2480 =  94.395
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17801 / 19962 =  89.174
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8503 /  9767 =  87.058
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2341 /  2480 =  94.395
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 17801 / 19962 =  89.174
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 94.272 | Val Loss: 0.007 | Val Acc: 57.523
Training:
Accuracies by groups:
0, 0  acc:  8784 / 14787 =  59.404
0, 1  acc:  4379 /  6427 =  68.134
1, 0  acc: 132109 / 133084 =  99.267
1, 1  acc:  8174 /  8472 =  96.483
--------------------------------------
Average acc: 153446 / 162770 =  94.272
Robust  acc:  8784 / 14787 =  59.404
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3744 /  8535 =  43.866
0, 1  acc:  4635 /  8276 =  56.005
1, 0  acc:  2868 /  2874 =  99.791
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 11428 / 19867 =  57.523
Robust  acc:  3744 /  8535 =  43.866
------------------------------------
-------------------------------------------
Avg Test Loss: 0.007 | Avg Test Acc: 58.105
Robust Acc: 48.828 | Best Acc: 99.798
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  4769 /  9767 =  48.828
0, 1  acc:  4177 /  7535 =  55.435
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11599 / 19962 =  58.105
Robust  acc:  4769 /  9767 =  48.828
------------------------------------
Accuracies by groups:
0, 0  acc:  4769 /  9767 =  48.828
0, 1  acc:  4177 /  7535 =  55.435
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11599 / 19962 =  58.105
Robust  acc:  4769 /  9767 =  48.828
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4769 /  9767 =  48.828
0, 1  acc:  4177 /  7535 =  55.435
1, 0  acc:  2475 /  2480 =  99.798
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 11599 / 19962 =  58.105
Robust  acc:  4769 /  9767 =  48.828
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 94.231 | Val Loss: 0.006 | Val Acc: 65.928
Training:
Accuracies by groups:
0, 0  acc:  8379 / 14366 =  58.325
0, 1  acc:  4482 /  6596 =  67.950
1, 0  acc: 132254 / 133210 =  99.282
1, 1  acc:  8265 /  8598 =  96.127
--------------------------------------
Average acc: 153380 / 162770 =  94.231
Robust  acc:  8379 / 14366 =  58.325
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4805 /  8535 =  56.298
0, 1  acc:  5248 /  8276 =  63.412
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13098 / 19867 =  65.928
Robust  acc:  4805 /  8535 =  56.298
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 67.714
Robust Acc: 61.749 | Best Acc: 99.637
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  6031 /  9767 =  61.749
0, 1  acc:  4837 /  7535 =  64.194
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13517 / 19962 =  67.714
Robust  acc:  6031 /  9767 =  61.749
------------------------------------
Accuracies by groups:
0, 0  acc:  6031 /  9767 =  61.749
0, 1  acc:  4837 /  7535 =  64.194
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13517 / 19962 =  67.714
Robust  acc:  6031 /  9767 =  61.749
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6031 /  9767 =  61.749
0, 1  acc:  4837 /  7535 =  64.194
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13517 / 19962 =  67.714
Robust  acc:  6031 /  9767 =  61.749
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 94.212 | Val Loss: 0.005 | Val Acc: 80.541
Training:
Accuracies by groups:
0, 0  acc:  8430 / 14422 =  58.452
0, 1  acc:  4480 /  6677 =  67.096
1, 0  acc: 132190 / 133141 =  99.286
1, 1  acc:  8249 /  8530 =  96.706
--------------------------------------
Average acc: 153349 / 162770 =  94.212
Robust  acc:  8430 / 14422 =  58.452
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6035 /  8535 =  70.709
0, 1  acc:  6942 /  8276 =  83.881
1, 0  acc:  2852 /  2874 =  99.235
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16001 / 19867 =  80.541
Robust  acc:  6035 /  8535 =  70.709
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 82.176
Robust Acc: 75.888 | Best Acc: 99.153
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  7412 /  9767 =  75.888
0, 1  acc:  6361 /  7535 =  84.419
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16404 / 19962 =  82.176
Robust  acc:  7412 /  9767 =  75.888
------------------------------------
Accuracies by groups:
0, 0  acc:  7412 /  9767 =  75.888
0, 1  acc:  6361 /  7535 =  84.419
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16404 / 19962 =  82.176
Robust  acc:  7412 /  9767 =  75.888
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7412 /  9767 =  75.888
0, 1  acc:  6361 /  7535 =  84.419
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16404 / 19962 =  82.176
Robust  acc:  7412 /  9767 =  75.888
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 94.385 | Val Loss: 0.005 | Val Acc: 72.497
Training:
Accuracies by groups:
0, 0  acc:  8637 / 14529 =  59.447
0, 1  acc:  4513 /  6517 =  69.250
1, 0  acc: 132181 / 133154 =  99.269
1, 1  acc:  8300 /  8570 =  96.849
--------------------------------------
Average acc: 153631 / 162770 =  94.385
Robust  acc:  8637 / 14529 =  59.447
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5531 /  8535 =  64.804
0, 1  acc:  5837 /  8276 =  70.529
1, 0  acc:  2855 /  2874 =  99.339
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14403 / 19867 =  72.497
Robust  acc:  5531 /  8535 =  64.804
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 74.051
Robust Acc: 70.073 | Best Acc: 99.194
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  6844 /  9767 =  70.073
0, 1  acc:  5302 /  7535 =  70.365
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14782 / 19962 =  74.051
Robust  acc:  6844 /  9767 =  70.073
------------------------------------
Accuracies by groups:
0, 0  acc:  6844 /  9767 =  70.073
0, 1  acc:  5302 /  7535 =  70.365
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14782 / 19962 =  74.051
Robust  acc:  6844 /  9767 =  70.073
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6844 /  9767 =  70.073
0, 1  acc:  5302 /  7535 =  70.365
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14782 / 19962 =  74.051
Robust  acc:  6844 /  9767 =  70.073
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 94.300 | Val Loss: 0.005 | Val Acc: 72.824
Training:
Accuracies by groups:
0, 0  acc:  8622 / 14625 =  58.954
0, 1  acc:  4407 /  6422 =  68.623
1, 0  acc: 132184 / 133149 =  99.275
1, 1  acc:  8279 /  8574 =  96.559
--------------------------------------
Average acc: 153492 / 162770 =  94.300
Robust  acc:  8622 / 14625 =  58.954
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5404 /  8535 =  63.316
0, 1  acc:  6024 /  8276 =  72.789
1, 0  acc:  2861 /  2874 =  99.548
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 14468 / 19867 =  72.824
Robust  acc:  5404 /  8535 =  63.316
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 74.812
Robust Acc: 68.783 | Best Acc: 99.355
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  6718 /  9767 =  68.783
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14934 / 19962 =  74.812
Robust  acc:  6718 /  9767 =  68.783
------------------------------------
Accuracies by groups:
0, 0  acc:  6718 /  9767 =  68.783
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14934 / 19962 =  74.812
Robust  acc:  6718 /  9767 =  68.783
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6718 /  9767 =  68.783
0, 1  acc:  5574 /  7535 =  73.975
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 14934 / 19962 =  74.812
Robust  acc:  6718 /  9767 =  68.783
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 94.320 | Val Loss: 0.005 | Val Acc: 71.898
Training:
Accuracies by groups:
0, 0  acc:  8582 / 14514 =  59.129
0, 1  acc:  4472 /  6552 =  68.254
1, 0  acc: 132274 / 133204 =  99.302
1, 1  acc:  8196 /  8500 =  96.424
--------------------------------------
Average acc: 153524 / 162770 =  94.320
Robust  acc:  8582 / 14514 =  59.129
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5502 /  8535 =  64.464
0, 1  acc:  5744 /  8276 =  69.406
1, 0  acc:  2857 /  2874 =  99.408
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 14284 / 19867 =  71.898
Robust  acc:  5502 /  8535 =  64.464
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 73.575
Robust Acc: 69.305 | Best Acc: 99.476
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  6769 /  9767 =  69.305
0, 1  acc:  5275 /  7535 =  70.007
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14687 / 19962 =  73.575
Robust  acc:  6769 /  9767 =  69.305
------------------------------------
Accuracies by groups:
0, 0  acc:  6769 /  9767 =  69.305
0, 1  acc:  5275 /  7535 =  70.007
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14687 / 19962 =  73.575
Robust  acc:  6769 /  9767 =  69.305
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6769 /  9767 =  69.305
0, 1  acc:  5275 /  7535 =  70.007
1, 0  acc:  2467 /  2480 =  99.476
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14687 / 19962 =  73.575
Robust  acc:  6769 /  9767 =  69.305
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 94.301 | Val Loss: 0.005 | Val Acc: 78.522
Training:
Accuracies by groups:
0, 0  acc:  8529 / 14484 =  58.886
0, 1  acc:  4422 /  6472 =  68.325
1, 0  acc: 132213 / 133201 =  99.258
1, 1  acc:  8330 /  8613 =  96.714
--------------------------------------
Average acc: 153494 / 162770 =  94.301
Robust  acc:  8529 / 14484 =  58.886
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6092 /  8535 =  71.377
0, 1  acc:  6479 /  8276 =  78.287
1, 0  acc:  2855 /  2874 =  99.339
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 15600 / 19867 =  78.522
Robust  acc:  6092 /  8535 =  71.377
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 80.318
Robust Acc: 77.219 | Best Acc: 98.831
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  7542 /  9767 =  77.219
0, 1  acc:  5868 /  7535 =  77.877
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16033 / 19962 =  80.318
Robust  acc:  7542 /  9767 =  77.219
------------------------------------
Accuracies by groups:
0, 0  acc:  7542 /  9767 =  77.219
0, 1  acc:  5868 /  7535 =  77.877
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16033 / 19962 =  80.318
Robust  acc:  7542 /  9767 =  77.219
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7542 /  9767 =  77.219
0, 1  acc:  5868 /  7535 =  77.877
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16033 / 19962 =  80.318
Robust  acc:  7542 /  9767 =  77.219
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed18.pt
3 / 19962 =  65.890
Robust  acc:  5754 /  9767 =  58.913
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed18.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed18.pt
