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/seed33/stage_one_erm_model_b_epoch0_seed33.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: 33
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=33-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/seed33/stage_one_erm_model_b_epoch0_seed33.pt
======
# Calculate probability ...
======
======
p_y_a:  tensor([[0.8198, 0.0312],
        [0.1280, 0.0211]])
p_y:  tensor([0.8509, 0.1491])
# Load biased model ...
======
Epoch:   1 | Train Loss: 0.002 | Train Acc: 89.147 | Val Loss: 0.003 | Val Acc: 84.819
Training:
Accuracies by groups:
0, 0  acc: 11350 / 21658 =  52.406
0, 1  acc:  6333 / 10091 =  62.759
1, 0  acc: 119970 / 122838 =  97.665
1, 1  acc:  7452 /  8183 =  91.067
--------------------------------------
Average acc: 145105 / 162770 =  89.147
Robust  acc: 11350 / 21658 =  52.406
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6668 /  8535 =  78.125
0, 1  acc:  7185 /  8276 =  86.817
1, 0  acc:  2830 /  2874 =  98.469
1, 1  acc:   168 /   182 =  92.308
------------------------------------
Average acc: 16851 / 19867 =  84.819
Robust  acc:  6668 /  8535 =  78.125
------------------------------------
New max robust acc: 78.12536613942589
debias model - Saving best checkpoint at epoch 0
replace: True
-> Updating checkpoint debias-wga-best_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed33.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 86.319
Robust Acc: 82.738 | Best Acc: 98.105
-------------------------------------
Training, Epoch 0:
Accuracies by groups:
0, 0  acc:  8081 /  9767 =  82.738
0, 1  acc:  6559 /  7535 =  87.047
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17231 / 19962 =  86.319
Robust  acc:  8081 /  9767 =  82.738
------------------------------------
Accuracies by groups:
0, 0  acc:  8081 /  9767 =  82.738
0, 1  acc:  6559 /  7535 =  87.047
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17231 / 19962 =  86.319
Robust  acc:  8081 /  9767 =  82.738
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8081 /  9767 =  82.738
0, 1  acc:  6559 /  7535 =  87.047
1, 0  acc:  2433 /  2480 =  98.105
1, 1  acc:   158 /   180 =  87.778
------------------------------------
Average acc: 17231 / 19962 =  86.319
Robust  acc:  8081 /  9767 =  82.738
------------------------------------
Epoch:   2 | Train Loss: 0.001 | Train Acc: 93.190 | Val Loss: 0.002 | Val Acc: 87.552
Training:
Accuracies by groups:
0, 0  acc: 15164 / 21712 =  69.842
0, 1  acc:  8271 / 10124 =  81.697
1, 0  acc: 120745 / 122685 =  98.419
1, 1  acc:  7506 /  8249 =  90.993
--------------------------------------
Average acc: 151686 / 162770 =  93.190
Robust  acc: 15164 / 21712 =  69.842
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6882 /  8535 =  80.633
0, 1  acc:  7510 /  8276 =  90.744
1, 0  acc:  2833 /  2874 =  98.573
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17394 / 19867 =  87.552
Robust  acc:  6882 /  8535 =  80.633
------------------------------------
New max robust acc: 80.63268892794376
debias model - Saving best checkpoint at epoch 1
replace: True
-> Updating checkpoint debias-wga-best_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed33.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 88.518
Robust Acc: 84.437 | Best Acc: 98.145
-------------------------------------
Training, Epoch 1:
Accuracies by groups:
0, 0  acc:  8247 /  9767 =  84.437
0, 1  acc:  6829 /  7535 =  90.630
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17670 / 19962 =  88.518
Robust  acc:  8247 /  9767 =  84.437
------------------------------------
Accuracies by groups:
0, 0  acc:  8247 /  9767 =  84.437
0, 1  acc:  6829 /  7535 =  90.630
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17670 / 19962 =  88.518
Robust  acc:  8247 /  9767 =  84.437
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8247 /  9767 =  84.437
0, 1  acc:  6829 /  7535 =  90.630
1, 0  acc:  2434 /  2480 =  98.145
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17670 / 19962 =  88.518
Robust  acc:  8247 /  9767 =  84.437
------------------------------------
Epoch:   3 | Train Loss: 0.001 | Train Acc: 94.144 | Val Loss: 0.002 | Val Acc: 89.802
Training:
Accuracies by groups:
0, 0  acc: 15573 / 21335 =  72.993
0, 1  acc:  8636 / 10009 =  86.282
1, 0  acc: 121450 / 123198 =  98.581
1, 1  acc:  7579 /  8228 =  92.112
--------------------------------------
Average acc: 153238 / 162770 =  94.144
Robust  acc: 15573 / 21335 =  72.993
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7105 /  8535 =  83.245
0, 1  acc:  7749 /  8276 =  93.632
1, 0  acc:  2821 /  2874 =  98.156
1, 1  acc:   166 /   182 =  91.209
------------------------------------
Average acc: 17841 / 19867 =  89.802
Robust  acc:  7105 /  8535 =  83.245
------------------------------------
New max robust acc: 83.24545987111892
debias model - Saving best checkpoint at epoch 2
replace: True
-> Updating checkpoint debias-wga-best_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed33.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.417
Robust Acc: 83.889 | Best Acc: 97.581
-------------------------------------
Training, Epoch 2:
Accuracies by groups:
0, 0  acc:  8450 /  9767 =  86.516
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2420 /  2480 =  97.581
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18049 / 19962 =  90.417
Robust  acc:   151 /   180 =  83.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8450 /  9767 =  86.516
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2420 /  2480 =  97.581
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18049 / 19962 =  90.417
Robust  acc:   151 /   180 =  83.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8450 /  9767 =  86.516
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2420 /  2480 =  97.581
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 18049 / 19962 =  90.417
Robust  acc:   151 /   180 =  83.889
------------------------------------
Epoch:   4 | Train Loss: 0.001 | Train Acc: 94.774 | Val Loss: 0.002 | Val Acc: 90.743
Training:
Accuracies by groups:
0, 0  acc: 16466 / 21775 =  75.619
0, 1  acc:  9017 / 10208 =  88.333
1, 0  acc: 121103 / 122559 =  98.812
1, 1  acc:  7677 /  8228 =  93.303
--------------------------------------
Average acc: 154263 / 162770 =  94.774
Robust  acc: 16466 / 21775 =  75.619
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7225 /  8535 =  84.651
0, 1  acc:  7828 /  8276 =  94.587
1, 0  acc:  2812 /  2874 =  97.843
1, 1  acc:   163 /   182 =  89.560
------------------------------------
Average acc: 18028 / 19867 =  90.743
Robust  acc:  7225 /  8535 =  84.651
------------------------------------
New max robust acc: 84.6514352665495
debias model - Saving best checkpoint at epoch 3
replace: True
-> Updating checkpoint debias-wga-best_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed33.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.158
Robust Acc: 83.333 | Best Acc: 97.379
-------------------------------------
Training, Epoch 3:
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7096 /  7535 =  94.174
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18197 / 19962 =  91.158
Robust  acc:   150 /   180 =  83.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7096 /  7535 =  94.174
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18197 / 19962 =  91.158
Robust  acc:   150 /   180 =  83.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8536 /  9767 =  87.396
0, 1  acc:  7096 /  7535 =  94.174
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 18197 / 19962 =  91.158
Robust  acc:   150 /   180 =  83.333
------------------------------------
Epoch:   5 | Train Loss: 0.001 | Train Acc: 95.490 | Val Loss: 0.002 | Val Acc: 91.569
Training:
Accuracies by groups:
0, 0  acc: 16873 / 21763 =  77.531
0, 1  acc:  9057 / 10039 =  90.218
1, 0  acc: 121616 / 122692 =  99.123
1, 1  acc:  7883 /  8276 =  95.251
--------------------------------------
Average acc: 155429 / 162770 =  95.490
Robust  acc: 16873 / 21763 =  77.531
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7337 /  8535 =  85.964
0, 1  acc:  7914 /  8276 =  95.626
1, 0  acc:  2783 /  2874 =  96.834
1, 1  acc:   158 /   182 =  86.813
------------------------------------
Average acc: 18192 / 19867 =  91.569
Robust  acc:  7337 /  8535 =  85.964
------------------------------------
New max robust acc: 85.96367896895137
debias model - Saving best checkpoint at epoch 4
replace: True
-> Updating checkpoint debias-wga-best_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-wga-best_seed33.pt
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.970
Robust Acc: 80.000 | Best Acc: 96.895
-------------------------------------
Training, Epoch 4:
Accuracies by groups:
0, 0  acc:  8649 /  9767 =  88.553
0, 1  acc:  7163 /  7535 =  95.063
1, 0  acc:  2403 /  2480 =  96.895
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18359 / 19962 =  91.970
Robust  acc:   144 /   180 =  80.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8649 /  9767 =  88.553
0, 1  acc:  7163 /  7535 =  95.063
1, 0  acc:  2403 /  2480 =  96.895
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18359 / 19962 =  91.970
Robust  acc:   144 /   180 =  80.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8649 /  9767 =  88.553
0, 1  acc:  7163 /  7535 =  95.063
1, 0  acc:  2403 /  2480 =  96.895
1, 1  acc:   144 /   180 =  80.000
------------------------------------
Average acc: 18359 / 19962 =  91.970
Robust  acc:   144 /   180 =  80.000
------------------------------------
Epoch:   6 | Train Loss: 0.001 | Train Acc: 96.453 | Val Loss: 0.001 | Val Acc: 92.893
Training:
Accuracies by groups:
0, 0  acc: 17618 / 21802 =  80.809
0, 1  acc:  9316 / 10145 =  91.828
1, 0  acc: 122113 / 122700 =  99.522
1, 1  acc:  7950 /  8123 =  97.870
--------------------------------------
Average acc: 156997 / 162770 =  96.453
Robust  acc: 17618 / 21802 =  80.809
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7559 /  8535 =  88.565
0, 1  acc:  8004 /  8276 =  96.713
1, 0  acc:  2742 /  2874 =  95.407
1, 1  acc:   150 /   182 =  82.418
------------------------------------
Average acc: 18455 / 19867 =  92.893
Robust  acc:   150 /   182 =  82.418
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.162
Robust Acc: 73.889 | Best Acc: 96.390
-------------------------------------
Training, Epoch 5:
Accuracies by groups:
0, 0  acc:  8840 /  9767 =  90.509
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2361 /  2480 =  95.202
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18597 / 19962 =  93.162
Robust  acc:   133 /   180 =  73.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8840 /  9767 =  90.509
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2361 /  2480 =  95.202
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18597 / 19962 =  93.162
Robust  acc:   133 /   180 =  73.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8840 /  9767 =  90.509
0, 1  acc:  7263 /  7535 =  96.390
1, 0  acc:  2361 /  2480 =  95.202
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18597 / 19962 =  93.162
Robust  acc:   133 /   180 =  73.889
------------------------------------
Epoch:   7 | Train Loss: 0.001 | Train Acc: 97.294 | Val Loss: 0.001 | Val Acc: 93.079
Training:
Accuracies by groups:
0, 0  acc: 18240 / 21623 =  84.355
0, 1  acc:  9569 / 10254 =  93.320
1, 0  acc: 122545 / 122799 =  99.793
1, 1  acc:  8011 /  8094 =  98.975
--------------------------------------
Average acc: 158365 / 162770 =  97.294
Robust  acc: 18240 / 21623 =  84.355
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7577 /  8535 =  88.776
0, 1  acc:  8036 /  8276 =  97.100
1, 0  acc:  2734 /  2874 =  95.129
1, 1  acc:   145 /   182 =  79.670
------------------------------------
Average acc: 18492 / 19867 =  93.079
Robust  acc:   145 /   182 =  79.670
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.322
Robust Acc: 71.111 | Best Acc: 96.669
-------------------------------------
Training, Epoch 6:
Accuracies by groups:
0, 0  acc:  8862 /  9767 =  90.734
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2355 /  2480 =  94.960
1, 1  acc:   128 /   180 =  71.111
------------------------------------
Average acc: 18629 / 19962 =  93.322
Robust  acc:   128 /   180 =  71.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8862 /  9767 =  90.734
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2355 /  2480 =  94.960
1, 1  acc:   128 /   180 =  71.111
------------------------------------
Average acc: 18629 / 19962 =  93.322
Robust  acc:   128 /   180 =  71.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8862 /  9767 =  90.734
0, 1  acc:  7284 /  7535 =  96.669
1, 0  acc:  2355 /  2480 =  94.960
1, 1  acc:   128 /   180 =  71.111
------------------------------------
Average acc: 18629 / 19962 =  93.322
Robust  acc:   128 /   180 =  71.111
------------------------------------
Epoch:   8 | Train Loss: 0.001 | Train Acc: 98.075 | Val Loss: 0.001 | Val Acc: 93.572
Training:
Accuracies by groups:
0, 0  acc: 19093 / 21678 =  88.075
0, 1  acc:  9776 / 10180 =  96.031
1, 0  acc: 122589 / 122706 =  99.905
1, 1  acc:  8179 /  8206 =  99.671
--------------------------------------
Average acc: 159637 / 162770 =  98.075
Robust  acc: 19093 / 21678 =  88.075
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7679 /  8535 =  89.971
0, 1  acc:  8075 /  8276 =  97.571
1, 0  acc:  2700 /  2874 =  93.946
1, 1  acc:   136 /   182 =  74.725
------------------------------------
Average acc: 18590 / 19867 =  93.572
Robust  acc:   136 /   182 =  74.725
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.738
Robust Acc: 68.889 | Best Acc: 97.147
-------------------------------------
Training, Epoch 7:
Accuracies by groups:
0, 0  acc:  8964 /  9767 =  91.778
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2304 /  2480 =  92.903
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18712 / 19962 =  93.738
Robust  acc:   124 /   180 =  68.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8964 /  9767 =  91.778
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2304 /  2480 =  92.903
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18712 / 19962 =  93.738
Robust  acc:   124 /   180 =  68.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8964 /  9767 =  91.778
0, 1  acc:  7320 /  7535 =  97.147
1, 0  acc:  2304 /  2480 =  92.903
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18712 / 19962 =  93.738
Robust  acc:   124 /   180 =  68.889
------------------------------------
Epoch:   9 | Train Loss: 0.001 | Train Acc: 98.596 | Val Loss: 0.001 | Val Acc: 93.648
Training:
Accuracies by groups:
0, 0  acc: 19771 / 21602 =  91.524
0, 1  acc:  9840 / 10186 =  96.603
1, 0  acc: 122702 / 122787 =  99.931
1, 1  acc:  8171 /  8195 =  99.707
--------------------------------------
Average acc: 160484 / 162770 =  98.596
Robust  acc: 19771 / 21602 =  91.524
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7686 /  8535 =  90.053
0, 1  acc:  8119 /  8276 =  98.103
1, 0  acc:  2671 /  2874 =  92.937
1, 1  acc:   129 /   182 =  70.879
------------------------------------
Average acc: 18605 / 19867 =  93.648
Robust  acc:   129 /   182 =  70.879
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.838
Robust Acc: 62.778 | Best Acc: 97.532
-------------------------------------
Training, Epoch 8:
Accuracies by groups:
0, 0  acc:  8965 /  9767 =  91.789
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2305 /  2480 =  92.944
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18732 / 19962 =  93.838
Robust  acc:   113 /   180 =  62.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8965 /  9767 =  91.789
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2305 /  2480 =  92.944
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18732 / 19962 =  93.838
Robust  acc:   113 /   180 =  62.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8965 /  9767 =  91.789
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2305 /  2480 =  92.944
1, 1  acc:   113 /   180 =  62.778
------------------------------------
Average acc: 18732 / 19962 =  93.838
Robust  acc:   113 /   180 =  62.778
------------------------------------
Epoch:  10 | Train Loss: 0.001 | Train Acc: 98.799 | Val Loss: 0.001 | Val Acc: 93.628
Training:
Accuracies by groups:
0, 0  acc: 20000 / 21567 =  92.734
0, 1  acc:  9869 / 10127 =  97.452
1, 0  acc: 122678 / 122780 =  99.917
1, 1  acc:  8268 /  8296 =  99.662
--------------------------------------
Average acc: 160815 / 162770 =  98.799
Robust  acc: 20000 / 21567 =  92.734
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7730 /  8535 =  90.568
0, 1  acc:  8103 /  8276 =  97.910
1, 0  acc:  2647 /  2874 =  92.102
1, 1  acc:   121 /   182 =  66.484
------------------------------------
Average acc: 18601 / 19867 =  93.628
Robust  acc:   121 /   182 =  66.484
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 93.733
Robust Acc: 63.889 | Best Acc: 97.240
-------------------------------------
Training, Epoch 9:
Accuracies by groups:
0, 0  acc:  9015 /  9767 =  92.301
0, 1  acc:  7327 /  7535 =  97.240
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18711 / 19962 =  93.733
Robust  acc:   115 /   180 =  63.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9015 /  9767 =  92.301
0, 1  acc:  7327 /  7535 =  97.240
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18711 / 19962 =  93.733
Robust  acc:   115 /   180 =  63.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9015 /  9767 =  92.301
0, 1  acc:  7327 /  7535 =  97.240
1, 0  acc:  2254 /  2480 =  90.887
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18711 / 19962 =  93.733
Robust  acc:   115 /   180 =  63.889
------------------------------------
Epoch:  11 | Train Loss: 0.001 | Train Acc: 98.796 | Val Loss: 0.001 | Val Acc: 94.035
Training:
Accuracies by groups:
0, 0  acc: 20267 / 21748 =  93.190
0, 1  acc:  9930 / 10186 =  97.487
1, 0  acc: 122459 / 122640 =  99.852
1, 1  acc:  8155 /  8196 =  99.500
--------------------------------------
Average acc: 160811 / 162770 =  98.796
Robust  acc: 20267 / 21748 =  93.190
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7777 /  8535 =  91.119
0, 1  acc:  8169 /  8276 =  98.707
1, 0  acc:  2625 /  2874 =  91.336
1, 1  acc:   111 /   182 =  60.989
------------------------------------
Average acc: 18682 / 19867 =  94.035
Robust  acc:   111 /   182 =  60.989
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.179
Robust Acc: 54.444 | Best Acc: 97.996
-------------------------------------
Training, Epoch 10:
Accuracies by groups:
0, 0  acc:  9099 /  9767 =  93.161
0, 1  acc:  7384 /  7535 =  97.996
1, 0  acc:  2219 /  2480 =  89.476
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18800 / 19962 =  94.179
Robust  acc:    98 /   180 =  54.444
------------------------------------
Accuracies by groups:
0, 0  acc:  9099 /  9767 =  93.161
0, 1  acc:  7384 /  7535 =  97.996
1, 0  acc:  2219 /  2480 =  89.476
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18800 / 19962 =  94.179
Robust  acc:    98 /   180 =  54.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9099 /  9767 =  93.161
0, 1  acc:  7384 /  7535 =  97.996
1, 0  acc:  2219 /  2480 =  89.476
1, 1  acc:    98 /   180 =  54.444
------------------------------------
Average acc: 18800 / 19962 =  94.179
Robust  acc:    98 /   180 =  54.444
------------------------------------
Epoch:  12 | Train Loss: 0.001 | Train Acc: 98.429 | Val Loss: 0.001 | Val Acc: 94.166
Training:
Accuracies by groups:
0, 0  acc: 19881 / 21651 =  91.825
0, 1  acc:  9773 / 10083 =  96.926
1, 0  acc: 122607 / 122975 =  99.701
1, 1  acc:  7952 /  8061 =  98.648
--------------------------------------
Average acc: 160213 / 162770 =  98.429
Robust  acc: 19881 / 21651 =  91.825
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7838 /  8535 =  91.834
0, 1  acc:  8116 /  8276 =  98.067
1, 0  acc:  2622 /  2874 =  91.232
1, 1  acc:   132 /   182 =  72.527
------------------------------------
Average acc: 18708 / 19867 =  94.166
Robust  acc:   132 /   182 =  72.527
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.159
Robust Acc: 63.333 | Best Acc: 97.399
-------------------------------------
Training, Epoch 11:
Accuracies by groups:
0, 0  acc:  9113 /  9767 =  93.304
0, 1  acc:  7339 /  7535 =  97.399
1, 0  acc:  2230 /  2480 =  89.919
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18796 / 19962 =  94.159
Robust  acc:   114 /   180 =  63.333
------------------------------------
Accuracies by groups:
0, 0  acc:  9113 /  9767 =  93.304
0, 1  acc:  7339 /  7535 =  97.399
1, 0  acc:  2230 /  2480 =  89.919
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18796 / 19962 =  94.159
Robust  acc:   114 /   180 =  63.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9113 /  9767 =  93.304
0, 1  acc:  7339 /  7535 =  97.399
1, 0  acc:  2230 /  2480 =  89.919
1, 1  acc:   114 /   180 =  63.333
------------------------------------
Average acc: 18796 / 19962 =  94.159
Robust  acc:   114 /   180 =  63.333
------------------------------------
Epoch:  13 | Train Loss: 0.001 | Train Acc: 97.903 | Val Loss: 0.002 | Val Acc: 91.790
Training:
Accuracies by groups:
0, 0  acc: 19598 / 21853 =  89.681
0, 1  acc:  9801 / 10182 =  96.258
1, 0  acc: 121979 / 122603 =  99.491
1, 1  acc:  7979 /  8132 =  98.119
--------------------------------------
Average acc: 159357 / 162770 =  97.903
Robust  acc: 19598 / 21853 =  89.681
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7424 /  8535 =  86.983
0, 1  acc:  7979 /  8276 =  96.411
1, 0  acc:  2692 /  2874 =  93.667
1, 1  acc:   141 /   182 =  77.473
------------------------------------
Average acc: 18236 / 19867 =  91.790
Robust  acc:   141 /   182 =  77.473
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.980
Robust Acc: 74.444 | Best Acc: 95.156
-------------------------------------
Training, Epoch 12:
Accuracies by groups:
0, 0  acc:  8737 /  9767 =  89.454
0, 1  acc:  7170 /  7535 =  95.156
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18361 / 19962 =  91.980
Robust  acc:   134 /   180 =  74.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8737 /  9767 =  89.454
0, 1  acc:  7170 /  7535 =  95.156
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18361 / 19962 =  91.980
Robust  acc:   134 /   180 =  74.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8737 /  9767 =  89.454
0, 1  acc:  7170 /  7535 =  95.156
1, 0  acc:  2320 /  2480 =  93.548
1, 1  acc:   134 /   180 =  74.444
------------------------------------
Average acc: 18361 / 19962 =  91.980
Robust  acc:   134 /   180 =  74.444
------------------------------------
Epoch:  14 | Train Loss: 0.001 | Train Acc: 97.316 | Val Loss: 0.001 | Val Acc: 94.322
Training:
Accuracies by groups:
0, 0  acc: 18987 / 21754 =  87.281
0, 1  acc:  9607 / 10136 =  94.781
1, 0  acc: 121921 / 122763 =  99.314
1, 1  acc:  7887 /  8117 =  97.166
--------------------------------------
Average acc: 158402 / 162770 =  97.316
Robust  acc: 18987 / 21754 =  87.281
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7964 /  8535 =  93.310
0, 1  acc:  8086 /  8276 =  97.704
1, 0  acc:  2560 /  2874 =  89.074
1, 1  acc:   129 /   182 =  70.879
------------------------------------
Average acc: 18739 / 19867 =  94.322
Robust  acc:   129 /   182 =  70.879
------------------------------------
-------------------------------------------
Avg Test Loss: 0.001 | Avg Test Acc: 94.374
Robust Acc: 62.222 | Best Acc: 97.532
-------------------------------------
Training, Epoch 13:
Accuracies by groups:
0, 0  acc:  9202 /  9767 =  94.215
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2176 /  2480 =  87.742
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18839 / 19962 =  94.374
Robust  acc:   112 /   180 =  62.222
------------------------------------
Accuracies by groups:
0, 0  acc:  9202 /  9767 =  94.215
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2176 /  2480 =  87.742
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18839 / 19962 =  94.374
Robust  acc:   112 /   180 =  62.222
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9202 /  9767 =  94.215
0, 1  acc:  7349 /  7535 =  97.532
1, 0  acc:  2176 /  2480 =  87.742
1, 1  acc:   112 /   180 =  62.222
------------------------------------
Average acc: 18839 / 19962 =  94.374
Robust  acc:   112 /   180 =  62.222
------------------------------------
Epoch:  15 | Train Loss: 0.001 | Train Acc: 96.665 | Val Loss: 0.002 | Val Acc: 91.317
Training:
Accuracies by groups:
0, 0  acc: 18317 / 21712 =  84.363
0, 1  acc:  9640 / 10264 =  93.920
1, 0  acc: 121436 / 122527 =  99.110
1, 1  acc:  7949 /  8267 =  96.153
--------------------------------------
Average acc: 157342 / 162770 =  96.665
Robust  acc: 18317 / 21712 =  84.363
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7274 /  8535 =  85.226
0, 1  acc:  7921 /  8276 =  95.710
1, 0  acc:  2799 /  2874 =  97.390
1, 1  acc:   148 /   182 =  81.319
------------------------------------
Average acc: 18142 / 19867 =  91.317
Robust  acc:   148 /   182 =  81.319
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.855
Robust Acc: 79.444 | Best Acc: 96.411
-------------------------------------
Training, Epoch 14:
Accuracies by groups:
0, 0  acc:  8627 /  9767 =  88.328
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2391 /  2480 =  96.411
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18336 / 19962 =  91.855
Robust  acc:   143 /   180 =  79.444
------------------------------------
Accuracies by groups:
0, 0  acc:  8627 /  9767 =  88.328
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2391 /  2480 =  96.411
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18336 / 19962 =  91.855
Robust  acc:   143 /   180 =  79.444
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8627 /  9767 =  88.328
0, 1  acc:  7175 /  7535 =  95.222
1, 0  acc:  2391 /  2480 =  96.411
1, 1  acc:   143 /   180 =  79.444
------------------------------------
Average acc: 18336 / 19962 =  91.855
Robust  acc:   143 /   180 =  79.444
------------------------------------
Epoch:  16 | Train Loss: 0.001 | Train Acc: 96.094 | Val Loss: 0.002 | Val Acc: 90.371
Training:
Accuracies by groups:
0, 0  acc: 18136 / 22059 =  82.216
0, 1  acc:  9397 / 10181 =  92.299
1, 0  acc: 121175 / 122450 =  98.959
1, 1  acc:  7704 /  8080 =  95.347
--------------------------------------
Average acc: 156412 / 162770 =  96.094
Robust  acc: 18136 / 22059 =  82.216
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7209 /  8535 =  84.464
0, 1  acc:  7785 /  8276 =  94.067
1, 0  acc:  2798 /  2874 =  97.356
1, 1  acc:   162 /   182 =  89.011
------------------------------------
Average acc: 17954 / 19867 =  90.371
Robust  acc:  7209 /  8535 =  84.464
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 90.542
Robust Acc: 81.111 | Best Acc: 96.855
-------------------------------------
Training, Epoch 15:
Accuracies by groups:
0, 0  acc:  8498 /  9767 =  87.007
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18074 / 19962 =  90.542
Robust  acc:   146 /   180 =  81.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8498 /  9767 =  87.007
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18074 / 19962 =  90.542
Robust  acc:   146 /   180 =  81.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8498 /  9767 =  87.007
0, 1  acc:  7028 /  7535 =  93.271
1, 0  acc:  2402 /  2480 =  96.855
1, 1  acc:   146 /   180 =  81.111
------------------------------------
Average acc: 18074 / 19962 =  90.542
Robust  acc:   146 /   180 =  81.111
------------------------------------
Epoch:  17 | Train Loss: 0.001 | Train Acc: 95.489 | Val Loss: 0.004 | Val Acc: 81.618
Training:
Accuracies by groups:
0, 0  acc: 17423 / 21840 =  79.776
0, 1  acc:  9190 / 10103 =  90.963
1, 0  acc: 121221 / 122757 =  98.749
1, 1  acc:  7593 /  8070 =  94.089
--------------------------------------
Average acc: 155427 / 162770 =  95.489
Robust  acc: 17423 / 21840 =  79.776
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6157 /  8535 =  72.138
0, 1  acc:  7025 /  8276 =  84.884
1, 0  acc:  2854 /  2874 =  99.304
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 16215 / 19867 =  81.618
Robust  acc:  6157 /  8535 =  72.138
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 83.133
Robust Acc: 76.902 | Best Acc: 99.315
-------------------------------------
Training, Epoch 16:
Accuracies by groups:
0, 0  acc:  7511 /  9767 =  76.902
0, 1  acc:  6449 /  7535 =  85.587
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16595 / 19962 =  83.133
Robust  acc:  7511 /  9767 =  76.902
------------------------------------
Accuracies by groups:
0, 0  acc:  7511 /  9767 =  76.902
0, 1  acc:  6449 /  7535 =  85.587
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16595 / 19962 =  83.133
Robust  acc:  7511 /  9767 =  76.902
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7511 /  9767 =  76.902
0, 1  acc:  6449 /  7535 =  85.587
1, 0  acc:  2463 /  2480 =  99.315
1, 1  acc:   172 /   180 =  95.556
------------------------------------
Average acc: 16595 / 19962 =  83.133
Robust  acc:  7511 /  9767 =  76.902
------------------------------------
Epoch:  18 | Train Loss: 0.001 | Train Acc: 94.917 | Val Loss: 0.002 | Val Acc: 92.203
Training:
Accuracies by groups:
0, 0  acc: 16738 / 21681 =  77.201
0, 1  acc:  9021 / 10054 =  89.725
1, 0  acc: 121048 / 122799 =  98.574
1, 1  acc:  7690 /  8236 =  93.371
--------------------------------------
Average acc: 154497 / 162770 =  94.917
Robust  acc: 16738 / 21681 =  77.201
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7479 /  8535 =  87.627
0, 1  acc:  7919 /  8276 =  95.686
1, 0  acc:  2769 /  2874 =  96.347
1, 1  acc:   151 /   182 =  82.967
------------------------------------
Average acc: 18318 / 19867 =  92.203
Robust  acc:   151 /   182 =  82.967
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 92.686
Robust Acc: 76.111 | Best Acc: 95.687
-------------------------------------
Training, Epoch 17:
Accuracies by groups:
0, 0  acc:  8789 /  9767 =  89.987
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18502 / 19962 =  92.686
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8789 /  9767 =  89.987
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18502 / 19962 =  92.686
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8789 /  9767 =  89.987
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18502 / 19962 =  92.686
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  19 | Train Loss: 0.002 | Train Acc: 94.405 | Val Loss: 0.003 | Val Acc: 87.774
Training:
Accuracies by groups:
0, 0  acc: 16430 / 21745 =  75.558
0, 1  acc:  8962 / 10163 =  88.183
1, 0  acc: 120694 / 122693 =  98.371
1, 1  acc:  7577 /  8169 =  92.753
--------------------------------------
Average acc: 153663 / 162770 =  94.405
Robust  acc: 16430 / 21745 =  75.558
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6898 /  8535 =  80.820
0, 1  acc:  7547 /  8276 =  91.191
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 17438 / 19867 =  87.774
Robust  acc:  6898 /  8535 =  80.820
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 88.678
Robust Acc: 83.889 | Best Acc: 97.702
-------------------------------------
Training, Epoch 18:
Accuracies by groups:
0, 0  acc:  8228 /  9767 =  84.243
0, 1  acc:  6900 /  7535 =  91.573
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17702 / 19962 =  88.678
Robust  acc:   151 /   180 =  83.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8228 /  9767 =  84.243
0, 1  acc:  6900 /  7535 =  91.573
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17702 / 19962 =  88.678
Robust  acc:   151 /   180 =  83.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8228 /  9767 =  84.243
0, 1  acc:  6900 /  7535 =  91.573
1, 0  acc:  2423 /  2480 =  97.702
1, 1  acc:   151 /   180 =  83.889
------------------------------------
Average acc: 17702 / 19962 =  88.678
Robust  acc:   151 /   180 =  83.889
------------------------------------
Epoch:  20 | Train Loss: 0.002 | Train Acc: 93.961 | Val Loss: 0.006 | Val Acc: 68.777
Training:
Accuracies by groups:
0, 0  acc: 15924 / 21649 =  73.555
0, 1  acc:  8947 / 10216 =  87.578
1, 0  acc: 120564 / 122756 =  98.214
1, 1  acc:  7505 /  8149 =  92.097
--------------------------------------
Average acc: 152940 / 162770 =  93.961
Robust  acc: 15924 / 21649 =  73.555
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5234 /  8535 =  61.324
0, 1  acc:  5386 /  8276 =  65.080
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13664 / 19867 =  68.777
Robust  acc:  5234 /  8535 =  61.324
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 70.870
Robust Acc: 64.512 | Best Acc: 99.556
-------------------------------------
Training, Epoch 19:
Accuracies by groups:
0, 0  acc:  6640 /  9767 =  67.984
0, 1  acc:  4861 /  7535 =  64.512
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14147 / 19962 =  70.870
Robust  acc:  4861 /  7535 =  64.512
------------------------------------
Accuracies by groups:
0, 0  acc:  6640 /  9767 =  67.984
0, 1  acc:  4861 /  7535 =  64.512
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14147 / 19962 =  70.870
Robust  acc:  4861 /  7535 =  64.512
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6640 /  9767 =  67.984
0, 1  acc:  4861 /  7535 =  64.512
1, 0  acc:  2469 /  2480 =  99.556
1, 1  acc:   177 /   180 =  98.333
------------------------------------
Average acc: 14147 / 19962 =  70.870
Robust  acc:  4861 /  7535 =  64.512
------------------------------------
Epoch:  21 | Train Loss: 0.002 | Train Acc: 93.531 | Val Loss: 0.003 | Val Acc: 90.824
Training:
Accuracies by groups:
0, 0  acc: 16006 / 22063 =  72.547
0, 1  acc:  8694 / 10160 =  85.571
1, 0  acc: 120000 / 122331 =  98.095
1, 1  acc:  7541 /  8216 =  91.784
--------------------------------------
Average acc: 152241 / 162770 =  93.531
Robust  acc: 16006 / 22063 =  72.547
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7259 /  8535 =  85.050
0, 1  acc:  7895 /  8276 =  95.396
1, 0  acc:  2742 /  2874 =  95.407
1, 1  acc:   148 /   182 =  81.319
------------------------------------
Average acc: 18044 / 19867 =  90.824
Robust  acc:   148 /   182 =  81.319
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 91.704
Robust Acc: 76.111 | Best Acc: 95.687
-------------------------------------
Training, Epoch 20:
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2354 /  2480 =  94.919
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18306 / 19962 =  91.704
Robust  acc:   137 /   180 =  76.111
------------------------------------
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2354 /  2480 =  94.919
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18306 / 19962 =  91.704
Robust  acc:   137 /   180 =  76.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8605 /  9767 =  88.103
0, 1  acc:  7210 /  7535 =  95.687
1, 0  acc:  2354 /  2480 =  94.919
1, 1  acc:   137 /   180 =  76.111
------------------------------------
Average acc: 18306 / 19962 =  91.704
Robust  acc:   137 /   180 =  76.111
------------------------------------
Epoch:  22 | Train Loss: 0.002 | Train Acc: 93.498 | Val Loss: 0.002 | Val Acc: 92.691
Training:
Accuracies by groups:
0, 0  acc: 15670 / 21675 =  72.295
0, 1  acc:  8683 / 10268 =  84.564
1, 0  acc: 120335 / 122592 =  98.159
1, 1  acc:  7498 /  8235 =  91.050
--------------------------------------
Average acc: 152186 / 162770 =  93.498
Robust  acc: 15670 / 21675 =  72.295
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7649 /  8535 =  89.619
0, 1  acc:  7969 /  8276 =  96.290
1, 0  acc:  2659 /  2874 =  92.519
1, 1  acc:   138 /   182 =  75.824
------------------------------------
Average acc: 18415 / 19867 =  92.691
Robust  acc:   138 /   182 =  75.824
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.197
Robust Acc: 63.889 | Best Acc: 96.284
-------------------------------------
Training, Epoch 21:
Accuracies by groups:
0, 0  acc:  8970 /  9767 =  91.840
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18604 / 19962 =  93.197
Robust  acc:   115 /   180 =  63.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8970 /  9767 =  91.840
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18604 / 19962 =  93.197
Robust  acc:   115 /   180 =  63.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8970 /  9767 =  91.840
0, 1  acc:  7255 /  7535 =  96.284
1, 0  acc:  2264 /  2480 =  91.290
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18604 / 19962 =  93.197
Robust  acc:   115 /   180 =  63.889
------------------------------------
Epoch:  23 | Train Loss: 0.002 | Train Acc: 93.230 | Val Loss: 0.002 | Val Acc: 93.185
Training:
Accuracies by groups:
0, 0  acc: 15390 / 21730 =  70.824
0, 1  acc:  8520 / 10237 =  83.228
1, 0  acc: 120290 / 122594 =  98.121
1, 1  acc:  7551 /  8209 =  91.984
--------------------------------------
Average acc: 151751 / 162770 =  93.230
Robust  acc: 15390 / 21730 =  70.824
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7754 /  8535 =  90.849
0, 1  acc:  7995 /  8276 =  96.605
1, 0  acc:  2628 /  2874 =  91.441
1, 1  acc:   136 /   182 =  74.725
------------------------------------
Average acc: 18513 / 19867 =  93.185
Robust  acc:   136 /   182 =  74.725
------------------------------------
-------------------------------------------
Avg Test Loss: 0.002 | Avg Test Acc: 93.593
Robust Acc: 65.000 | Best Acc: 96.603
-------------------------------------
Training, Epoch 22:
Accuracies by groups:
0, 0  acc:  9049 /  9767 =  92.649
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2238 /  2480 =  90.242
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   117 /   180 =  65.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9049 /  9767 =  92.649
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2238 /  2480 =  90.242
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   117 /   180 =  65.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9049 /  9767 =  92.649
0, 1  acc:  7279 /  7535 =  96.603
1, 0  acc:  2238 /  2480 =  90.242
1, 1  acc:   117 /   180 =  65.000
------------------------------------
Average acc: 18683 / 19962 =  93.593
Robust  acc:   117 /   180 =  65.000
------------------------------------
Epoch:  24 | Train Loss: 0.002 | Train Acc: 93.134 | Val Loss: 0.003 | Val Acc: 93.064
Training:
Accuracies by groups:
0, 0  acc: 15118 / 21627 =  69.903
0, 1  acc:  8377 / 10203 =  82.103
1, 0  acc: 120479 / 122671 =  98.213
1, 1  acc:  7621 /  8269 =  92.164
--------------------------------------
Average acc: 151595 / 162770 =  93.134
Robust  acc: 15118 / 21627 =  69.903
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7658 /  8535 =  89.725
0, 1  acc:  8022 /  8276 =  96.931
1, 0  acc:  2680 /  2874 =  93.250
1, 1  acc:   129 /   182 =  70.879
------------------------------------
Average acc: 18489 / 19867 =  93.064
Robust  acc:   129 /   182 =  70.879
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.688
Robust Acc: 65.556 | Best Acc: 97.173
-------------------------------------
Training, Epoch 23:
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7322 /  7535 =  97.173
1, 0  acc:  2271 /  2480 =  91.573
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18702 / 19962 =  93.688
Robust  acc:   118 /   180 =  65.556
------------------------------------
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7322 /  7535 =  97.173
1, 0  acc:  2271 /  2480 =  91.573
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18702 / 19962 =  93.688
Robust  acc:   118 /   180 =  65.556
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8991 /  9767 =  92.055
0, 1  acc:  7322 /  7535 =  97.173
1, 0  acc:  2271 /  2480 =  91.573
1, 1  acc:   118 /   180 =  65.556
------------------------------------
Average acc: 18702 / 19962 =  93.688
Robust  acc:   118 /   180 =  65.556
------------------------------------
Epoch:  25 | Train Loss: 0.002 | Train Acc: 92.889 | Val Loss: 0.003 | Val Acc: 92.571
Training:
Accuracies by groups:
0, 0  acc: 14929 / 21683 =  68.851
0, 1  acc:  8202 / 10144 =  80.856
1, 0  acc: 120447 / 122669 =  98.189
1, 1  acc:  7617 /  8274 =  92.059
--------------------------------------
Average acc: 151195 / 162770 =  92.889
Robust  acc: 14929 / 21683 =  68.851
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7626 /  8535 =  89.350
0, 1  acc:  7948 /  8276 =  96.037
1, 0  acc:  2684 /  2874 =  93.389
1, 1  acc:   133 /   182 =  73.077
------------------------------------
Average acc: 18391 / 19867 =  92.571
Robust  acc:   133 /   182 =  73.077
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.287
Robust Acc: 68.889 | Best Acc: 96.257
-------------------------------------
Training, Epoch 24:
Accuracies by groups:
0, 0  acc:  8947 /  9767 =  91.604
0, 1  acc:  7253 /  7535 =  96.257
1, 0  acc:  2298 /  2480 =  92.661
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18622 / 19962 =  93.287
Robust  acc:   124 /   180 =  68.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8947 /  9767 =  91.604
0, 1  acc:  7253 /  7535 =  96.257
1, 0  acc:  2298 /  2480 =  92.661
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18622 / 19962 =  93.287
Robust  acc:   124 /   180 =  68.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8947 /  9767 =  91.604
0, 1  acc:  7253 /  7535 =  96.257
1, 0  acc:  2298 /  2480 =  92.661
1, 1  acc:   124 /   180 =  68.889
------------------------------------
Average acc: 18622 / 19962 =  93.287
Robust  acc:   124 /   180 =  68.889
------------------------------------
Epoch:  26 | Train Loss: 0.002 | Train Acc: 92.842 | Val Loss: 0.004 | Val Acc: 79.272
Training:
Accuracies by groups:
0, 0  acc: 15186 / 22103 =  68.706
0, 1  acc:  8102 /  9991 =  81.093
1, 0  acc: 120312 / 122537 =  98.184
1, 1  acc:  7519 /  8139 =  92.382
--------------------------------------
Average acc: 151119 / 162770 =  92.842
Robust  acc: 15186 / 22103 =  68.706
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6097 /  8535 =  71.435
0, 1  acc:  6630 /  8276 =  80.111
1, 0  acc:  2842 /  2874 =  98.887
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 15749 / 19867 =  79.272
Robust  acc:  6097 /  8535 =  71.435
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 80.809
Robust Acc: 76.810 | Best Acc: 98.750
-------------------------------------
Training, Epoch 25:
Accuracies by groups:
0, 0  acc:  7502 /  9767 =  76.810
0, 1  acc:  6009 /  7535 =  79.748
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 16131 / 19962 =  80.809
Robust  acc:  7502 /  9767 =  76.810
------------------------------------
Accuracies by groups:
0, 0  acc:  7502 /  9767 =  76.810
0, 1  acc:  6009 /  7535 =  79.748
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 16131 / 19962 =  80.809
Robust  acc:  7502 /  9767 =  76.810
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7502 /  9767 =  76.810
0, 1  acc:  6009 /  7535 =  79.748
1, 0  acc:  2449 /  2480 =  98.750
1, 1  acc:   171 /   180 =  95.000
------------------------------------
Average acc: 16131 / 19962 =  80.809
Robust  acc:  7502 /  9767 =  76.810
------------------------------------
Epoch:  27 | Train Loss: 0.002 | Train Acc: 92.884 | Val Loss: 0.003 | Val Acc: 89.490
Training:
Accuracies by groups:
0, 0  acc: 14928 / 21790 =  68.508
0, 1  acc:  8172 / 10143 =  80.568
1, 0  acc: 120552 / 122642 =  98.296
1, 1  acc:  7535 /  8195 =  91.946
--------------------------------------
Average acc: 151187 / 162770 =  92.884
Robust  acc: 14928 / 21790 =  68.508
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7143 /  8535 =  83.691
0, 1  acc:  7702 /  8276 =  93.064
1, 0  acc:  2785 /  2874 =  96.903
1, 1  acc:   149 /   182 =  81.868
------------------------------------
Average acc: 17779 / 19867 =  89.490
Robust  acc:   149 /   182 =  81.868
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.592
Robust Acc: 81.667 | Best Acc: 96.250
-------------------------------------
Training, Epoch 26:
Accuracies by groups:
0, 0  acc:  8590 /  9767 =  87.949
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18084 / 19962 =  90.592
Robust  acc:   147 /   180 =  81.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8590 /  9767 =  87.949
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18084 / 19962 =  90.592
Robust  acc:   147 /   180 =  81.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8590 /  9767 =  87.949
0, 1  acc:  6960 /  7535 =  92.369
1, 0  acc:  2387 /  2480 =  96.250
1, 1  acc:   147 /   180 =  81.667
------------------------------------
Average acc: 18084 / 19962 =  90.592
Robust  acc:   147 /   180 =  81.667
------------------------------------
Epoch:  28 | Train Loss: 0.002 | Train Acc: 92.718 | Val Loss: 0.003 | Val Acc: 92.193
Training:
Accuracies by groups:
0, 0  acc: 14857 / 21874 =  67.921
0, 1  acc:  8128 / 10235 =  79.414
1, 0  acc: 120257 / 122366 =  98.276
1, 1  acc:  7675 /  8295 =  92.526
--------------------------------------
Average acc: 150917 / 162770 =  92.718
Robust  acc: 14857 / 21874 =  67.921
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7511 /  8535 =  88.002
0, 1  acc:  7975 /  8276 =  96.363
1, 0  acc:  2702 /  2874 =  94.015
1, 1  acc:   128 /   182 =  70.330
------------------------------------
Average acc: 18316 / 19867 =  92.193
Robust  acc:   128 /   182 =  70.330
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 92.796
Robust Acc: 66.667 | Best Acc: 96.098
-------------------------------------
Training, Epoch 27:
Accuracies by groups:
0, 0  acc:  8864 /  9767 =  90.755
0, 1  acc:  7241 /  7535 =  96.098
1, 0  acc:  2299 /  2480 =  92.702
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18524 / 19962 =  92.796
Robust  acc:   120 /   180 =  66.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8864 /  9767 =  90.755
0, 1  acc:  7241 /  7535 =  96.098
1, 0  acc:  2299 /  2480 =  92.702
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18524 / 19962 =  92.796
Robust  acc:   120 /   180 =  66.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8864 /  9767 =  90.755
0, 1  acc:  7241 /  7535 =  96.098
1, 0  acc:  2299 /  2480 =  92.702
1, 1  acc:   120 /   180 =  66.667
------------------------------------
Average acc: 18524 / 19962 =  92.796
Robust  acc:   120 /   180 =  66.667
------------------------------------
Epoch:  29 | Train Loss: 0.002 | Train Acc: 92.857 | Val Loss: 0.004 | Val Acc: 86.495
Training:
Accuracies by groups:
0, 0  acc: 14589 / 21491 =  67.884
0, 1  acc:  7973 / 10043 =  79.389
1, 0  acc: 120814 / 122834 =  98.356
1, 1  acc:  7768 /  8402 =  92.454
--------------------------------------
Average acc: 151144 / 162770 =  92.857
Robust  acc: 14589 / 21491 =  67.884
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7014 /  8535 =  82.179
0, 1  acc:  7237 /  8276 =  87.446
1, 0  acc:  2769 /  2874 =  96.347
1, 1  acc:   164 /   182 =  90.110
------------------------------------
Average acc: 17184 / 19867 =  86.495
Robust  acc:  7014 /  8535 =  82.179
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 87.717
Robust Acc: 85.000 | Best Acc: 95.121
-------------------------------------
Training, Epoch 28:
Accuracies by groups:
0, 0  acc:  8417 /  9767 =  86.178
0, 1  acc:  6581 /  7535 =  87.339
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17510 / 19962 =  87.717
Robust  acc:   153 /   180 =  85.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8417 /  9767 =  86.178
0, 1  acc:  6581 /  7535 =  87.339
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17510 / 19962 =  87.717
Robust  acc:   153 /   180 =  85.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8417 /  9767 =  86.178
0, 1  acc:  6581 /  7535 =  87.339
1, 0  acc:  2359 /  2480 =  95.121
1, 1  acc:   153 /   180 =  85.000
------------------------------------
Average acc: 17510 / 19962 =  87.717
Robust  acc:   153 /   180 =  85.000
------------------------------------
Epoch:  30 | Train Loss: 0.002 | Train Acc: 92.798 | Val Loss: 0.006 | Val Acc: 67.927
Training:
Accuracies by groups:
0, 0  acc: 14833 / 21825 =  67.963
0, 1  acc:  8059 / 10184 =  79.134
1, 0  acc: 120511 / 122499 =  98.377
1, 1  acc:  7645 /  8262 =  92.532
--------------------------------------
Average acc: 151048 / 162770 =  92.798
Robust  acc: 14833 / 21825 =  67.963
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5107 /  8535 =  59.836
0, 1  acc:  5341 /  8276 =  64.536
1, 0  acc:  2866 /  2874 =  99.722
1, 1  acc:   181 /   182 =  99.451
------------------------------------
Average acc: 13495 / 19867 =  67.927
Robust  acc:  5107 /  8535 =  59.836
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 69.467
Robust Acc: 64.499 | Best Acc: 99.677
-------------------------------------
Training, Epoch 29:
Accuracies by groups:
0, 0  acc:  6357 /  9767 =  65.087
0, 1  acc:  4860 /  7535 =  64.499
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13867 / 19962 =  69.467
Robust  acc:  4860 /  7535 =  64.499
------------------------------------
Accuracies by groups:
0, 0  acc:  6357 /  9767 =  65.087
0, 1  acc:  4860 /  7535 =  64.499
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13867 / 19962 =  69.467
Robust  acc:  4860 /  7535 =  64.499
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6357 /  9767 =  65.087
0, 1  acc:  4860 /  7535 =  64.499
1, 0  acc:  2472 /  2480 =  99.677
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc: 13867 / 19962 =  69.467
Robust  acc:  4860 /  7535 =  64.499
------------------------------------
Epoch:  31 | Train Loss: 0.002 | Train Acc: 92.946 | Val Loss: 0.009 | Val Acc: 44.627
Training:
Accuracies by groups:
0, 0  acc: 14767 / 21686 =  68.095
0, 1  acc:  8031 / 10075 =  79.712
1, 0  acc: 120843 / 122769 =  98.431
1, 1  acc:  7647 /  8240 =  92.803
--------------------------------------
Average acc: 151288 / 162770 =  92.946
Robust  acc: 14767 / 21686 =  68.095
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  3017 /  8535 =  35.349
0, 1  acc:  2793 /  8276 =  33.748
1, 0  acc:  2874 /  2874 = 100.000
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  8866 / 19867 =  44.627
Robust  acc:  2793 /  8276 =  33.748
------------------------------------
-------------------------------------------
Avg Test Loss: 0.009 | Avg Test Acc: 45.001
Robust Acc: 32.449 | Best Acc: 99.879
-------------------------------------
Training, Epoch 30:
Accuracies by groups:
0, 0  acc:  3882 /  9767 =  39.746
0, 1  acc:  2445 /  7535 =  32.449
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8983 / 19962 =  45.001
Robust  acc:  2445 /  7535 =  32.449
------------------------------------
Accuracies by groups:
0, 0  acc:  3882 /  9767 =  39.746
0, 1  acc:  2445 /  7535 =  32.449
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8983 / 19962 =  45.001
Robust  acc:  2445 /  7535 =  32.449
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  3882 /  9767 =  39.746
0, 1  acc:  2445 /  7535 =  32.449
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   179 /   180 =  99.444
------------------------------------
Average acc:  8983 / 19962 =  45.001
Robust  acc:  2445 /  7535 =  32.449
------------------------------------
Epoch:  32 | Train Loss: 0.002 | Train Acc: 92.801 | Val Loss: 0.004 | Val Acc: 85.091
Training:
Accuracies by groups:
0, 0  acc: 14605 / 21642 =  67.485
0, 1  acc:  8190 / 10287 =  79.615
1, 0  acc: 120657 / 122583 =  98.429
1, 1  acc:  7600 /  8258 =  92.032
--------------------------------------
Average acc: 151052 / 162770 =  92.801
Robust  acc: 14605 / 21642 =  67.485
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6701 /  8535 =  78.512
0, 1  acc:  7217 /  8276 =  87.204
1, 0  acc:  2817 /  2874 =  98.017
1, 1  acc:   170 /   182 =  93.407
------------------------------------
Average acc: 16905 / 19867 =  85.091
Robust  acc:  6701 /  8535 =  78.512
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 86.449
Robust Acc: 82.871 | Best Acc: 97.782
-------------------------------------
Training, Epoch 31:
Accuracies by groups:
0, 0  acc:  8094 /  9767 =  82.871
0, 1  acc:  6578 /  7535 =  87.299
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17257 / 19962 =  86.449
Robust  acc:  8094 /  9767 =  82.871
------------------------------------
Accuracies by groups:
0, 0  acc:  8094 /  9767 =  82.871
0, 1  acc:  6578 /  7535 =  87.299
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17257 / 19962 =  86.449
Robust  acc:  8094 /  9767 =  82.871
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8094 /  9767 =  82.871
0, 1  acc:  6578 /  7535 =  87.299
1, 0  acc:  2425 /  2480 =  97.782
1, 1  acc:   160 /   180 =  88.889
------------------------------------
Average acc: 17257 / 19962 =  86.449
Robust  acc:  8094 /  9767 =  82.871
------------------------------------
Epoch:  33 | Train Loss: 0.002 | Train Acc: 92.848 | Val Loss: 0.010 | Val Acc: 34.525
Training:
Accuracies by groups:
0, 0  acc: 14535 / 21631 =  67.195
0, 1  acc:  7905 /  9971 =  79.280
1, 0  acc: 121135 / 123037 =  98.454
1, 1  acc:  7554 /  8131 =  92.904
--------------------------------------
Average acc: 151129 / 162770 =  92.848
Robust  acc: 14535 / 21631 =  67.195
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  1706 /  8535 =  19.988
0, 1  acc:  2097 /  8276 =  25.338
1, 0  acc:  2874 /  2874 = 100.000
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  6859 / 19867 =  34.525
Robust  acc:  1706 /  8535 =  19.988
------------------------------------
-------------------------------------------
Avg Test Loss: 0.010 | Avg Test Acc: 33.639
Robust Acc: 22.975 | Best Acc: 99.960
-------------------------------------
Training, Epoch 32:
Accuracies by groups:
0, 0  acc:  2244 /  9767 =  22.975
0, 1  acc:  1814 /  7535 =  24.074
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  6715 / 19962 =  33.639
Robust  acc:  2244 /  9767 =  22.975
------------------------------------
Accuracies by groups:
0, 0  acc:  2244 /  9767 =  22.975
0, 1  acc:  1814 /  7535 =  24.074
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  6715 / 19962 =  33.639
Robust  acc:  2244 /  9767 =  22.975
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  2244 /  9767 =  22.975
0, 1  acc:  1814 /  7535 =  24.074
1, 0  acc:  2479 /  2480 =  99.960
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  6715 / 19962 =  33.639
Robust  acc:  2244 /  9767 =  22.975
------------------------------------
Epoch:  34 | Train Loss: 0.002 | Train Acc: 92.833 | Val Loss: 0.003 | Val Acc: 93.985
Training:
Accuracies by groups:
0, 0  acc: 14659 / 21755 =  67.382
0, 1  acc:  8160 / 10317 =  79.093
1, 0  acc: 120619 / 122440 =  98.513
1, 1  acc:  7667 /  8258 =  92.843
--------------------------------------
Average acc: 151105 / 162770 =  92.833
Robust  acc: 14659 / 21755 =  67.382
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7878 /  8535 =  92.302
0, 1  acc:  8129 /  8276 =  98.224
1, 0  acc:  2555 /  2874 =  88.900
1, 1  acc:   110 /   182 =  60.440
------------------------------------
Average acc: 18672 / 19867 =  93.985
Robust  acc:   110 /   182 =  60.440
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 94.369
Robust Acc: 56.111 | Best Acc: 97.890
-------------------------------------
Training, Epoch 33:
Accuracies by groups:
0, 0  acc:  9162 /  9767 =  93.806
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2199 /  2480 =  88.669
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18838 / 19962 =  94.369
Robust  acc:   101 /   180 =  56.111
------------------------------------
Accuracies by groups:
0, 0  acc:  9162 /  9767 =  93.806
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2199 /  2480 =  88.669
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18838 / 19962 =  94.369
Robust  acc:   101 /   180 =  56.111
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9162 /  9767 =  93.806
0, 1  acc:  7376 /  7535 =  97.890
1, 0  acc:  2199 /  2480 =  88.669
1, 1  acc:   101 /   180 =  56.111
------------------------------------
Average acc: 18838 / 19962 =  94.369
Robust  acc:   101 /   180 =  56.111
------------------------------------
Epoch:  35 | Train Loss: 0.002 | Train Acc: 92.954 | Val Loss: 0.003 | Val Acc: 90.311
Training:
Accuracies by groups:
0, 0  acc: 14980 / 21877 =  68.474
0, 1  acc:  8157 / 10240 =  79.658
1, 0  acc: 120753 / 122603 =  98.491
1, 1  acc:  7411 /  8050 =  92.062
--------------------------------------
Average acc: 151301 / 162770 =  92.954
Robust  acc: 14980 / 21877 =  68.474
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7360 /  8535 =  86.233
0, 1  acc:  7745 /  8276 =  93.584
1, 0  acc:  2692 /  2874 =  93.667
1, 1  acc:   145 /   182 =  79.670
------------------------------------
Average acc: 17942 / 19867 =  90.311
Robust  acc:   145 /   182 =  79.670
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.188
Robust Acc: 75.000 | Best Acc: 93.306
-------------------------------------
Training, Epoch 34:
Accuracies by groups:
0, 0  acc:  8727 /  9767 =  89.352
0, 1  acc:  7027 /  7535 =  93.258
1, 0  acc:  2314 /  2480 =  93.306
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18203 / 19962 =  91.188
Robust  acc:   135 /   180 =  75.000
------------------------------------
Accuracies by groups:
0, 0  acc:  8727 /  9767 =  89.352
0, 1  acc:  7027 /  7535 =  93.258
1, 0  acc:  2314 /  2480 =  93.306
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18203 / 19962 =  91.188
Robust  acc:   135 /   180 =  75.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8727 /  9767 =  89.352
0, 1  acc:  7027 /  7535 =  93.258
1, 0  acc:  2314 /  2480 =  93.306
1, 1  acc:   135 /   180 =  75.000
------------------------------------
Average acc: 18203 / 19962 =  91.188
Robust  acc:   135 /   180 =  75.000
------------------------------------
Epoch:  36 | Train Loss: 0.002 | Train Acc: 92.862 | Val Loss: 0.005 | Val Acc: 73.197
Training:
Accuracies by groups:
0, 0  acc: 14718 / 21752 =  67.663
0, 1  acc:  8029 / 10078 =  79.669
1, 0  acc: 120719 / 122654 =  98.422
1, 1  acc:  7686 /  8286 =  92.759
--------------------------------------
Average acc: 151152 / 162770 =  92.862
Robust  acc: 14718 / 21752 =  67.663
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5557 /  8535 =  65.108
0, 1  acc:  5952 /  8276 =  71.919
1, 0  acc:  2854 /  2874 =  99.304
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 14542 / 19867 =  73.197
Robust  acc:  5557 /  8535 =  65.108
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 75.173
Robust Acc: 71.066 | Best Acc: 98.992
-------------------------------------
Training, Epoch 35:
Accuracies by groups:
0, 0  acc:  6941 /  9767 =  71.066
0, 1  acc:  5437 /  7535 =  72.157
1, 0  acc:  2455 /  2480 =  98.992
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15006 / 19962 =  75.173
Robust  acc:  6941 /  9767 =  71.066
------------------------------------
Accuracies by groups:
0, 0  acc:  6941 /  9767 =  71.066
0, 1  acc:  5437 /  7535 =  72.157
1, 0  acc:  2455 /  2480 =  98.992
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15006 / 19962 =  75.173
Robust  acc:  6941 /  9767 =  71.066
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6941 /  9767 =  71.066
0, 1  acc:  5437 /  7535 =  72.157
1, 0  acc:  2455 /  2480 =  98.992
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15006 / 19962 =  75.173
Robust  acc:  6941 /  9767 =  71.066
------------------------------------
Epoch:  37 | Train Loss: 0.002 | Train Acc: 93.001 | Val Loss: 0.004 | Val Acc: 87.874
Training:
Accuracies by groups:
0, 0  acc: 14736 / 21578 =  68.292
0, 1  acc:  8187 / 10206 =  80.218
1, 0  acc: 120806 / 122727 =  98.435
1, 1  acc:  7648 /  8259 =  92.602
--------------------------------------
Average acc: 151377 / 162770 =  93.001
Robust  acc: 14736 / 21578 =  68.292
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6879 /  8535 =  80.598
0, 1  acc:  7628 /  8276 =  92.170
1, 0  acc:  2797 /  2874 =  97.321
1, 1  acc:   154 /   182 =  84.615
------------------------------------
Average acc: 17458 / 19867 =  87.874
Robust  acc:  6879 /  8535 =  80.598
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 88.934
Robust Acc: 83.333 | Best Acc: 97.258
-------------------------------------
Training, Epoch 36:
Accuracies by groups:
0, 0  acc:  8246 /  9767 =  84.427
0, 1  acc:  6945 /  7535 =  92.170
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17753 / 19962 =  88.934
Robust  acc:   150 /   180 =  83.333
------------------------------------
Accuracies by groups:
0, 0  acc:  8246 /  9767 =  84.427
0, 1  acc:  6945 /  7535 =  92.170
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17753 / 19962 =  88.934
Robust  acc:   150 /   180 =  83.333
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8246 /  9767 =  84.427
0, 1  acc:  6945 /  7535 =  92.170
1, 0  acc:  2412 /  2480 =  97.258
1, 1  acc:   150 /   180 =  83.333
------------------------------------
Average acc: 17753 / 19962 =  88.934
Robust  acc:   150 /   180 =  83.333
------------------------------------
Epoch:  38 | Train Loss: 0.002 | Train Acc: 92.854 | Val Loss: 0.003 | Val Acc: 91.207
Training:
Accuracies by groups:
0, 0  acc: 14737 / 21758 =  67.731
0, 1  acc:  8046 / 10124 =  79.475
1, 0  acc: 120724 / 122641 =  98.437
1, 1  acc:  7632 /  8247 =  92.543
--------------------------------------
Average acc: 151139 / 162770 =  92.854
Robust  acc: 14737 / 21758 =  67.731
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7326 /  8535 =  85.835
0, 1  acc:  7870 /  8276 =  95.094
1, 0  acc:  2778 /  2874 =  96.660
1, 1  acc:   146 /   182 =  80.220
------------------------------------
Average acc: 18120 / 19867 =  91.207
Robust  acc:   146 /   182 =  80.220
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.624
Robust Acc: 73.889 | Best Acc: 95.524
-------------------------------------
Training, Epoch 37:
Accuracies by groups:
0, 0  acc:  8648 /  9767 =  88.543
0, 1  acc:  7140 /  7535 =  94.758
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18290 / 19962 =  91.624
Robust  acc:   133 /   180 =  73.889
------------------------------------
Accuracies by groups:
0, 0  acc:  8648 /  9767 =  88.543
0, 1  acc:  7140 /  7535 =  94.758
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18290 / 19962 =  91.624
Robust  acc:   133 /   180 =  73.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8648 /  9767 =  88.543
0, 1  acc:  7140 /  7535 =  94.758
1, 0  acc:  2369 /  2480 =  95.524
1, 1  acc:   133 /   180 =  73.889
------------------------------------
Average acc: 18290 / 19962 =  91.624
Robust  acc:   133 /   180 =  73.889
------------------------------------
Epoch:  39 | Train Loss: 0.002 | Train Acc: 92.975 | Val Loss: 0.004 | Val Acc: 87.099
Training:
Accuracies by groups:
0, 0  acc: 14827 / 21746 =  68.183
0, 1  acc:  7937 /  9992 =  79.434
1, 0  acc: 120944 / 122807 =  98.483
1, 1  acc:  7627 /  8225 =  92.729
--------------------------------------
Average acc: 151335 / 162770 =  92.975
Robust  acc: 14827 / 21746 =  68.183
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6853 /  8535 =  80.293
0, 1  acc:  7459 /  8276 =  90.128
1, 0  acc:  2823 /  2874 =  98.225
1, 1  acc:   169 /   182 =  92.857
------------------------------------
Average acc: 17304 / 19867 =  87.099
Robust  acc:  6853 /  8535 =  80.293
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 88.308
Robust Acc: 84.468 | Best Acc: 97.621
-------------------------------------
Training, Epoch 38:
Accuracies by groups:
0, 0  acc:  8250 /  9767 =  84.468
0, 1  acc:  6796 /  7535 =  90.192
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17628 / 19962 =  88.308
Robust  acc:  8250 /  9767 =  84.468
------------------------------------
Accuracies by groups:
0, 0  acc:  8250 /  9767 =  84.468
0, 1  acc:  6796 /  7535 =  90.192
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17628 / 19962 =  88.308
Robust  acc:  8250 /  9767 =  84.468
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8250 /  9767 =  84.468
0, 1  acc:  6796 /  7535 =  90.192
1, 0  acc:  2421 /  2480 =  97.621
1, 1  acc:   161 /   180 =  89.444
------------------------------------
Average acc: 17628 / 19962 =  88.308
Robust  acc:  8250 /  9767 =  84.468
------------------------------------
Epoch:  40 | Train Loss: 0.002 | Train Acc: 93.028 | Val Loss: 0.003 | Val Acc: 93.381
Training:
Accuracies by groups:
0, 0  acc: 14798 / 21627 =  68.424
0, 1  acc:  8091 / 10046 =  80.540
1, 0  acc: 120905 / 122865 =  98.405
1, 1  acc:  7628 /  8232 =  92.663
--------------------------------------
Average acc: 151422 / 162770 =  93.028
Robust  acc: 14798 / 21627 =  68.424
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7789 /  8535 =  91.260
0, 1  acc:  8050 /  8276 =  97.269
1, 0  acc:  2599 /  2874 =  90.431
1, 1  acc:   114 /   182 =  62.637
------------------------------------
Average acc: 18552 / 19867 =  93.381
Robust  acc:   114 /   182 =  62.637
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.873
Robust Acc: 60.000 | Best Acc: 97.226
-------------------------------------
Training, Epoch 39:
Accuracies by groups:
0, 0  acc:  9111 /  9767 =  93.284
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2194 /  2480 =  88.468
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18739 / 19962 =  93.873
Robust  acc:   108 /   180 =  60.000
------------------------------------
Accuracies by groups:
0, 0  acc:  9111 /  9767 =  93.284
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2194 /  2480 =  88.468
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18739 / 19962 =  93.873
Robust  acc:   108 /   180 =  60.000
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9111 /  9767 =  93.284
0, 1  acc:  7326 /  7535 =  97.226
1, 0  acc:  2194 /  2480 =  88.468
1, 1  acc:   108 /   180 =  60.000
------------------------------------
Average acc: 18739 / 19962 =  93.873
Robust  acc:   108 /   180 =  60.000
------------------------------------
Epoch:  41 | Train Loss: 0.002 | Train Acc: 92.926 | Val Loss: 0.005 | Val Acc: 76.368
Training:
Accuracies by groups:
0, 0  acc: 14827 / 21779 =  68.079
0, 1  acc:  8059 / 10057 =  80.133
1, 0  acc: 120955 / 122884 =  98.430
1, 1  acc:  7414 /  8050 =  92.099
--------------------------------------
Average acc: 151255 / 162770 =  92.926
Robust  acc: 14827 / 21779 =  68.079
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  5899 /  8535 =  69.115
0, 1  acc:  6239 /  8276 =  75.387
1, 0  acc:  2855 /  2874 =  99.339
1, 1  acc:   179 /   182 =  98.352
------------------------------------
Average acc: 15172 / 19867 =  76.368
Robust  acc:  5899 /  8535 =  69.115
------------------------------------
-------------------------------------------
Avg Test Loss: 0.005 | Avg Test Acc: 78.319
Robust Acc: 74.404 | Best Acc: 99.113
-------------------------------------
Training, Epoch 40:
Accuracies by groups:
0, 0  acc:  7267 /  9767 =  74.404
0, 1  acc:  5736 /  7535 =  76.125
1, 0  acc:  2458 /  2480 =  99.113
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15634 / 19962 =  78.319
Robust  acc:  7267 /  9767 =  74.404
------------------------------------
Accuracies by groups:
0, 0  acc:  7267 /  9767 =  74.404
0, 1  acc:  5736 /  7535 =  76.125
1, 0  acc:  2458 /  2480 =  99.113
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15634 / 19962 =  78.319
Robust  acc:  7267 /  9767 =  74.404
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7267 /  9767 =  74.404
0, 1  acc:  5736 /  7535 =  76.125
1, 0  acc:  2458 /  2480 =  99.113
1, 1  acc:   173 /   180 =  96.111
------------------------------------
Average acc: 15634 / 19962 =  78.319
Robust  acc:  7267 /  9767 =  74.404
------------------------------------
Epoch:  42 | Train Loss: 0.002 | Train Acc: 92.950 | Val Loss: 0.004 | Val Acc: 85.775
Training:
Accuracies by groups:
0, 0  acc: 15009 / 21958 =  68.353
0, 1  acc:  8008 / 10006 =  80.032
1, 0  acc: 120700 / 122615 =  98.438
1, 1  acc:  7577 /  8191 =  92.504
--------------------------------------
Average acc: 151294 / 162770 =  92.950
Robust  acc: 15009 / 21958 =  68.353
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6823 /  8535 =  79.941
0, 1  acc:  7230 /  8276 =  87.361
1, 0  acc:  2816 /  2874 =  97.982
1, 1  acc:   172 /   182 =  94.505
------------------------------------
Average acc: 17041 / 19867 =  85.775
Robust  acc:  6823 /  8535 =  79.941
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 86.865
Robust Acc: 83.782 | Best Acc: 97.379
-------------------------------------
Training, Epoch 41:
Accuracies by groups:
0, 0  acc:  8183 /  9767 =  83.782
0, 1  acc:  6587 /  7535 =  87.419
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17340 / 19962 =  86.865
Robust  acc:  8183 /  9767 =  83.782
------------------------------------
Accuracies by groups:
0, 0  acc:  8183 /  9767 =  83.782
0, 1  acc:  6587 /  7535 =  87.419
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17340 / 19962 =  86.865
Robust  acc:  8183 /  9767 =  83.782
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8183 /  9767 =  83.782
0, 1  acc:  6587 /  7535 =  87.419
1, 0  acc:  2415 /  2480 =  97.379
1, 1  acc:   155 /   180 =  86.111
------------------------------------
Average acc: 17340 / 19962 =  86.865
Robust  acc:  8183 /  9767 =  83.782
------------------------------------
Epoch:  43 | Train Loss: 0.002 | Train Acc: 92.985 | Val Loss: 0.008 | Val Acc: 46.308
Training:
Accuracies by groups:
0, 0  acc: 14783 / 21676 =  68.200
0, 1  acc:  8218 / 10204 =  80.537
1, 0  acc: 120695 / 122616 =  98.433
1, 1  acc:  7656 /  8274 =  92.531
--------------------------------------
Average acc: 151352 / 162770 =  92.985
Robust  acc: 14783 / 21676 =  68.200
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  2966 /  8535 =  34.751
0, 1  acc:  3180 /  8276 =  38.424
1, 0  acc:  2872 /  2874 =  99.930
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc:  9200 / 19867 =  46.308
Robust  acc:  2966 /  8535 =  34.751
------------------------------------
-------------------------------------------
Avg Test Loss: 0.008 | Avg Test Acc: 47.175
Robust Acc: 38.328 | Best Acc: 99.879
-------------------------------------
Training, Epoch 42:
Accuracies by groups:
0, 0  acc:  3874 /  9767 =  39.664
0, 1  acc:  2888 /  7535 =  38.328
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9417 / 19962 =  47.175
Robust  acc:  2888 /  7535 =  38.328
------------------------------------
Accuracies by groups:
0, 0  acc:  3874 /  9767 =  39.664
0, 1  acc:  2888 /  7535 =  38.328
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9417 / 19962 =  47.175
Robust  acc:  2888 /  7535 =  38.328
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  3874 /  9767 =  39.664
0, 1  acc:  2888 /  7535 =  38.328
1, 0  acc:  2477 /  2480 =  99.879
1, 1  acc:   178 /   180 =  98.889
------------------------------------
Average acc:  9417 / 19962 =  47.175
Robust  acc:  2888 /  7535 =  38.328
------------------------------------
Epoch:  44 | Train Loss: 0.002 | Train Acc: 92.965 | Val Loss: 0.003 | Val Acc: 90.592
Training:
Accuracies by groups:
0, 0  acc: 14874 / 21736 =  68.430
0, 1  acc:  8032 / 10044 =  79.968
1, 0  acc: 120918 / 122855 =  98.423
1, 1  acc:  7495 /  8135 =  92.133
--------------------------------------
Average acc: 151319 / 162770 =  92.965
Robust  acc: 14874 / 21736 =  68.430
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7223 /  8535 =  84.628
0, 1  acc:  7870 /  8276 =  95.094
1, 0  acc:  2766 /  2874 =  96.242
1, 1  acc:   139 /   182 =  76.374
------------------------------------
Average acc: 17998 / 19867 =  90.592
Robust  acc:   139 /   182 =  76.374
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 91.213
Robust Acc: 71.667 | Best Acc: 95.403
-------------------------------------
Training, Epoch 43:
Accuracies by groups:
0, 0  acc:  8576 /  9767 =  87.806
0, 1  acc:  7137 /  7535 =  94.718
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18208 / 19962 =  91.213
Robust  acc:   129 /   180 =  71.667
------------------------------------
Accuracies by groups:
0, 0  acc:  8576 /  9767 =  87.806
0, 1  acc:  7137 /  7535 =  94.718
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18208 / 19962 =  91.213
Robust  acc:   129 /   180 =  71.667
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8576 /  9767 =  87.806
0, 1  acc:  7137 /  7535 =  94.718
1, 0  acc:  2366 /  2480 =  95.403
1, 1  acc:   129 /   180 =  71.667
------------------------------------
Average acc: 18208 / 19962 =  91.213
Robust  acc:   129 /   180 =  71.667
------------------------------------
Epoch:  45 | Train Loss: 0.002 | Train Acc: 93.036 | Val Loss: 0.004 | Val Acc: 80.168
Training:
Accuracies by groups:
0, 0  acc: 14860 / 21755 =  68.306
0, 1  acc:  8093 / 10021 =  80.760
1, 0  acc: 120902 / 122776 =  98.474
1, 1  acc:  7579 /  8218 =  92.224
--------------------------------------
Average acc: 151434 / 162770 =  93.036
Robust  acc: 14860 / 21755 =  68.306
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6134 /  8535 =  71.869
0, 1  acc:  6788 /  8276 =  82.020
1, 0  acc:  2829 /  2874 =  98.434
1, 1  acc:   176 /   182 =  96.703
------------------------------------
Average acc: 15927 / 19867 =  80.168
Robust  acc:  6134 /  8535 =  71.869
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 81.695
Robust Acc: 77.311 | Best Acc: 98.468
-------------------------------------
Training, Epoch 44:
Accuracies by groups:
0, 0  acc:  7551 /  9767 =  77.311
0, 1  acc:  6147 /  7535 =  81.579
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16308 / 19962 =  81.695
Robust  acc:  7551 /  9767 =  77.311
------------------------------------
Accuracies by groups:
0, 0  acc:  7551 /  9767 =  77.311
0, 1  acc:  6147 /  7535 =  81.579
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16308 / 19962 =  81.695
Robust  acc:  7551 /  9767 =  77.311
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7551 /  9767 =  77.311
0, 1  acc:  6147 /  7535 =  81.579
1, 0  acc:  2442 /  2480 =  98.468
1, 1  acc:   168 /   180 =  93.333
------------------------------------
Average acc: 16308 / 19962 =  81.695
Robust  acc:  7551 /  9767 =  77.311
------------------------------------
Epoch:  46 | Train Loss: 0.002 | Train Acc: 93.217 | Val Loss: 0.004 | Val Acc: 82.952
Training:
Accuracies by groups:
0, 0  acc: 14906 / 21509 =  69.301
0, 1  acc:  8244 / 10207 =  80.768
1, 0  acc: 120993 / 122872 =  98.471
1, 1  acc:  7586 /  8182 =  92.716
--------------------------------------
Average acc: 151729 / 162770 =  93.217
Robust  acc: 14906 / 21509 =  69.301
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  6455 /  8535 =  75.630
0, 1  acc:  7020 /  8276 =  84.824
1, 0  acc:  2834 /  2874 =  98.608
1, 1  acc:   171 /   182 =  93.956
------------------------------------
Average acc: 16480 / 19867 =  82.952
Robust  acc:  6455 /  8535 =  75.630
------------------------------------
-------------------------------------------
Avg Test Loss: 0.004 | Avg Test Acc: 84.080
Robust Acc: 80.485 | Best Acc: 98.266
-------------------------------------
Training, Epoch 45:
Accuracies by groups:
0, 0  acc:  7861 /  9767 =  80.485
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16784 / 19962 =  84.080
Robust  acc:  7861 /  9767 =  80.485
------------------------------------
Accuracies by groups:
0, 0  acc:  7861 /  9767 =  80.485
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16784 / 19962 =  84.080
Robust  acc:  7861 /  9767 =  80.485
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  7861 /  9767 =  80.485
0, 1  acc:  6317 /  7535 =  83.835
1, 0  acc:  2437 /  2480 =  98.266
1, 1  acc:   169 /   180 =  93.889
------------------------------------
Average acc: 16784 / 19962 =  84.080
Robust  acc:  7861 /  9767 =  80.485
------------------------------------
Epoch:  47 | Train Loss: 0.002 | Train Acc: 93.056 | Val Loss: 0.003 | Val Acc: 92.772
Training:
Accuracies by groups:
0, 0  acc: 14760 / 21561 =  68.457
0, 1  acc:  8181 / 10096 =  81.032
1, 0  acc: 120963 / 122911 =  98.415
1, 1  acc:  7563 /  8202 =  92.209
--------------------------------------
Average acc: 151467 / 162770 =  93.056
Robust  acc: 14760 / 21561 =  68.457
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7699 /  8535 =  90.205
0, 1  acc:  7958 /  8276 =  96.158
1, 0  acc:  2646 /  2874 =  92.067
1, 1  acc:   128 /   182 =  70.330
------------------------------------
Average acc: 18431 / 19867 =  92.772
Robust  acc:   128 /   182 =  70.330
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 93.332
Robust Acc: 63.889 | Best Acc: 95.979
-------------------------------------
Training, Epoch 46:
Accuracies by groups:
0, 0  acc:  9039 /  9767 =  92.546
0, 1  acc:  7232 /  7535 =  95.979
1, 0  acc:  2245 /  2480 =  90.524
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18631 / 19962 =  93.332
Robust  acc:   115 /   180 =  63.889
------------------------------------
Accuracies by groups:
0, 0  acc:  9039 /  9767 =  92.546
0, 1  acc:  7232 /  7535 =  95.979
1, 0  acc:  2245 /  2480 =  90.524
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18631 / 19962 =  93.332
Robust  acc:   115 /   180 =  63.889
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  9039 /  9767 =  92.546
0, 1  acc:  7232 /  7535 =  95.979
1, 0  acc:  2245 /  2480 =  90.524
1, 1  acc:   115 /   180 =  63.889
------------------------------------
Average acc: 18631 / 19962 =  93.332
Robust  acc:   115 /   180 =  63.889
------------------------------------
Epoch:  48 | Train Loss: 0.002 | Train Acc: 93.067 | Val Loss: 0.006 | Val Acc: 61.907
Training:
Accuracies by groups:
0, 0  acc: 15083 / 21886 =  68.916
0, 1  acc:  8187 / 10160 =  80.581
1, 0  acc: 120586 / 122473 =  98.459
1, 1  acc:  7629 /  8251 =  92.462
--------------------------------------
Average acc: 151485 / 162770 =  93.067
Robust  acc: 15083 / 21886 =  68.916
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4342 /  8535 =  50.873
0, 1  acc:  4909 /  8276 =  59.316
1, 0  acc:  2868 /  2874 =  99.791
1, 1  acc:   180 /   182 =  98.901
------------------------------------
Average acc: 12299 / 19867 =  61.907
Robust  acc:  4342 /  8535 =  50.873
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 63.551
Robust Acc: 57.479 | Best Acc: 99.637
-------------------------------------
Training, Epoch 47:
Accuracies by groups:
0, 0  acc:  5614 /  9767 =  57.479
0, 1  acc:  4425 /  7535 =  58.726
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 12686 / 19962 =  63.551
Robust  acc:  5614 /  9767 =  57.479
------------------------------------
Accuracies by groups:
0, 0  acc:  5614 /  9767 =  57.479
0, 1  acc:  4425 /  7535 =  58.726
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 12686 / 19962 =  63.551
Robust  acc:  5614 /  9767 =  57.479
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  5614 /  9767 =  57.479
0, 1  acc:  4425 /  7535 =  58.726
1, 0  acc:  2471 /  2480 =  99.637
1, 1  acc:   176 /   180 =  97.778
------------------------------------
Average acc: 12686 / 19962 =  63.551
Robust  acc:  5614 /  9767 =  57.479
------------------------------------
Epoch:  49 | Train Loss: 0.002 | Train Acc: 93.034 | Val Loss: 0.003 | Val Acc: 90.049
Training:
Accuracies by groups:
0, 0  acc: 15162 / 21956 =  69.056
0, 1  acc:  8202 / 10106 =  81.160
1, 0  acc: 120524 / 122558 =  98.340
1, 1  acc:  7544 /  8150 =  92.564
--------------------------------------
Average acc: 151432 / 162770 =  93.034
Robust  acc: 15162 / 21956 =  69.056
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  7359 /  8535 =  86.221
0, 1  acc:  7639 /  8276 =  92.303
1, 0  acc:  2743 /  2874 =  95.442
1, 1  acc:   149 /   182 =  81.868
------------------------------------
Average acc: 17890 / 19867 =  90.049
Robust  acc:   149 /   182 =  81.868
------------------------------------
-------------------------------------------
Avg Test Loss: 0.003 | Avg Test Acc: 90.813
Robust Acc: 77.778 | Best Acc: 94.153
-------------------------------------
Training, Epoch 48:
Accuracies by groups:
0, 0  acc:  8716 /  9767 =  89.239
0, 1  acc:  6937 /  7535 =  92.064
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18128 / 19962 =  90.813
Robust  acc:   140 /   180 =  77.778
------------------------------------
Accuracies by groups:
0, 0  acc:  8716 /  9767 =  89.239
0, 1  acc:  6937 /  7535 =  92.064
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18128 / 19962 =  90.813
Robust  acc:   140 /   180 =  77.778
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  8716 /  9767 =  89.239
0, 1  acc:  6937 /  7535 =  92.064
1, 0  acc:  2335 /  2480 =  94.153
1, 1  acc:   140 /   180 =  77.778
------------------------------------
Average acc: 18128 / 19962 =  90.813
Robust  acc:   140 /   180 =  77.778
------------------------------------
Epoch:  50 | Train Loss: 0.002 | Train Acc: 93.128 | Val Loss: 0.006 | Val Acc: 64.524
Training:
Accuracies by groups:
0, 0  acc: 15204 / 21943 =  69.289
0, 1  acc:  8256 / 10188 =  81.037
1, 0  acc: 120566 / 122428 =  98.479
1, 1  acc:  7558 /  8211 =  92.047
--------------------------------------
Average acc: 151584 / 162770 =  93.128
Robust  acc: 15204 / 21943 =  69.289
--------------------------------------
Validating:
Accuracies by groups:
0, 0  acc:  4812 /  8535 =  56.380
0, 1  acc:  4962 /  8276 =  59.957
1, 0  acc:  2863 /  2874 =  99.617
1, 1  acc:   182 /   182 = 100.000
------------------------------------
Average acc: 12819 / 19867 =  64.524
Robust  acc:  4812 /  8535 =  56.380
------------------------------------
-------------------------------------------
Avg Test Loss: 0.006 | Avg Test Acc: 65.499
Robust Acc: 58.607 | Best Acc: 99.395
-------------------------------------
Training, Epoch 49:
Accuracies by groups:
0, 0  acc:  6019 /  9767 =  61.626
0, 1  acc:  4416 /  7535 =  58.607
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13075 / 19962 =  65.499
Robust  acc:  4416 /  7535 =  58.607
------------------------------------
Accuracies by groups:
0, 0  acc:  6019 /  9767 =  61.626
0, 1  acc:  4416 /  7535 =  58.607
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13075 / 19962 =  65.499
Robust  acc:  4416 /  7535 =  58.607
------------------------------------
Testing:
Accuracies by groups:
0, 0  acc:  6019 /  9767 =  61.626
0, 1  acc:  4416 /  7535 =  58.607
1, 0  acc:  2465 /  2480 =  99.395
1, 1  acc:   175 /   180 =  97.222
------------------------------------
Average acc: 13075 / 19962 =  65.499
Robust  acc:  4416 /  7535 =  58.607
------------------------------------
replace: True
-> Updating checkpoint debias-end_seed33.pt...
Checkpoint saved at ./model/celebA/config/debias-end_seed33.pt
