What a gravitational-wave detector knows without being told
A CNN was trained to answer one question: is there a signal in this noise? It was never shown the mass of anything. Afterwards, a straight line through its internal state recovers it.
GitHubClosed-form general relativity
The shape of a black hole, computed live
The geometry is checked against two limits where the answer is known exactly, then against the only two black holes ever photographed. Bardeen's closed-form boundary redraws under the sliders, with a schematic Novikov–Thorne disk around it.
Exact Kerr: the shadow outline, r_isco, the orbital frequency, the redshift g and the Novikov–Thorne flux, with I_obs = g⁴ I_em. Approximate: the disk's light bending uses the Beloborodov (2002) Schwarzschild relation, so spin does not enter it. The lower arc, light from the disk that wraps around the hole, is an extra approximation made for this page: Schwarzschild bending, no spin, emitters inside 3M skipped. It is not in shadow.js or the Python pipeline. Colours are presentation and intensities are relative.
Against the two black holes we have photographed
Ray-traced, with an accretion disk
The detector
A CNN that only knows "signal or noise"
The learning curve, predicted in advance
Training
Where it separates signal from noise
Sim-to-real transfer
It works on real data
The frozen network, trained purely on simulated injections, meeting real detections for the first time.
The probe
The question: is mass linearly readable?
What each input can tell you
Predicted against published chirp mass
Against chance
The confound
"Isn't that just nonlinear beating linear?"
Ridge on raw pixels is a linear model of the image, while ridge on the embedding is a nonlinear one: the embedding is itself a nonlinear function of the pixels. The control gives every source the same nonlinearity budget, with identical RBF kernel ridge throughout.
Same probe, two model classes
Paired comparisons
The supervised comparison
What a model that does see labels gets
XGBoost on GWTC catalogue features (distance, SNR, redshift, spin, false-alarm rate, p_astro) predicting the same chirp mass, with every mass-bearing column removed.
Every chirp-mass result, one table
The tabular workflow
Scope
What this shows, and what it does not
Shows
Training transforms the representation so that chirp mass becomes linearly readable, far beyond an untrained network of identical architecture, and not because of model class.
Does not show · 1
That the CNN "discovered" mass.
The embedding is a deterministic function of the image and cannot contain more information than it. What changed is linear accessibility, not information content.
Does not show · 2
That this is a good way to measure mass.
It was never compared with matched-filter parameter estimation, which produced these labels and is far more precise. The probe is an instrument, not a product.
Does not show · 3
That detection training specifically is responsible.
What is established is that training matters. The isolating control, the same CNN trained on shuffled labels, was never run.
How this was built
Spec-first, with the failures left in
Amendment log
The contract hashes
Conclusion
Training makes chirp mass linearly readable from a detector that was only ever asked “is something there?”