Welcome to the ResNet18 Model Compression Challenge! This competition invites participants to compress a standard ResNet18 model while maintaining maximum performance. Your goal is to reduce model size and inference latency while preserving accuracy using techniques such as:
- Pruning
- Knowledge distillation
- Quantization
- Architecture optimization
- Any other compression method
- Base model: ResNet18
- Supported formats: PyTorch (.pt/.pth), TensorFlow (.h5/.pb/.saved_model), TFLite (.tflite)
- Model inputs/outputs must maintain the same interface as the original ResNet18
Models will be evaluated on a weighted combination of:
- Model Size (30%): The on-disk size of your model in MB
- Latency (30%): Average inference time on our evaluation hardware
- Accuracy (40%): Top-1 accuracy on the validation dataset
Dataset will be resized to (224, 224) size only during evaluation. No other data augmentation has been applied, ensure your model supports it
The final score is calculated as:
Final Score = (Size_Score × 0.3) + (Latency_Score × 0.3) + (Accuracy_Score × 0.4)
Each metric is normalized relative to the original ResNet18 baseline performance.
-
Fork this repository
-
Place your compressed model in the
submissions/directory with the following structure:submissions/ └── [your-github-username]/ ├── model.{pt|pth|h5|pb|saved_model|tflite} └── metadata.json └── model_loader.py (optional) └── requirements.txt (optional)If you happen to create a complex model that doesn't support standard model loading as mentioned in the evaluate_script, you can provide a
model_loader.pyscript of your own which will contain aload_modelfunction that will load your model from your path. Also, any external dependencies that you might need specify them inrequirements.txtfile. -
Create a
metadata.jsonfile with the following information:{ "username": "your-github-username", "teamname": "your-team-name", "model_format": "pytorch|tensorflow|tflite", } -
Submit a Pull Request (PR) to this repository with your submission
- Our GitHub Actions workflow will automatically evaluate your model when you submit a PR
- The workflow downloads the validation dataset using secure credentials
- Models are evaluated for size, latency, and accuracy
- Results are automatically added to the leaderboard
- If you submit multiple PRs, only your best submission will be displayed
The validation dataset is hosted privately on Kaggle and will be accessed securely during evaluation. The dataset consists of standard validation images similar to the training set for classification.
The current leaderboard can be found in LEADERBOARD.md. It is automatically updated with each successful submission and ranks participants by their final score.
- Competition Start: 12-April-2025 6:00 PM IST
- Submission Start: 17-April-2025 6:00 PM IST
- Submission Deadline: 17-April-2025 11:59 PM IST
PR'S SHOULD ONLY BE SUBMITTED IN THE PERIOD MENTIONED ABOVE, ANY PR'S BEFORE THE SUBMISSION START WILL BE DECLARED NULL AND VOID AND MAY INCUR NEGATIVE POINTS
- Your model must load using standard PyTorch, TensorFlow, or TFLite loading functions
- Input preprocessing must match the original ResNet18 requirements
- Output format must match the original ResNet18 (100-class softmax predictions)
For questions or support, please open an issue in this repository.
Good luck!