Eman AhmedRutgers BME

Research area

Reading scattering curves at scale

What automated SAXS analysis reports for each profile, the model trained on 1,940 experimental SASBDB profiles, and the rule that flags low-confidence results.

Small-angle X-ray scattering gives you the size and shape of something in solution without crystallising it. What it does not give you is an unambiguous answer. Between the raw curve and a reported radius of gyration sit a series of judgement calls, and different analysts make them differently.

An experienced person handles this well, at a rate of a few profiles an hour, and two experienced people will not produce identical numbers. Once a high-throughput campaign is generating hundreds of profiles, both facts become blocking.

What the pipeline returns for each profile

The tool extracts the same set of parameters for every dataset, which is what makes a batch of profiles comparable rather than a set of individual judgement calls.

The numbers
OutputWhat it is
Guinier RgRadius of gyration from the low-q straight-line fit
PDDF RgRadius of gyration from the pair distance distribution
DmaxMaximum particle dimension, from the PDDF and from the trained model
Kratky featuresShape-descriptive features used by the clustering step
Confidence flagWhether the two Rg routes agree well enough to report the result

Reported Outputs as described in Ramirez, Di Mare, Byrnes, Ahmed et al., Biophysical Journal 124(21), 3772–3786 (2025).

Where the model comes in

Choosing Dmax is the call that most resists automation: pick it too small and you truncate real structure, too large and you invent oscillation that is not there. The approach taken in the paper is to train on how the field already makes that call, using 1,940 experimental profiles from the Small Angle Scattering Biological Data Bank, not idealised simulations.

1,940Training profiles
experimental files from the SASBDB
4 × 32Architecture
hidden layers × units, ReLU
0.90Test R²
on held-out data
11.7 ÅMean absolute error
on maximum particle dimension

The regressor

A small, deliberately unglamorous network: four hidden layers of 32 units, trained only on experimental profiles so that it learns how practitioners actually make this call.

The numbers
HyperparameterValue
ModelMultilayer perceptron regressor
Hidden layers4, each of 32 units
ActivationReLU
SolverAdam
Alpha (L2 penalty)1 × 10⁻³
Maximum iterations1,000
Random state42
Training set1,940 SASBDB profiles
Analysis q-range0.005–0.25 Å⁻¹
Collection q-range0.005–3.13 Å⁻¹
DetectorsPilatus 1M (SAXS), Pilatus 900K (WAXS)

Reported Architecture and hyperparameters as published.

Knowing when to stop

There are two independent routes to a radius of gyration: the Guinier approximation at low q, and integration of the pair distance distribution. On a well-measured dataset they agree. When they diverge, something is wrong: with the measurement, the buffer subtraction, or the assumption of monodispersity. Using that agreement as a built-in gate gives the tool a basis for declining to answer.

The rule that lets the pipeline decline to answer

The model's predicted Dmax is compared against the value from the BIFT fit. Agree within 20% and it is reported in green; disagree by more and it is shown in red rather than quietly returned.

This is the part worth copying. An automated analysis that always returns a plausible-looking number is worse than none; the useful property is knowing when to stop.

The numbers
Deviation from BIFT DmaxOutcome
Within ±20%Accepted, shown green
More than ±20%Flagged as low confidence, shown red

Reported The ±20% threshold and the red/green reporting are as described in the paper.

Shape classification works the same way. An unsupervised Gaussian mixture model was fitted over SASBDB entries, with AIC and BIC evaluated for up to nine clusters and the Kratky plots of high-confidence samples used to check that the clusters were actually separating shapes. Of 3,328 samples, six were excluded as extreme outliers. The output is a probability that a sample resembles a known class, not a claim to have solved a structure.

How to actually run SAXS Assistant — install, input format and what comes back per profile — and more on this in the research notes.

Other research areas