Train #: 60000; Test #: 10000
Labels: tensor([5, 0, 4, 1, 9, 2, 1, 3]); Batch shape: torch.Size([8, 1, 28, 28])
MLP(
  (flatten): Flatten(start_dim=1, end_dim=-1)
  (dnn_model): Sequential(
    (0): Linear(in_features=784, out_features=256, bias=True)
    (1): ReLU()
    (2): Linear(in_features=256, out_features=10, bias=True)
  )
)
Epoch 1
-------------------------------
loss: 2.308738  [    0/60000]
loss: 0.643267  [25600/60000]
loss: 0.384817  [51200/60000]
Test Error: 
 Accuracy: 90.0%, Avg loss: 0.368403 

Epoch 2
-------------------------------
loss: 0.323617  [    0/60000]
loss: 0.300336  [25600/60000]
loss: 0.268706  [51200/60000]
Test Error: 
 Accuracy: 91.6%, Avg loss: 0.301624 

Epoch 3
-------------------------------
loss: 0.314411  [    0/60000]
loss: 0.337723  [25600/60000]
loss: 0.234745  [51200/60000]
Test Error: 
 Accuracy: 92.4%, Avg loss: 0.267629 

Epoch 4
-------------------------------
loss: 0.258774  [    0/60000]
loss: 0.222343  [25600/60000]
loss: 0.363658  [51200/60000]
Test Error: 
 Accuracy: 92.9%, Avg loss: 0.245184 

Epoch 5
-------------------------------
loss: 0.365407  [    0/60000]
loss: 0.286917  [25600/60000]
loss: 0.213272  [51200/60000]
Test Error: 
 Accuracy: 93.9%, Avg loss: 0.222085 

Done!
Labels    : tensor([5, 0, 4, 1, 9, 2, 1, 3])
Prediction: tensor([5, 0, 4, 1, 9, 2, 1, 3])
Accuracy: 93.87
loaded image shape: torch.Size([1, 1, 28, 28])
Predicted: "3", Actual: "6"