> Projects | Adnan Sadik

Projects


Selected Projects

Completed Projects

Sparse Attention CUDA Kernel

CUDA C++ PyTorch
  • Wrote a sparse attention kernel in CUDA with Longformer style masking (local window + global stride tokens); tiles with no active pairs are skipped entirely, bringing complexity from $O(n^2)$ down to $O(n \cdot w)$.
  • Initial version stored a full score array per thread scaled with sequence length which spilled to global memory at longer sequences; rewrote with Flash Attention style online softmax, dropping per-thread memory to $O(1)$ and achieving $1.4$--$1.8\times$ speedup.
  • Wrapped kernels as a PyTorch extension via pybind11 and benchmarked against PyTorch dense attention on a T4 GPU across sequence lengths $64$ to $512$.
CUDA · GPU Kernels
Sparse Attention Kernel

sparse pattern
local
global
skip
1.8×
v2 speedup
over v1
O(n·w)
sparse
complexity
O(1)
per-thread
memory
v1 → v2 key changes
score storage full array → streaming
softmax materialized → online
register spill yes → eliminated
📂 View on GitHub

Volatility Inference with SDEs & Data Assimilation

SDE Kalman Filter Particle Filter

Estimated cryptocurrency rolling volatility using a mean-reverting stochastic differential equation with online Bayesian filtering. Results were benchmarked against GARCH(1,1) and GARCH(2,2) models under a strict out-of-sample evaluation setup.

SDEs · Bayesian Filtering · Crypto
Rolling Volatility Inference
with Data Assimilation

Method Comparison
Kalman Filter
DA
Particle Filter
DA
GARCH(1,1)
Benchmark
GARCH(2,2)
Benchmark
Methodology Summary
1) Model latent volatility as a mean-reverting stochastic state.
2) Estimate the state online using Kalman and Particle Filter updates.
3) Benchmark final estimates against standard GARCH baselines.
📂 View on GitHub

Yut AI - Korean Traditional Board Game AI

Python Game Theory Bayesian Optimization

Developed strategy bots for Yut, a traditional Korean board game competition. Tested minimax tree search and heuristic-based strategies. Final approach used heuristic evaluation with Bayesian optimization (Gaussian Process + UCB) for weight tuning. Consistently outperforms baseline strategy with 54-56% win rate.

Stochastic Adversarial Game · MDP
Yut AI
stochastic adversarial game · Markov Decision Process variant

win rate vs baseline
Bayes-tuned
56.5%
shortcut-aware
50.0%
baseline (50%)
minimax α-β
22.5%
tree search
10.0%
56.5%
best win
rate
8
heuristic
weights tuned
agent design
search minimax + pruning + state cache
utility fn progress, capture, tempo, risk
weight tuning Bayesian opt (GP + EI)
chance model full yut outcome distribution
📂 View on GitHub

AI-powered File Organizer

Python NLP PyInstaller Watchdog spaCy
  • Developed an automated file organization system using AI-driven content-based classification, improving file management efficiency by 40%.
  • Calculated document similarity using two approaches: TF-IDF vectorization with cosine similarity, and semantic embeddings from spaCy’s en_core_web_md model.
  • Integrated real-time file monitoring with Watchdog to automatically organize files into user-defined folders, reducing manual sorting time by 60%.
Agentic Automation · NLP · Embeddings
AI File Organizer

agent pipeline
1
real-time event trigger
Watchdog monitors filesystem; new files emit classification tasks
2
semantic embedding
spaCy en_core_web_md encodes document content into dense vectors
3
similarity classification
Cosine similarity over embeddings; TF-IDF cosine as fallback
4
autonomous dispatch
Agent routes file to closest matching folder without user input
40%
management
efficiency gain
60%
manual sorting
time saved
technical design
classification content-based, not extension
embedding model spaCy en_core_web_md
fallback TF-IDF + cosine similarity
deployment standalone .exe via PyInstaller
📂 View on GitHub

Statistical Decision Making

Python Bayesian Inference Classification Models
  • Implemented Bayesian inference methods (MLE, MAP, posterior mean) for robust parameter estimation in probabilistic models.
  • Optimized inventory with the Newsvendor Problem, reducing losses by 49.08% vs heuristic methods.
  • Developed and deployed multiple classification models, including KNN, Logistic Regression, and Single feature models, to predict healthcare readmissions, achieving AUCs of 0.68, 0.80, and 0.78, respectively.
  • Achieved up to 7.8% cost savings through predictive model optimization, improving decision-making in healthcare resource allocation.
Bayesian · Optimization · Reinforcement Learning
Statistical Decision Making

problems
Newsvendor / inventory optimization
censored demand, weather covariate integration
49% loss reduction vs heuristic
Healthcare readmission prediction
threshold-optimized misclassification cost
AUC 0.80 · 7.8% cost savings
Bayesian parameter estimation
Beta-Binomial conjugate, MLE / MAP / posterior mean
Multiple Secretary Problem
optimal stopping, unknown distribution
tabular Q-learning + ε-greedy
49%
inventory loss
reduction
0.80
best AUC
readmission
models
classification LR · KNN · single-feature
Bayesian conjugate Beta-Binomial
inventory newsvendor + demand censoring
stopping Q-learning, ε-greedy exploration
📂 View on GitHub

Real-time Sarcasm Detector

Python PyTorch NLP

Built a BERT-based sarcasm classifier with Hugging Face and TweetEval for real-time inference, demonstrating advanced natural language processing capabilities.

📂 View on GitHub