QML Reality Check
A variational quantum classifier against a properly fitted logistic regression and a small MLP, on the same held-out rows, with the training bill for each. On classical toy data the quantum model loses. On data a quantum circuit made, it wins — and the reason it wins is the whole point.
Decision surfaces
Each square is the standardised feature plane, ±2.2 standard deviations. Teal predicts the positive class, violet the negative; deeper colour is a more confident model. Filled dots are the 210 training rows, rings are the 90 held-out rows no optimiser sees. The surfaces redraw as the worker reports progress.
The honest table
Nothing has been trained yet. Pick a dataset and press Train.
| Model | Params | Held-out | Train | Loss | Steps | Circuit evals | Flops |
|---|---|---|---|---|---|---|---|
| Logistic regression | — | — | — | — | — | — | — |
| Small MLP | — | — | — | — | — | — | — |
| Variational quantum classifier | 14 | — | — | — | — | — | — |
Circuit evaluations are end-to-end runs of the quantum circuit during training — the forward pass plus two parameter-shift evaluations per angle per row, plus every step of the discarded random starts. At 1,000 shots each, the VQC row is — hardware shots. Flops are what the classical processor did: for the two baselines, the model; for the VQC, the statevector simulator that stood in for a quantum computer. Scoring the held-out rows and painting the surfaces is not counted.
What this tool does
It builds one dataset of 300 rows from the seed, holds out 90 of them, standardises the features on the training rows only, and trains three classifiers on the remaining 210: an L2-regularised logistic regression on cubic polynomial features (solved exactly by Newton’s method — a fair baseline is not an under-trained one), a 2→16→1 tanh network with Adam, and a variational quantum classifier with angle encoding, data re-uploading on every layer, RY–RZ trainable rotations, a CNOT ladder and a ⟨Z⟩ readout, trained by Adam on parameter-shift gradients. The circuit is simulated exactly with the same statevector engine as the circuit simulator.
Accuracy is reported on the held-out rows. Cost is reported in the currency each model actually spends: circuit evaluations for the quantum model, floating-point operations for the classical ones, and both for the simulated VQC so you can see what your laptop paid to pretend.
Run these three, in this order
Moons. Train with the defaults. Logistic regression finishes in a handful of Newton steps and lands near 97–100% held-out. The MLP matches it. The VQC gets to the low-to-mid 90s, at roughly half a million circuit evaluations, and its decision surface wobbles where the polynomial’s is smooth. It works; it is simply not better, and it cost a thousand times more evaluations.
Circles. Same story. The radius is a quadratic feature, so the polynomial fit is essentially exact. Watch the VQC surface: with one or two layers it cannot draw a closed ring at all, because a rotation-encoded circuit is a Fourier series in each feature whose frequencies the encoding fixes.
Quantum-made. Now the gap inverts. Logistic regression stalls in the 60s and 70s; the MLP, given the same step budget, sits in the 70s and 80s; the VQC crosses 90%. Then switch the MLP to five times the steps and watch it close most of the distance. Set the classifier to one layer and watch the VQC collapse to the classical numbers.
What just happened on the quantum-made set
The labels were produced by measuring a fixed 2-qubit, 3-layer circuit on the encoded input. That function is a sum of sines and cosines of the two features with frequencies up to three — a bumpy, periodic surface. A cubic polynomial cannot follow it. A small network can, but only by spending many steps placing tanh bumps where the ripples are. The VQC contains the function exactly, because it is the same kind of circuit, so its job is only to find the right angles — and even that takes several random starts, because the loss landscape of a periodic model is full of local minima.
That is the honest shape of the one advantage the field has actually demonstrated: when the data was made by a quantum process, a quantum model of matching structure is the natural hypothesis class. Nothing about that transfers to a spreadsheet.
The 2026 evidence, stated plainly
No accepted advantage on classical data. There is exactly one proven exponential separation for a learning problem — a quantum kernel on labels reverse-engineered from the discrete logarithm (Liu, Arunachalam & Temme 2021) — and it has not been extended to any natural dataset. Head-to-head experiments at simulable scale show quantum models roughly matching, and typically trailing, tuned classical baselines, which is what this page reproduces.
Dequantisation. Several claimed exponential speed-ups — recommendation systems, low-rank linear algebra — were answered by classical algorithms with matching data-access assumptions (Tang 2018 onward). When the classical side is granted the same sampling access the quantum algorithm assumed, the exponent usually disappears.
Data loading. Angle encoding, used here, is linear in the number of features and cheap; amplitude encoding stores 2ⁿ numbers in n qubits but costs exponential depth to prepare and O(1/ε²) shots to read one number back. Every serious proposal has to say where its data comes from.
Barren plateaus. Gradients of a sufficiently expressive circuit concentrate exponentially around zero in the qubit count (McClean et al. 2018), and the escape routes — shallow, structured, locally measured circuits — tend to be classically simulable. At 2–4 qubits this page is nowhere near a plateau; to see one form, open the VQE and barren plateau simulation and raise the qubit count. The full argument, with the kernel view and a reading checklist for QML claims, is the Quantum Machine Learning lesson.
What this tool does not do
It does not run on quantum hardware, and it does not model shot noise: every ⟨Z⟩ is exact, so the VQC here is a best case. It does not model gate noise, which on real devices flattens gradients further. It does not tune the classical baselines beyond sensible fixed settings — a serious classical benchmark would cross-validate, and would do even better. It has two features and at most four qubits, so it says nothing about scaling; it cannot exhibit a barren plateau, and it cannot show what a 50-qubit model would do. It is a controlled, reproducible, small-scale check of the claim structure — which is what most published QML comparisons are too.