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/seed48/stage_one_erm_model_b_epoch0_seed48.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: 48
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=48-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/seed48/stage_one_erm_model_b_epoch0_seed48.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8180, 0.0329],
        [0.1258, 0.0233]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 88.616 | Val Loss: 0.003 | Val Acc: 85.665
Training:
Accuracies by groups:
0, 0  acc: 12649 / 23027 =  54.931
0, 1  acc:  6581 / 10628 =  61.921
1, 0  acc: 117566 / 120810 =  97.315
1, 1  acc:  7444 /  8305 =  89.633
--------------------------------------
Average acc: 144240 / 162770 =  88.616
Robust  acc: 12649 / 23027 =  54.931
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6740 /  8535 =  78.969
0, 1  acc:  7292 /  8276 =  88.110
1, 0  acc:  2824 /  2874 =  98.260
1, 1  acc:   163 /   182 =  89.560
------------------------------------
Average acc: 17019 / 19867 =  85.665
Robust  acc:  6740 /  8535 =  78.969
------------------------------------
New max robust acc: 78.96895137668423
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed48.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 87.106
Robust Acc: 83.567 | Best Acc: 98.024
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  8162 /  9767 =  83.567
0, 1  acc:  6636 /  7535 =  88.069
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17388 / 19962 =  87.106
Robust  acc:  8162 /  9767 =  83.567
------------------------------------
Accuracies by groups:
0, 0  acc:  8162 /  9767 =  83.567
0, 1  acc:  6636 /  7535 =  88.069
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17388 / 19962 =  87.106
Robust  acc:  8162 /  9767 =  83.567
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8162 /  9767 =  83.567
0, 1  acc:  6636 /  7535 =  88.069
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17388 / 19962 =  87.106
Robust  acc:  8162 /  9767 =  83.567
------------------------------------
Epoch:   2 | Train Loss: 0.002 | Train Acc: 92.672 | Val Loss: 0.002 | Val Acc: 88.644
Training:
Accuracies by groups:
0, 0  acc: 16132 / 23091 =  69.863
0, 1  acc:  8660 / 10570 =  81.930
1, 0  acc: 118588 / 120848 =  98.130
1, 1  acc:  7463 /  8261 =  90.340
--------------------------------------
Average acc: 150843 / 162770 =  92.672
Robust  acc: 16132 / 23091 =  69.863
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6989 /  8535 =  81.886
0, 1  acc:  7630 /  8276 =  92.194
1, 0  acc:  2824 /  2874 =  98.260
1, 1  acc:   168 /   182 =  92.308
------------------------------------
Average acc: 17611 / 19867 =  88.644
Robust  acc:  6989 /  8535 =  81.886
------------------------------------
New max robust acc: 81.88635032220269
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed48.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.630
Robust Acc: 85.830 | Best Acc: 97.621
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  8383 /  9767 =  85.830
0, 1  acc:  6929 /  7535 =  91.958
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17892 / 19962 =  89.630
Robust  acc:  8383 /  9767 =  85.830
------------------------------------
Accuracies by groups:
0, 0  acc:  8383 /  9767 =  85.830
0, 1  acc:  6929 /  7535 =  91.958
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17892 / 19962 =  89.630
Robust  acc:  8383 /  9767 =  85.830
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8383 /  9767 =  85.830
0, 1  acc:  6929 /  7535 =  91.958
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   159 /   180 =  88.333
------------------------------------
Average acc: 17892 / 19962 =  89.630
Robust  acc:  8383 /  9767 =  85.830
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 93.644 | Val Loss: 0.002 | Val Acc: 89.480
Training:
Accuracies by groups:
0, 0  acc: 16980 / 23221 =  73.123
0, 1  acc:  9062 / 10488 =  86.404
1, 0  acc: 118944 / 120929 =  98.359
1, 1  acc:  7439 /  8132 =  91.478
--------------------------------------
Average acc: 152425 / 162770 =  93.644
Robust  acc: 16980 / 23221 =  73.123
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7066 /  8535 =  82.789
0, 1  acc:  7729 /  8276 =  93.391
1, 0  acc:  2821 /  2874 =  98.156
1, 1  acc:   161 /   182 =  88.462
------------------------------------
Average acc: 17777 / 19867 =  89.480
Robust  acc:  7066 /  8535 =  82.789
------------------------------------
New max robust acc: 82.78851786760399
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed48.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.146
Robust Acc: 85.000 | Best Acc: 97.379
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  6995 /  7535 =  92.833
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17995 / 19962 =  90.146
Robust  acc:   153 /   180 =  85.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  6995 /  7535 =  92.833
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17995 / 19962 =  90.146
Robust  acc:   153 /   180 =  85.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8432 /  9767 =  86.332
0, 1  acc:  6995 /  7535 =  92.833
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17995 / 19962 =  90.146
Robust  acc:   153 /   180 =  85.000
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 94.561 | Val Loss: 0.002 | Val Acc: 91.272
Training:
Accuracies by groups:
0, 0  acc: 17325 / 22932 =  75.549
0, 1  acc:  9458 / 10621 =  89.050
1, 0  acc: 119531 / 121089 =  98.713
1, 1  acc:  7603 /  8128 =  93.541
--------------------------------------
Average acc: 153917 / 162770 =  94.561
Robust  acc: 17325 / 22932 =  75.549
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7317 /  8535 =  85.729
0, 1  acc:  7855 /  8276 =  94.913
1, 0  acc:  2804 /  2874 =  97.564
1, 1  acc:   157 /   182 =  86.264
------------------------------------
Average acc: 18133 / 19867 =  91.272
Robust  acc:  7317 /  8535 =  85.729
------------------------------------
New max robust acc: 85.72934973637962
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed48.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.308
Robust Acc: 80.556 | Best Acc: 96.573
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8587 /  9767 =  87.919
0, 1  acc:  7100 /  7535 =  94.227
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18227 / 19962 =  91.308
Robust  acc:   145 /   180 =  80.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8587 /  9767 =  87.919
0, 1  acc:  7100 /  7535 =  94.227
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18227 / 19962 =  91.308
Robust  acc:   145 /   180 =  80.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8587 /  9767 =  87.919
0, 1  acc:  7100 /  7535 =  94.227
1, 0  acc:  2395 /  2480 =  96.573
1, 1  acc:   145 /   180 =  80.556
------------------------------------
Average acc: 18227 / 19962 =  91.308
Robust  acc:   145 /   180 =  80.556
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 95.458 | Val Loss: 0.002 | Val Acc: 92.042
Training:
Accuracies by groups:
0, 0  acc: 18213 / 23221 =  78.433
0, 1  acc:  9661 / 10590 =  91.228
1, 0  acc: 119812 / 120887 =  99.111
1, 1  acc:  7691 /  8072 =  95.280
--------------------------------------
Average acc: 155377 / 162770 =  95.458
Robust  acc: 18213 / 23221 =  78.433
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7454 /  8535 =  87.335
0, 1  acc:  7894 /  8276 =  95.384
1, 0  acc:  2783 /  2874 =  96.834
1, 1  acc:   155 /   182 =  85.165
------------------------------------
Average acc: 18286 / 19867 =  92.042
Robust  acc:   155 /   182 =  85.165
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.020
Robust Acc: 81.667 | Best Acc: 96.048
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8699 /  9767 =  89.065
0, 1  acc:  7141 /  7535 =  94.771
1, 0  acc:  2382 /  2480 =  96.048
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18369 / 19962 =  92.020
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8699 /  9767 =  89.065
0, 1  acc:  7141 /  7535 =  94.771
1, 0  acc:  2382 /  2480 =  96.048
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18369 / 19962 =  92.020
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8699 /  9767 =  89.065
0, 1  acc:  7141 /  7535 =  94.771
1, 0  acc:  2382 /  2480 =  96.048
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18369 / 19962 =  92.020
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.609 | Val Loss: 0.001 | Val Acc: 92.636
Training:
Accuracies by groups:
0, 0  acc: 18996 / 23117 =  82.173
0, 1  acc:  9809 / 10600 =  92.538
1, 0  acc: 120340 / 120842 =  99.585
1, 1  acc:  8105 /  8211 =  98.709
--------------------------------------
Average acc: 157250 / 162770 =  96.609
Robust  acc: 18996 / 23117 =  82.173
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7561 /  8535 =  88.588
0, 1  acc:  7946 /  8276 =  96.013
1, 0  acc:  2743 /  2874 =  95.442
1, 1  acc:   154 /   182 =  84.615
------------------------------------
Average acc: 18404 / 19867 =  92.636
Robust  acc:   154 /   182 =  84.615
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 92.731
Robust Acc: 77.222 | Best Acc: 95.501
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8829 /  9767 =  90.396
0, 1  acc:  7196 /  7535 =  95.501
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18511 / 19962 =  92.731
Robust  acc:   139 /   180 =  77.222
------------------------------------
Accuracies by groups:
0, 0  acc:  8829 /  9767 =  90.396
0, 1  acc:  7196 /  7535 =  95.501
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18511 / 19962 =  92.731
Robust  acc:   139 /   180 =  77.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8829 /  9767 =  90.396
0, 1  acc:  7196 /  7535 =  95.501
1, 0  acc:  2347 /  2480 =  94.637
1, 1  acc:   139 /   180 =  77.222
------------------------------------
Average acc: 18511 / 19962 =  92.731
Robust  acc:   139 /   180 =  77.222
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.524 | Val Loss: 0.001 | Val Acc: 93.607
Training:
Accuracies by groups:
0, 0  acc: 19867 / 23045 =  86.210
0, 1  acc: 10018 / 10614 =  94.385
1, 0  acc: 120727 / 120940 =  99.824
1, 1  acc:  8128 /  8171 =  99.474
--------------------------------------
Average acc: 158740 / 162770 =  97.524
Robust  acc: 19867 / 23045 =  86.210
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7703 /  8535 =  90.252
0, 1  acc:  8058 /  8276 =  97.366
1, 0  acc:  2701 /  2874 =  93.981
1, 1  acc:   135 /   182 =  74.176
------------------------------------
Average acc: 18597 / 19867 =  93.607
Robust  acc:   135 /   182 =  74.176
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.693
Robust Acc: 68.889 | Best Acc: 96.934
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8967 /  9767 =  91.809
0, 1  acc:  7304 /  7535 =  96.934
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18703 / 19962 =  93.693
Robust  acc:   124 /   180 =  68.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8967 /  9767 =  91.809
0, 1  acc:  7304 /  7535 =  96.934
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18703 / 19962 =  93.693
Robust  acc:   124 /   180 =  68.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8967 /  9767 =  91.809
0, 1  acc:  7304 /  7535 =  96.934
1, 0  acc:  2308 /  2480 =  93.065
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18703 / 19962 =  93.693
Robust  acc:   124 /   180 =  68.889
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 98.300 | Val Loss: 0.001 | Val Acc: 93.899
Training:
Accuracies by groups:
0, 0  acc: 20865 / 23158 =  90.098
0, 1  acc: 10129 / 10516 =  96.320
1, 0  acc: 120683 / 120763 =  99.934
1, 1  acc:  8326 /  8333 =  99.916
--------------------------------------
Average acc: 160003 / 162770 =  98.300
Robust  acc: 20865 / 23158 =  90.098
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7755 /  8535 =  90.861
0, 1  acc:  8085 /  8276 =  97.692
1, 0  acc:  2683 /  2874 =  93.354
1, 1  acc:   132 /   182 =  72.527
------------------------------------
Average acc: 18655 / 19867 =  93.899
Robust  acc:   132 /   182 =  72.527
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.898
Robust Acc: 66.111 | Best Acc: 97.226
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  9009 /  9767 =  92.239
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2290 /  2480 =  92.339
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18744 / 19962 =  93.898
Robust  acc:   119 /   180 =  66.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9009 /  9767 =  92.239
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2290 /  2480 =  92.339
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18744 / 19962 =  93.898
Robust  acc:   119 /   180 =  66.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9009 /  9767 =  92.239
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2290 /  2480 =  92.339
1, 1  acc:   119 /   180 =  66.111
------------------------------------
Average acc: 18744 / 19962 =  93.898
Robust  acc:   119 /   180 =  66.111
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.730 | Val Loss: 0.001 | Val Acc: 93.930
Training:
Accuracies by groups:
0, 0  acc: 21415 / 23104 =  92.690
0, 1  acc: 10153 / 10444 =  97.214
1, 0  acc: 120918 / 120983 =  99.946
1, 1  acc:  8217 /  8239 =  99.733
--------------------------------------
Average acc: 160703 / 162770 =  98.730
Robust  acc: 21415 / 23104 =  92.690
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7763 /  8535 =  90.955
0, 1  acc:  8100 /  8276 =  97.873
1, 0  acc:  2677 /  2874 =  93.145
1, 1  acc:   121 /   182 =  66.484
------------------------------------
Average acc: 18661 / 19867 =  93.930
Robust  acc:   121 /   182 =  66.484
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.813
Robust Acc: 56.111 | Best Acc: 97.478
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  9014 /  9767 =  92.290
0, 1  acc:  7345 /  7535 =  97.478
1, 0  acc:  2267 /  2480 =  91.411
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18727 / 19962 =  93.813
Robust  acc:   101 /   180 =  56.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9014 /  9767 =  92.290
0, 1  acc:  7345 /  7535 =  97.478
1, 0  acc:  2267 /  2480 =  91.411
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18727 / 19962 =  93.813
Robust  acc:   101 /   180 =  56.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9014 /  9767 =  92.290
0, 1  acc:  7345 /  7535 =  97.478
1, 0  acc:  2267 /  2480 =  91.411
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18727 / 19962 =  93.813
Robust  acc:   101 /   180 =  56.111
------------------------------------
Epoch:  10 | Train Loss: 0.000 | Train Acc: 98.934 | Val Loss: 0.001 | Val Acc: 94.191
Training:
Accuracies by groups:
0, 0  acc: 21898 / 23257 =  94.157
0, 1  acc: 10314 / 10574 =  97.541
1, 0  acc: 120574 / 120675 =  99.916
1, 1  acc:  8249 /  8264 =  99.818
--------------------------------------
Average acc: 161035 / 162770 =  98.934
Robust  acc: 21898 / 23257 =  94.157
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7902 /  8535 =  92.583
0, 1  acc:  8121 /  8276 =  98.127
1, 0  acc:  2575 /  2874 =  89.596
1, 1  acc:   115 /   182 =  63.187
------------------------------------
Average acc: 18713 / 19867 =  94.191
Robust  acc:   115 /   182 =  63.187
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.933
Robust Acc: 57.222 | Best Acc: 97.439
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  9140 /  9767 =  93.580
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2166 /  2480 =  87.339
1, 1  acc:   103 /   180 =  57.222
------------------------------------
Average acc: 18751 / 19962 =  93.933
Robust  acc:   103 /   180 =  57.222
------------------------------------
Accuracies by groups:
0, 0  acc:  9140 /  9767 =  93.580
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2166 /  2480 =  87.339
1, 1  acc:   103 /   180 =  57.222
------------------------------------
Average acc: 18751 / 19962 =  93.933
Robust  acc:   103 /   180 =  57.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9140 /  9767 =  93.580
0, 1  acc:  7342 /  7535 =  97.439
1, 0  acc:  2166 /  2480 =  87.339
1, 1  acc:   103 /   180 =  57.222
------------------------------------
Average acc: 18751 / 19962 =  93.933
Robust  acc:   103 /   180 =  57.222
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.941 | Val Loss: 0.001 | Val Acc: 94.071
Training:
Accuracies by groups:
0, 0  acc: 21690 / 22973 =  94.415
0, 1  acc: 10274 / 10499 =  97.857
1, 0  acc: 120969 / 121130 =  99.867
1, 1  acc:  8113 /  8168 =  99.327
--------------------------------------
Average acc: 161046 / 162770 =  98.941
Robust  acc: 21690 / 22973 =  94.415
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7856 /  8535 =  92.045
0, 1  acc:  8105 /  8276 =  97.934
1, 0  acc:  2608 /  2874 =  90.745
1, 1  acc:   120 /   182 =  65.934
------------------------------------
Average acc: 18689 / 19867 =  94.071
Robust  acc:   120 /   182 =  65.934
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.883
Robust Acc: 61.667 | Best Acc: 97.425
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  9109 /  9767 =  93.263
0, 1  acc:  7341 /  7535 =  97.425
1, 0  acc:  2180 /  2480 =  87.903
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   111 /   180 =  61.667
------------------------------------
Accuracies by groups:
0, 0  acc:  9109 /  9767 =  93.263
0, 1  acc:  7341 /  7535 =  97.425
1, 0  acc:  2180 /  2480 =  87.903
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   111 /   180 =  61.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9109 /  9767 =  93.263
0, 1  acc:  7341 /  7535 =  97.425
1, 0  acc:  2180 /  2480 =  87.903
1, 1  acc:   111 /   180 =  61.667
------------------------------------
Average acc: 18741 / 19962 =  93.883
Robust  acc:   111 /   180 =  61.667
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.580 | Val Loss: 0.001 | Val Acc: 93.995
Training:
Accuracies by groups:
0, 0  acc: 21634 / 23206 =  93.226
0, 1  acc: 10331 / 10624 =  97.242
1, 0  acc: 120495 / 120845 =  99.710
1, 1  acc:  7998 /  8095 =  98.802
--------------------------------------
Average acc: 160458 / 162770 =  98.580
Robust  acc: 21634 / 23206 =  93.226
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7725 /  8535 =  90.510
0, 1  acc:  8145 /  8276 =  98.417
1, 0  acc:  2688 /  2874 =  93.528
1, 1  acc:   116 /   182 =  63.736
------------------------------------
Average acc: 18674 / 19867 =  93.995
Robust  acc:   116 /   182 =  63.736
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.069
Robust Acc: 57.778 | Best Acc: 97.890
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  9020 /  9767 =  92.352
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2278 /  2480 =  91.855
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18778 / 19962 =  94.069
Robust  acc:   104 /   180 =  57.778
------------------------------------
Accuracies by groups:
0, 0  acc:  9020 /  9767 =  92.352
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2278 /  2480 =  91.855
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18778 / 19962 =  94.069
Robust  acc:   104 /   180 =  57.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9020 /  9767 =  92.352
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2278 /  2480 =  91.855
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18778 / 19962 =  94.069
Robust  acc:   104 /   180 =  57.778
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 98.014 | Val Loss: 0.002 | Val Acc: 89.435
Training:
Accuracies by groups:
0, 0  acc: 21002 / 23089 =  90.961
0, 1  acc: 10134 / 10477 =  96.726
1, 0  acc: 120262 / 120889 =  99.481
1, 1  acc:  8140 /  8315 =  97.895
--------------------------------------
Average acc: 159538 / 162770 =  98.014
Robust  acc: 21002 / 23089 =  90.961
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7069 /  8535 =  82.824
0, 1  acc:  7763 /  8276 =  93.801
1, 0  acc:  2776 /  2874 =  96.590
1, 1  acc:   160 /   182 =  87.912
------------------------------------
Average acc: 17768 / 19867 =  89.435
Robust  acc:  7069 /  8535 =  82.824
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 89.610
Robust Acc: 83.333 | Best Acc: 96.210
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  8352 /  9767 =  85.512
0, 1  acc:  7000 /  7535 =  92.900
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   150 /   180 =  83.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8352 /  9767 =  85.512
0, 1  acc:  7000 /  7535 =  92.900
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   150 /   180 =  83.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8352 /  9767 =  85.512
0, 1  acc:  7000 /  7535 =  92.900
1, 0  acc:  2386 /  2480 =  96.210
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   150 /   180 =  83.333
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.377 | Val Loss: 0.002 | Val Acc: 92.817
Training:
Accuracies by groups:
0, 0  acc: 20337 / 23010 =  88.383
0, 1  acc: 10212 / 10709 =  95.359
1, 0  acc: 119939 / 120820 =  99.271
1, 1  acc:  8013 /  8231 =  97.351
--------------------------------------
Average acc: 158501 / 162770 =  97.377
Robust  acc: 20337 / 23010 =  88.383
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7564 /  8535 =  88.623
0, 1  acc:  8017 /  8276 =  96.870
1, 0  acc:  2713 /  2874 =  94.398
1, 1  acc:   146 /   182 =  80.220
------------------------------------
Average acc: 18440 / 19867 =  92.817
Robust  acc:   146 /   182 =  80.220
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.107
Robust Acc: 65.556 | Best Acc: 96.656
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  8857 /  9767 =  90.683
0, 1  acc:  7283 /  7535 =  96.656
1, 0  acc:  2328 /  2480 =  93.871
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18586 / 19962 =  93.107
Robust  acc:   118 /   180 =  65.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8857 /  9767 =  90.683
0, 1  acc:  7283 /  7535 =  96.656
1, 0  acc:  2328 /  2480 =  93.871
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18586 / 19962 =  93.107
Robust  acc:   118 /   180 =  65.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8857 /  9767 =  90.683
0, 1  acc:  7283 /  7535 =  96.656
1, 0  acc:  2328 /  2480 =  93.871
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18586 / 19962 =  93.107
Robust  acc:   118 /   180 =  65.556
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.773 | Val Loss: 0.001 | Val Acc: 94.257
Training:
Accuracies by groups:
0, 0  acc: 20038 / 23311 =  85.959
0, 1  acc:  9974 / 10579 =  94.281
1, 0  acc: 119677 / 120758 =  99.105
1, 1  acc:  7829 /  8122 =  96.393
--------------------------------------
Average acc: 157518 / 162770 =  96.773
Robust  acc: 20038 / 23311 =  85.959
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8158 /  8535 =  95.583
0, 1  acc:  8128 /  8276 =  98.212
1, 0  acc:  2318 /  2874 =  80.654
1, 1  acc:   122 /   182 =  67.033
------------------------------------
Average acc: 18726 / 19867 =  94.257
Robust  acc:   122 /   182 =  67.033
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.204
Robust Acc: 57.778 | Best Acc: 97.916
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  9377 /  9767 =  96.007
0, 1  acc:  7378 /  7535 =  97.916
1, 0  acc:  1946 /  2480 =  78.468
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   104 /   180 =  57.778
------------------------------------
Accuracies by groups:
0, 0  acc:  9377 /  9767 =  96.007
0, 1  acc:  7378 /  7535 =  97.916
1, 0  acc:  1946 /  2480 =  78.468
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   104 /   180 =  57.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9377 /  9767 =  96.007
0, 1  acc:  7378 /  7535 =  97.916
1, 0  acc:  1946 /  2480 =  78.468
1, 1  acc:   104 /   180 =  57.778
------------------------------------
Average acc: 18805 / 19962 =  94.204
Robust  acc:   104 /   180 =  57.778
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 95.975 | Val Loss: 0.004 | Val Acc: 78.059
Training:
Accuracies by groups:
0, 0  acc: 19083 / 23045 =  82.808
0, 1  acc:  9808 / 10566 =  92.826
1, 0  acc: 119554 / 120997 =  98.807
1, 1  acc:  7773 /  8162 =  95.234
--------------------------------------
Average acc: 156218 / 162770 =  95.975
Robust  acc: 19083 / 23045 =  82.808
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5704 /  8535 =  66.831
0, 1  acc:  6764 /  8276 =  81.730
1, 0  acc:  2861 /  2874 =  99.548
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15508 / 19867 =  78.059
Robust  acc:  5704 /  8535 =  66.831
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 79.706
Robust Acc: 72.428 | Best Acc: 99.355
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  7074 /  9767 =  72.428
0, 1  acc:  6206 /  7535 =  82.362
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7074 /  9767 =  72.428
------------------------------------
Accuracies by groups:
0, 0  acc:  7074 /  9767 =  72.428
0, 1  acc:  6206 /  7535 =  82.362
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7074 /  9767 =  72.428
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7074 /  9767 =  72.428
0, 1  acc:  6206 /  7535 =  82.362
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15911 / 19962 =  79.706
Robust  acc:  7074 /  9767 =  72.428
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 95.376 | Val Loss: 0.002 | Val Acc: 90.829
Training:
Accuracies by groups:
0, 0  acc: 18500 / 23015 =  80.382
0, 1  acc:  9620 / 10539 =  91.280
1, 0  acc: 119410 / 121040 =  98.653
1, 1  acc:  7713 /  8176 =  94.337
--------------------------------------
Average acc: 155243 / 162770 =  95.376
Robust  acc: 18500 / 23015 =  80.382
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7248 /  8535 =  84.921
0, 1  acc:  7852 /  8276 =  94.877
1, 0  acc:  2786 /  2874 =  96.938
1, 1  acc:   159 /   182 =  87.363
------------------------------------
Average acc: 18045 / 19867 =  90.829
Robust  acc:  7248 /  8535 =  84.921
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.253
Robust Acc: 82.778 | Best Acc: 96.452
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7105 /  7535 =  94.293
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7105 /  7535 =  94.293
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8570 /  9767 =  87.744
0, 1  acc:  7105 /  7535 =  94.293
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 18216 / 19962 =  91.253
Robust  acc:   149 /   180 =  82.778
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 94.838 | Val Loss: 0.004 | Val Acc: 82.775
Training:
Accuracies by groups:
0, 0  acc: 18044 / 23049 =  78.285
0, 1  acc:  9599 / 10639 =  90.225
1, 0  acc: 119057 / 120880 =  98.492
1, 1  acc:  7668 /  8202 =  93.489
--------------------------------------
Average acc: 154368 / 162770 =  94.838
Robust  acc: 18044 / 23049 =  78.285
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6276 /  8535 =  73.533
0, 1  acc:  7141 /  8276 =  86.286
1, 0  acc:  2852 /  2874 =  99.235
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 16445 / 19867 =  82.775
Robust  acc:  6276 /  8535 =  73.533
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 83.889
Robust Acc: 77.659 | Best Acc: 99.194
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  7585 /  9767 =  77.659
0, 1  acc:  6536 /  7535 =  86.742
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 16746 / 19962 =  83.889
Robust  acc:  7585 /  9767 =  77.659
------------------------------------
Accuracies by groups:
0, 0  acc:  7585 /  9767 =  77.659
0, 1  acc:  6536 /  7535 =  86.742
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 16746 / 19962 =  83.889
Robust  acc:  7585 /  9767 =  77.659
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7585 /  9767 =  77.659
0, 1  acc:  6536 /  7535 =  86.742
1, 0  acc:  2460 /  2480 =  99.194
1, 1  acc:   165 /   180 =  91.667
------------------------------------
Average acc: 16746 / 19962 =  83.889
Robust  acc:  7585 /  9767 =  77.659
------------------------------------
Epoch:  19 | Train Loss: 0.002 | Train Acc: 94.293 | Val Loss: 0.003 | Val Acc: 89.032
Training:
Accuracies by groups:
0, 0  acc: 17468 / 22879 =  76.349
0, 1  acc:  9506 / 10671 =  89.083
1, 0  acc: 118840 / 120933 =  98.269
1, 1  acc:  7667 /  8287 =  92.518
--------------------------------------
Average acc: 153481 / 162770 =  94.293
Robust  acc: 17468 / 22879 =  76.349
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7049 /  8535 =  82.589
0, 1  acc:  7653 /  8276 =  92.472
1, 0  acc:  2819 /  2874 =  98.086
1, 1  acc:   167 /   182 =  91.758
------------------------------------
Average acc: 17688 / 19867 =  89.032
Robust  acc:  7049 /  8535 =  82.589
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.251
Robust Acc: 86.506 | Best Acc: 97.903
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 18016 / 19962 =  90.251
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 18016 / 19962 =  90.251
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8449 /  9767 =  86.506
0, 1  acc:  6981 /  7535 =  92.648
1, 0  acc:  2428 /  2480 =  97.903
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 18016 / 19962 =  90.251
Robust  acc:  8449 /  9767 =  86.506
------------------------------------
Epoch:  20 | Train Loss: 0.002 | Train Acc: 93.816 | Val Loss: 0.002 | Val Acc: 91.116
Training:
Accuracies by groups:
0, 0  acc: 17281 / 23043 =  74.995
0, 1  acc:  9292 / 10649 =  87.257
1, 0  acc: 118430 / 120708 =  98.113
1, 1  acc:  7702 /  8370 =  92.019
--------------------------------------
Average acc: 152705 / 162770 =  93.816
Robust  acc: 17281 / 23043 =  74.995
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7319 /  8535 =  85.753
0, 1  acc:  7839 /  8276 =  94.720
1, 0  acc:  2795 /  2874 =  97.251
1, 1  acc:   149 /   182 =  81.868
------------------------------------
Average acc: 18102 / 19867 =  91.116
Robust  acc:   149 /   182 =  81.868
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.900
Robust Acc: 74.444 | Best Acc: 96.250
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  8673 /  9767 =  88.799
0, 1  acc:  7151 /  7535 =  94.904
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18345 / 19962 =  91.900
Robust  acc:   134 /   180 =  74.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8673 /  9767 =  88.799
0, 1  acc:  7151 /  7535 =  94.904
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18345 / 19962 =  91.900
Robust  acc:   134 /   180 =  74.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8673 /  9767 =  88.799
0, 1  acc:  7151 /  7535 =  94.904
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18345 / 19962 =  91.900
Robust  acc:   134 /   180 =  74.444
------------------------------------
Epoch:  21 | Train Loss: 0.002 | Train Acc: 93.394 | Val Loss: 0.002 | Val Acc: 91.790
Training:
Accuracies by groups:
0, 0  acc: 16771 / 22924 =  73.159
0, 1  acc:  9179 / 10693 =  85.841
1, 0  acc: 118596 / 120988 =  98.023
1, 1  acc:  7472 /  8165 =  91.513
--------------------------------------
Average acc: 152018 / 162770 =  93.394
Robust  acc: 16771 / 22924 =  73.159
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7475 /  8535 =  87.581
0, 1  acc:  7834 /  8276 =  94.659
1, 0  acc:  2767 /  2874 =  96.277
1, 1  acc:   160 /   182 =  87.912
------------------------------------
Average acc: 18236 / 19867 =  91.790
Robust  acc:  7475 /  8535 =  87.581
------------------------------------
New max robust acc: 87.58055067369655
debias model - Saving best checkpoint at epoch 20
replace: True
-> Updating checkpoint debias-wga-best_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed48.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.636
Robust Acc: 81.111 | Best Acc: 94.930
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  8843 /  9767 =  90.540
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2350 /  2480 =  94.758
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18492 / 19962 =  92.636
Robust  acc:   146 /   180 =  81.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8843 /  9767 =  90.540
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2350 /  2480 =  94.758
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18492 / 19962 =  92.636
Robust  acc:   146 /   180 =  81.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8843 /  9767 =  90.540
0, 1  acc:  7153 /  7535 =  94.930
1, 0  acc:  2350 /  2480 =  94.758
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18492 / 19962 =  92.636
Robust  acc:   146 /   180 =  81.111
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 93.163 | Val Loss: 0.002 | Val Acc: 94.101
Training:
Accuracies by groups:
0, 0  acc: 16658 / 23130 =  72.019
0, 1  acc:  8975 / 10555 =  85.031
1, 0  acc: 118434 / 120821 =  98.024
1, 1  acc:  7575 /  8264 =  91.663
--------------------------------------
Average acc: 151642 / 162770 =  93.163
Robust  acc: 16658 / 23130 =  72.019
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8186 /  8535 =  95.911
0, 1  acc:  8191 /  8276 =  98.973
1, 0  acc:  2230 /  2874 =  77.592
1, 1  acc:    88 /   182 =  48.352
------------------------------------
Average acc: 18695 / 19867 =  94.101
Robust  acc:    88 /   182 =  48.352
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.239
Robust Acc: 50.000 | Best Acc: 98.474
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  9457 /  9767 =  96.826
0, 1  acc:  7420 /  7535 =  98.474
1, 0  acc:  1845 /  2480 =  74.395
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18812 / 19962 =  94.239
Robust  acc:    90 /   180 =  50.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9457 /  9767 =  96.826
0, 1  acc:  7420 /  7535 =  98.474
1, 0  acc:  1845 /  2480 =  74.395
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18812 / 19962 =  94.239
Robust  acc:    90 /   180 =  50.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9457 /  9767 =  96.826
0, 1  acc:  7420 /  7535 =  98.474
1, 0  acc:  1845 /  2480 =  74.395
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18812 / 19962 =  94.239
Robust  acc:    90 /   180 =  50.000
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 93.024 | Val Loss: 0.006 | Val Acc: 64.665
Training:
Accuracies by groups:
0, 0  acc: 16442 / 23099 =  71.181
0, 1  acc:  9006 / 10757 =  83.722
1, 0  acc: 118378 / 120646 =  98.120
1, 1  acc:  7589 /  8268 =  91.788
--------------------------------------
Average acc: 151415 / 162770 =  93.024
Robust  acc: 16442 / 23099 =  71.181
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4616 /  8535 =  54.083
0, 1  acc:  5187 /  8276 =  62.675
1, 0  acc:  2862 /  2874 =  99.582
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 12847 / 19867 =  64.665
Robust  acc:  4616 /  8535 =  54.083
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 65.565
Robust Acc: 59.353 | Best Acc: 99.637
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  5797 /  9767 =  59.353
0, 1  acc:  4643 /  7535 =  61.619
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13088 / 19962 =  65.565
Robust  acc:  5797 /  9767 =  59.353
------------------------------------
Accuracies by groups:
0, 0  acc:  5797 /  9767 =  59.353
0, 1  acc:  4643 /  7535 =  61.619
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13088 / 19962 =  65.565
Robust  acc:  5797 /  9767 =  59.353
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5797 /  9767 =  59.353
0, 1  acc:  4643 /  7535 =  61.619
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 13088 / 19962 =  65.565
Robust  acc:  5797 /  9767 =  59.353
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 92.770 | Val Loss: 0.004 | Val Acc: 79.494
Training:
Accuracies by groups:
0, 0  acc: 16155 / 23113 =  69.896
0, 1  acc:  8845 / 10699 =  82.671
1, 0  acc: 118501 / 120782 =  98.111
1, 1  acc:  7501 /  8176 =  91.744
--------------------------------------
Average acc: 151002 / 162770 =  92.770
Robust  acc: 16155 / 23113 =  69.896
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6185 /  8535 =  72.466
0, 1  acc:  6581 /  8276 =  79.519
1, 0  acc:  2847 /  2874 =  99.061
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15793 / 19867 =  79.494
Robust  acc:  6185 /  8535 =  72.466
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 81.375
Robust Acc: 77.526 | Best Acc: 99.032
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  7572 /  9767 =  77.526
0, 1  acc:  6042 /  7535 =  80.186
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 16244 / 19962 =  81.375
Robust  acc:  7572 /  9767 =  77.526
------------------------------------
Accuracies by groups:
0, 0  acc:  7572 /  9767 =  77.526
0, 1  acc:  6042 /  7535 =  80.186
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 16244 / 19962 =  81.375
Robust  acc:  7572 /  9767 =  77.526
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7572 /  9767 =  77.526
0, 1  acc:  6042 /  7535 =  80.186
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 16244 / 19962 =  81.375
Robust  acc:  7572 /  9767 =  77.526
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 92.691 | Val Loss: 0.003 | Val Acc: 92.248
Training:
Accuracies by groups:
0, 0  acc: 16178 / 23285 =  69.478
0, 1  acc:  8862 / 10707 =  82.768
1, 0  acc: 118380 / 120693 =  98.084
1, 1  acc:  7453 /  8085 =  92.183
--------------------------------------
Average acc: 150873 / 162770 =  92.691
Robust  acc: 16178 / 23285 =  69.478
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7666 /  8535 =  89.818
0, 1  acc:  7854 /  8276 =  94.901
1, 0  acc:  2665 /  2874 =  92.728
1, 1  acc:   142 /   182 =  78.022
------------------------------------
Average acc: 18327 / 19867 =  92.248
Robust  acc:   142 /   182 =  78.022
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 92.826
Robust Acc: 73.333 | Best Acc: 94.944
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  8980 /  9767 =  91.942
0, 1  acc:  7154 /  7535 =  94.944
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18530 / 19962 =  92.826
Robust  acc:   132 /   180 =  73.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8980 /  9767 =  91.942
0, 1  acc:  7154 /  7535 =  94.944
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18530 / 19962 =  92.826
Robust  acc:   132 /   180 =  73.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8980 /  9767 =  91.942
0, 1  acc:  7154 /  7535 =  94.944
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   132 /   180 =  73.333
------------------------------------
Average acc: 18530 / 19962 =  92.826
Robust  acc:   132 /   180 =  73.333
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 92.661 | Val Loss: 0.003 | Val Acc: 88.332
Training:
Accuracies by groups:
0, 0  acc: 16011 / 23003 =  69.604
0, 1  acc:  8749 / 10764 =  81.280
1, 0  acc: 118652 / 120926 =  98.120
1, 1  acc:  7413 /  8077 =  91.779
--------------------------------------
Average acc: 150825 / 162770 =  92.661
Robust  acc: 16011 / 23003 =  69.604
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7147 /  8535 =  83.738
0, 1  acc:  7507 /  8276 =  90.708
1, 0  acc:  2740 /  2874 =  95.338
1, 1  acc:   155 /   182 =  85.165
------------------------------------
Average acc: 17549 / 19867 =  88.332
Robust  acc:  7147 /  8535 =  83.738
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.605
Robust Acc: 80.000 | Best Acc: 94.274
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6876 /  7535 =  91.254
1, 0  acc:  2338 /  2480 =  94.274
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   144 /   180 =  80.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6876 /  7535 =  91.254
1, 0  acc:  2338 /  2480 =  94.274
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   144 /   180 =  80.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8529 /  9767 =  87.325
0, 1  acc:  6876 /  7535 =  91.254
1, 0  acc:  2338 /  2480 =  94.274
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 17887 / 19962 =  89.605
Robust  acc:   144 /   180 =  80.000
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 92.569 | Val Loss: 0.004 | Val Acc: 81.054
Training:
Accuracies by groups:
0, 0  acc: 15996 / 23281 =  68.708
0, 1  acc:  8647 / 10684 =  80.934
1, 0  acc: 118629 / 120783 =  98.217
1, 1  acc:  7402 /  8022 =  92.271
--------------------------------------
Average acc: 150674 / 162770 =  92.569
Robust  acc: 15996 / 23281 =  68.708
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6379 /  8535 =  74.739
0, 1  acc:  6716 /  8276 =  81.150
1, 0  acc:  2831 /  2874 =  98.504
1, 1  acc:   177 /   182 =  97.253
------------------------------------
Average acc: 16103 / 19867 =  81.054
Robust  acc:  6379 /  8535 =  74.739
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 82.251
Robust Acc: 79.738 | Best Acc: 97.944
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  7788 /  9767 =  79.738
0, 1  acc:  6033 /  7535 =  80.066
1, 0  acc:  2429 /  2480 =  97.944
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16419 / 19962 =  82.251
Robust  acc:  7788 /  9767 =  79.738
------------------------------------
Accuracies by groups:
0, 0  acc:  7788 /  9767 =  79.738
0, 1  acc:  6033 /  7535 =  80.066
1, 0  acc:  2429 /  2480 =  97.944
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16419 / 19962 =  82.251
Robust  acc:  7788 /  9767 =  79.738
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7788 /  9767 =  79.738
0, 1  acc:  6033 /  7535 =  80.066
1, 0  acc:  2429 /  2480 =  97.944
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16419 / 19962 =  82.251
Robust  acc:  7788 /  9767 =  79.738
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 92.510 | Val Loss: 0.003 | Val Acc: 88.987
Training:
Accuracies by groups:
0, 0  acc: 15980 / 23350 =  68.437
0, 1  acc:  8517 / 10568 =  80.592
1, 0  acc: 118272 / 120432 =  98.206
1, 1  acc:  7809 /  8420 =  92.743
--------------------------------------
Average acc: 150578 / 162770 =  92.510
Robust  acc: 15980 / 23350 =  68.437
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7135 /  8535 =  83.597
0, 1  acc:  7583 /  8276 =  91.626
1, 0  acc:  2799 /  2874 =  97.390
1, 1  acc:   162 /   182 =  89.011
------------------------------------
Average acc: 17679 / 19867 =  88.987
Robust  acc:  7135 /  8535 =  83.597
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.307
Robust Acc: 84.444 | Best Acc: 96.452
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  8540 /  9767 =  87.437
0, 1  acc:  6943 /  7535 =  92.143
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18027 / 19962 =  90.307
Robust  acc:   152 /   180 =  84.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8540 /  9767 =  87.437
0, 1  acc:  6943 /  7535 =  92.143
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18027 / 19962 =  90.307
Robust  acc:   152 /   180 =  84.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8540 /  9767 =  87.437
0, 1  acc:  6943 /  7535 =  92.143
1, 0  acc:  2392 /  2480 =  96.452
1, 1  acc:   152 /   180 =  84.444
------------------------------------
Average acc: 18027 / 19962 =  90.307
Robust  acc:   152 /   180 =  84.444
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 92.609 | Val Loss: 0.002 | Val Acc: 94.282
Training:
Accuracies by groups:
0, 0  acc: 15713 / 23047 =  68.178
0, 1  acc:  8472 / 10561 =  80.220
1, 0  acc: 118955 / 121003 =  98.307
1, 1  acc:  7599 /  8159 =  93.136
--------------------------------------
Average acc: 150739 / 162770 =  92.609
Robust  acc: 15713 / 23047 =  68.178
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7967 /  8535 =  93.345
0, 1  acc:  8142 /  8276 =  98.381
1, 0  acc:  2512 /  2874 =  87.404
1, 1  acc:   110 /   182 =  60.440
------------------------------------
Average acc: 18731 / 19867 =  94.282
Robust  acc:   110 /   182 =  60.440
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.775
Robust Acc: 56.667 | Best Acc: 98.155
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  9271 /  9767 =  94.922
0, 1  acc:  7396 /  7535 =  98.155
1, 0  acc:  2150 /  2480 =  86.694
1, 1  acc:   102 /   180 =  56.667
------------------------------------
Average acc: 18919 / 19962 =  94.775
Robust  acc:   102 /   180 =  56.667
------------------------------------
Accuracies by groups:
0, 0  acc:  9271 /  9767 =  94.922
0, 1  acc:  7396 /  7535 =  98.155
1, 0  acc:  2150 /  2480 =  86.694
1, 1  acc:   102 /   180 =  56.667
------------------------------------
Average acc: 18919 / 19962 =  94.775
Robust  acc:   102 /   180 =  56.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9271 /  9767 =  94.922
0, 1  acc:  7396 /  7535 =  98.155
1, 0  acc:  2150 /  2480 =  86.694
1, 1  acc:   102 /   180 =  56.667
------------------------------------
Average acc: 18919 / 19962 =  94.775
Robust  acc:   102 /   180 =  56.667
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 92.566 | Val Loss: 0.005 | Val Acc: 76.650
Training:
Accuracies by groups:
0, 0  acc: 15629 / 22982 =  68.005
0, 1  acc:  8582 / 10678 =  80.371
1, 0  acc: 118813 / 120867 =  98.301
1, 1  acc:  7646 /  8243 =  92.757
--------------------------------------
Average acc: 150670 / 162770 =  92.566
Robust  acc: 15629 / 22982 =  68.005
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5734 /  8535 =  67.182
0, 1  acc:  6474 /  8276 =  78.226
1, 0  acc:  2846 /  2874 =  99.026
1, 1  acc:   174 /   182 =  95.604
------------------------------------
Average acc: 15228 / 19867 =  76.650
Robust  acc:  5734 /  8535 =  67.182
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.058
Robust Acc: 72.735 | Best Acc: 98.790
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  7104 /  9767 =  72.735
0, 1  acc:  5861 /  7535 =  77.784
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15582 / 19962 =  78.058
Robust  acc:  7104 /  9767 =  72.735
------------------------------------
Accuracies by groups:
0, 0  acc:  7104 /  9767 =  72.735
0, 1  acc:  5861 /  7535 =  77.784
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15582 / 19962 =  78.058
Robust  acc:  7104 /  9767 =  72.735
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7104 /  9767 =  72.735
0, 1  acc:  5861 /  7535 =  77.784
1, 0  acc:  2450 /  2480 =  98.790
1, 1  acc:   167 /   180 =  92.778
------------------------------------
Average acc: 15582 / 19962 =  78.058
Robust  acc:  7104 /  9767 =  72.735
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 92.434 | Val Loss: 0.003 | Val Acc: 94.408
Training:
Accuracies by groups:
0, 0  acc: 15730 / 23267 =  67.606
0, 1  acc:  8490 / 10668 =  79.584
1, 0  acc: 118540 / 120575 =  98.312
1, 1  acc:  7695 /  8260 =  93.160
--------------------------------------
Average acc: 150455 / 162770 =  92.434
Robust  acc: 15730 / 23267 =  67.606
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8166 /  8535 =  95.677
0, 1  acc:  8193 /  8276 =  98.997
1, 0  acc:  2321 /  2874 =  80.759
1, 1  acc:    76 /   182 =  41.758
------------------------------------
Average acc: 18756 / 19867 =  94.408
Robust  acc:    76 /   182 =  41.758
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 94.830
Robust Acc: 37.778 | Best Acc: 98.845
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  9446 /  9767 =  96.713
0, 1  acc:  7448 /  7535 =  98.845
1, 0  acc:  1968 /  2480 =  79.355
1, 1  acc:    68 /   180 =  37.778
------------------------------------
Average acc: 18930 / 19962 =  94.830
Robust  acc:    68 /   180 =  37.778
------------------------------------
Accuracies by groups:
0, 0  acc:  9446 /  9767 =  96.713
0, 1  acc:  7448 /  7535 =  98.845
1, 0  acc:  1968 /  2480 =  79.355
1, 1  acc:    68 /   180 =  37.778
------------------------------------
Average acc: 18930 / 19962 =  94.830
Robust  acc:    68 /   180 =  37.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9446 /  9767 =  96.713
0, 1  acc:  7448 /  7535 =  98.845
1, 0  acc:  1968 /  2480 =  79.355
1, 1  acc:    68 /   180 =  37.778
------------------------------------
Average acc: 18930 / 19962 =  94.830
Robust  acc:    68 /   180 =  37.778
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 92.556 | Val Loss: 0.003 | Val Acc: 86.138
Training:
Accuracies by groups:
0, 0  acc: 15602 / 23030 =  67.746
0, 1  acc:  8622 / 10712 =  80.489
1, 0  acc: 118885 / 120879 =  98.350
1, 1  acc:  7545 /  8149 =  92.588
--------------------------------------
Average acc: 150654 / 162770 =  92.556
Robust  acc: 15602 / 23030 =  67.746
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7026 /  8535 =  82.320
0, 1  acc:  7136 /  8276 =  86.225
1, 0  acc:  2783 /  2874 =  96.834
1, 1  acc:   168 /   182 =  92.308
------------------------------------
Average acc: 17113 / 19867 =  86.138
Robust  acc:  7026 /  8535 =  82.320
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.531
Robust Acc: 86.311 | Best Acc: 95.806
-------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  8430 /  9767 =  86.311
0, 1  acc:  6507 /  7535 =  86.357
1, 0  acc:  2376 /  2480 =  95.806
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17473 / 19962 =  87.531
Robust  acc:  8430 /  9767 =  86.311
------------------------------------
Accuracies by groups:
0, 0  acc:  8430 /  9767 =  86.311
0, 1  acc:  6507 /  7535 =  86.357
1, 0  acc:  2376 /  2480 =  95.806
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17473 / 19962 =  87.531
Robust  acc:  8430 /  9767 =  86.311
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8430 /  9767 =  86.311
0, 1  acc:  6507 /  7535 =  86.357
1, 0  acc:  2376 /  2480 =  95.806
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17473 / 19962 =  87.531
Robust  acc:  8430 /  9767 =  86.311
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 92.569 | Val Loss: 0.005 | Val Acc: 74.984
Training:
Accuracies by groups:
0, 0  acc: 15670 / 23080 =  67.894
0, 1  acc:  8424 / 10560 =  79.773
1, 0  acc: 118779 / 120773 =  98.349
1, 1  acc:  7801 /  8357 =  93.347
--------------------------------------
Average acc: 150674 / 162770 =  92.569
Robust  acc: 15670 / 23080 =  67.894
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5337 /  8535 =  62.531
0, 1  acc:  6526 /  8276 =  78.855
1, 0  acc:  2858 /  2874 =  99.443
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 14897 / 19867 =  74.984
Robust  acc:  5337 /  8535 =  62.531
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.147
Robust Acc: 69.049 | Best Acc: 99.355
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  6744 /  9767 =  69.049
0, 1  acc:  6018 /  7535 =  79.867
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15400 / 19962 =  77.147
Robust  acc:  6744 /  9767 =  69.049
------------------------------------
Accuracies by groups:
0, 0  acc:  6744 /  9767 =  69.049
0, 1  acc:  6018 /  7535 =  79.867
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15400 / 19962 =  77.147
Robust  acc:  6744 /  9767 =  69.049
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6744 /  9767 =  69.049
0, 1  acc:  6018 /  7535 =  79.867
1, 0  acc:  2464 /  2480 =  99.355
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15400 / 19962 =  77.147
Robust  acc:  6744 /  9767 =  69.049
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 92.589 | Val Loss: 0.003 | Val Acc: 91.780
Training:
Accuracies by groups:
0, 0  acc: 15698 / 23160 =  67.781
0, 1  acc:  8199 / 10260 =  79.912
1, 0  acc: 119378 / 121362 =  98.365
1, 1  acc:  7432 /  7988 =  93.040
--------------------------------------
Average acc: 150707 / 162770 =  92.589
Robust  acc: 15698 / 23160 =  67.781
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7553 /  8535 =  88.494
0, 1  acc:  7837 /  8276 =  94.696
1, 0  acc:  2705 /  2874 =  94.120
1, 1  acc:   139 /   182 =  76.374
------------------------------------
Average acc: 18234 / 19867 =  91.780
Robust  acc:   139 /   182 =  76.374
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 92.631
Robust Acc: 75.556 | Best Acc: 94.957
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  8876 /  9767 =  90.877
0, 1  acc:  7155 /  7535 =  94.957
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18491 / 19962 =  92.631
Robust  acc:   136 /   180 =  75.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8876 /  9767 =  90.877
0, 1  acc:  7155 /  7535 =  94.957
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18491 / 19962 =  92.631
Robust  acc:   136 /   180 =  75.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8876 /  9767 =  90.877
0, 1  acc:  7155 /  7535 =  94.957
1, 0  acc:  2324 /  2480 =  93.710
1, 1  acc:   136 /   180 =  75.556
------------------------------------
Average acc: 18491 / 19962 =  92.631
Robust  acc:   136 /   180 =  75.556
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 92.564 | Val Loss: 0.005 | Val Acc: 68.667
Training:
Accuracies by groups:
0, 0  acc: 15820 / 23200 =  68.190
0, 1  acc:  8525 / 10664 =  79.942
1, 0  acc: 118890 / 120892 =  98.344
1, 1  acc:  7432 /  8014 =  92.738
--------------------------------------
Average acc: 150667 / 162770 =  92.564
Robust  acc: 15820 / 23200 =  68.190
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4893 /  8535 =  57.329
0, 1  acc:  5704 /  8276 =  68.922
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13642 / 19867 =  68.667
Robust  acc:  4893 /  8535 =  57.329
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 70.484
Robust Acc: 64.114 | Best Acc: 99.516
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  6262 /  9767 =  64.114
0, 1  acc:  5164 /  7535 =  68.534
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14070 / 19962 =  70.484
Robust  acc:  6262 /  9767 =  64.114
------------------------------------
Accuracies by groups:
0, 0  acc:  6262 /  9767 =  64.114
0, 1  acc:  5164 /  7535 =  68.534
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14070 / 19962 =  70.484
Robust  acc:  6262 /  9767 =  64.114
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6262 /  9767 =  64.114
0, 1  acc:  5164 /  7535 =  68.534
1, 0  acc:  2468 /  2480 =  99.516
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14070 / 19962 =  70.484
Robust  acc:  6262 /  9767 =  64.114
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 92.602 | Val Loss: 0.005 | Val Acc: 75.824
Training:
Accuracies by groups:
0, 0  acc: 15870 / 23311 =  68.079
0, 1  acc:  8448 / 10479 =  80.618
1, 0  acc: 118879 / 120886 =  98.340
1, 1  acc:  7532 /  8094 =  93.057
--------------------------------------
Average acc: 150729 / 162770 =  92.602
Robust  acc: 15870 / 23311 =  68.079
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5510 /  8535 =  64.558
0, 1  acc:  6526 /  8276 =  78.855
1, 0  acc:  2849 /  2874 =  99.130
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15064 / 19867 =  75.824
Robust  acc:  5510 /  8535 =  64.558
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.487
Robust Acc: 70.400 | Best Acc: 99.315
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5960 /  7535 =  79.098
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15468 / 19962 =  77.487
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5960 /  7535 =  79.098
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15468 / 19962 =  77.487
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6876 /  9767 =  70.400
0, 1  acc:  5960 /  7535 =  79.098
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15468 / 19962 =  77.487
Robust  acc:  6876 /  9767 =  70.400
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 92.702 | Val Loss: 0.004 | Val Acc: 81.542
Training:
Accuracies by groups:
0, 0  acc: 15855 / 23145 =  68.503
0, 1  acc:  8515 / 10540 =  80.787
1, 0  acc: 118964 / 120950 =  98.358
1, 1  acc:  7557 /  8135 =  92.895
--------------------------------------
Average acc: 150891 / 162770 =  92.702
Robust  acc: 15855 / 23145 =  68.503
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6462 /  8535 =  75.712
0, 1  acc:  6739 /  8276 =  81.428
1, 0  acc:  2824 /  2874 =  98.260
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 16200 / 19867 =  81.542
Robust  acc:  6462 /  8535 =  75.712
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 83.574
Robust Acc: 81.110 | Best Acc: 98.024
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  7922 /  9767 =  81.110
0, 1  acc:  6164 /  7535 =  81.805
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16683 / 19962 =  83.574
Robust  acc:  7922 /  9767 =  81.110
------------------------------------
Accuracies by groups:
0, 0  acc:  7922 /  9767 =  81.110
0, 1  acc:  6164 /  7535 =  81.805
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16683 / 19962 =  83.574
Robust  acc:  7922 /  9767 =  81.110
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7922 /  9767 =  81.110
0, 1  acc:  6164 /  7535 =  81.805
1, 0  acc:  2431 /  2480 =  98.024
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16683 / 19962 =  83.574
Robust  acc:  7922 /  9767 =  81.110
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 92.653 | Val Loss: 0.005 | Val Acc: 75.537
Training:
Accuracies by groups:
0, 0  acc: 15528 / 22807 =  68.084
0, 1  acc:  8461 / 10586 =  79.926
1, 0  acc: 119183 / 121163 =  98.366
1, 1  acc:  7640 /  8214 =  93.012
--------------------------------------
Average acc: 150812 / 162770 =  92.653
Robust  acc: 15528 / 22807 =  68.084
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5480 /  8535 =  64.206
0, 1  acc:  6503 /  8276 =  78.577
1, 0  acc:  2849 /  2874 =  99.130
1, 1  acc:   175 /   182 =  96.154
------------------------------------
Average acc: 15007 / 19867 =  75.537
Robust  acc:  5480 /  8535 =  64.206
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.387
Robust Acc: 70.390 | Best Acc: 99.032
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  6875 /  9767 =  70.390
0, 1  acc:  5948 /  7535 =  78.938
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15448 / 19962 =  77.387
Robust  acc:  6875 /  9767 =  70.390
------------------------------------
Accuracies by groups:
0, 0  acc:  6875 /  9767 =  70.390
0, 1  acc:  5948 /  7535 =  78.938
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15448 / 19962 =  77.387
Robust  acc:  6875 /  9767 =  70.390
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6875 /  9767 =  70.390
0, 1  acc:  5948 /  7535 =  78.938
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 15448 / 19962 =  77.387
Robust  acc:  6875 /  9767 =  70.390
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 92.743 | Val Loss: 0.006 | Val Acc: 65.204
Training:
Accuracies by groups:
0, 0  acc: 15823 / 23038 =  68.682
0, 1  acc:  8652 / 10764 =  80.379
1, 0  acc: 118837 / 120753 =  98.413
1, 1  acc:  7645 /  8215 =  93.061
--------------------------------------
Average acc: 150957 / 162770 =  92.743
Robust  acc: 15823 / 23038 =  68.682
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4784 /  8535 =  56.052
0, 1  acc:  5125 /  8276 =  61.926
1, 0  acc:  2864 /  2874 =  99.652
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 12954 / 19867 =  65.204
Robust  acc:  4784 /  8535 =  56.052
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 66.501
Robust Acc: 61.035 | Best Acc: 99.395
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  6033 /  9767 =  61.769
0, 1  acc:  4599 /  7535 =  61.035
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13275 / 19962 =  66.501
Robust  acc:  4599 /  7535 =  61.035
------------------------------------
Accuracies by groups:
0, 0  acc:  6033 /  9767 =  61.769
0, 1  acc:  4599 /  7535 =  61.035
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13275 / 19962 =  66.501
Robust  acc:  4599 /  7535 =  61.035
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6033 /  9767 =  61.769
0, 1  acc:  4599 /  7535 =  61.035
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13275 / 19962 =  66.501
Robust  acc:  4599 /  7535 =  61.035
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 92.717 | Val Loss: 0.004 | Val Acc: 83.183
Training:
Accuracies by groups:
0, 0  acc: 15834 / 23012 =  68.808
0, 1  acc:  8442 / 10516 =  80.278
1, 0  acc: 118942 / 120972 =  98.322
1, 1  acc:  7698 /  8270 =  93.083
--------------------------------------
Average acc: 150916 / 162770 =  92.717
Robust  acc: 15834 / 23012 =  68.808
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6648 /  8535 =  77.891
0, 1  acc:  6872 /  8276 =  83.035
1, 0  acc:  2827 /  2874 =  98.365
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 16526 / 19867 =  83.183
Robust  acc:  6648 /  8535 =  77.891
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.781
Robust Acc: 82.728 | Best Acc: 97.661
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  8080 /  9767 =  82.728
0, 1  acc:  6256 /  7535 =  83.026
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16924 / 19962 =  84.781
Robust  acc:  8080 /  9767 =  82.728
------------------------------------
Accuracies by groups:
0, 0  acc:  8080 /  9767 =  82.728
0, 1  acc:  6256 /  7535 =  83.026
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16924 / 19962 =  84.781
Robust  acc:  8080 /  9767 =  82.728
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8080 /  9767 =  82.728
0, 1  acc:  6256 /  7535 =  83.026
1, 0  acc:  2422 /  2480 =  97.661
1, 1  acc:   166 /   180 =  92.222
------------------------------------
Average acc: 16924 / 19962 =  84.781
Robust  acc:  8080 /  9767 =  82.728
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 92.632 | Val Loss: 0.009 | Val Acc: 41.420
Training:
Accuracies by groups:
0, 0  acc: 15712 / 23065 =  68.121
0, 1  acc:  8600 / 10631 =  80.895
1, 0  acc: 118985 / 121014 =  98.323
1, 1  acc:  7480 /  8060 =  92.804
--------------------------------------
Average acc: 150777 / 162770 =  92.632
Robust  acc: 15712 / 23065 =  68.121
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  2348 /  8535 =  27.510
0, 1  acc:  2826 /  8276 =  34.147
1, 0  acc:  2873 /  2874 =  99.965
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  8229 / 19867 =  41.420
Robust  acc:  2348 /  8535 =  27.510
------------------------------------
-------------------------------------------
Avg Test Loss: 0.009 | Avg Test Acc: 42.651
Robust Acc: 32.968 | Best Acc: 99.919
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  3220 /  9767 =  32.968
0, 1  acc:  2638 /  7535 =  35.010
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8514 / 19962 =  42.651
Robust  acc:  3220 /  9767 =  32.968
------------------------------------
Accuracies by groups:
0, 0  acc:  3220 /  9767 =  32.968
0, 1  acc:  2638 /  7535 =  35.010
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8514 / 19962 =  42.651
Robust  acc:  3220 /  9767 =  32.968
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  3220 /  9767 =  32.968
0, 1  acc:  2638 /  7535 =  35.010
1, 0  acc:  2478 /  2480 =  99.919
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  8514 / 19962 =  42.651
Robust  acc:  3220 /  9767 =  32.968
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 92.608 | Val Loss: 0.003 | Val Acc: 92.842
Training:
Accuracies by groups:
0, 0  acc: 15805 / 23158 =  68.249
0, 1  acc:  8412 / 10486 =  80.221
1, 0  acc: 118838 / 120857 =  98.329
1, 1  acc:  7683 /  8269 =  92.913
--------------------------------------
Average acc: 150738 / 162770 =  92.608
Robust  acc: 15805 / 23158 =  68.249
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7629 /  8535 =  89.385
0, 1  acc:  7999 /  8276 =  96.653
1, 0  acc:  2697 /  2874 =  93.841
1, 1  acc:   120 /   182 =  65.934
------------------------------------
Average acc: 18445 / 19867 =  92.842
Robust  acc:   120 /   182 =  65.934
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.633
Robust Acc: 65.000 | Best Acc: 96.629
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  9001 /  9767 =  92.157
0, 1  acc:  7281 /  7535 =  96.629
1, 0  acc:  2292 /  2480 =  92.419
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:   117 /   180 =  65.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9001 /  9767 =  92.157
0, 1  acc:  7281 /  7535 =  96.629
1, 0  acc:  2292 /  2480 =  92.419
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:   117 /   180 =  65.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9001 /  9767 =  92.157
0, 1  acc:  7281 /  7535 =  96.629
1, 0  acc:  2292 /  2480 =  92.419
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18691 / 19962 =  93.633
Robust  acc:   117 /   180 =  65.000
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 92.663 | Val Loss: 0.008 | Val Acc: 51.060
Training:
Accuracies by groups:
0, 0  acc: 15934 / 23220 =  68.622
0, 1  acc:  8647 / 10716 =  80.692
1, 0  acc: 118560 / 120534 =  98.362
1, 1  acc:  7687 /  8300 =  92.614
--------------------------------------
Average acc: 150828 / 162770 =  92.663
Robust  acc: 15934 / 23220 =  68.622
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3750 /  8535 =  43.937
0, 1  acc:  3341 /  8276 =  40.370
1, 0  acc:  2871 /  2874 =  99.896
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 10144 / 19867 =  51.060
Robust  acc:  3341 /  8276 =  40.370
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 52.505
Robust Acc: 39.947 | Best Acc: 99.879
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  4816 /  9767 =  49.309
0, 1  acc:  3010 /  7535 =  39.947
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 10481 / 19962 =  52.505
Robust  acc:  3010 /  7535 =  39.947
------------------------------------
Accuracies by groups:
0, 0  acc:  4816 /  9767 =  49.309
0, 1  acc:  3010 /  7535 =  39.947
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 10481 / 19962 =  52.505
Robust  acc:  3010 /  7535 =  39.947
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4816 /  9767 =  49.309
0, 1  acc:  3010 /  7535 =  39.947
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 10481 / 19962 =  52.505
Robust  acc:  3010 /  7535 =  39.947
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 92.808 | Val Loss: 0.003 | Val Acc: 93.965
Training:
Accuracies by groups:
0, 0  acc: 15867 / 23049 =  68.840
0, 1  acc:  8709 / 10763 =  80.916
1, 0  acc: 118864 / 120807 =  98.392
1, 1  acc:  7623 /  8151 =  93.522
--------------------------------------
Average acc: 151063 / 162770 =  92.808
Robust  acc: 15867 / 23049 =  68.840
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  8058 /  8535 =  94.411
0, 1  acc:  8068 /  8276 =  97.487
1, 0  acc:  2431 /  2874 =  84.586
1, 1  acc:   111 /   182 =  60.989
------------------------------------
Average acc: 18668 / 19867 =  93.965
Robust  acc:   111 /   182 =  60.989
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.384
Robust Acc: 50.000 | Best Acc: 97.717
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  9325 /  9767 =  95.475
0, 1  acc:  7363 /  7535 =  97.717
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18841 / 19962 =  94.384
Robust  acc:    90 /   180 =  50.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9325 /  9767 =  95.475
0, 1  acc:  7363 /  7535 =  97.717
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18841 / 19962 =  94.384
Robust  acc:    90 /   180 =  50.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9325 /  9767 =  95.475
0, 1  acc:  7363 /  7535 =  97.717
1, 0  acc:  2063 /  2480 =  83.185
1, 1  acc:    90 /   180 =  50.000
------------------------------------
Average acc: 18841 / 19962 =  94.384
Robust  acc:    90 /   180 =  50.000
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 92.714 | Val Loss: 0.009 | Val Acc: 47.717
Training:
Accuracies by groups:
0, 0  acc: 15753 / 23001 =  68.488
0, 1  acc:  8457 / 10473 =  80.751
1, 0  acc: 119128 / 121157 =  98.325
1, 1  acc:  7572 /  8139 =  93.034
--------------------------------------
Average acc: 150910 / 162770 =  92.714
Robust  acc: 15753 / 23001 =  68.488
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3051 /  8535 =  35.747
0, 1  acc:  3373 /  8276 =  40.756
1, 0  acc:  2874 /  2874 = 100.000
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  9480 / 19867 =  47.717
Robust  acc:  3051 /  8535 =  35.747
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 49.048
Robust Acc: 40.319 | Best Acc: 99.960
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  4096 /  9767 =  41.937
0, 1  acc:  3038 /  7535 =  40.319
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9791 / 19962 =  49.048
Robust  acc:  3038 /  7535 =  40.319
------------------------------------
Accuracies by groups:
0, 0  acc:  4096 /  9767 =  41.937
0, 1  acc:  3038 /  7535 =  40.319
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9791 / 19962 =  49.048
Robust  acc:  3038 /  7535 =  40.319
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4096 /  9767 =  41.937
0, 1  acc:  3038 /  7535 =  40.319
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9791 / 19962 =  49.048
Robust  acc:  3038 /  7535 =  40.319
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 92.810 | Val Loss: 0.003 | Val Acc: 86.898
Training:
Accuracies by groups:
0, 0  acc: 15907 / 23112 =  68.826
0, 1  acc:  8701 / 10698 =  81.333
1, 0  acc: 118984 / 120931 =  98.390
1, 1  acc:  7475 /  8029 =  93.100
--------------------------------------
Average acc: 151067 / 162770 =  92.810
Robust  acc: 15907 / 23112 =  68.826
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6975 /  8535 =  81.722
0, 1  acc:  7304 /  8276 =  88.255
1, 0  acc:  2814 /  2874 =  97.912
1, 1  acc:   171 /   182 =  93.956
------------------------------------
Average acc: 17264 / 19867 =  86.898
Robust  acc:  6975 /  8535 =  81.722
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 88.183
Robust Acc: 85.942 | Best Acc: 96.694
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  8394 /  9767 =  85.942
0, 1  acc:  6655 /  7535 =  88.321
1, 0  acc:  2398 /  2480 =  96.694
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17603 / 19962 =  88.183
Robust  acc:  8394 /  9767 =  85.942
------------------------------------
Accuracies by groups:
0, 0  acc:  8394 /  9767 =  85.942
0, 1  acc:  6655 /  7535 =  88.321
1, 0  acc:  2398 /  2480 =  96.694
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17603 / 19962 =  88.183
Robust  acc:  8394 /  9767 =  85.942
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8394 /  9767 =  85.942
0, 1  acc:  6655 /  7535 =  88.321
1, 0  acc:  2398 /  2480 =  96.694
1, 1  acc:   156 /   180 =  86.667
------------------------------------
Average acc: 17603 / 19962 =  88.183
Robust  acc:  8394 /  9767 =  85.942
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 92.799 | Val Loss: 0.008 | Val Acc: 51.039
Training:
Accuracies by groups:
0, 0  acc: 15945 / 23096 =  69.038
0, 1  acc:  8602 / 10604 =  81.120
1, 0  acc: 118891 / 120865 =  98.367
1, 1  acc:  7611 /  8205 =  92.761
--------------------------------------
Average acc: 151049 / 162770 =  92.799
Robust  acc: 15945 / 23096 =  69.038
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3530 /  8535 =  41.359
0, 1  acc:  3557 /  8276 =  42.980
1, 0  acc:  2872 /  2874 =  99.930
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 10140 / 19867 =  51.039
Robust  acc:  3530 /  8535 =  41.359
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 52.264
Robust Acc: 42.827 | Best Acc: 99.879
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  4552 /  9767 =  46.606
0, 1  acc:  3227 /  7535 =  42.827
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 10433 / 19962 =  52.264
Robust  acc:  3227 /  7535 =  42.827
------------------------------------
Accuracies by groups:
0, 0  acc:  4552 /  9767 =  46.606
0, 1  acc:  3227 /  7535 =  42.827
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 10433 / 19962 =  52.264
Robust  acc:  3227 /  7535 =  42.827
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  4552 /  9767 =  46.606
0, 1  acc:  3227 /  7535 =  42.827
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 10433 / 19962 =  52.264
Robust  acc:  3227 /  7535 =  42.827
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 92.684 | Val Loss: 0.006 | Val Acc: 69.769
Training:
Accuracies by groups:
0, 0  acc: 15943 / 23102 =  69.011
0, 1  acc:  8587 / 10633 =  80.758
1, 0  acc: 118786 / 120883 =  98.265
1, 1  acc:  7545 /  8152 =  92.554
--------------------------------------
Average acc: 150861 / 162770 =  92.684
Robust  acc: 15943 / 23102 =  69.011
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5515 /  8535 =  64.616
0, 1  acc:  5309 /  8276 =  64.149
1, 0  acc:  2856 /  2874 =  99.374
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13861 / 19867 =  69.769
Robust  acc:  5309 /  8276 =  64.149
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 70.940
Robust Acc: 62.203 | Best Acc: 99.032
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  6842 /  9767 =  70.052
0, 1  acc:  4687 /  7535 =  62.203
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14161 / 19962 =  70.940
Robust  acc:  4687 /  7535 =  62.203
------------------------------------
Accuracies by groups:
0, 0  acc:  6842 /  9767 =  70.052
0, 1  acc:  4687 /  7535 =  62.203
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14161 / 19962 =  70.940
Robust  acc:  4687 /  7535 =  62.203
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6842 /  9767 =  70.052
0, 1  acc:  4687 /  7535 =  62.203
1, 0  acc:  2456 /  2480 =  99.032
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 14161 / 19962 =  70.940
Robust  acc:  4687 /  7535 =  62.203
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 92.826 | Val Loss: 0.005 | Val Acc: 75.658
Training:
Accuracies by groups:
0, 0  acc: 16052 / 23198 =  69.196
0, 1  acc:  8650 / 10690 =  80.917
1, 0  acc: 118830 / 120759 =  98.403
1, 1  acc:  7561 /  8123 =  93.081
--------------------------------------
Average acc: 151093 / 162770 =  92.826
Robust  acc: 16052 / 23198 =  69.196
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5764 /  8535 =  67.534
0, 1  acc:  6230 /  8276 =  75.278
1, 0  acc:  2857 /  2874 =  99.408
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15031 / 19867 =  75.658
Robust  acc:  5764 /  8535 =  67.534
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 77.858
Robust Acc: 73.503 | Best Acc: 99.395
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  7179 /  9767 =  73.503
0, 1  acc:  5724 /  7535 =  75.965
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15542 / 19962 =  77.858
Robust  acc:  7179 /  9767 =  73.503
------------------------------------
Accuracies by groups:
0, 0  acc:  7179 /  9767 =  73.503
0, 1  acc:  5724 /  7535 =  75.965
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15542 / 19962 =  77.858
Robust  acc:  7179 /  9767 =  73.503
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7179 /  9767 =  73.503
0, 1  acc:  5724 /  7535 =  75.965
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   174 /   180 =  96.667
------------------------------------
Average acc: 15542 / 19962 =  77.858
Robust  acc:  7179 /  9767 =  73.503
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 92.855 | Val Loss: 0.003 | Val Acc: 88.217
Training:
Accuracies by groups:
0, 0  acc: 16001 / 23135 =  69.164
0, 1  acc:  8696 / 10626 =  81.837
1, 0  acc: 118833 / 120818 =  98.357
1, 1  acc:  7610 /  8191 =  92.907
--------------------------------------
Average acc: 151140 / 162770 =  92.855
Robust  acc: 16001 / 23135 =  69.164
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7176 /  8535 =  84.077
0, 1  acc:  7427 /  8276 =  89.741
1, 0  acc:  2765 /  2874 =  96.207
1, 1  acc:   158 /   182 =  86.813
------------------------------------
Average acc: 17526 / 19867 =  88.217
Robust  acc:  7176 /  8535 =  84.077
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 89.610
Robust Acc: 82.778 | Best Acc: 95.524
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  8534 /  9767 =  87.376
0, 1  acc:  6836 /  7535 =  90.723
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   149 /   180 =  82.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8534 /  9767 =  87.376
0, 1  acc:  6836 /  7535 =  90.723
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   149 /   180 =  82.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8534 /  9767 =  87.376
0, 1  acc:  6836 /  7535 =  90.723
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   149 /   180 =  82.778
------------------------------------
Average acc: 17888 / 19962 =  89.610
Robust  acc:   149 /   180 =  82.778
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed48.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed48.pt
