Skip to content
View HaroonKhawaja's full-sized avatar

Block or report HaroonKhawaja

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
HaroonKhawaja/README.md

Haroon Khawaja

Data & AI engineer. I work on model efficiency — pruning, distillation, low-rank adaptation — and on the enterprise data platforms that put models into production.

Two tracks, deliberately: the research is where I go deep, the platform work is what I ship day to day.


Research — model efficiency

Making large models smaller, cheaper to adapt, and still worth running.

BaCPBackbone Contrastive Pruning

Prunes a pretrained network to 99% sparsity while preserving its representations, using a four-term contrastive objective (PrC / SnC / FiC + CE). Benchmarked against magnitude pruning, SNIP-it and WANDA at 0.95 / 0.97 / 0.99 sparsity across ResNet, VGG, ViT, DistilBERT and RoBERTa.

Every equation the code computes is derived to its source in docs/foundation.md, with a full citation audit beside it, and the invariants are covered by a pytest suite.

LoRALow-rank adaptation, from scratch

Why fine-tuning updates have low intrinsic rank, and what falls out of that — rank decomposition injected into frozen weights, derived and implemented end to end.

DPODirect Preference Optimization

Preference alignment without reinforcement learning. Built on SmolLM from first principles: no reward model, no PPO, just log-probability ratios between chosen and rejected responses.


Engineering — data platforms

Warehouses, pipelines and the movement of data at enterprise scale. This is the day job.

azure-lakehouse-patterns — change data capture, Delta Live Tables pipelines and ETL patterns on Azure Databricks.

sql-warehouse-medallion — a dimensional warehouse built from scratch in T-SQL, bronze through gold.


Applied

LUMSegmentation — semantic and instance segmentation of field-collected plant imagery. A U-Net with LSTM units and an optimised Mask R-CNN, trained on data I cleaned and annotated by hand. LUMS Directed Research Project.

StructureFromMotion — 2D-to-3D reconstruction on the heritage-recon dataset, in OpenCV.

ml-from-scratch — backpropagation, knowledge distillation and regression, implemented without frameworks.


Toolkit

Python · PyTorch · T-SQL · TypeScript

Azure Databricks · Delta Live Tables · Power BI · Next.js · Prisma

OpenCV · scikit-learn · pandas

Pinned Loading

  1. BaCP BaCP Public

    Backbone Contrastive Pruning: a research framework for pruning pretrained vision and language backbones to 99% sparsity while preserving representations.

    Python

  2. LoRA LoRA Public

    Low-Rank Adaptation implemented and derived from scratch, with the low-intrinsic-rank argument worked through.

    Jupyter Notebook

  3. LUMSegmentation LUMSegmentation Public

    Semantic and instance segmentation of field-collected plant imagery: U-Net with LSTM units and an optimised Mask R-CNN. LUMS Directed Research Project.

    Python

  4. StructureFromMotion StructureFromMotion Public

    Structure-from-Motion pipeline in OpenCV: 2D-to-3D reconstruction on the heritage-recon dataset.

    Jupyter Notebook

  5. M-Affan283/P10-Odysseum M-Affan283/P10-Odysseum Public

    This is a social media app developed by project team 10 for SPROJ 2024 at LUMS.

    JavaScript

  6. DPO DPO Public

    Direct Preference Optimization on SmolLM: preference alignment without reinforcement learning.

    Jupyter Notebook