Skip to content
View SaeedSabzeh's full-sized avatar

Block or report SaeedSabzeh

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.

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

Saeed Sabzeh

MSc Artificial Intelligence for Science & Technology — Università di Milano-Bicocca, Milan. Reinforcement learning, deep learning, and LLM systems. Open to applied ML and ML engineering roles.

Three of the repositories below exist partly to document a mistake I found in my own work: a data leak that faked a perfect score, an evaluation protocol too noisy to support any conclusion I drew from it, and two benchmark instances that regressed against my earlier implementation. I report those because a result nobody has tried to break isn't a result yet.


Projects

Repository
ossp-aco Ant Colony Optimization with iterated local search for Open-Shop Scheduling. A reimplementation of my bachelor's thesis, benchmarked over 19 Taillard instances: mean deviation from published upper bounds fell from 3.25% to 1.05%, and one instance came in below a bound that had stood since 1993. Schedules verified by an independent feasibility checker. Two instances regressed against v1; both are in the table.
industrial-defect-detection CNN, ResNet and SE-ResNet built from scratch in PyTorch for biscuit defect classification. My first run reported 100% F1 — three architectures hitting a perfect score was the tell. The dataset's 4,900 images are 1,225 biscuits × 4 augmented variants, and my split had put copies of the same biscuit on both sides of the train/test boundary. Corrected to a group-aware split: 99.08% F1, one false alarm in 980 test images, with a regression test that fails if the leak ever returns.
fastapi-game-backend Async FastAPI and PostgreSQL backend: passwordless phone/OTP authentication, JWT sessions, a premium tier, and an admin console. Admin rights are re-read from the database on every request rather than trusted from the token, so revocation is immediate. Deployed to a Linux VPS, serving a Unity mobile client.
orbit-wars-ppo Hierarchical PPO for a Kaggle simulation competition, finishing ~1,300 of 4,730. Written up as a post-mortem: across 2M training steps, every decision I made — which checkpoint to keep, whether a run was improving, when to stop — used a metric with a standard error near 5.7, sampled eight episodes at a time. The reward function also had a defect, but that isn't why it plateaued. Nothing in the pipeline could tell a real improvement from noise.
neural-collaborative-filtering NeuMF implemented from scratch — GMF and MLP branches trained jointly, plus a warm-start variant that pretrains each and fine-tunes the fusion. Evaluated with chronological leave-one-out and 1-vs-99 negative sampling, the protocol from the NCF literature rather than a random split. Beats SVD and user/item-CF on NDCG@10. (Team project; my role was the model architecture.)
synthgen Synthetic tabular data from an LLM, where every row is validated against a Pydantic schema before it reaches the file. Concurrent batching to survive response limits, an avoid-list and rotating generation axes to fight mode collapse, and a report that tells you the duplicate rate and per-field cardinality instead of leaving you to find out later. CLI and library, 45 tests, no network needed.
booknow-assistant LLM function calling with a decorator-based tool registry that generates its own JSON schemas, chained multi-round tool use, and fuzzy catalog lookup. The model client is injected, so all 26 tests run offline with no API key.

Tools I've actually shipped something with

Python · PyTorch · NumPy · pandas · scikit-learn · Stable-Baselines3 · Gymnasium · OpenAI API · Pydantic · FastAPI · SQLAlchemy · PostgreSQL · pytest · GitHub Actions · C++

Listed only where there's a public repository to back it up.


Based in Milan · Saeed.Sabzeh.80@gmail.com

Pinned Loading

  1. ossp-aco ossp-aco Public

    Ant Colony Optimization + iterated local search for Open-Shop Scheduling — a reimplementation of my bachelor's thesis that cut mean deviation from Taillard's bounds from 3.25% to 1.05%, and landed …

    Python 1

  2. industrial-defect-detection industrial-defect-detection Public

    CNN vs ResNet vs SE-ResNet from scratch in PyTorch — and a writeup of the data leak that made my first run report a fake 100% F1. Group-aware split, 99.08% F1, plus a regression test that reproduce…

    Jupyter Notebook 1

  3. neural-collaborative-filtering neural-collaborative-filtering Public

    NeuMF from scratch in PyTorch — GMF + MLP branches fused, with a pretrained warm-start variant. Chronological leave-one-out and 1-vs-99 negative sampling; beats SVD and user/item-CF on NDCG@10 (0.4…

    Jupyter Notebook 1

  4. orbit-wars-ppo orbit-wars-ppo Public

    Hierarchical PPO for a Kaggle simulation competition (~1,300 of 4,730) — and a post-mortem showing every decision across 2M training steps rested on a metric with a standard error near 5.7, so none…

    Python 1

  5. synthgen synthgen Public

    Generate synthetic tabular datasets with an LLM where every row is validated against a Pydantic schema — concurrent batching, dedup, anti-mode-collapse steering, and a quality report. CLI and libra…

    Python 1

  6. fastapi-game-backend fastapi-game-backend Public

    Async FastAPI backend for a multiplayer party game — passwordless phone/OTP auth, JWT sessions, a premium tier, and an admin console. Deployed to a VPS behind PostgreSQL, serving a Unity mobile cli…

    Python 1