THE 10K CHALLENGE gergltd.com

Classify ImageNet with 10,000 parameters.

No pretrained weights. No parameter to spare. Almost everything else is allowed.

The challenge

Score the highest top-1 accuracy on the ImageNet-1k (ILSVRC-2012) validation set using a model whose learned state fits in 40,000 bytes — 10,000 fp32 parameters, which is where the name comes from. Top-5 accuracy is reported alongside it; both are defined exactly under Scoring.

The motivation

Modern vision models solve ImageNet with millions to billions of weights trained on millions to billions of images. Humans get there on far less. A child has been awake for only about 3,100 hours by 11 months of age (Jayaraman, Fausey and Smith, PLoS ONE, 2015), and none of what they see arrives with a label. Yet children of four to six already recognize distorted objects more accurately than ImageNet-trained networks do, relying on shape where the networks rely on texture (Huber, Geirhos and Wichmann, Journal of Vision, 2023). Models trained on 200 hours of head-camera video from a single child reach roughly 70% of the performance of a model trained on all of ImageNet (Orhan and Lake, Nature Machine Intelligence, 2024). Whatever is going on there, it is not brute scale.

This contest asks how far we can get on this task when free parameters are strictly limited but computation and algorithmic structure are not. The goal is to push research on inductive bias, computation, and domain knowledge expressed as algorithms, instead of scale.

To help calibrate how tight the budget is: a plain linear classifier over just 10 features already costs \(1{,}000 \text{ classes} \times 10 = 10{,}000\) parameters, the entire budget. Fitting 1,000 classes at all forces compact class representations. That squeeze is part of the challenge.

The one rule

You get 40,000 bytes of learned state, total. Everything you fit to data lives in that budget, at every stage of your pipeline, inference included.

That is 10,000 fp32 parameters, which is where the name comes from, but the budget is space, not count. Use fp32, int8, a packed bitfield, or a representation nobody has named yet; what matters is that the serialized state your inference code reads back is at most 40,000 bytes. If you can compress it to fit, it fits: 40,000 bytes of information is 40,000 bytes of information however you encode it.

The contest takes no position on what to call the things in that budget. Weights, biases, running statistics, thresholds, codebooks, class prototypes, selected structure: if it was chosen by fitting rather than derived by your code, it occupies bytes. Stating the rule as space rather than as a count of parameters means it still applies to methods nobody has invented yet.

Banned

  • Fitting more than 40,000 bytes of state, at any stage, even on the official data
  • Distilling, pruning, or fine-tuning a larger trained network down into the budget
  • Weights from an existing network, yours or anyone else's, pretrained or otherwise
  • Learned embeddings, statistics, or lookup tables derived from other data
  • Training on any data other than the official ImageNet-1k training split or data your own code generates procedurally
  • Fitting anything at test time that does not fit in the 40,000 bytes, or changing your submitted state while the model runs
  • Transductive inference: carrying state from one validation image to the next, or exploiting the fact that the validation set holds exactly 50 images per class
  • Network or training-set access at inference time

The distinction is how a number came to exist. Derive it with a program, or fit it directly, and it is legal. Route it through a larger model first and it is not. Compressing a big trained network into a small one is a solved genre and it is not what this contest is asking. Synthetic images your own code generates are fair game to train on, formula-driven supervised learning included, because your program derives them; the 40,000-byte ceiling still applies to whatever you train on them.

An LLM may hand you ideas and code. It may not hand you weights from existing trained models.

Submissions

Scoring

Entries are ranked by top-1 accuracy on the ImageNet-1k validation set. Top-5 accuracy is reported alongside it and is the tie-breaker.

For each validation image your model must emit a ranked list of five distinct class labels, best guess first. Write the set of validation images as \((x_1, y_1), \ldots, (x_N, y_N)\) with \(N = 50{,}000\) and each true label \(y_i \in \{1, \ldots, 1000\}\). Let \(\hat{Y}_i^{(k)}\) be the first \(k\) labels of your ranked list for image \(i\). Then:

\[ \mathrm{acc@}k \;=\; \frac{1}{N} \sum_{i=1}^{N} \mathbf{1}\!\left[\, y_i \in \hat{Y}_i^{(k)} \right] \]
\(N = 50{,}000\) validation images \(y_i\) = ground-truth label of image \(i\) \(\hat{Y}_i^{(k)}\) = your top \(k\) labels for image \(i\) \(\mathbf{1}[\cdot]\) = 1 if the condition holds, else 0

Top-1 accuracy is \(\mathrm{acc@}1\), which counts an image correct only when your first guess is the true label. Top-5 accuracy is \(\mathrm{acc@}5\), which counts it correct when the true label appears anywhere in your five. Both are reported as percentages to two decimals. If you prefer the ILSVRC convention, the error rate is \(100\% - \mathrm{acc@}k\). By construction \(\mathrm{acc@}1 \le \mathrm{acc@}5\).

Leaderboard

TBD  No results yet. Entries and baseline numbers will be posted here.

For reference, random guessing scores 0.1% top-1 and 0.5% top-5. Expect absolute scores to be low; the point is the headroom.

The ImageNet Dataset

The contest uses ImageNet-1k (ILSVRC-2012), the same 1,000-class dataset the field has benchmarked against since 2012. It is free for non-commercial research but gated; obtain it yourself by agreeing to the terms at image-net.org or through the gated Hugging Face repository. This site does not redistribute the data.

Splits

SplitImagesPer classSizeRole in this contest
Train1,281,167732–1,300~138 GBthe only data you may fit on
Validation50,00050 exactly~6 GBthe score on the leaderboard
Test100,000100~13 GBunused; labels were never released

The held-out test labels stayed with the ILSVRC servers and are not public, which is why the validation split has served as the de facto test set for the last decade and serves as one here. Treat it as held out: fit on train only, and resist tuning against the validation number more than you would in any honest experiment.

Class balance

The validation set used for scoring is exactly balanced at 50 images per class, so top-1 and top-5 need no reweighting. The training split is close to balanced but not exactly: most classes sit at the 1,300-image cap and the smallest has 732, a max-to-min ratio of about 1.8. That is mild next to a genuinely long-tailed dataset, and how you handle it is up to you. There is no balanced variant of ImageNet-1k worth switching to; subsampling every class to 732 would cost you 40% of the data to fix a problem the scoring metric already sidesteps.

What is actually in it

Explore the ImageNet Dataset

How to enter

Email a link to your code repository to isaac.gerg@gergltd.com with the subject line 10k entry. The organizers run submissions manually and update the leaderboard on this page. Evaluation cadence: TBD. There is no prize money; the leaderboard is the prize.