Skip to content
View giosanchez0208's full-sized avatar

Highlights

  • Pro

Block or report giosanchez0208

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
giosanchez0208/README.md

Gio Kiefer A. Sanchez

Computer vision, at the small end: edge inference, model compression, synthetic data.

I distilled a ResNet-50 into a 4.2 MB model that beats it on all 13 categories. It runs in your browser: try it, it'll finish loading before you finish this page.

Student, 4.2 MB INT8 Teacher, ResNet-50
KL divergence 0.480 0.623
Top-1 67.4% 63.2%
CPU latency 6.9 ms 45 ms

21× smaller. 6.6× faster. Better on every class.


The interesting part wasn't the compression

People genuinely disagree about where blue ends and teal begins. So a single label is the wrong target. The ambiguity is exactly what we should be looking at.

I predicted the distribution instead, and generated all 28,860 training images procedurally (with Perlin folds, 7 patterns, 10 augmentation axes) so the label distributions were known by construction rather than estimated from annotators who wouldn't agree on the same color anyway.

Code and write-up →

What my own tests told me I'd got wrong

I built a paired one-factor-at-a-time probe set to isolate what each augmentation actually cost. It found 8 defects. Two of them were in the experimental design itself.

It also showed the model had learned color constancy in-weights, which meant I could delete white-balancing from the inference path entirely. I'd been paying for it every frame for no reason.

I'd rather find these myself than have production find them for me.


Published

A Parallelized Agent-Based Optimization Framework for Jeepney Routes with Integrated Passenger Behavior Simulation First author · IEEE CyberSciTech 2025 · Hakodate

Jeepney routes are set by habit and negotiation, not by design. I modelled the passengers rather than just the vehicles — behaviour calibrated from a 214-response bilingual commuter survey, converted into Equivalent In-Vehicle Minutes — then optimised over it with a hybrid GA-ACO memetic search. Simulated commute times fell 15–25%.

Code →

Shipped

Four production CV models running concurrently on edge hardware: lightweight ALPR, Philippine-vehicle classifier, clothing-colour recognition, and 3D-augmented face matching with vector retrieval. Sub-20 ms per model, 15 FPS end-to-end, supporting a live municipal surveillance pilot across multiple field stations.

Constraints I like working under: it has to run on the device, it has to hold up when someone tries to break it, and it has to be honest about what it doesn't know.


PyTorch · ONNX Runtime · OpenCV · Transformers — distillation, INT8 quantization, edge inference, synthetic data

OSMnx · NetworkX · GeoPandas · SciPy — agent-based simulation, GA/ACO metaheuristics

Python · C++ · Java · SQL · JavaScript

BS Computer Science, Magna Cum Laude — MSU-IIT, 2026

[email protected] · LinkedIn · Hugging Face

Pinned Loading

  1. Clothing-Color-Recognition-ML-With-Synthetic-Dataset Clothing-Color-Recognition-ML-With-Synthetic-Dataset Public

    13-way color distribution from a 4.2 MB INT8 model, 6.9 ms CPU. Trained entirely on procedurally generated data.

    Jupyter Notebook 1

  2. Jeepney-Route-System-Optimization Jeepney-Route-System-Optimization Public

    Hybrid GA/ACO memetic optimizer for informal paratransit route networks, scored by an agent-based commuter simulation calibrated on a 214-respondent survey. Undergraduate thesis, Iligan City.

    Python 1

  3. Schedantic Schedantic Public

    Python