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/seed29/stage_one_erm_model_b_epoch0_seed29.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: 29
Replicate: 0
No cuda: False
Resume: False
New slice: False
Num workers: 12
Evaluate: False
Data cmap: hsv
Test cmap: 
P correlation: 0.9
P corr by class: None
Train classes: ['blond', 'nonblond']
Train class ratios: None
Test shift: random
Flipped: False
Q: 0.7
Pretrained bmodel: True
Cosine: False
Exp: ours
Tau: 1.1
Gamma: None
Remove label noise: False
Model for remove samples: 
Remove ratio: 0.03
Supervised contrast: True
Prioritize spurious pos: False
Contrastive type: cnc
Compute auroc: False
Model type: resnet50_pt_cnc
Criterion: cross_entropy
Pretrained: False
Max grad norm: 1.0
Adam epsilon: 1e-08
Warmup steps: 0
Max grad norm s: 1.0
Adam epsilon s: 1e-08
Warmup steps s: 0
Grad max grad norm: 1.0
Grad adam epsilon: 1e-08
Grad warmup steps: 0
Device: cuda
Img file type: .png
Display image: False
Image path: ./images/celebA/celebA/config/contrastive_umaps
Log interval: 1
Log path: ./logs/celebA/config
Results path: ./results/celebA/config
Model path: ./model/celebA/config
Loss factor: 1
Supersample labels: False
Subsample labels: False
Weigh slice samples by loss: True
Val split: 0.2
Spurious train split: 0.2
Subsample groups: False
Train method: sc
Max robust acc: -1
Max robust epoch: -1
Max robust group acc: (None, None)
Root dir: ./datasets/data/CelebA/
Target name: Blond_Hair
Confounder names: ['Male']
Image mean: 0.449
Image std: 0.226
Augment data: False
Task: celebA
Num classes: 2
Experiment configs: config
Experiment name: cnc-celebA-sw=re-na=32-np=32-nn=32-nne=0-tsr=1-t=0.05-bf=None-cw=0.5-sud=0-me=50-bst=128-o=sgd-lr=0.0001-mo=0.9-wd=0.1-wdc=0.1-spur-me=1-bst=32-lr=0.001-mo=0.9-wd=0.0005-sts=0.2-s=29-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/seed29/stage_one_erm_model_b_epoch0_seed29.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8268, 0.0241],
        [0.1359, 0.0132]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 90.570 | Val Loss: 0.003 | Val Acc: 82.539
Training:
Accuracies by groups:
0, 0  acc:  7564 / 16062 =  47.093
0, 1  acc:  4573 /  8571 =  53.354
1, 0  acc: 127669 / 129982 =  98.221
1, 1  acc:  7614 /  8155 =  93.366
--------------------------------------
Average acc: 147420 / 162770 =  90.570
Robust  acc:  7564 / 16062 =  47.093
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6418 /  8535 =  75.196
0, 1  acc:  6977 /  8276 =  84.304
1, 0  acc:  2838 /  2874 =  98.747
1, 1  acc:   165 /   182 =  90.659
------------------------------------
Average acc: 16398 / 19867 =  82.539
Robust  acc:  6418 /  8535 =  75.196
------------------------------------
New max robust acc: 75.19625073227884
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 84.235
Robust Acc: 80.158 | Best Acc: 98.347
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  7829 /  9767 =  80.158
0, 1  acc:  6386 /  7535 =  84.751
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16815 / 19962 =  84.235
Robust  acc:  7829 /  9767 =  80.158
------------------------------------
Accuracies by groups:
0, 0  acc:  7829 /  9767 =  80.158
0, 1  acc:  6386 /  7535 =  84.751
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16815 / 19962 =  84.235
Robust  acc:  7829 /  9767 =  80.158
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7829 /  9767 =  80.158
0, 1  acc:  6386 /  7535 =  84.751
1, 0  acc:  2439 /  2480 =  98.347
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 16815 / 19962 =  84.235
Robust  acc:  7829 /  9767 =  80.158
------------------------------------
Epoch:   2 | Train Loss: 0.001 | Train Acc: 94.549 | Val Loss: 0.003 | Val Acc: 86.274
Training:
Accuracies by groups:
0, 0  acc: 10780 / 15878 =  67.893
0, 1  acc:  6822 /  8585 =  79.464
1, 0  acc: 128567 / 129936 =  98.946
1, 1  acc:  7729 /  8371 =  92.331
--------------------------------------
Average acc: 153898 / 162770 =  94.549
Robust  acc: 10780 / 15878 =  67.893
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6665 /  8535 =  78.090
0, 1  acc:  7468 /  8276 =  90.237
1, 0  acc:  2840 /  2874 =  98.817
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17140 / 19867 =  86.274
Robust  acc:  6665 /  8535 =  78.090
------------------------------------
New max robust acc: 78.09021675454014
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 87.672
Robust Acc: 82.820 | Best Acc: 98.629
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  8089 /  9767 =  82.820
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17501 / 19962 =  87.672
Robust  acc:  8089 /  9767 =  82.820
------------------------------------
Accuracies by groups:
0, 0  acc:  8089 /  9767 =  82.820
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17501 / 19962 =  87.672
Robust  acc:  8089 /  9767 =  82.820
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8089 /  9767 =  82.820
0, 1  acc:  6810 /  7535 =  90.378
1, 0  acc:  2446 /  2480 =  98.629
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17501 / 19962 =  87.672
Robust  acc:  8089 /  9767 =  82.820
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 95.333 | Val Loss: 0.002 | Val Acc: 87.905
Training:
Accuracies by groups:
0, 0  acc: 11590 / 16095 =  72.010
0, 1  acc:  7236 /  8509 =  85.039
1, 0  acc: 128580 / 129823 =  99.043
1, 1  acc:  7767 /  8343 =  93.096
--------------------------------------
Average acc: 155173 / 162770 =  95.333
Robust  acc: 11590 / 16095 =  72.010
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6833 /  8535 =  80.059
0, 1  acc:  7627 /  8276 =  92.158
1, 0  acc:  2835 /  2874 =  98.643
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17464 / 19867 =  87.905
Robust  acc:  6833 /  8535 =  80.059
------------------------------------
New max robust acc: 80.05858230814295
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 88.914
Robust Acc: 84.355 | Best Acc: 98.024
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8239 /  9767 =  84.355
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17749 / 19962 =  88.914
Robust  acc:  8239 /  9767 =  84.355
------------------------------------
Accuracies by groups:
0, 0  acc:  8239 /  9767 =  84.355
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17749 / 19962 =  88.914
Robust  acc:  8239 /  9767 =  84.355
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8239 /  9767 =  84.355
0, 1  acc:  6923 /  7535 =  91.878
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17749 / 19962 =  88.914
Robust  acc:  8239 /  9767 =  84.355
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 95.785 | Val Loss: 0.002 | Val Acc: 89.324
Training:
Accuracies by groups:
0, 0  acc: 11869 / 16204 =  73.247
0, 1  acc:  7425 /  8434 =  88.037
1, 0  acc: 128700 / 129770 =  99.175
1, 1  acc:  7916 /  8362 =  94.666
--------------------------------------
Average acc: 155910 / 162770 =  95.785
Robust  acc: 11869 / 16204 =  73.247
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7018 /  8535 =  82.226
0, 1  acc:  7735 /  8276 =  93.463
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17746 / 19867 =  89.324
Robust  acc:  7018 /  8535 =  82.226
------------------------------------
New max robust acc: 82.22612770943175
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.966
Robust Acc: 85.666 | Best Acc: 97.863
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8367 /  9767 =  85.666
0, 1  acc:  7010 /  7535 =  93.033
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17959 / 19962 =  89.966
Robust  acc:  8367 /  9767 =  85.666
------------------------------------
Accuracies by groups:
0, 0  acc:  8367 /  9767 =  85.666
0, 1  acc:  7010 /  7535 =  93.033
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17959 / 19962 =  89.966
Robust  acc:  8367 /  9767 =  85.666
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8367 /  9767 =  85.666
0, 1  acc:  7010 /  7535 =  93.033
1, 0  acc:  2427 /  2480 =  97.863
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17959 / 19962 =  89.966
Robust  acc:  8367 /  9767 =  85.666
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 96.421 | Val Loss: 0.002 | Val Acc: 89.394
Training:
Accuracies by groups:
0, 0  acc: 11995 / 15855 =  75.654
0, 1  acc:  7536 /  8397 =  89.746
1, 0  acc: 129278 / 130070 =  99.391
1, 1  acc:  8136 /  8448 =  96.307
--------------------------------------
Average acc: 156945 / 162770 =  96.421
Robust  acc: 11995 / 15855 =  75.654
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6984 /  8535 =  81.828
0, 1  acc:  7781 /  8276 =  94.019
1, 0  acc:  2828 /  2874 =  98.399
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17760 / 19867 =  89.394
Robust  acc:  6984 /  8535 =  81.828
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.881
Robust Acc: 84.444 | Best Acc: 98.024
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8317 /  9767 =  85.154
0, 1  acc:  7042 /  7535 =  93.457
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17942 / 19962 =  89.881
Robust  acc:   152 /   180 =  84.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8317 /  9767 =  85.154
0, 1  acc:  7042 /  7535 =  93.457
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17942 / 19962 =  89.881
Robust  acc:   152 /   180 =  84.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8317 /  9767 =  85.154
0, 1  acc:  7042 /  7535 =  93.457
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17942 / 19962 =  89.881
Robust  acc:   152 /   180 =  84.444
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.889 | Val Loss: 0.002 | Val Acc: 91.458
Training:
Accuracies by groups:
0, 0  acc: 12519 / 16044 =  78.029
0, 1  acc:  7834 /  8625 =  90.829
1, 0  acc: 129401 / 129975 =  99.558
1, 1  acc:  7952 /  8126 =  97.859
--------------------------------------
Average acc: 157706 / 162770 =  96.889
Robust  acc: 12519 / 16044 =  78.029
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7315 /  8535 =  85.706
0, 1  acc:  7902 /  8276 =  95.481
1, 0  acc:  2793 /  2874 =  97.182
1, 1  acc:   160 /   182 =  87.912
------------------------------------
Average acc: 18170 / 19867 =  91.458
Robust  acc:  7315 /  8535 =  85.706
------------------------------------
New max robust acc: 85.70591681312244
debias model - Saving best checkpoint at epoch 5
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.829
Robust Acc: 82.778 | Best Acc: 96.976
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7172 /  7535 =  95.182
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18331 / 19962 =  91.829
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7172 /  7535 =  95.182
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18331 / 19962 =  91.829
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7172 /  7535 =  95.182
1, 0  acc:  2405 /  2480 =  96.976
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18331 / 19962 =  91.829
Robust  acc:   149 /   180 =  82.778
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.445 | Val Loss: 0.002 | Val Acc: 91.227
Training:
Accuracies by groups:
0, 0  acc: 12840 / 15995 =  80.275
0, 1  acc:  7815 /  8432 =  92.683
1, 0  acc: 129703 / 130001 =  99.771
1, 1  acc:  8254 /  8342 =  98.945
--------------------------------------
Average acc: 158612 / 162770 =  97.445
Robust  acc: 12840 / 15995 =  80.275
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7243 /  8535 =  84.862
0, 1  acc:  7927 /  8276 =  95.783
1, 0  acc:  2801 /  2874 =  97.460
1, 1  acc:   153 /   182 =  84.066
------------------------------------
Average acc: 18124 / 19867 =  91.227
Robust  acc:   153 /   182 =  84.066
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.584
Robust Acc: 78.889 | Best Acc: 97.177
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8550 /  9767 =  87.540
0, 1  acc:  7180 /  7535 =  95.289
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18282 / 19962 =  91.584
Robust  acc:   142 /   180 =  78.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8550 /  9767 =  87.540
0, 1  acc:  7180 /  7535 =  95.289
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18282 / 19962 =  91.584
Robust  acc:   142 /   180 =  78.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8550 /  9767 =  87.540
0, 1  acc:  7180 /  7535 =  95.289
1, 0  acc:  2410 /  2480 =  97.177
1, 1  acc:   142 /   180 =  78.889
------------------------------------
Average acc: 18282 / 19962 =  91.584
Robust  acc:   142 /   180 =  78.889
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 97.957 | Val Loss: 0.002 | Val Acc: 92.621
Training:
Accuracies by groups:
0, 0  acc: 13216 / 15862 =  83.319
0, 1  acc:  8017 /  8534 =  93.942
1, 0  acc: 129981 / 130107 =  99.903
1, 1  acc:  8230 /  8267 =  99.552
--------------------------------------
Average acc: 159444 / 162770 =  97.957
Robust  acc: 13216 / 15862 =  83.319
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7456 /  8535 =  87.358
0, 1  acc:  8026 /  8276 =  96.979
1, 0  acc:  2769 /  2874 =  96.347
1, 1  acc:   150 /   182 =  82.418
------------------------------------
Average acc: 18401 / 19867 =  92.621
Robust  acc:   150 /   182 =  82.418
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 92.891
Robust Acc: 73.333 | Best Acc: 96.603
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  8743 /  9767 =  89.516
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2389 /  2480 =  96.331
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18543 / 19962 =  92.891
Robust  acc:   132 /   180 =  73.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8743 /  9767 =  89.516
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2389 /  2480 =  96.331
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18543 / 19962 =  92.891
Robust  acc:   132 /   180 =  73.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8743 /  9767 =  89.516
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2389 /  2480 =  96.331
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18543 / 19962 =  92.891
Robust  acc:   132 /   180 =  73.333
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.285 | Val Loss: 0.001 | Val Acc: 93.250
Training:
Accuracies by groups:
0, 0  acc: 13680 / 15943 =  85.806
0, 1  acc:  8020 /  8421 =  95.238
1, 0  acc: 130003 / 130099 =  99.926
1, 1  acc:  8276 /  8307 =  99.627
--------------------------------------
Average acc: 159979 / 162770 =  98.285
Robust  acc: 13680 / 15943 =  85.806
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7605 /  8535 =  89.104
0, 1  acc:  8058 /  8276 =  97.366
1, 0  acc:  2725 /  2874 =  94.816
1, 1  acc:   138 /   182 =  75.824
------------------------------------
Average acc: 18526 / 19867 =  93.250
Robust  acc:   138 /   182 =  75.824
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.473
Robust Acc: 69.444 | Best Acc: 97.147
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  8875 /  9767 =  90.867
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2339 /  2480 =  94.315
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18659 / 19962 =  93.473
Robust  acc:   125 /   180 =  69.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8875 /  9767 =  90.867
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2339 /  2480 =  94.315
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18659 / 19962 =  93.473
Robust  acc:   125 /   180 =  69.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8875 /  9767 =  90.867
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2339 /  2480 =  94.315
1, 1  acc:   125 /   180 =  69.444
------------------------------------
Average acc: 18659 / 19962 =  93.473
Robust  acc:   125 /   180 =  69.444
------------------------------------
Epoch:  10 | Train Loss: 0.001 | Train Acc: 98.551 | Val Loss: 0.001 | Val Acc: 93.225
Training:
Accuracies by groups:
0, 0  acc: 14092 / 15973 =  88.224
0, 1  acc:  8237 /  8583 =  95.969
1, 0  acc: 129778 / 129875 =  99.925
1, 1  acc:  8305 /  8339 =  99.592
--------------------------------------
Average acc: 160412 / 162770 =  98.551
Robust  acc: 14092 / 15973 =  88.224
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7592 /  8535 =  88.951
0, 1  acc:  8093 /  8276 =  97.789
1, 0  acc:  2708 /  2874 =  94.224
1, 1  acc:   128 /   182 =  70.330
------------------------------------
Average acc: 18521 / 19867 =  93.225
Robust  acc:   128 /   182 =  70.330
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.593
Robust Acc: 62.778 | Best Acc: 97.465
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  8902 /  9767 =  91.144
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   113 /   180 =  62.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8902 /  9767 =  91.144
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   113 /   180 =  62.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8902 /  9767 =  91.144
0, 1  acc:  7344 /  7535 =  97.465
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   113 /   180 =  62.778
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.534 | Val Loss: 0.001 | Val Acc: 93.643
Training:
Accuracies by groups:
0, 0  acc: 13992 / 15790 =  88.613
0, 1  acc:  8072 /  8408 =  96.004
1, 0  acc: 130127 / 130313 =  99.857
1, 1  acc:  8192 /  8259 =  99.189
--------------------------------------
Average acc: 160383 / 162770 =  98.534
Robust  acc: 13992 / 15790 =  88.613
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7692 /  8535 =  90.123
0, 1  acc:  8111 /  8276 =  98.006
1, 0  acc:  2677 /  2874 =  93.145
1, 1  acc:   124 /   182 =  68.132
------------------------------------
Average acc: 18604 / 19867 =  93.643
Robust  acc:   124 /   182 =  68.132
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.903
Robust Acc: 62.222 | Best Acc: 97.452
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  9010 /  9767 =  92.249
0, 1  acc:  7343 /  7535 =  97.452
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18745 / 19962 =  93.903
Robust  acc:   112 /   180 =  62.222
------------------------------------
Accuracies by groups:
0, 0  acc:  9010 /  9767 =  92.249
0, 1  acc:  7343 /  7535 =  97.452
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18745 / 19962 =  93.903
Robust  acc:   112 /   180 =  62.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9010 /  9767 =  92.249
0, 1  acc:  7343 /  7535 =  97.452
1, 0  acc:  2280 /  2480 =  91.935
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18745 / 19962 =  93.903
Robust  acc:   112 /   180 =  62.222
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.278 | Val Loss: 0.001 | Val Acc: 93.522
Training:
Accuracies by groups:
0, 0  acc: 13833 / 15870 =  87.164
0, 1  acc:  8184 /  8525 =  96.000
1, 0  acc: 129717 / 130051 =  99.743
1, 1  acc:  8233 /  8324 =  98.907
--------------------------------------
Average acc: 159967 / 162770 =  98.278
Robust  acc: 13833 / 15870 =  87.164
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7649 /  8535 =  89.619
0, 1  acc:  8095 /  8276 =  97.813
1, 0  acc:  2709 /  2874 =  94.259
1, 1  acc:   127 /   182 =  69.780
------------------------------------
Average acc: 18580 / 19867 =  93.522
Robust  acc:   127 /   182 =  69.780
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.004
Robust Acc: 61.667 | Best Acc: 97.611
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18765 / 19962 =  94.004
Robust  acc:   111 /   180 =  61.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18765 / 19962 =  94.004
Robust  acc:   111 /   180 =  61.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7355 /  7535 =  97.611
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18765 / 19962 =  94.004
Robust  acc:   111 /   180 =  61.667
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 97.865 | Val Loss: 0.001 | Val Acc: 93.925
Training:
Accuracies by groups:
0, 0  acc: 13787 / 16162 =  85.305
0, 1  acc:  8034 /  8478 =  94.763
1, 0  acc: 129371 / 129866 =  99.619
1, 1  acc:  8103 /  8264 =  98.052
--------------------------------------
Average acc: 159295 / 162770 =  97.865
Robust  acc: 13787 / 16162 =  85.305
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7783 /  8535 =  91.189
0, 1  acc:  8057 /  8276 =  97.354
1, 0  acc:  2677 /  2874 =  93.145
1, 1  acc:   143 /   182 =  78.571
------------------------------------
Average acc: 18660 / 19867 =  93.925
Robust  acc:   143 /   182 =  78.571
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.969
Robust Acc: 68.889 | Best Acc: 96.948
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  9036 /  9767 =  92.516
0, 1  acc:  7305 /  7535 =  96.948
1, 0  acc:  2293 /  2480 =  92.460
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18758 / 19962 =  93.969
Robust  acc:   124 /   180 =  68.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9036 /  9767 =  92.516
0, 1  acc:  7305 /  7535 =  96.948
1, 0  acc:  2293 /  2480 =  92.460
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18758 / 19962 =  93.969
Robust  acc:   124 /   180 =  68.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9036 /  9767 =  92.516
0, 1  acc:  7305 /  7535 =  96.948
1, 0  acc:  2293 /  2480 =  92.460
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18758 / 19962 =  93.969
Robust  acc:   124 /   180 =  68.889
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.394 | Val Loss: 0.002 | Val Acc: 93.889
Training:
Accuracies by groups:
0, 0  acc: 13179 / 15946 =  82.648
0, 1  acc:  8001 /  8580 =  93.252
1, 0  acc: 129291 / 129953 =  99.491
1, 1  acc:  8058 /  8291 =  97.190
--------------------------------------
Average acc: 158529 / 162770 =  97.394
Robust  acc: 13179 / 15946 =  82.648
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7727 /  8535 =  90.533
0, 1  acc:  8098 /  8276 =  97.849
1, 0  acc:  2696 /  2874 =  93.807
1, 1  acc:   132 /   182 =  72.527
------------------------------------
Average acc: 18653 / 19867 =  93.889
Robust  acc:   132 /   182 =  72.527
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.923
Robust Acc: 61.111 | Best Acc: 97.412
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2312 /  2480 =  93.226
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18749 / 19962 =  93.923
Robust  acc:   110 /   180 =  61.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2312 /  2480 =  93.226
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18749 / 19962 =  93.923
Robust  acc:   110 /   180 =  61.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8987 /  9767 =  92.014
0, 1  acc:  7340 /  7535 =  97.412
1, 0  acc:  2312 /  2480 =  93.226
1, 1  acc:   110 /   180 =  61.111
------------------------------------
Average acc: 18749 / 19962 =  93.923
Robust  acc:   110 /   180 =  61.111
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.975 | Val Loss: 0.003 | Val Acc: 84.124
Training:
Accuracies by groups:
0, 0  acc: 12929 / 16109 =  80.259
0, 1  acc:  7860 /  8568 =  91.737
1, 0  acc: 129037 / 129800 =  99.412
1, 1  acc:  8020 /  8293 =  96.708
--------------------------------------
Average acc: 157846 / 162770 =  96.975
Robust  acc: 12929 / 16109 =  80.259
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6216 /  8535 =  72.830
0, 1  acc:  7472 /  8276 =  90.285
1, 0  acc:  2853 /  2874 =  99.269
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16713 / 19867 =  84.124
Robust  acc:  6216 /  8535 =  72.830
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 84.796
Robust Acc: 77.291 | Best Acc: 99.153
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  7549 /  9767 =  77.291
0, 1  acc:  6763 /  7535 =  89.754
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 16927 / 19962 =  84.796
Robust  acc:  7549 /  9767 =  77.291
------------------------------------
Accuracies by groups:
0, 0  acc:  7549 /  9767 =  77.291
0, 1  acc:  6763 /  7535 =  89.754
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 16927 / 19962 =  84.796
Robust  acc:  7549 /  9767 =  77.291
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7549 /  9767 =  77.291
0, 1  acc:  6763 /  7535 =  89.754
1, 0  acc:  2459 /  2480 =  99.153
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 16927 / 19962 =  84.796
Robust  acc:  7549 /  9767 =  77.291
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 96.503 | Val Loss: 0.002 | Val Acc: 90.406
Training:
Accuracies by groups:
0, 0  acc: 12394 / 15916 =  77.871
0, 1  acc:  7610 /  8432 =  90.251
1, 0  acc: 129013 / 129976 =  99.259
1, 1  acc:  8061 /  8446 =  95.442
--------------------------------------
Average acc: 157078 / 162770 =  96.503
Robust  acc: 12394 / 15916 =  77.871
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7134 /  8535 =  83.585
0, 1  acc:  7853 /  8276 =  94.889
1, 0  acc:  2810 /  2874 =  97.773
1, 1  acc:   164 /   182 =  90.110
------------------------------------
Average acc: 17961 / 19867 =  90.406
Robust  acc:  7134 /  8535 =  83.585
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.298
Robust Acc: 82.778 | Best Acc: 97.137
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  8514 /  9767 =  87.171
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2409 /  2480 =  97.137
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18225 / 19962 =  91.298
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8514 /  9767 =  87.171
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2409 /  2480 =  97.137
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18225 / 19962 =  91.298
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8514 /  9767 =  87.171
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2409 /  2480 =  97.137
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18225 / 19962 =  91.298
Robust  acc:   149 /   180 =  82.778
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 96.059 | Val Loss: 0.002 | Val Acc: 90.683
Training:
Accuracies by groups:
0, 0  acc: 11941 / 15843 =  75.371
0, 1  acc:  7480 /  8413 =  88.910
1, 0  acc: 129258 / 130401 =  99.123
1, 1  acc:  7676 /  8113 =  94.614
--------------------------------------
Average acc: 156355 / 162770 =  96.059
Robust  acc: 11941 / 15843 =  75.371
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7262 /  8535 =  85.085
0, 1  acc:  7790 /  8276 =  94.128
1, 0  acc:  2800 /  2874 =  97.425
1, 1  acc:   164 /   182 =  90.110
------------------------------------
Average acc: 18016 / 19867 =  90.683
Robust  acc:  7262 /  8535 =  85.085
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.404
Robust Acc: 82.222 | Best Acc: 96.492
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  8616 /  9767 =  88.215
0, 1  acc:  7089 /  7535 =  94.081
1, 0  acc:  2393 /  2480 =  96.492
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18246 / 19962 =  91.404
Robust  acc:   148 /   180 =  82.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8616 /  9767 =  88.215
0, 1  acc:  7089 /  7535 =  94.081
1, 0  acc:  2393 /  2480 =  96.492
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18246 / 19962 =  91.404
Robust  acc:   148 /   180 =  82.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8616 /  9767 =  88.215
0, 1  acc:  7089 /  7535 =  94.081
1, 0  acc:  2393 /  2480 =  96.492
1, 1  acc:   148 /   180 =  82.222
------------------------------------
Average acc: 18246 / 19962 =  91.404
Robust  acc:   148 /   180 =  82.222
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 95.628 | Val Loss: 0.002 | Val Acc: 92.359
Training:
Accuracies by groups:
0, 0  acc: 11816 / 15898 =  74.324
0, 1  acc:  7370 /  8501 =  86.696
1, 0  acc: 128652 / 130034 =  98.937
1, 1  acc:  7815 /  8337 =  93.739
--------------------------------------
Average acc: 155653 / 162770 =  95.628
Robust  acc: 11816 / 15898 =  74.324
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7541 /  8535 =  88.354
0, 1  acc:  7917 /  8276 =  95.662
1, 0  acc:  2744 /  2874 =  95.477
1, 1  acc:   147 /   182 =  80.769
------------------------------------
Average acc: 18349 / 19867 =  92.359
Robust  acc:   147 /   182 =  80.769
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.032
Robust Acc: 76.667 | Best Acc: 95.674
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  8879 /  9767 =  90.908
0, 1  acc:  7209 /  7535 =  95.674
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   138 /   180 =  76.667
------------------------------------
Average acc: 18571 / 19962 =  93.032
Robust  acc:   138 /   180 =  76.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8879 /  9767 =  90.908
0, 1  acc:  7209 /  7535 =  95.674
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   138 /   180 =  76.667
------------------------------------
Average acc: 18571 / 19962 =  93.032
Robust  acc:   138 /   180 =  76.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8879 /  9767 =  90.908
0, 1  acc:  7209 /  7535 =  95.674
1, 0  acc:  2345 /  2480 =  94.556
1, 1  acc:   138 /   180 =  76.667
------------------------------------
Average acc: 18571 / 19962 =  93.032
Robust  acc:   138 /   180 =  76.667
------------------------------------
Epoch:  19 | Train Loss: 0.001 | Train Acc: 95.300 | Val Loss: 0.005 | Val Acc: 75.069
Training:
Accuracies by groups:
0, 0  acc: 11503 / 15875 =  72.460
0, 1  acc:  7228 /  8472 =  85.316
1, 0  acc: 128713 / 130190 =  98.866
1, 1  acc:  7675 /  8233 =  93.222
--------------------------------------
Average acc: 155119 / 162770 =  95.300
Robust  acc: 11503 / 15875 =  72.460
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5498 /  8535 =  64.417
0, 1  acc:  6374 /  8276 =  77.018
1, 0  acc:  2862 /  2874 =  99.582
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14914 / 19867 =  75.069
Robust  acc:  5498 /  8535 =  64.417
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.162
Robust Acc: 70.646 | Best Acc: 99.597
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  6900 /  9767 =  70.646
0, 1  acc:  5856 /  7535 =  77.717
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15403 / 19962 =  77.162
Robust  acc:  6900 /  9767 =  70.646
------------------------------------
Accuracies by groups:
0, 0  acc:  6900 /  9767 =  70.646
0, 1  acc:  5856 /  7535 =  77.717
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15403 / 19962 =  77.162
Robust  acc:  6900 /  9767 =  70.646
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6900 /  9767 =  70.646
0, 1  acc:  5856 /  7535 =  77.717
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 15403 / 19962 =  77.162
Robust  acc:  6900 /  9767 =  70.646
------------------------------------
Epoch:  20 | Train Loss: 0.001 | Train Acc: 95.006 | Val Loss: 0.003 | Val Acc: 86.621
Training:
Accuracies by groups:
0, 0  acc: 11389 / 16036 =  71.021
0, 1  acc:  7077 /  8448 =  83.771
1, 0  acc: 128369 / 129899 =  98.822
1, 1  acc:  7807 /  8387 =  93.085
--------------------------------------
Average acc: 154642 / 162770 =  95.006
Robust  acc: 11389 / 16036 =  71.021
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6852 /  8535 =  80.281
0, 1  acc:  7365 /  8276 =  88.992
1, 0  acc:  2822 /  2874 =  98.191
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17209 / 19867 =  86.621
Robust  acc:  6852 /  8535 =  80.281
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.947
Robust Acc: 83.936 | Best Acc: 97.823
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  8198 /  9767 =  83.936
0, 1  acc:  6770 /  7535 =  89.847
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17556 / 19962 =  87.947
Robust  acc:  8198 /  9767 =  83.936
------------------------------------
Accuracies by groups:
0, 0  acc:  8198 /  9767 =  83.936
0, 1  acc:  6770 /  7535 =  89.847
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17556 / 19962 =  87.947
Robust  acc:  8198 /  9767 =  83.936
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8198 /  9767 =  83.936
0, 1  acc:  6770 /  7535 =  89.847
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   162 /   180 =  90.000
------------------------------------
Average acc: 17556 / 19962 =  87.947
Robust  acc:  8198 /  9767 =  83.936
------------------------------------
Epoch:  21 | Train Loss: 0.002 | Train Acc: 94.662 | Val Loss: 0.004 | Val Acc: 82.775
Training:
Accuracies by groups:
0, 0  acc: 11061 / 16005 =  69.110
0, 1  acc:  7041 /  8608 =  81.796
1, 0  acc: 128276 / 129895 =  98.754
1, 1  acc:  7704 /  8262 =  93.246
--------------------------------------
Average acc: 154082 / 162770 =  94.662
Robust  acc: 11061 / 16005 =  69.110
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6431 /  8535 =  75.349
0, 1  acc:  6990 /  8276 =  84.461
1, 0  acc:  2845 /  2874 =  98.991
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 16445 / 19867 =  82.775
Robust  acc:  6431 /  8535 =  75.349
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.470
Robust Acc: 80.086 | Best Acc: 98.669
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  7822 /  9767 =  80.086
0, 1  acc:  6423 /  7535 =  85.242
1, 0  acc:  2447 /  2480 =  98.669
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16862 / 19962 =  84.470
Robust  acc:  7822 /  9767 =  80.086
------------------------------------
Accuracies by groups:
0, 0  acc:  7822 /  9767 =  80.086
0, 1  acc:  6423 /  7535 =  85.242
1, 0  acc:  2447 /  2480 =  98.669
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16862 / 19962 =  84.470
Robust  acc:  7822 /  9767 =  80.086
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7822 /  9767 =  80.086
0, 1  acc:  6423 /  7535 =  85.242
1, 0  acc:  2447 /  2480 =  98.669
1, 1  acc:   170 /   180 =  94.444
------------------------------------
Average acc: 16862 / 19962 =  84.470
Robust  acc:  7822 /  9767 =  80.086
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 94.562 | Val Loss: 0.005 | Val Acc: 73.866
Training:
Accuracies by groups:
0, 0  acc: 10655 / 15762 =  67.599
0, 1  acc:  6933 /  8606 =  80.560
1, 0  acc: 128462 / 129964 =  98.844
1, 1  acc:  7869 /  8438 =  93.257
--------------------------------------
Average acc: 153919 / 162770 =  94.562
Robust  acc: 10655 / 15762 =  67.599
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5341 /  8535 =  62.578
0, 1  acc:  6290 /  8276 =  76.003
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14675 / 19867 =  73.866
Robust  acc:  5341 /  8535 =  62.578
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 75.824
Robust Acc: 68.844 | Best Acc: 99.597
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  6724 /  9767 =  68.844
0, 1  acc:  5767 /  7535 =  76.536
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15136 / 19962 =  75.824
Robust  acc:  6724 /  9767 =  68.844
------------------------------------
Accuracies by groups:
0, 0  acc:  6724 /  9767 =  68.844
0, 1  acc:  5767 /  7535 =  76.536
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15136 / 19962 =  75.824
Robust  acc:  6724 /  9767 =  68.844
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6724 /  9767 =  68.844
0, 1  acc:  5767 /  7535 =  76.536
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15136 / 19962 =  75.824
Robust  acc:  6724 /  9767 =  68.844
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 94.450 | Val Loss: 0.003 | Val Acc: 90.416
Training:
Accuracies by groups:
0, 0  acc: 10831 / 16054 =  67.466
0, 1  acc:  6849 /  8577 =  79.853
1, 0  acc: 128383 / 129911 =  98.824
1, 1  acc:  7674 /  8228 =  93.267
--------------------------------------
Average acc: 153737 / 162770 =  94.450
Robust  acc: 10831 / 16054 =  67.466
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7312 /  8535 =  85.671
0, 1  acc:  7739 /  8276 =  93.511
1, 0  acc:  2759 /  2874 =  95.999
1, 1  acc:   153 /   182 =  84.066
------------------------------------
Average acc: 17963 / 19867 =  90.416
Robust  acc:   153 /   182 =  84.066
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.228
Robust Acc: 81.667 | Best Acc: 94.637
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  8682 /  9767 =  88.891
0, 1  acc:  7035 /  7535 =  93.364
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18211 / 19962 =  91.228
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8682 /  9767 =  88.891
0, 1  acc:  7035 /  7535 =  93.364
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18211 / 19962 =  91.228
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8682 /  9767 =  88.891
0, 1  acc:  7035 /  7535 =  93.364
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18211 / 19962 =  91.228
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 94.462 | Val Loss: 0.004 | Val Acc: 78.668
Training:
Accuracies by groups:
0, 0  acc: 10918 / 16106 =  67.788
0, 1  acc:  6573 /  8376 =  78.474
1, 0  acc: 128351 / 129813 =  98.874
1, 1  acc:  7913 /  8475 =  93.369
--------------------------------------
Average acc: 153755 / 162770 =  94.462
Robust  acc: 10918 / 16106 =  67.788
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6118 /  8535 =  71.681
0, 1  acc:  6504 /  8276 =  78.589
1, 0  acc:  2830 /  2874 =  98.469
1, 1  acc:   177 /   182 =  97.253
------------------------------------
Average acc: 15629 / 19867 =  78.668
Robust  acc:  6118 /  8535 =  71.681
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 80.127
Robust Acc: 75.735 | Best Acc: 97.823
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  7397 /  9767 =  75.735
0, 1  acc:  6003 /  7535 =  79.668
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15995 / 19962 =  80.127
Robust  acc:  7397 /  9767 =  75.735
------------------------------------
Accuracies by groups:
0, 0  acc:  7397 /  9767 =  75.735
0, 1  acc:  6003 /  7535 =  79.668
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15995 / 19962 =  80.127
Robust  acc:  7397 /  9767 =  75.735
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7397 /  9767 =  75.735
0, 1  acc:  6003 /  7535 =  79.668
1, 0  acc:  2426 /  2480 =  97.823
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15995 / 19962 =  80.127
Robust  acc:  7397 /  9767 =  75.735
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 94.420 | Val Loss: 0.006 | Val Acc: 63.019
Training:
Accuracies by groups:
0, 0  acc: 10687 / 15911 =  67.167
0, 1  acc:  6647 /  8517 =  78.044
1, 0  acc: 128722 / 130166 =  98.891
1, 1  acc:  7632 /  8176 =  93.346
--------------------------------------
Average acc: 153688 / 162770 =  94.420
Robust  acc: 10687 / 15911 =  67.167
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4172 /  8535 =  48.881
0, 1  acc:  5300 /  8276 =  64.041
1, 0  acc:  2867 /  2874 =  99.756
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12520 / 19867 =  63.019
Robust  acc:  4172 /  8535 =  48.881
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 64.072
Robust Acc: 54.940 | Best Acc: 99.839
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  5366 /  9767 =  54.940
0, 1  acc:  4771 /  7535 =  63.318
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12790 / 19962 =  64.072
Robust  acc:  5366 /  9767 =  54.940
------------------------------------
Accuracies by groups:
0, 0  acc:  5366 /  9767 =  54.940
0, 1  acc:  4771 /  7535 =  63.318
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12790 / 19962 =  64.072
Robust  acc:  5366 /  9767 =  54.940
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5366 /  9767 =  54.940
0, 1  acc:  4771 /  7535 =  63.318
1, 0  acc:  2476 /  2480 =  99.839
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12790 / 19962 =  64.072
Robust  acc:  5366 /  9767 =  54.940
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 94.343 | Val Loss: 0.003 | Val Acc: 88.549
Training:
Accuracies by groups:
0, 0  acc: 10454 / 15828 =  66.048
0, 1  acc:  6636 /  8586 =  77.289
1, 0  acc: 128573 / 129981 =  98.917
1, 1  acc:  7899 /  8375 =  94.316
--------------------------------------
Average acc: 153562 / 162770 =  94.343
Robust  acc: 10454 / 15828 =  66.048
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7217 /  8535 =  84.558
0, 1  acc:  7444 /  8276 =  89.947
1, 0  acc:  2767 /  2874 =  96.277
1, 1  acc:   164 /   182 =  90.110
------------------------------------
Average acc: 17592 / 19867 =  88.549
Robust  acc:  7217 /  8535 =  84.558
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.776
Robust Acc: 84.444 | Best Acc: 95.605
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  8603 /  9767 =  88.082
0, 1  acc:  6795 /  7535 =  90.179
1, 0  acc:  2371 /  2480 =  95.605
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17921 / 19962 =  89.776
Robust  acc:   152 /   180 =  84.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8603 /  9767 =  88.082
0, 1  acc:  6795 /  7535 =  90.179
1, 0  acc:  2371 /  2480 =  95.605
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17921 / 19962 =  89.776
Robust  acc:   152 /   180 =  84.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8603 /  9767 =  88.082
0, 1  acc:  6795 /  7535 =  90.179
1, 0  acc:  2371 /  2480 =  95.605
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 17921 / 19962 =  89.776
Robust  acc:   152 /   180 =  84.444
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 94.275 | Val Loss: 0.003 | Val Acc: 88.126
Training:
Accuracies by groups:
0, 0  acc: 10352 / 15914 =  65.050
0, 1  acc:  6575 /  8549 =  76.910
1, 0  acc: 128829 / 130120 =  99.008
1, 1  acc:  7696 /  8187 =  94.003
--------------------------------------
Average acc: 153452 / 162770 =  94.275
Robust  acc: 10352 / 15914 =  65.050
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7058 /  8535 =  82.695
0, 1  acc:  7475 /  8276 =  90.321
1, 0  acc:  2803 /  2874 =  97.530
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 17508 / 19867 =  88.126
Robust  acc:  7058 /  8535 =  82.695
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.530
Robust Acc: 86.198 | Best Acc: 96.855
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  8419 /  9767 =  86.198
0, 1  acc:  6893 /  7535 =  91.480
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17872 / 19962 =  89.530
Robust  acc:  8419 /  9767 =  86.198
------------------------------------
Accuracies by groups:
0, 0  acc:  8419 /  9767 =  86.198
0, 1  acc:  6893 /  7535 =  91.480
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17872 / 19962 =  89.530
Robust  acc:  8419 /  9767 =  86.198
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8419 /  9767 =  86.198
0, 1  acc:  6893 /  7535 =  91.480
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17872 / 19962 =  89.530
Robust  acc:  8419 /  9767 =  86.198
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 94.205 | Val Loss: 0.003 | Val Acc: 90.648
Training:
Accuracies by groups:
0, 0  acc: 10480 / 16102 =  65.085
0, 1  acc:  6391 /  8497 =  75.215
1, 0  acc: 128693 / 129940 =  99.040
1, 1  acc:  7773 /  8231 =  94.436
--------------------------------------
Average acc: 153337 / 162770 =  94.205
Robust  acc: 10480 / 16102 =  65.085
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7323 /  8535 =  85.800
0, 1  acc:  7777 /  8276 =  93.971
1, 0  acc:  2753 /  2874 =  95.790
1, 1  acc:   156 /   182 =  85.714
------------------------------------
Average acc: 18009 / 19867 =  90.648
Robust  acc:   156 /   182 =  85.714
------------------------------------
New max robust acc: 85.71428571428571
debias model - Saving best checkpoint at epoch 27
replace: True
-> Updating checkpoint debias-wga-best_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed29.pt
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.649
Robust Acc: 79.444 | Best Acc: 95.161
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  8688 /  9767 =  88.953
0, 1  acc:  7104 /  7535 =  94.280
1, 0  acc:  2360 /  2480 =  95.161
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18295 / 19962 =  91.649
Robust  acc:   143 /   180 =  79.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8688 /  9767 =  88.953
0, 1  acc:  7104 /  7535 =  94.280
1, 0  acc:  2360 /  2480 =  95.161
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18295 / 19962 =  91.649
Robust  acc:   143 /   180 =  79.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8688 /  9767 =  88.953
0, 1  acc:  7104 /  7535 =  94.280
1, 0  acc:  2360 /  2480 =  95.161
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18295 / 19962 =  91.649
Robust  acc:   143 /   180 =  79.444
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 94.263 | Val Loss: 0.005 | Val Acc: 76.010
Training:
Accuracies by groups:
0, 0  acc: 10287 / 15950 =  64.495
0, 1  acc:  6408 /  8479 =  75.575
1, 0  acc: 128888 / 130080 =  99.084
1, 1  acc:  7849 /  8261 =  95.013
--------------------------------------
Average acc: 153432 / 162770 =  94.263
Robust  acc: 10287 / 15950 =  64.495
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5785 /  8535 =  67.780
0, 1  acc:  6294 /  8276 =  76.051
1, 0  acc:  2844 /  2874 =  98.956
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 15101 / 19867 =  76.010
Robust  acc:  5785 /  8535 =  67.780
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.567
Robust Acc: 73.359 | Best Acc: 98.750
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  7165 /  9767 =  73.359
0, 1  acc:  5695 /  7535 =  75.581
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15484 / 19962 =  77.567
Robust  acc:  7165 /  9767 =  73.359
------------------------------------
Accuracies by groups:
0, 0  acc:  7165 /  9767 =  73.359
0, 1  acc:  5695 /  7535 =  75.581
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15484 / 19962 =  77.567
Robust  acc:  7165 /  9767 =  73.359
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7165 /  9767 =  73.359
0, 1  acc:  5695 /  7535 =  75.581
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 15484 / 19962 =  77.567
Robust  acc:  7165 /  9767 =  73.359
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 94.106 | Val Loss: 0.006 | Val Acc: 62.702
Training:
Accuracies by groups:
0, 0  acc: 10354 / 16101 =  64.307
0, 1  acc:  6359 /  8506 =  74.759
1, 0  acc: 128740 / 129972 =  99.052
1, 1  acc:  7724 /  8191 =  94.299
--------------------------------------
Average acc: 153177 / 162770 =  94.106
Robust  acc: 10354 / 16101 =  64.307
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4453 /  8535 =  52.173
0, 1  acc:  4954 /  8276 =  59.860
1, 0  acc:  2869 /  2874 =  99.826
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12457 / 19867 =  62.702
Robust  acc:  4453 /  8535 =  52.173
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 64.332
Robust Acc: 58.319 | Best Acc: 99.677
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  5696 /  9767 =  58.319
0, 1  acc:  4497 /  7535 =  59.681
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12842 / 19962 =  64.332
Robust  acc:  5696 /  9767 =  58.319
------------------------------------
Accuracies by groups:
0, 0  acc:  5696 /  9767 =  58.319
0, 1  acc:  4497 /  7535 =  59.681
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12842 / 19962 =  64.332
Robust  acc:  5696 /  9767 =  58.319
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5696 /  9767 =  58.319
0, 1  acc:  4497 /  7535 =  59.681
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12842 / 19962 =  64.332
Robust  acc:  5696 /  9767 =  58.319
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 94.041 | Val Loss: 0.006 | Val Acc: 64.751
Training:
Accuracies by groups:
0, 0  acc: 10433 / 16277 =  64.097
0, 1  acc:  6309 /  8566 =  73.652
1, 0  acc: 128456 / 129649 =  99.080
1, 1  acc:  7872 /  8278 =  95.095
--------------------------------------
Average acc: 153070 / 162770 =  94.041
Robust  acc: 10433 / 16277 =  64.097
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4370 /  8535 =  51.201
0, 1  acc:  5450 /  8276 =  65.853
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 12864 / 19867 =  64.751
Robust  acc:  4370 /  8535 =  51.201
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 66.146
Robust Acc: 57.356 | Best Acc: 99.597
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  5602 /  9767 =  57.356
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13204 / 19962 =  66.146
Robust  acc:  5602 /  9767 =  57.356
------------------------------------
Accuracies by groups:
0, 0  acc:  5602 /  9767 =  57.356
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13204 / 19962 =  66.146
Robust  acc:  5602 /  9767 =  57.356
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5602 /  9767 =  57.356
0, 1  acc:  4957 /  7535 =  65.786
1, 0  acc:  2470 /  2480 =  99.597
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13204 / 19962 =  66.146
Robust  acc:  5602 /  9767 =  57.356
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 94.119 | Val Loss: 0.009 | Val Acc: 41.123
Training:
Accuracies by groups:
0, 0  acc: 10078 / 15835 =  63.644
0, 1  acc:  6270 /  8460 =  74.113
1, 0  acc: 128972 / 130177 =  99.074
1, 1  acc:  7877 /  8298 =  94.926
--------------------------------------
Average acc: 153197 / 162770 =  94.119
Robust  acc: 10078 / 15835 =  63.644
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  1886 /  8535 =  22.097
0, 1  acc:  3228 /  8276 =  39.004
1, 0  acc:  2874 /  2874 = 100.000
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  8170 / 19867 =  41.123
Robust  acc:  1886 /  8535 =  22.097
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 40.908
Robust Acc: 26.702 | Best Acc: 100.000
--------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  2608 /  9767 =  26.702
0, 1  acc:  2899 /  7535 =  38.474
1, 0  acc:  2480 /  2480 = 100.000
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8166 / 19962 =  40.908
Robust  acc:  2608 /  9767 =  26.702
------------------------------------
Accuracies by groups:
0, 0  acc:  2608 /  9767 =  26.702
0, 1  acc:  2899 /  7535 =  38.474
1, 0  acc:  2480 /  2480 = 100.000
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8166 / 19962 =  40.908
Robust  acc:  2608 /  9767 =  26.702
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  2608 /  9767 =  26.702
0, 1  acc:  2899 /  7535 =  38.474
1, 0  acc:  2480 /  2480 = 100.000
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8166 / 19962 =  40.908
Robust  acc:  2608 /  9767 =  26.702
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 94.090 | Val Loss: 0.004 | Val Acc: 81.925
Training:
Accuracies by groups:
0, 0  acc: 10274 / 16089 =  63.857
0, 1  acc:  6214 /  8462 =  73.434
1, 0  acc: 128672 / 129810 =  99.123
1, 1  acc:  7990 /  8409 =  95.017
--------------------------------------
Average acc: 153150 / 162770 =  94.090
Robust  acc: 10274 / 16089 =  63.857
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6267 /  8535 =  73.427
0, 1  acc:  6992 /  8276 =  84.485
1, 0  acc:  2840 /  2874 =  98.817
1, 1  acc:   177 /   182 =  97.253
------------------------------------
Average acc: 16276 / 19867 =  81.925
Robust  acc:  6267 /  8535 =  73.427
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.348
Robust Acc: 78.509 | Best Acc: 98.145
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  7668 /  9767 =  78.509
0, 1  acc:  6368 /  7535 =  84.512
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7668 /  9767 =  78.509
------------------------------------
Accuracies by groups:
0, 0  acc:  7668 /  9767 =  78.509
0, 1  acc:  6368 /  7535 =  84.512
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7668 /  9767 =  78.509
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7668 /  9767 =  78.509
0, 1  acc:  6368 /  7535 =  84.512
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16638 / 19962 =  83.348
Robust  acc:  7668 /  9767 =  78.509
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 94.127 | Val Loss: 0.007 | Val Acc: 62.219
Training:
Accuracies by groups:
0, 0  acc: 10282 / 16141 =  63.701
0, 1  acc:  6252 /  8391 =  74.508
1, 0  acc: 128806 / 130005 =  99.078
1, 1  acc:  7870 /  8233 =  95.591
--------------------------------------
Average acc: 153210 / 162770 =  94.127
Robust  acc: 10282 / 16141 =  63.701
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4246 /  8535 =  49.748
0, 1  acc:  5068 /  8276 =  61.237
1, 0  acc:  2866 /  2874 =  99.722
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12361 / 19867 =  62.219
Robust  acc:  4246 /  8535 =  49.748
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 63.471
Robust Acc: 55.698 | Best Acc: 99.677
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  5440 /  9767 =  55.698
0, 1  acc:  4581 /  7535 =  60.796
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12670 / 19962 =  63.471
Robust  acc:  5440 /  9767 =  55.698
------------------------------------
Accuracies by groups:
0, 0  acc:  5440 /  9767 =  55.698
0, 1  acc:  4581 /  7535 =  60.796
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12670 / 19962 =  63.471
Robust  acc:  5440 /  9767 =  55.698
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5440 /  9767 =  55.698
0, 1  acc:  4581 /  7535 =  60.796
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 12670 / 19962 =  63.471
Robust  acc:  5440 /  9767 =  55.698
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 94.199 | Val Loss: 0.005 | Val Acc: 78.744
Training:
Accuracies by groups:
0, 0  acc: 10329 / 16110 =  64.115
0, 1  acc:  6294 /  8425 =  74.706
1, 0  acc: 128848 / 129936 =  99.163
1, 1  acc:  7856 /  8299 =  94.662
--------------------------------------
Average acc: 153327 / 162770 =  94.199
Robust  acc: 10329 / 16110 =  64.115
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5909 /  8535 =  69.233
0, 1  acc:  6711 /  8276 =  81.090
1, 0  acc:  2846 /  2874 =  99.026
1, 1  acc:   178 /   182 =  97.802
------------------------------------
Average acc: 15644 / 19867 =  78.744
Robust  acc:  5909 /  8535 =  69.233
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 80.834
Robust Acc: 75.284 | Best Acc: 98.831
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  7353 /  9767 =  75.284
0, 1  acc:  6160 /  7535 =  81.752
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16136 / 19962 =  80.834
Robust  acc:  7353 /  9767 =  75.284
------------------------------------
Accuracies by groups:
0, 0  acc:  7353 /  9767 =  75.284
0, 1  acc:  6160 /  7535 =  81.752
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16136 / 19962 =  80.834
Robust  acc:  7353 /  9767 =  75.284
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7353 /  9767 =  75.284
0, 1  acc:  6160 /  7535 =  81.752
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16136 / 19962 =  80.834
Robust  acc:  7353 /  9767 =  75.284
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 94.244 | Val Loss: 0.004 | Val Acc: 82.690
Training:
Accuracies by groups:
0, 0  acc: 10182 / 15782 =  64.517
0, 1  acc:  6386 /  8564 =  74.568
1, 0  acc: 128884 / 130057 =  99.098
1, 1  acc:  7949 /  8367 =  95.004
--------------------------------------
Average acc: 153401 / 162770 =  94.244
Robust  acc: 10182 / 15782 =  64.517
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6350 /  8535 =  74.400
0, 1  acc:  7074 /  8276 =  85.476
1, 0  acc:  2830 /  2874 =  98.469
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 16428 / 19867 =  82.690
Robust  acc:  6350 /  8535 =  74.400
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.075
Robust Acc: 78.919 | Best Acc: 97.742
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  7708 /  9767 =  78.919
0, 1  acc:  6483 /  7535 =  86.038
1, 0  acc:  2424 /  2480 =  97.742
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16783 / 19962 =  84.075
Robust  acc:  7708 /  9767 =  78.919
------------------------------------
Accuracies by groups:
0, 0  acc:  7708 /  9767 =  78.919
0, 1  acc:  6483 /  7535 =  86.038
1, 0  acc:  2424 /  2480 =  97.742
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16783 / 19962 =  84.075
Robust  acc:  7708 /  9767 =  78.919
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7708 /  9767 =  78.919
0, 1  acc:  6483 /  7535 =  86.038
1, 0  acc:  2424 /  2480 =  97.742
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16783 / 19962 =  84.075
Robust  acc:  7708 /  9767 =  78.919
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 94.266 | Val Loss: 0.004 | Val Acc: 86.686
Training:
Accuracies by groups:
0, 0  acc: 10386 / 15967 =  65.047
0, 1  acc:  6331 /  8500 =  74.482
1, 0  acc: 128824 / 129972 =  99.117
1, 1  acc:  7896 /  8331 =  94.779
--------------------------------------
Average acc: 153437 / 162770 =  94.266
Robust  acc: 10386 / 15967 =  65.047
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6875 /  8535 =  80.551
0, 1  acc:  7362 /  8276 =  88.956
1, 0  acc:  2814 /  2874 =  97.912
1, 1  acc:   171 /   182 =  93.956
------------------------------------
Average acc: 17222 / 19867 =  86.686
Robust  acc:  6875 /  8535 =  80.551
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 88.218
Robust Acc: 84.806 | Best Acc: 97.258
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  8283 /  9767 =  84.806
0, 1  acc:  6755 /  7535 =  89.648
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17610 / 19962 =  88.218
Robust  acc:  8283 /  9767 =  84.806
------------------------------------
Accuracies by groups:
0, 0  acc:  8283 /  9767 =  84.806
0, 1  acc:  6755 /  7535 =  89.648
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17610 / 19962 =  88.218
Robust  acc:  8283 /  9767 =  84.806
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8283 /  9767 =  84.806
0, 1  acc:  6755 /  7535 =  89.648
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17610 / 19962 =  88.218
Robust  acc:  8283 /  9767 =  84.806
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 94.244 | Val Loss: 0.007 | Val Acc: 59.888
Training:
Accuracies by groups:
0, 0  acc: 10474 / 16070 =  65.177
0, 1  acc:  6509 /  8640 =  75.336
1, 0  acc: 128652 / 129844 =  99.082
1, 1  acc:  7766 /  8216 =  94.523
--------------------------------------
Average acc: 153401 / 162770 =  94.244
Robust  acc: 10474 / 16070 =  65.177
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3932 /  8535 =  46.069
0, 1  acc:  4919 /  8276 =  59.437
1, 0  acc:  2866 /  2874 =  99.722
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 11898 / 19867 =  59.888
Robust  acc:  3932 /  8535 =  46.069
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 61.507
Robust Acc: 51.950 | Best Acc: 99.718
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  5074 /  9767 =  51.950
0, 1  acc:  4556 /  7535 =  60.464
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 12278 / 19962 =  61.507
Robust  acc:  5074 /  9767 =  51.950
------------------------------------
Accuracies by groups:
0, 0  acc:  5074 /  9767 =  51.950
0, 1  acc:  4556 /  7535 =  60.464
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 12278 / 19962 =  61.507
Robust  acc:  5074 /  9767 =  51.950
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5074 /  9767 =  51.950
0, 1  acc:  4556 /  7535 =  60.464
1, 0  acc:  2473 /  2480 =  99.718
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 12278 / 19962 =  61.507
Robust  acc:  5074 /  9767 =  51.950
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 94.352 | Val Loss: 0.005 | Val Acc: 72.633
Training:
Accuracies by groups:
0, 0  acc: 10459 / 15965 =  65.512
0, 1  acc:  6386 /  8386 =  76.151
1, 0  acc: 128832 / 130068 =  99.050
1, 1  acc:  7900 /  8351 =  94.599
--------------------------------------
Average acc: 153577 / 162770 =  94.352
Robust  acc: 10459 / 15965 =  65.512
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5154 /  8535 =  60.387
0, 1  acc:  6233 /  8276 =  75.314
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14430 / 19867 =  72.633
Robust  acc:  5154 /  8535 =  60.387
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 74.046
Robust Acc: 65.977 | Best Acc: 99.556
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  6444 /  9767 =  65.977
0, 1  acc:  5693 /  7535 =  75.554
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14781 / 19962 =  74.046
Robust  acc:  6444 /  9767 =  65.977
------------------------------------
Accuracies by groups:
0, 0  acc:  6444 /  9767 =  65.977
0, 1  acc:  5693 /  7535 =  75.554
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14781 / 19962 =  74.046
Robust  acc:  6444 /  9767 =  65.977
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6444 /  9767 =  65.977
0, 1  acc:  5693 /  7535 =  75.554
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 14781 / 19962 =  74.046
Robust  acc:  6444 /  9767 =  65.977
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 94.253 | Val Loss: 0.004 | Val Acc: 81.804
Training:
Accuracies by groups:
0, 0  acc: 10528 / 16141 =  65.225
0, 1  acc:  6584 /  8622 =  76.363
1, 0  acc: 128419 / 129692 =  99.018
1, 1  acc:  7885 /  8315 =  94.829
--------------------------------------
Average acc: 153416 / 162770 =  94.253
Robust  acc: 10528 / 16141 =  65.225
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6177 /  8535 =  72.373
0, 1  acc:  7053 /  8276 =  85.222
1, 0  acc:  2848 /  2874 =  99.095
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 16252 / 19867 =  81.804
Robust  acc:  6177 /  8535 =  72.373
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.469
Robust Acc: 77.649 | Best Acc: 98.589
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  7584 /  9767 =  77.649
0, 1  acc:  6464 /  7535 =  85.786
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16662 / 19962 =  83.469
Robust  acc:  7584 /  9767 =  77.649
------------------------------------
Accuracies by groups:
0, 0  acc:  7584 /  9767 =  77.649
0, 1  acc:  6464 /  7535 =  85.786
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16662 / 19962 =  83.469
Robust  acc:  7584 /  9767 =  77.649
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7584 /  9767 =  77.649
0, 1  acc:  6464 /  7535 =  85.786
1, 0  acc:  2445 /  2480 =  98.589
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16662 / 19962 =  83.469
Robust  acc:  7584 /  9767 =  77.649
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 94.410 | Val Loss: 0.003 | Val Acc: 87.879
Training:
Accuracies by groups:
0, 0  acc: 10493 / 15867 =  66.131
0, 1  acc:  6556 /  8590 =  76.321
1, 0  acc: 128829 / 130067 =  99.048
1, 1  acc:  7793 /  8246 =  94.506
--------------------------------------
Average acc: 153671 / 162770 =  94.410
Robust  acc: 10493 / 15867 =  66.131
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7016 /  8535 =  82.203
0, 1  acc:  7478 /  8276 =  90.358
1, 0  acc:  2798 /  2874 =  97.356
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17459 / 19867 =  87.879
Robust  acc:  7016 /  8535 =  82.203
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.109
Robust Acc: 86.065 | Best Acc: 96.250
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  8406 /  9767 =  86.065
0, 1  acc:  6834 /  7535 =  90.697
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17788 / 19962 =  89.109
Robust  acc:  8406 /  9767 =  86.065
------------------------------------
Accuracies by groups:
0, 0  acc:  8406 /  9767 =  86.065
0, 1  acc:  6834 /  7535 =  90.697
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17788 / 19962 =  89.109
Robust  acc:  8406 /  9767 =  86.065
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8406 /  9767 =  86.065
0, 1  acc:  6834 /  7535 =  90.697
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17788 / 19962 =  89.109
Robust  acc:  8406 /  9767 =  86.065
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 94.404 | Val Loss: 0.005 | Val Acc: 75.190
Training:
Accuracies by groups:
0, 0  acc: 10438 / 15962 =  65.393
0, 1  acc:  6634 /  8574 =  77.373
1, 0  acc: 128884 / 130095 =  99.069
1, 1  acc:  7705 /  8139 =  94.668
--------------------------------------
Average acc: 153661 / 162770 =  94.404
Robust  acc: 10438 / 15962 =  65.393
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5518 /  8535 =  64.651
0, 1  acc:  6379 /  8276 =  77.078
1, 0  acc:  2861 /  2874 =  99.548
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 14938 / 19867 =  75.190
Robust  acc:  5518 /  8535 =  64.651
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 76.921
Robust Acc: 70.400 | Best Acc: 99.274
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5841 /  7535 =  77.518
1, 0  acc:  2462 /  2480 =  99.274
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15355 / 19962 =  76.921
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5841 /  7535 =  77.518
1, 0  acc:  2462 /  2480 =  99.274
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15355 / 19962 =  76.921
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5841 /  7535 =  77.518
1, 0  acc:  2462 /  2480 =  99.274
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 15355 / 19962 =  76.921
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 94.405 | Val Loss: 0.003 | Val Acc: 92.561
Training:
Accuracies by groups:
0, 0  acc: 10420 / 15870 =  65.658
0, 1  acc:  6617 /  8522 =  77.646
1, 0  acc: 128778 / 130086 =  98.995
1, 1  acc:  7848 /  8292 =  94.645
--------------------------------------
Average acc: 153663 / 162770 =  94.405
Robust  acc: 10420 / 15870 =  65.658
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7571 /  8535 =  88.705
0, 1  acc:  8034 /  8276 =  97.076
1, 0  acc:  2650 /  2874 =  92.206
1, 1  acc:   134 /   182 =  73.626
------------------------------------
Average acc: 18389 / 19867 =  92.561
Robust  acc:   134 /   182 =  73.626
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.227
Robust Acc: 67.222 | Best Acc: 96.669
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  8922 /  9767 =  91.348
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2283 /  2480 =  92.056
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18610 / 19962 =  93.227
Robust  acc:   121 /   180 =  67.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8922 /  9767 =  91.348
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2283 /  2480 =  92.056
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18610 / 19962 =  93.227
Robust  acc:   121 /   180 =  67.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8922 /  9767 =  91.348
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2283 /  2480 =  92.056
1, 1  acc:   121 /   180 =  67.222
------------------------------------
Average acc: 18610 / 19962 =  93.227
Robust  acc:   121 /   180 =  67.222
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 94.339 | Val Loss: 0.006 | Val Acc: 70.338
Training:
Accuracies by groups:
0, 0  acc: 10576 / 16062 =  65.845
0, 1  acc:  6632 /  8576 =  77.332
1, 0  acc: 128632 / 129933 =  98.999
1, 1  acc:  7716 /  8199 =  94.109
--------------------------------------
Average acc: 153556 / 162770 =  94.339
Robust  acc: 10576 / 16062 =  65.845
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4719 /  8535 =  55.290
0, 1  acc:  6210 /  8276 =  75.036
1, 0  acc:  2866 /  2874 =  99.722
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 13974 / 19867 =  70.338
Robust  acc:  4719 /  8535 =  55.290
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 72.483
Robust Acc: 61.913 | Best Acc: 99.637
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  6047 /  9767 =  61.913
0, 1  acc:  5777 /  7535 =  76.669
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14469 / 19962 =  72.483
Robust  acc:  6047 /  9767 =  61.913
------------------------------------
Accuracies by groups:
0, 0  acc:  6047 /  9767 =  61.913
0, 1  acc:  5777 /  7535 =  76.669
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14469 / 19962 =  72.483
Robust  acc:  6047 /  9767 =  61.913
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6047 /  9767 =  61.913
0, 1  acc:  5777 /  7535 =  76.669
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 14469 / 19962 =  72.483
Robust  acc:  6047 /  9767 =  61.913
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 94.391 | Val Loss: 0.004 | Val Acc: 81.588
Training:
Accuracies by groups:
0, 0  acc: 10548 / 15987 =  65.979
0, 1  acc:  6519 /  8436 =  77.276
1, 0  acc: 128742 / 130018 =  99.019
1, 1  acc:  7831 /  8329 =  94.021
--------------------------------------
Average acc: 153640 / 162770 =  94.391
Robust  acc: 10548 / 15987 =  65.979
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6079 /  8535 =  71.224
0, 1  acc:  7109 /  8276 =  85.899
1, 0  acc:  2849 /  2874 =  99.130
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16209 / 19867 =  81.588
Robust  acc:  6079 /  8535 =  71.224
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.343
Robust Acc: 76.584 | Best Acc: 98.831
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  7480 /  9767 =  76.584
0, 1  acc:  6540 /  7535 =  86.795
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16637 / 19962 =  83.343
Robust  acc:  7480 /  9767 =  76.584
------------------------------------
Accuracies by groups:
0, 0  acc:  7480 /  9767 =  76.584
0, 1  acc:  6540 /  7535 =  86.795
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16637 / 19962 =  83.343
Robust  acc:  7480 /  9767 =  76.584
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7480 /  9767 =  76.584
0, 1  acc:  6540 /  7535 =  86.795
1, 0  acc:  2451 /  2480 =  98.831
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16637 / 19962 =  83.343
Robust  acc:  7480 /  9767 =  76.584
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 94.470 | Val Loss: 0.003 | Val Acc: 94.297
Training:
Accuracies by groups:
0, 0  acc: 10711 / 16151 =  66.318
0, 1  acc:  6520 /  8421 =  77.425
1, 0  acc: 128636 / 129885 =  99.038
1, 1  acc:  7902 /  8313 =  95.056
--------------------------------------
Average acc: 153769 / 162770 =  94.470
Robust  acc: 10711 / 16151 =  66.318
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7929 /  8535 =  92.900
0, 1  acc:  8185 /  8276 =  98.900
1, 0  acc:  2525 /  2874 =  87.857
1, 1  acc:    95 /   182 =  52.198
------------------------------------
Average acc: 18734 / 19867 =  94.297
Robust  acc:    95 /   182 =  52.198
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.840
Robust Acc: 51.111 | Best Acc: 98.646
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  9252 /  9767 =  94.727
0, 1  acc:  7433 /  7535 =  98.646
1, 0  acc:  2155 /  2480 =  86.895
1, 1  acc:    92 /   180 =  51.111
------------------------------------
Average acc: 18932 / 19962 =  94.840
Robust  acc:    92 /   180 =  51.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9252 /  9767 =  94.727
0, 1  acc:  7433 /  7535 =  98.646
1, 0  acc:  2155 /  2480 =  86.895
1, 1  acc:    92 /   180 =  51.111
------------------------------------
Average acc: 18932 / 19962 =  94.840
Robust  acc:    92 /   180 =  51.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9252 /  9767 =  94.727
0, 1  acc:  7433 /  7535 =  98.646
1, 0  acc:  2155 /  2480 =  86.895
1, 1  acc:    92 /   180 =  51.111
------------------------------------
Average acc: 18932 / 19962 =  94.840
Robust  acc:    92 /   180 =  51.111
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 94.497 | Val Loss: 0.003 | Val Acc: 89.631
Training:
Accuracies by groups:
0, 0  acc: 10661 / 16035 =  66.486
0, 1  acc:  6715 /  8609 =  78.000
1, 0  acc: 128520 / 129759 =  99.045
1, 1  acc:  7916 /  8367 =  94.610
--------------------------------------
Average acc: 153812 / 162770 =  94.497
Robust  acc: 10661 / 16035 =  66.486
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7136 /  8535 =  83.609
0, 1  acc:  7719 /  8276 =  93.270
1, 0  acc:  2800 /  2874 =  97.425
1, 1  acc:   152 /   182 =  83.516
------------------------------------
Average acc: 17807 / 19867 =  89.631
Robust  acc:   152 /   182 =  83.516
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.687
Robust Acc: 79.444 | Best Acc: 96.815
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7057 /  7535 =  93.656
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18103 / 19962 =  90.687
Robust  acc:   143 /   180 =  79.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7057 /  7535 =  93.656
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18103 / 19962 =  90.687
Robust  acc:   143 /   180 =  79.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8502 /  9767 =  87.048
0, 1  acc:  7057 /  7535 =  93.656
1, 0  acc:  2401 /  2480 =  96.815
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18103 / 19962 =  90.687
Robust  acc:   143 /   180 =  79.444
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 94.401 | Val Loss: 0.003 | Val Acc: 92.480
Training:
Accuracies by groups:
0, 0  acc: 10628 / 16102 =  66.004
0, 1  acc:  6595 /  8467 =  77.891
1, 0  acc: 128631 / 129929 =  99.001
1, 1  acc:  7802 /  8272 =  94.318
--------------------------------------
Average acc: 153656 / 162770 =  94.401
Robust  acc: 10628 / 16102 =  66.004
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7626 /  8535 =  89.350
0, 1  acc:  7942 /  8276 =  95.964
1, 0  acc:  2665 /  2874 =  92.728
1, 1  acc:   140 /   182 =  76.923
------------------------------------
Average acc: 18373 / 19867 =  92.480
Robust  acc:   140 /   182 =  76.923
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.182
Robust Acc: 72.222 | Best Acc: 95.912
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  8962 /  9767 =  91.758
0, 1  acc:  7227 /  7535 =  95.912
1, 0  acc:  2282 /  2480 =  92.016
1, 1  acc:   130 /   180 =  72.222
------------------------------------
Average acc: 18601 / 19962 =  93.182
Robust  acc:   130 /   180 =  72.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8962 /  9767 =  91.758
0, 1  acc:  7227 /  7535 =  95.912
1, 0  acc:  2282 /  2480 =  92.016
1, 1  acc:   130 /   180 =  72.222
------------------------------------
Average acc: 18601 / 19962 =  93.182
Robust  acc:   130 /   180 =  72.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8962 /  9767 =  91.758
0, 1  acc:  7227 /  7535 =  95.912
1, 0  acc:  2282 /  2480 =  92.016
1, 1  acc:   130 /   180 =  72.222
------------------------------------
Average acc: 18601 / 19962 =  93.182
Robust  acc:   130 /   180 =  72.222
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 94.539 | Val Loss: 0.004 | Val Acc: 83.354
Training:
Accuracies by groups:
0, 0  acc: 10647 / 15948 =  66.761
0, 1  acc:  6689 /  8531 =  78.408
1, 0  acc: 128619 / 129898 =  99.015
1, 1  acc:  7926 /  8393 =  94.436
--------------------------------------
Average acc: 153881 / 162770 =  94.539
Robust  acc: 10647 / 15948 =  66.761
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6441 /  8535 =  75.466
0, 1  acc:  7110 /  8276 =  85.911
1, 0  acc:  2837 /  2874 =  98.713
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 16560 / 19867 =  83.354
Robust  acc:  6441 /  8535 =  75.466
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 85.162
Robust Acc: 81.079 | Best Acc: 98.387
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  7919 /  9767 =  81.079
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2440 /  2480 =  98.387
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 17000 / 19962 =  85.162
Robust  acc:  7919 /  9767 =  81.079
------------------------------------
Accuracies by groups:
0, 0  acc:  7919 /  9767 =  81.079
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2440 /  2480 =  98.387
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 17000 / 19962 =  85.162
Robust  acc:  7919 /  9767 =  81.079
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7919 /  9767 =  81.079
0, 1  acc:  6472 /  7535 =  85.893
1, 0  acc:  2440 /  2480 =  98.387
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 17000 / 19962 =  85.162
Robust  acc:  7919 /  9767 =  81.079
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 94.468 | Val Loss: 0.004 | Val Acc: 80.853
Training:
Accuracies by groups:
0, 0  acc: 10361 / 15709 =  65.956
0, 1  acc:  6557 /  8429 =  77.791
1, 0  acc: 128988 / 130290 =  99.001
1, 1  acc:  7859 /  8342 =  94.210
--------------------------------------
Average acc: 153765 / 162770 =  94.468
Robust  acc: 10361 / 15709 =  65.956
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6149 /  8535 =  72.045
0, 1  acc:  6886 /  8276 =  83.204
1, 0  acc:  2852 /  2874 =  99.235
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 16063 / 19867 =  80.853
Robust  acc:  6149 /  8535 =  72.045
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 82.567
Robust Acc: 77.188 | Best Acc: 98.790
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  7539 /  9767 =  77.188
0, 1  acc:  6324 /  7535 =  83.928
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16482 / 19962 =  82.567
Robust  acc:  7539 /  9767 =  77.188
------------------------------------
Accuracies by groups:
0, 0  acc:  7539 /  9767 =  77.188
0, 1  acc:  6324 /  7535 =  83.928
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16482 / 19962 =  82.567
Robust  acc:  7539 /  9767 =  77.188
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7539 /  9767 =  77.188
0, 1  acc:  6324 /  7535 =  83.928
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16482 / 19962 =  82.567
Robust  acc:  7539 /  9767 =  77.188
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed29.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed29.pt
