Update PiT_MNIST_Colab_README.md
Browse files- PiT_MNIST_Colab_README.md +38 -3
PiT_MNIST_Colab_README.md
CHANGED
|
@@ -1,10 +1,12 @@
|
|
| 1 |
The following PiT_MNIST_V1.0.ipynb is a direct implementationi of the PiT pixel transformer described in the 2024 paper titled
|
| 2 |
An Image is Worth More Than 16 x 16 Patches: Exploring Transformers on Individual Pixels
|
| 3 |
-
at https://arxiv.org/html/2406.09415v1
|
| 4 |
-
Which describes "directly treating each individual pixel as a token and achieve highly performant results"
|
| 5 |
This script simply applies this PiT model architecture without any modifications to the standard NMIST numeral-images-classification dataset that is provided in Google Colab sample_data folder.
|
| 6 |
The script was ran for 25 epochs and obtained 92.30 Accuracy on the Validation set ( Train Loss: 0.2800 | Val Loss: 0.2441 | Val Acc: 92.30%) by epoch 15.
|
| 7 |
-
Loss fell and Accuracy increased monontonically per each epoch.
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
# ==============================================================================
|
| 10 |
# PiT_MNIST_V1.0.py [in colab: PiT_MNIST_V1.0.ipynb]
|
|
@@ -305,6 +307,39 @@ Epoch 08/25 | Train Loss: 0.4682 | Val Loss: 0.3680 | Val Acc: 88.05%
|
|
| 305 |
-> New best validation accuracy! Saving model state.
|
| 306 |
Epoch 09/25 | Train Loss: 0.4264 | Val Loss: 0.3446 | Val Acc: 89.20%
|
| 307 |
-> New best validation accuracy! Saving model state.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 308 |
|
| 309 |
|
| 310 |
|
|
|
|
| 1 |
The following PiT_MNIST_V1.0.ipynb is a direct implementationi of the PiT pixel transformer described in the 2024 paper titled
|
| 2 |
An Image is Worth More Than 16 x 16 Patches: Exploring Transformers on Individual Pixels
|
| 3 |
+
at https://arxiv.org/html/2406.09415v1 which describes "directly treating each individual pixel as a token and achieve highly performant results"
|
|
|
|
| 4 |
This script simply applies this PiT model architecture without any modifications to the standard NMIST numeral-images-classification dataset that is provided in Google Colab sample_data folder.
|
| 5 |
The script was ran for 25 epochs and obtained 92.30 Accuracy on the Validation set ( Train Loss: 0.2800 | Val Loss: 0.2441 | Val Acc: 92.30%) by epoch 15.
|
| 6 |
+
Loss fell and Accuracy increased (almost) monontonically per each epoch until Epoch 18. (one minor dip in accuracy between Epoch 13 and 14, and again at Epoch 18-19, and 23-24 while Train Loss always continued to drop)
|
| 7 |
+
Final Test Accuracy: 95.01% (25 Epochs)
|
| 8 |
+
Final Test Loss: 0.1662
|
| 9 |
+
|
| 10 |
|
| 11 |
# ==============================================================================
|
| 12 |
# PiT_MNIST_V1.0.py [in colab: PiT_MNIST_V1.0.ipynb]
|
|
|
|
| 307 |
-> New best validation accuracy! Saving model state.
|
| 308 |
Epoch 09/25 | Train Loss: 0.4264 | Val Loss: 0.3446 | Val Acc: 89.20%
|
| 309 |
-> New best validation accuracy! Saving model state.
|
| 310 |
+
Epoch 10/25 | Train Loss: 0.4038 | Val Loss: 0.3163 | Val Acc: 89.95%
|
| 311 |
+
-> New best validation accuracy! Saving model state.
|
| 312 |
+
Epoch 11/25 | Train Loss: 0.3641 | Val Loss: 0.2941 | Val Acc: 90.80%
|
| 313 |
+
-> New best validation accuracy! Saving model state.
|
| 314 |
+
Epoch 12/25 | Train Loss: 0.3447 | Val Loss: 0.2759 | Val Acc: 91.45%
|
| 315 |
+
-> New best validation accuracy! Saving model state.
|
| 316 |
+
Epoch 13/25 | Train Loss: 0.3181 | Val Loss: 0.2603 | Val Acc: 92.05%
|
| 317 |
+
-> New best validation accuracy! Saving model state.
|
| 318 |
+
Epoch 14/25 | Train Loss: 0.3023 | Val Loss: 0.2695 | Val Acc: 91.90%
|
| 319 |
+
Epoch 15/25 | Train Loss: 0.2800 | Val Loss: 0.2441 | Val Acc: 92.30%
|
| 320 |
+
-> New best validation accuracy! Saving model state.
|
| 321 |
+
Epoch 16/25 | Train Loss: 0.2677 | Val Loss: 0.2377 | Val Acc: 92.65%
|
| 322 |
+
-> New best validation accuracy! Saving model state.
|
| 323 |
+
Epoch 17/25 | Train Loss: 0.2535 | Val Loss: 0.2143 | Val Acc: 93.80%
|
| 324 |
+
-> New best validation accuracy! Saving model state.
|
| 325 |
+
Epoch 18/25 | Train Loss: 0.2395 | Val Loss: 0.2059 | Val Acc: 94.05%
|
| 326 |
+
-> New best validation accuracy! Saving model state.
|
| 327 |
+
Epoch 19/25 | Train Loss: 0.2276 | Val Loss: 0.2126 | Val Acc: 93.75%
|
| 328 |
+
Epoch 20/25 | Train Loss: 0.2189 | Val Loss: 0.1907 | Val Acc: 94.40%
|
| 329 |
+
-> New best validation accuracy! Saving model state.
|
| 330 |
+
Epoch 21/25 | Train Loss: 0.2113 | Val Loss: 0.1892 | Val Acc: 94.35%
|
| 331 |
+
Epoch 22/25 | Train Loss: 0.2004 | Val Loss: 0.1775 | Val Acc: 94.50%
|
| 332 |
+
-> New best validation accuracy! Saving model state.
|
| 333 |
+
Epoch 23/25 | Train Loss: 0.1927 | Val Loss: 0.1912 | Val Acc: 94.15%
|
| 334 |
+
Epoch 24/25 | Train Loss: 0.1836 | Val Loss: 0.1746 | Val Acc: 94.75%
|
| 335 |
+
-> New best validation accuracy! Saving model state.
|
| 336 |
+
Epoch 25/25 | Train Loss: 0.1804 | Val Loss: 0.1642 | Val Acc: 94.75%
|
| 337 |
+
--- Training Finished ---
|
| 338 |
+
|
| 339 |
+
--- Evaluating on Test Set ---
|
| 340 |
+
Final Test Loss: 0.1662
|
| 341 |
+
Final Test Accuracy: 95.01%
|
| 342 |
+
----------------------------
|
| 343 |
|
| 344 |
|
| 345 |
|