
=== Start adding workers ===
=> Add worker SGDMWorker(index=0, momentum=0.9)
=> Add worker SGDMWorker(index=1, momentum=0.9)
=> Add worker SGDMWorker(index=2, momentum=0.9)
=> Add worker SGDMWorker(index=3, momentum=0.9)
=> Add worker SGDMWorker(index=4, momentum=0.9)
=> Add worker ByzantineWorker(index=5)
=> Add worker ByzantineWorker(index=6)
=> Add worker ByzantineWorker(index=7)
=> Add worker ByzantineWorker(index=8)
=> Add worker ByzantineWorker(index=9)
=> Add worker ByzantineWorker(index=10)
=> Add worker ByzantineWorker(index=11)
=> Add worker ByzantineWorker(index=12)
=> Add worker ByzantineWorker(index=13)
=> Add worker ByzantineWorker(index=14)
=> Add worker ByzantineWorker(index=15)

=== Start adding graph ===
<__main__.MaliciousRing object at 0x7f1d66a79b20>

Train epoch 1
[E 1B0  |    512/60000 (  1%) ] Loss: 2.3075 top1=  5.0000

=== Peeking data label distribution E1B0 ===
Worker 0 has targets: tensor([0, 0, 0, 0, 0], device='cuda:0')
Worker 1 has targets: tensor([1, 1, 0, 0, 1], device='cuda:0')
Worker 2 has targets: tensor([1, 1, 1, 1, 1], device='cuda:0')
Worker 3 has targets: tensor([2, 2, 1, 2, 2], device='cuda:0')
Worker 4 has targets: tensor([2, 2, 2, 2, 2], device='cuda:0')
Worker 5 has targets: tensor([3, 3, 3, 3, 3], device='cuda:0')
Worker 6 has targets: tensor([4, 4, 3, 3, 4], device='cuda:0')
Worker 7 has targets: tensor([4, 4, 4, 4, 4], device='cuda:0')
Worker 8 has targets: tensor([5, 5, 4, 5, 5], device='cuda:0')
Worker 9 has targets: tensor([6, 6, 5, 5, 6], device='cuda:0')
Worker 10 has targets: tensor([6, 6, 6, 6, 6], device='cuda:0')
Worker 11 has targets: tensor([7, 7, 6, 7, 7], device='cuda:0')
Worker 12 has targets: tensor([7, 7, 7, 7, 8], device='cuda:0')
Worker 13 has targets: tensor([8, 8, 8, 8, 8], device='cuda:0')
Worker 14 has targets: tensor([9, 9, 8, 9, 9], device='cuda:0')
Worker 15 has targets: tensor([9, 9, 9, 9, 9], device='cuda:0')



=== Log mixing matrix @ E1B0 ===
[[0.545 0.091 0.    0.    0.091 0.091 0.    0.    0.    0.    0.091 0.
  0.    0.    0.    0.091]
 [0.091 0.582 0.109 0.    0.    0.    0.109 0.    0.    0.    0.    0.109
  0.    0.    0.    0.   ]
 [0.    0.109 0.564 0.109 0.    0.    0.    0.109 0.    0.    0.    0.
  0.109 0.    0.    0.   ]
 [0.    0.    0.109 0.564 0.109 0.    0.    0.    0.109 0.    0.    0.
  0.    0.109 0.    0.   ]
 [0.091 0.    0.    0.109 0.582 0.    0.    0.    0.    0.109 0.    0.
  0.    0.    0.109 0.   ]
 [0.091 0.    0.    0.    0.    0.909 0.    0.    0.    0.    0.    0.
  0.    0.    0.    0.   ]
 [0.    0.109 0.    0.    0.    0.    0.891 0.    0.    0.    0.    0.
  0.    0.    0.    0.   ]
 [0.    0.    0.109 0.    0.    0.    0.    0.891 0.    0.    0.    0.
  0.    0.    0.    0.   ]
 [0.    0.    0.    0.109 0.    0.    0.    0.    0.891 0.    0.    0.
  0.    0.    0.    0.   ]
 [0.    0.    0.    0.    0.109 0.    0.    0.    0.    0.891 0.    0.
  0.    0.    0.    0.   ]
 [0.091 0.    0.    0.    0.    0.    0.    0.    0.    0.    0.909 0.
  0.    0.    0.    0.   ]
 [0.    0.109 0.    0.    0.    0.    0.    0.    0.    0.    0.    0.891
  0.    0.    0.    0.   ]
 [0.    0.    0.109 0.    0.    0.    0.    0.    0.    0.    0.    0.
  0.891 0.    0.    0.   ]
 [0.    0.    0.    0.109 0.    0.    0.    0.    0.    0.    0.    0.
  0.    0.891 0.    0.   ]
 [0.    0.    0.    0.    0.109 0.    0.    0.    0.    0.    0.    0.
  0.    0.    0.891 0.   ]
 [0.091 0.    0.    0.    0.    0.    0.    0.    0.    0.    0.    0.
  0.    0.    0.    0.909]]


[E 1B10 |   5632/60000 (  9%) ] Loss: 0.1187 top1= 96.2500
[E 1B20 |  10752/60000 ( 18%) ] Loss: 0.2141 top1= 95.6250

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=8.0130 top1= 20.8133

Train epoch 2
[E 2B0  |    512/60000 (  1%) ] Loss: 0.1736 top1= 96.8750
[E 2B10 |   5632/60000 (  9%) ] Loss: 0.0213 top1= 99.3750
[E 2B20 |  10752/60000 ( 18%) ] Loss: 0.0282 top1= 99.3750

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=5.1738 top1= 24.3790

Train epoch 3
[E 3B0  |    512/60000 (  1%) ] Loss: 0.0481 top1= 99.3750
[E 3B10 |   5632/60000 (  9%) ] Loss: 0.0139 top1= 99.3750
[E 3B20 |  10752/60000 ( 18%) ] Loss: 0.0162 top1= 98.7500

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=4.3190 top1= 25.8113

Train epoch 4
[E 4B0  |    512/60000 (  1%) ] Loss: 0.0365 top1= 99.3750
[E 4B10 |   5632/60000 (  9%) ] Loss: 0.0165 top1=100.0000
[E 4B20 |  10752/60000 ( 18%) ] Loss: 0.0219 top1= 98.7500

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=3.6446 top1= 26.2019

Train epoch 5
[E 5B0  |    512/60000 (  1%) ] Loss: 0.0339 top1= 99.3750
[E 5B10 |   5632/60000 (  9%) ] Loss: 0.0160 top1=100.0000
[E 5B20 |  10752/60000 ( 18%) ] Loss: 0.0225 top1=100.0000

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=3.5886 top1= 22.4960

Train epoch 6
[E 6B0  |    512/60000 (  1%) ] Loss: 0.0267 top1= 99.3750
[E 6B10 |   5632/60000 (  9%) ] Loss: 0.0123 top1=100.0000
[E 6B20 |  10752/60000 ( 18%) ] Loss: 0.0200 top1=100.0000

=> Averaged model (Global Average Validation Accuracy) | Eval Loss=4.2060 top1= 21.0737

Train epoch 7
[E 7B0  |    512/60000 (  1%) ] Loss: 0.0349 top1= 98.7500
[E 7B10 |   5632/60000 (  9%) ] Loss: 0.0163 top1=100.0000
[E 7B20 |  10752/60000 ( 18%) ] Loss: 0.0177 top1= 99.3750
