Business Context
HomeSight builds battery-powered smart security cameras that run person-detection locally to avoid cloud cost and preserve user privacy. The current model is accurate but too slow and memory-heavy for the ARM-based edge device, causing missed detections and battery drain.
Dataset
You are given an image classification dataset collected from deployed cameras and lab simulations. The task is binary classification: person present vs no person in a frame.
| Feature Group | Count | Examples |
|---|
| Image input | 1 | 160x160 RGB frame |
| Device metadata | 4 | device_type, firmware_version, time_of_day, motion_triggered |
| Environmental labels | 3 | indoor_outdoor, low_light, weather_condition |
| Split columns | 2 | capture_date, device_id |
- Size: 240K labeled images from 18K devices, 7 metadata fields
- Target: Binary label indicating whether a person appears in the frame
- Class balance: 28% positive, 72% negative
- Missing data: 6% missing in metadata fields; images occasionally contain motion blur and compression artifacts
Success Criteria
A solution is considered good enough if it:
- Preserves model quality within 2 percentage points of baseline AUC-ROC
- Reduces on-device model size from 32 MB to under 8 MB
- Achieves p95 inference latency under 40 ms on a Cortex-A53 CPU
- Keeps recall in low-light scenes above 0.85
Constraints
- No GPU is available on device; inference runs on CPU only
- Peak RAM available to the model is < 64 MB
- The model must support offline inference and simple mobile/embedded deployment
- Retraining can happen in the cloud weekly, but deployment updates ship monthly
Deliverables
- Propose a model compression strategy to reduce latency and memory footprint.
- Build a training pipeline for a compact edge model and compare it to a larger teacher baseline.
- Evaluate accuracy, latency, memory size, and low-light recall on a held-out test set.
- Explain which compression techniques you would use first and why.
- Describe how you would package the model for production edge deployment and monitor regressions after release.