Skip to content
View saqib00987's full-sized avatar

Block or report saqib00987

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

Saqib Ali Khan

BSc Artificial Intelligence @ JKU Linz

I work on computer vision and applied machine learning. The thread running through most of what I build is checking whether a result means what it appears to mean: whether a model generalises or memorises, whether a correlation is real or an artefact of two series trending together, whether a finding survives the noise in its own experiment.


Selected Work

🔬 Born in Simulation

How visual domain randomization bridges the sim-to-real gap for object recognition

Six ResNet-18 classifiers trained entirely on synthetic PyBullet renders of YCB objects, evaluated on 3,000 real photographs never seen during training.

  • Reached 61.3% real-world accuracy with zero real training images, up from a below-chance baseline that had learned a background shortcut
  • Grad-CAM showed the mechanism: randomization moves the model's attention off the background and onto object geometry
  • Ablation without ImageNet pretraining located the data-scale boundary where diversity alone stops being enough
  • Found and documented a seed-collision bug that had silently produced identical training data across three conditions in the first run
  • Written up as a short research paper (ACM format, included in the repo)

Stack: Python · PyTorch · PyBullet · Grad-CAM

View project →

🛰️ EuroSAT Classifier

Satellite land-use classification, built from scratch

A VGG-style CNN trained with no pretrained weights, classifying Sentinel-2 tiles into 10 land-use classes, deployed as a web app for live predictions.

  • 96.7% validation accuracy and 96% on the held-out test set, with a train-validation gap of ~1.4%, so the model generalises rather than memorises
  • Full pipeline: stratified reproducible splits, augmentation, LR scheduling, early stopping, best-model checkpointing
  • Per-channel normalisation computed by streaming over the training set, and reused at inference so uploads are normalised identically to training
  • Errors cluster where overhead imagery is genuinely ambiguous: the vegetation classes trade misclassifications, while Forest is near-perfect
  • Shiny app: upload a tile, get the predicted class and full probability distribution

Stack: Python · PyTorch · torchvision · scikit-learn · Shiny

View project →

📈 US Macro Indicators

How Fed rate changes transmit through the economy, and how long it takes

Eight US macroeconomic series from FRED, 2000 to 2026, analysed with programmatic event detection rather than hand-marked dates.

  • Rate peaks lead unemployment peaks by 32 to 35 months, confirmed across both completed cycles; transmission is far faster post-COVID (+0.44 at lag 6, against +0.24 only at lag 36 pre-2008)
  • Every economic-cycle recession in the window was preceded by a yield-curve inversion, with COVID the sole exception as an external shock
  • Correlations computed on month-over-month changes rather than levels, so two trending series don't correlate for no reason
  • Missing data hatched as unavailable rather than backfilled, and the one marginal sentiment result (p = 0.045) reported as suggestive rather than firm

Stack: Python · pandas · Matplotlib · Plotly · SciPy · FRED API

View project →


Currently

  • Practical project in Physical AI at JKU
  • Looking for internships and working-student roles in AI, ML and data science

LinkedIn · saaqikhan00987@gmail.com

Pinned Loading

  1. sim2real-domain-randomization sim2real-domain-randomization Public

    How much visual variety does a simulator need before a model trained in it works on real photographs? Six ResNet-18 classifiers, 150,000 synthetic renders, 3,000 real YCB test images, zero real tra…

    Jupyter Notebook

  2. us-macro-indicators-viz us-macro-indicators-viz Public

    Fed rate peaks precede unemployment peaks by about three years. Time-series analysis of eight FRED macroeconomic series (2000 to 2026): lagged correlation of rate transmission across three monetary…

    Jupyter Notebook

  3. eurosat-classifier eurosat-classifier Public

    End-to-end satellite image classifier: data pipeline, custom CNN (PyTorch), evaluation, and a Shiny web app for live predictions. 96% on held-out test data.

    Jupyter Notebook