I build NLP systemsI build NLP systems, LLM applications, natural-language interfaces, graph models, multimodal fusion models, diffusion transformers and distributed data pipelines.
Research
Three peer-reviewed papers on fusing graphs with language.
A crystal lattice passes messages between atoms, text tokens cross-attend, and the band gap is read out.
Nov 20252nd author of 5
MatFusionNet
Transformer–GNN Fusion for Zero-Shot Band Gap Prediction
A multimodal architecture that fuses a six-layer message-passing GNN over periodic crystal graphs with a Transformer text encoder through gated cross-attention.
A URL’s metadata graph lights up, then its graph and text embeddings align.
Jun 20253rd author of 5
GLaMP
Graph-Latent Alignment for Malicious Phishing Detection
A Graph Attention Network over a heterogeneous metadata graph (WHOIS, TLS certificates, redirect chains, threat feeds) with learnable exponential-decay edge weights, aligned to a LoRA fine-tuned LLaMA-7B encoder through an InfoNCE contrastive objective.
A residue graph rotates, a partner protein docks, and the annotation is written.
20253rd author of 5
SLPIM
Structural-Linguistic Protein Interaction Modelling
SE(3)-equivariant GNNs over residue proximity graphs, integrated with fine-tuned LLaMA 2 and BioBERT/BioGPT encoders across PDB, STRING, UniProtKB and BioGRID.
Systems I designed, trained and shipped end to end, each with a live demo.
Points stream in, a quadtree partitions them, then a range query and a k-nearest-neighbour search run.
2026Apache Beam · Python · Flask · Leaflet
GeoBeam
Distributed spatial query engine
12.7MNYC taxi trips
4Spatial operations
3Partitioning strategies
Range queries, spatial joins, k-nearest-neighbour search and partition counts, built as composable PTransforms on Apache Beam.
Pluggable uniform-grid, depth-4 quadtree and reservoir-sampled adaptive-grid partitioning, evaluated over 12.7M NYC TLC taxi trip records.
Recovered point geometry from zone IDs via TLC shapefile joins and EPSG:2263 → WGS 84 reprojection; served through a Flask REST API and a Leaflet front end.
Trained a 183M-parameter diffusion transformer with flow matching in a frozen DINOv3 latent space (RAEv2) on FFHQ: 256×256 faces steerable by 12 attributes, 89.9% attribute-control accuracy.
Distilled it into a single-step GAN student (FID 20.0 vs 23.0 for a flow-distillation baseline) after diagnosing mode collapse and a discriminator noise-schedule bug; audited memorisation against all 70k training faces.
Runs in the browser with ONNX Runtime Web and WebGPU, quantised to 4 and 8 bits.
Built interactive Streamlit dashboards that put key business metrics in one self-service view for stakeholders, replacing manual spreadsheet reporting.
Analysed customer datasets in Python and Pandas to surface usage and retention trends, giving the team insights that shaped product prioritisation.
Contributed to the startup's AI and data science initiatives, supporting its product direction and strategy.
Skills
The tools behind the research and the projects.
LLM & NLP
LLaMABioGPTBioBERTLangChainRAGFAISSChromaDBSentenceTransformersOpenAI API