41554 blogs · [ { "id": "01a087e9-2018-71b8-98cb-dc93385e28f5", "title": "I Removed Every MLP from Gemma 4 12B", "url": "https://tahabouhsine.com/removing-every-mlp-from-gemma-4/", "published_at": "2026-08-11T19:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc9338e86bce", "title": "A Network Made of Parts", "url": "https://tahabouhsine.com/patch-parts/", "published_at": "2026-07-30T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc93397d0500", "title": "How to Interrogate a Kernel Network", "url": "https://tahabouhsine.com/yat-protocol/", "published_at": "2026-07-29T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc9339a8d3ad", "title": "The Concept That Would Not Die", "url": "https://tahabouhsine.com/spectral-surgery/", "published_at": "2026-07-28T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933a25195c", "title": "The Trained Network, Under Mercer's Microscope", "url": "https://tahabouhsine.com/mercer-microscope/", "published_at": "2026-07-27T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933ae42ef5", "title": "Lazy Training a Yat Network in JAX/Flax NNX", "url": "https://tahabouhsine.com/lazy-training-jax-flax-nnx/", "published_at": "2026-07-26T23:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933bc0eecf", "title": "How Many Random Neurons Buy a Trained One?", "url": "https://tahabouhsine.com/lazy-training/", "published_at": "2026-07-26T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933cb29568", "title": "Measuring Attention's Geometry in JAX/Flax NNX", "url": "https://tahabouhsine.com/the-geometry-of-attention-jax-flax-nnx/", "published_at": "2026-07-19T23:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933cff02b1", "title": "The Geometry of Attention Is a Choice of Kernel", "url": "https://tahabouhsine.com/the-geometry-of-attention/", "published_at": "2026-07-19T00:00:00+00:00" }, { "id": "01a087e9-2018-71b8-98cb-dc933d579c6f", "title": "Softmax-Free Attention in JAX/Flax NNX", "url": "https://tahabouhsine.com/attention-is-a-compatibility-kernel-jax-flax-nnx/", "published_at": "2026-07-17T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020169c2a26e", "title": "The Kernel Between the Roles", "url": "https://tahabouhsine.com/attention-is-a-compatibility-kernel/", "published_at": "2026-07-16T23:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020169daf2d4", "title": "An Error Controller for a Trained Net, in JAX", "url": "https://tahabouhsine.com/depth-on-demand-jax-flax-nnx/", "published_at": "2026-07-16T22:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016a1b67d2", "title": "Depth on Demand", "url": "https://tahabouhsine.com/depth-on-demand/", "published_at": "2026-07-16T21:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016a940c65", "title": "Reversible Backprop as a custom_vjp in JAX", "url": "https://tahabouhsine.com/backprop-without-the-memory-jax-flax-nnx/", "published_at": "2026-07-16T20:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016b009be0", "title": "Backprop Without the Memory", "url": "https://tahabouhsine.com/backprop-without-the-memory/", "published_at": "2026-07-16T19:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016b50733c", "title": "Building the Hamiltonian-Step Net in JAX/Flax NNX", "url": "https://tahabouhsine.com/a-network-that-conserves-energy-jax-flax-nnx/", "published_at": "2026-07-16T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016b9a898a", "title": "A Network Built from Hamiltonian Steps", "url": "https://tahabouhsine.com/a-network-that-conserves-energy/", "published_at": "2026-07-16T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016bc87baa", "title": "Running the Survival Trial, in JAX/Flax NNX", "url": "https://tahabouhsine.com/survival-model-on-trial-jax-flax-nnx/", "published_at": "2026-07-09T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016be2368c", "title": "A Velocity Ledger for Transformers, in JAX/Flax NNX", "url": "https://tahabouhsine.com/transformers-with-a-velocity-ledger-jax-flax-nnx/", "published_at": "2026-07-09T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016c2f5fe3", "title": "Solving It and Descending It, in JAX/Flax NNX", "url": "https://tahabouhsine.com/you-dont-have-to-solve-a-kernel-machine-jax-flax-nnx/", "published_at": "2026-07-09T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016cc3e4d8", "title": "The White-Box Survival Model on Trial", "url": "https://tahabouhsine.com/survival-model-on-trial/", "published_at": "2026-07-09T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016d7a2d56", "title": "Transformers With a Velocity Ledger", "url": "https://tahabouhsine.com/transformers-with-a-velocity-ledger/", "published_at": "2026-07-09T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016e33ef07", "title": "One Kernel Family, Fitted Two Ways", "url": "https://tahabouhsine.com/you-dont-have-to-solve-a-kernel-machine/", "published_at": "2026-07-09T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016eb7eb88", "title": "Calibrating a Bounded Net, in JAX/Flax NNX", "url": "https://tahabouhsine.com/calibration-of-a-bounded-net-jax-flax-nnx/", "published_at": "2026-07-04T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016ee62c78", "title": "Building the Second Layer by Hand, in JAX/Flax NNX", "url": "https://tahabouhsine.com/depth-by-construction-jax-flax-nnx/", "published_at": "2026-07-04T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016f38bd5b", "title": "Distillation as Kernel Transfer, in JAX/Flax NNX", "url": "https://tahabouhsine.com/distillation-is-kernel-transfer-jax-flax-nnx/", "published_at": "2026-07-04T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02016f848363", "title": "Editing a Deep Equilibrium Network, in JAX/Flax NNX", "url": "https://tahabouhsine.com/edit-a-fixed-point-jax-flax-nnx/", "published_at": "2026-07-04T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-0201704df03f", "title": "Skip Connections With Inertia, in JAX/Flax NNX", "url": "https://tahabouhsine.com/momentum-resnet-jax-flax-nnx/", "published_at": "2026-07-04T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017064433b", "title": "When 80% Should Mean 80%", "url": "https://tahabouhsine.com/calibration-of-a-bounded-net/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020170d829f4", "title": "How Far Down Can You Build?", "url": "https://tahabouhsine.com/depth-by-construction/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-0201710ec338", "title": "Distillation Is a Geometry, Not an Answer Key", "url": "https://tahabouhsine.com/distillation-is-kernel-transfer/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020171ef8117", "title": "Edit One Operator, Edit Every Depth", "url": "https://tahabouhsine.com/edit-a-fixed-point/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020172b67e00", "title": "Your Skip Connection Is Half of Newton", "url": "https://tahabouhsine.com/skip-connections-are-half-of-newton/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020172e12aaf", "title": "A Network That Is a Fixed Point, in JAX/Flax NNX", "url": "https://tahabouhsine.com/your-network-is-a-fixed-point-jax-flax-nnx/", "published_at": "2026-07-01T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017315bc92", "title": "Your Network Is a Stack of Layers. It Could Be a Fixed Point.", "url": "https://tahabouhsine.com/your-network-is-a-fixed-point/", "published_at": "2026-07-01T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020173b63cfd", "title": "A White-Box Kernel FFN in JAX/Flax NNX", "url": "https://tahabouhsine.com/mlp-block-is-a-representer-theorem-jax-flax-nnx/", "published_at": "2026-06-27T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017411ae67", "title": "The MLP Block Can Be a Kernel Memory", "url": "https://tahabouhsine.com/mlp-block-is-a-representer-theorem/", "published_at": "2026-06-27T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017443d46c", "title": "What Can a Weight Be?", "url": "https://tahabouhsine.com/what-can-a-weight-be/", "published_at": "2026-06-26T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-0201753e5dc7", "title": "Where a Weight Lives, in JAX/Flax NNX", "url": "https://tahabouhsine.com/where-does-a-weight-live-jax-flax-nnx/", "published_at": "2026-06-25T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020175fc9349", "title": "Where Does a Weight Live?", "url": "https://tahabouhsine.com/where-does-a-weight-live/", "published_at": "2026-06-25T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020176faf5d3", "title": "Constructing the Fashion-MNIST Network, in JAX/Flax NNX", "url": "https://tahabouhsine.com/train-the-features-jax-flax-nnx/", "published_at": "2026-06-23T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020177bcbffa", "title": "How Much of a Fashion-MNIST Network Can You Build by Hand?", "url": "https://tahabouhsine.com/train-the-features/", "published_at": "2026-06-22T23:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017878df55", "title": "Editing a Network by Hand, in JAX/Flax NNX", "url": "https://tahabouhsine.com/edit-a-network-jax-flax-nnx/", "published_at": "2026-06-22T18:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020178d9d734", "title": "A Kernel's Price List, in JAX", "url": "https://tahabouhsine.com/what-can-a-weight-be-jax-flax-nnx/", "published_at": "2026-06-22T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020179bccb2a", "title": "Your Network Is a List of Pictures. You Can Edit It.", "url": "https://tahabouhsine.com/edit-a-network-by-hand/", "published_at": "2026-06-22T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017a9ded0d", "title": "The Yat-Kernel MLP in JAX/Flax NNX", "url": "https://tahabouhsine.com/yat-mlp-jax-flax-nnx/", "published_at": "2026-06-18T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017b1ed8df", "title": "What a Finite Kernel Buys an MLP", "url": "https://tahabouhsine.com/what-a-finite-kernel-buys-an-mlp/", "published_at": "2026-06-18T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017b9bc04c", "title": "The Three States of Information, in JAX", "url": "https://tahabouhsine.com/three-states-of-information-jax/", "published_at": "2026-06-07T19:45:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017bafacae", "title": "The Three States of Information", "url": "https://tahabouhsine.com/three-states-of-information/", "published_at": "2026-06-07T19:30:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017c07dc98", "title": "Latent on the Spectrum, in JAX", "url": "https://tahabouhsine.com/latent-on-the-spectrum-jax/", "published_at": "2026-06-07T19:15:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017c440187", "title": "Latent on the Spectrum: Why Cats Sit Closer to Dogs Than to Cars", "url": "https://tahabouhsine.com/latent-on-the-spectrum/", "published_at": "2026-06-07T19:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017d11413b", "title": "Q and K Projections in JAX/Flax NNX", "url": "https://tahabouhsine.com/qk-projections-jax-flax-nnx/", "published_at": "2026-06-04T19:45:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017d5f4a5b", "title": "Why Attention Needs Q and K Projections", "url": "https://tahabouhsine.com/why-attention-needs-qk-projections/", "published_at": "2026-06-04T19:30:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017dc142e4", "title": "The Prototype Readout in JAX/Flax NNX", "url": "https://tahabouhsine.com/convex-readout-jax-flax-nnx/", "published_at": "2026-06-04T19:15:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017e3f5225", "title": "The Readout is a Convex Combination of Prototypes", "url": "https://tahabouhsine.com/readout-as-convex-combination/", "published_at": "2026-06-04T19:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017eb6f066", "title": "Auditing Latent Space Geometry in JAX", "url": "https://tahabouhsine.com/welch-bound-jax-analysis/", "published_at": "2026-06-02T19:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017ebe2dfc", "title": "What Makes a Good Latent Space? The Welch Bound and the Simplex", "url": "https://tahabouhsine.com/welch-bound-good-latent-space/", "published_at": "2026-06-02T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02017f2af60f", "title": "Cheap Attention in JAX/Flax NNX", "url": "https://tahabouhsine.com/linear-attention-jax-flax-nnx/", "published_at": "2026-05-31T19:30:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02018008bea3", "title": "Cheap Attention: Linear-Time Kernel Approximation", "url": "https://tahabouhsine.com/cheap-attention-is-linear-attention/", "published_at": "2026-05-31T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-02018011412f", "title": "Organizing Randomness: Contrastive Learning in JAX", "url": "https://tahabouhsine.com/organizing-randomness-jax/", "published_at": "2026-05-26T19:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-0201805ca44a", "title": "Untangling the Moons: A Visual History of Contrastive Learning", "url": "https://tahabouhsine.com/untangling-the-moons/", "published_at": "2026-05-26T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020180bdccd7", "title": "Self-Attention as Kernel Regression in JAX/Flax NNX", "url": "https://tahabouhsine.com/attention-is-kernel-jax-flax-nnx/", "published_at": "2026-05-14T17:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-0201815489b6", "title": "What Attention Weights Can Explain", "url": "https://tahabouhsine.com/attention-is-a-kernel/", "published_at": "2026-05-14T00:00:00+00:00" }, { "id": "01a087e9-2019-72bc-8b26-020181a990a7", "title": "What Activations Do to Geometry", "url": "https://tahabouhsine.com/activations-are-bad-for-geometry/", "published_at": "2026-02-20T00:00:00+00:00" } ] posts Claim your blog
Back to tahabouhsine.com
Blog · corpus.blog/blogs/tahabouhsine.com/posts

tahabouhsine.com

tahabouhsine.com

2026