# A neural net that judges Numberwang

> 80,804 parameters, one 1.8 MB JSON file, and 100 lines of plain Python decide whether your number is Numberwang.
- Title: A neural net that judges Numberwang · GitHub | Shortify
- Summary: 80,804 parameters, one 1.8 MB JSON file, and 100 lines of plain Python decide whether your number is Numberwang. A character-level CNN can absorb digits…
- Keywords: neural networks, python, machine learning, comedy, open source, technology, startups, neural, net, judges, Numberwang, GitHub
- Source: GitHub — https://github.com/GraafHenk/numberwang
- Read time: 1 min
- Topics: neural networks, python, machine learning, comedy, open source, technology, startups
## That's Numberwang
A small neural network takes any input and rules on whether it is Numberwang. Type 22 and it answers with 99.3% confidence.

> 22... THAT'S NUMBERWANG! (confidence: 99.3%)
## No install, no deps
The model is a single 1.8 MB JSON file and inference is about 100 lines of the Python standard library. No PyTorch, no NumPy. Clone it and run it on Python 3.8 or newer.

> Requires Python 3.8 or newer. That's the only requirement.
## Four possible verdicts
Every input lands in one of four buckets: not Numberwang, NUMBERWANG, not even a number, or Wangernumb. Anything worth 1 or 44 rotates the board.

> 45 - 44... That's Wangernumb! Rotate the board!
## It eats almost anything
Digits, words, Roman numerals, ordinals, currency, times, arithmetic, and eleven languages. Fictional numbers like shinty-six count too, but "often" does not.

> A number's wangness is a property of the number, not the language it is said in.
## Characters straight to softmax
An embedding, two 1D convolutions, max pooling and two linear layers. 80,804 parameters read raw characters, so the languages and verdicts all live in the weights.

> there is no tokenizer, no normalizer and no rules engine at inference
## 88.9% and an honest weak spot
Macro-F1 of 0.896 on 486 held-out adjudications, against a ceiling near 98% because 2% of labels are deliberately inverted. Arithmetic on unseen operands drops to 44-72%.

> The network memorises rather than computes.
## Key takeaway

A character-level CNN can absorb digits, arithmetic, eleven languages and a comedy rulebook into its weights, with no tokenizer or rules engine at inference.