Blog

Notes from the practice.

Practical writing on machine learning and the engineering around it: fundamentals, tooling, and the setup work that never makes it into papers.

Journal club · October 18, 2026

Journal Club Week 42, 2026

This week: a gating trick that improves policy-shift distillation, a video benchmark that separates grounding from question answering, and an architecture that treats decisions as set operations instead of generated text.

Journal club · October 11, 2026

Journal Club Week 41, 2026

Ten real months-long AI companion conversations show that memory is rarely needed and that models cannot tell when it is. Plus code worlds with a neural renderer, and a case that less supervision coverage distills better.

Concepts · October 5, 2026

Looped Transformers: How Recurrent Depth Reuses the Weights You Already Have

Run the same block of layers in a loop and a transformer gains a test-time compute dial without new parameters. From ACT and the Universal Transformer to recurrent-depth language models at the billion-parameter scale.

Journal club · October 4, 2026

Journal Club Week 40, 2026

This week: an open-source ecosystem that composes whole agent harnesses, a recurrent 1B vision-language model that beats dense 4B baselines, and a distillation method that lets students pass their RL-trained teachers.

Journal club · September 27, 2026

Journal Club Week 39, 2026

Three papers from week 39: an open K-12 model family trained on capability-sorted data, a full-duplex voice and video system that delegates slow work to a background loop, and a way to keep agent harness evolution from memorizing its own benchmark.

Journal club · September 20, 2026

Journal Club Week 38, 2026

This week: Vidu S2 pushes video generation into real-time interactive territory, LimiX-2 rethinks tabular prediction by modeling joint distributions instead of single targets, and Atria Dawn examines what happens when AI agents help build their own successors.

Journal club · September 13, 2026

Journal Club Week 37, 2026

This week: a world model that cuts RL training cost by 3-4x for research agents, a routing harness repurposed as an agent-training flywheel, and a latent concept-prediction objective that reaches baseline pretraining loss in half the tokens.

Concepts · September 7, 2026

Mixture of Experts: How Sparse Routing Scales Language Models

Mixture of experts lets a model store far more knowledge than its per-token compute budget would otherwise allow. Here is how routing, load balancing, and expert parallelism work under the hood.

Journal club · September 6, 2026

Journal Club Week 36, 2026

Three papers from week 36 of 2026: distilling repository know-how into reusable skills for research agents, training individualized student simulators for AI tutoring, and adding 3D perception and planning to a driving vision-language model.

Journal club · August 30, 2026

Journal Club Week 35, 2026

Two benchmarks probe whether generative models can reason visually, finding that VLM judges are unreliable and video models commit to answers early. Plus an agentic system that frames intelligence as completed work, not correct answers.

Journal club · August 9, 2026

Journal Club Week 32, 2026

This week: a pipeline that grows verified terminal-agent tasks for about five cents each, a harness that keeps agent state outside the execution context and has a read-only auditor check it, and a speech model that does both voice cloning and voice design from a written description.

Training · August 3, 2026

RL Post-Training for Language Models: From Human Preferences to Verifier Farms

Language model RL went from human preference labels to programmatic verifiers in about four years. The reward function turns out to be the small part; rollout throughput, environment reliability, and two engines that disagree about the same weights are the rest.

Journal club · August 2, 2026

Journal Club Week 31, 2026

Three papers from week 31: a 2.8 trillion parameter open-weight model, a chemistry search system that indexes claims rather than papers, and a GUI agent trained on a rack of real phones. Notes on what each one does.

Journal club · July 26, 2026

Journal Club Week 30, 2026

Three papers from week 30: an action-conditioned world model that streams 720P interaction from a single desktop GPU, an embodied foundation model family whose scaling behaviour depends on what it was pretrained on, and a video grounding model that fixes a broken reward.

Journal club · July 19, 2026

Journal Club Week 29, 2026

This week: a behavior-indexed map that helps coding agents find where an edit belongs, an execution stack that pushes RL post-training past two million tokens on fixed hardware, and a 4B video model released with its full training data.

Concepts · July 14, 2026

What Are World Models? The Bet on AI That Learns How the World Works

Why long reasoning chains break in LLMs, what world models are (from Dyna and Dreamer to JEPA and Genie), and what the evidence says about whether they truly learn physics.

Journal club · July 12, 2026

Journal Club Week 28, 2026

Three papers from week 28: rethinking the objective in reinforcement learning for LLMs, a voice-controlled real-time video generator, and a 4D world model that drives a bimanual robot.

Local-first · July 7, 2026

Local LLM Inference with Ollama: A Practical Guide

Run large language models on your own hardware: installation, picking a model that fits your memory, quantization, the Python API, and Modelfile customization.

Build · June 23, 2026

Building Agentic Systems with LangGraph: ReAct Agents and RAG

Agents as graphs: a ReAct agent from scratch with tools and memory, a RAG pipeline as a graph, and agentic RAG that decides for itself when to retrieve.

Engineering · June 9, 2026

How to Use Docker: A Practical Introduction for Data Scientists

Images, containers, Dockerfiles, volumes, and GPU access: the working vocabulary and commands you need to ship a machine learning project in a container.

Setup · May 12, 2026

How to Install CUDA and Find the Right PyTorch Version

What CUDA is, why nvidia-smi doesn't show what you think it shows, and how to install a PyTorch build that matches your driver on the first try.

Tooling · April 14, 2026

How to Sign In to the Hugging Face Hub from Python

Authenticate with an access token, push models and tokenizers to the Hub, and pull them back down from scripts, notebooks, and CI environments.

Build · March 17, 2026

How to Build an AI Chatbot with Streamlit and Python

A complete, streaming chat interface in under fifty lines of Python: session state, chat components, and a large language model behind it.

Concepts · February 24, 2026

What Is Agentic AI? From Chatbots to AI Agents

What makes an AI system "agentic", how tool use and the agent loop work, and when an agent is the right architecture, and when it isn't.

Training · January 20, 2026

Diagnosing Overfitting in Deep Learning: A Field Guide

Learning curves, weight and gradient distributions, the random-label test, calibration, leakage checks: every signal that tells you how well your model fits.

Concepts · December 9, 2025

What Is Machine Learning? What Is AI? A Historical Perspective

From Turing's question to transformers: how AI and machine learning relate, how the field got here, and what the main types of learning mean.