#### 1. *Accuracy (Primary Metric)*
- Models will be scored based on *classification accuracy* on a *hidden test set*.
- Accuracy is calculated as:  
  \[
  \text{Accuracy} = \frac{\text{Correct Predictions}}{\text{Total Test Samples}} \times 100
  \]

#### 2. *Submission Format*
- Final output must be a CSV file named:  
  
  submission.csv
  
- The file must have the following format:

  | ID  | Label |
  |-----|-------|
  | 0   | 7     |
  | 1   | 2     |
  | 2   | 1     |
  |...  | ...   |

  - *ID*: Row number/index of the test image.
  - *Label*: Predicted digit (0 to 9) for that image.

- Ensure the number of predictions matches the number of test samples exactly.

#### 3. *Reproducibility*
- Submit the complete source code (in .ipynb, .py, or zipped folder).
- Code should be well-commented and easy to run.
- Submissions that cannot be reproduced will be disqualified, regardless of accuracy.

#### 4. *Model Simplicity (Tie-Breaker)*
- If two teams score the same accuracy:
  - Preference goes to the lighter, faster, and more efficient model.
  - Clear documentation and clean code are also considered.

#### 5. *Bonus Points (Optional)*
- Extra recognition may be given for:
  - Unique or creative modeling techniques.
  - Insightful visualizations (e.g., confusion matrix, misclassified digits).
  - A brief report explaining your approach and learning.
