Thomas Lin

Software, machine learning infrastructure and applied geospatial ML.

Studying

Applied mathematics + computer science and geophysics

Worked at

  • RWE2026Machine learning infrastructure, deep learning, NLP and wind energy modeling
  • Kumi Analytics2025Geospatial machine learning, foundation models and geospatial software
  • Wilhelmus Lab2025Ice floe tracking, automation and algorithms
  • AceLX Founding engineer2024RAG and software engineering

GeoRange IO

Reads remote cloud-optimised GeoTIFFs along a shape instead of a bounding box.

If what you want is a flight path, a transmission corridor, or a river, a bounding box is mostly bytes you paid for and threw away. This plans a request set for the actual geometry, coalesces it into HTTP byte ranges, and decodes DEFLATE partially from indexed mid-stream checkpoints.

Against tuned GDAL on live AWS Sentinel-2: 51% fewer bytes over the wire, 89% with precomputed indexes, 2.7× faster single-threaded and 15× in parallel — and byte-identical output across more than 15,000 reads, which was the part worth proving.

Trace a route to compare what each read fetches. A bounding box pulls  MB; the corridor needs  MB — less over the wire.

Drag across the tiles. Amber is what a bounding-box read pulls down; white is what the corridor needs.Drag across the tiles. Amber is what a bounding-box read pulls; white is what the corridor needs.

floodline

A lidar DEM and a single river-gauge reading in; flood extent, depth, and expected loss out.

Stage is routed through the terrain with a HAND formulation in a numba core, then depth becomes dollars through USACE/HAZUS and JRC depth–damage curves, with a Monte Carlo uncertainty budget carried all the way to the final figure.

Validated across 16 watersheds nationally against 1,287 surveyed high-water marks. Terrain routing runs sub-second; fetching the DEM is what actually costs time, which is why the service is synchronous with no job queue. Self-hosted on a Mac mini behind a Cloudflare tunnel.

At 1.00× Harvey’s peak (1,433 m³/s), 117 km² floods, 23,913 structures take water above the floor, and modelled damage is $7.9B.

Move the cursor up the map to raise discharge from nothing to three times the Harvey peak.Drag the slider to raise discharge from nothing to three times the Harvey peak. Whiteoak Bayou, Houston: 3DEP 10 m lidar, HAND with per-reach rating curves, NSI structures and USACE depth–damage curves, straight from the model. The damage total has not been validated.

Tail-weighted downscaling

State-of-the-art weather models are trained for the average day, so they miss the extremes that matter most.

A physics-informed approach: a two-stage residual diffusion model downscales ERA5 temperature to HRRR resolution over central Oklahoma, trained with a loss weighted toward the tails of the distribution (λ=5, k=5). Extreme-event CRPS, which scores the whole predicted distribution against what was observed, improves 7%, from 0.858 to 0.799, for a deliberate cost in overall RMSE (1.31 to 1.48 K).

The tail-weighted model scores 0.799 CRPS on the hottest 5% of cells and 1.48 K RMSE overall.

Hover either side of the chart to compare the two models.Tap either side of the chart to compare the two models. Both numbers are measured on the same evaluation set; nothing between the two points is interpolated.

  1. International Geography Olympiad Gold medal · 4th place
  2. AWS DeepRacer World runner-up
  3. MIT Energy and Climate Hack Winner
  4. Intercollegiate Poker Championship Champion
  5. Australian Mathematics Olympiad Honourable mention

Get in touch.