1 min readfrom Machine Learning

Transformers are famously bad at arithmetic, so I set one's weights by hand (no training) and it multiplies with 100% accuracy [P]

Obviously nobody needs a transformer that's good at multiplication. I wanted to know whether a stock transformer could do exact arithmetic if I chose its weights directly.

I implemented the grade-school algorithm as a computation graph and compiled it into an ordinary Phi-3 Hugging Face checkpoint using Torchwright, a compiler I wrote. No training. The three-digit calculator gets all 3,000,000 supported expressions right. I've published checkpoints to Hugging Face that support up to 12 digit x 12 digit multiplication.

For fun, I also disabled reasoning and tested six frontier models. Accuracy falls off a cliff as the numbers get longer; at seven digits, five scored 0/500. Mine stays at 100%, although it has the considerable advantage that I put the multiplication algorithm directly into its weights.

I ended up building four versions: grade-school, hardware-style, scratchpad, and brute-force memorization. They compute the same function while spending layers, width, generated tokens, and parameters very differently.

Write-up: https://ood.dev/posts/calculator/ Repo: https://github.com/physicsrob/torchwright Checkpoint: https://huggingface.co/physicsrob/torchwright-calculator-simple-max-digits-3

submitted by /u/notforrob
[link] [comments]

Want to read more?

Check out the full article on the original site

View original article

Tagged with

#Transformers
#Arithmetic
#Multiplication
#Phi-3
#Hugging Face
#Torchwright
#Computation Graph
#Weights
#Checkpoint
#Grade-school algorithm
#Exact Arithmetic
#Frontier Models
#Reasoning
#Layers
#Width
#Parameters
#Brute-force memorization
#Scratchpad
#Hardware-style
#Compiler