01 — Projects
Projects
A selection of things I've worked on — mostly machine learning and signal processing.
ST-GAT for ADHD classification
A spatiotemporal graph attention network for Go/NoGo EEG, using phase-locking-value windows and trial-to-participant transfer learning. Results are on the research page.
open
ST-GAT for ADHD classification
A spatiotemporal graph attention network for Go/NoGo EEG, using phase-locking-value windows and trial-to-participant transfer learning. Results are on the research page.
Build
- ERP-informed temporal windowing across five processing stages.
- Per-window phase-locking-value adjacency graphs constraining message passing.
- Patient-level aggregation distilling trial-level variability into compact embeddings.
- 5-seed × 5-fold cross-validation against an EEGNet baseline.
Results
- 75.3% ± 6.34% accuracy, +5.3 pp over EEGNet.
- Group structure lives in embedding geometry, not spatial attention.
- Discriminative variance compressed into few non-redundant graph-derived dimensions.
HD-MEA stress-resilience phenotyping
The pipeline behind my thesis — turning 4,096-electrode recordings into stable, label-free phenotypes of stress-exposed hippocampal slices.
open
HD-MEA stress-resilience phenotyping
The pipeline behind my thesis — turning 4,096-electrode recordings into stable, label-free phenotypes of stress-exposed hippocampal slices.
Build
- Dual-stream processing: LFP for synaptic input, spikes for output.
- Spectral parameterization plus spatial-entropy and burst-propagation features.
- Vectorized artifact rejection and Gaussian kernel smoothing for 35B-sample ingestion.
- GMM clustering with leave-one-slice-out validation and permutation nulls.
Results
- Perfect leave-one-out stability (1.000) on the exposure signature.
- Static features hit a hard ceiling separating resilient from vulnerable.
- Network–energy ordering Control < Resilient < Vulnerable in microstate analysis.
Self-supervised representation learning on organoid microscopy
Learning from 80,000 unlabeled microscopy images with a masked autoencoder, and choosing the cluster count with an ILP solver instead of a guess.
open
Self-supervised representation learning on organoid microscopy
Learning from 80,000 unlabeled microscopy images with a masked autoencoder, and choosing the cluster count with an ILP solver instead of a guess.
Build
- Masked Autoencoder (MAE) with a Vision Transformer backbone on 80k unlabeled images.
- Custom correlation-clustering solver using integer linear programming (ILP) to auto-select cluster counts.
Results
- Outperformed supervised baselines on unseen classes — ARI 0.54 vs 0.40.
- Self-supervised pre-training learns semantic shape/texture features without labels.
Stochastic optimization of uncertain energy markets
A two-stage stochastic program for investment and operations under demand uncertainty, including the formal value of modeling that uncertainty.
open
Stochastic optimization of uncertain energy markets
A two-stage stochastic program for investment and operations under demand uncertainty, including the formal value of modeling that uncertainty.
Build
- Two-stage stochastic programming model in GAMS for a large-scale system.
- Multi-variable optimization translated from theory into a solvable framework.
Results
- Quantified the Value of Stochastic Solution (VSS) and Expected Value of Perfect Information (EVPI).
- Showed when deterministic planning leaves money on the table.
LiDAR walking-speed app
A smartphone app using LiDAR to measure walking speed — a health indicator for aging adults. Best capstone project at Penn State.
open
LiDAR walking-speed app
A smartphone app using LiDAR to measure walking speed — a health indicator for aging adults. Best capstone project at Penn State.
Build
- LiDAR depth sensing on mobile to estimate gait velocity.
- Designed for medical context: simple, unobtrusive, reproducible.
Result
- Recognized as the best capstone project in the 2021 cohort for real-world impact.