me
I work on reinforcement learning, language models and AI safety at Anthropic, where I tend towards RL- and engineering-flavoured projects. I'm also keen on cost-effective donation.
That said, I'm chatty and happy to talk to most anyone about anything. The best way to get in touch with me is via email!
writing
anthropic
- A Language Assistant as a Laboratory for Alignment: The two worst ways - prompting and fine-tuning - to align an AI.
- Training a Helpful and Harmless Assistant: The third worst way to align an AI, RL on human feedback.
- Predictability and Surprise in Large Generative Models: Connects scaling laws (and lack thereof) with near-term impacts.
- Constitutional AI: Harmlessness from AI Feedback: Replacing the 'human' in 'human-feedback'.
indie
- Scaling Scaling Laws with Board Games: Studying big AIs on big problems using small AIs on small problems.
- AI Safety Needs Great Engineers: AI safety labs are bottlenecked on great engineering.
- Debugging Reinforcement Learning Systems: Debugging reinforcement learning implementations, without the agonizing pain.
- A Clearer Proof of the Policy Gradient Theorem: A policy-gradient proof with less algebraic manipulation.
- The Recursive Approximation Algorithm, Animated: How n-body problems are solved in linear time, without any maths.
- Post-Mortem Python Plotting: Fixing numerical bugs after they've caused a crash.
- Are we in an AI overhang?: AIs might get much larger very quickly.
- Segmenting Microarrays with Deep Neural Networks: c. 2014, automation of a labour intensive part of DNA microarrays.
projects
major
- megastep: A 1m FPS RL environment.
- pybbfmm: A GPU-accelerated black-box fast multipole method.
- RL discord: One reinforcement learning Discord to rule them all.
minor
- fayin: An attempt at using WebSpeech to help learn Mandarin pronunciation.
- coolgpus: Custom GPU fan control for headless Linux.
- kvbtests: Heteroskedasticity-and-autocorrelation-robust statistical tests.
- modulepickle: Makes distributed dev feel local by auto-shipping your working dir to workers.
- zonotable: Nails Zotero's paper ingestion onto the side of Notable.
- tablatex: Adds LaTeX symbol autocomplete to vscode.
- nosearch: Adds reverse search to Jupyter notebooks.
- noterminal: Adds disposable notebooks to Jupyter.
- stripcommon: Strips the common whitespace when copying into Jupyter.
old
These are my portfolio pieces from my first year learning to program, c. 2013.
- Commutes & Rent: An interactive visualization of commutes and rent in London.
- A Global Shallow Fluid Model: An interactive model of the atmosphere on a rotating planet.
website
This website is rendered from Markdown into a minimal template by a short Python script. It uses a self-hosted Matomo instance for analytics, stripped down to only the details I'd see in the server logs.