--- license: gpl-3.0 tags: - classifier - CNN - convolutions --- # Box Classifier A bunch of CNNs (in parameter-sizes) trained to classify whether a checkbox is filled or not. The training code, data generator can be found here: https://github.com/papaj2139/box_classifier # Models Every model was trained on 10 epochs with 500 batches per epoch on 20000 images. Every image is 32x32. **model-5k.bin (5017 parameters)** Architecture: - Conv2D(1→8, 3×3) + ReLU + MaxPool(2) - Conv2D(8→40, 3×3) + ReLU + MaxPool(2) - GlobalAvgPool - Dense(40→48) + ReLU + Dropout(0.2) - Dense(48→1) Loss trajectory: ![loss-5k](https://cdn-uploads.huggingface.co/production/uploads/69804655d742adcb7e7d6df2/jFjwOkBKOj9Vuy3GI4t_5.png) Final test Acc: **99.72%** Final train Acc: **99.57%** **model-20k.bin (20373 parameters)** Architecture: - Conv2D(1→16, 3×3, pad=1), ReLU, MaxPool(2) - Conv2D(16→100, 3×3, pad=1), ReLU, MaxPool(2) - GlobalAvgPool2D - Dense(100→56), ReLU, Dropout(0.2) - Dense(56→1) Loss trajectory: ![loss](https://cdn-uploads.huggingface.co/production/uploads/69804655d742adcb7e7d6df2/iqCkMV7G97cWNGveG3-gq.png) Final test Acc: **99.85%** Final train Acc: **99.68%** **model-100k.bin (99713 parameters)** Architecture: - Conv2D(1→32, 3×3, pad=1), ReLU, MaxPool(2) - Conv2D(32→128, 3×3, pad=1), ReLU, MaxPool(2) - GlobalAvgPool2D - Dense(128→480), ReLU, Dropout(0.3) - Dense(480→1) Loss trajectory: ![loss](https://cdn-uploads.huggingface.co/production/uploads/69804655d742adcb7e7d6df2/l97Ok7nfLVcr20gSmkhpF.png) Final test Acc: **99.65%** Final train Acc: **99.81%** # License GPLv3