Mohd Zamin Quadri

GitHubLinkedIn

← Selected work

Research prototype / Medical imaging

Uncertain is not negative.

A synthetic film, then the three corpora that disagree about what they can label.A synthetic chest radiograph drawn as contours, carrying no pathology of any kind. It gives way to a grid of three training corpora against fourteen findings, where every cell a corpus cannot label goes dark: masked rather than guessed. A grayscale adapter averages three input channels into one, a DenseNet backbone assembles at its real depths of six, twelve, twenty-four and sixteen layers, and a head reduces 1024 features to 512 and then to fourteen outputs. The fourteen output channels end the sequence empty, because the repository publishes no validated numbers.

A multi-label chest X-ray classifier over 14 findings, trained across three corpora that do not agree about what they label. The interesting part is not the network. It is the mask that decides which labels are allowed to teach it anything.

Backbone
DenseNet-121
Findings
14, multi-label
Sources
3
Published results
None

01 / 11RadiographOne grayscale chest image, 224 pixels square. Synthetic here: the corpora are not redistributable.

Input
224 x 224single channel, grayscale
Image shown
Syntheticno patient data is used or published
Findings predicted
14independent, multi-label
CheXpert7NIH ChestX-ray1414Pneumonia set114 findings, left to right in the model’s output order
A filled cell is a finding the source actually labels. CheXpert supplies 7 of 14; the pneumonia set supplies 1. Everything unfilled is masked out of the loss, because a corpus saying nothing about a finding is not the same as a chest not having it.
  • No trained weightsNothing in the repository can make a prediction.
  • No patient dataDatasets are downloaded from their owners under their own terms.
  • No held-out metricsThe evaluation code exists; its output is not published.
  • No clinical validationNot for diagnosis, triage, or treatment decisions.

01What this is

Three corpora, one label space, and a great deal of silence.

The model predicts 14 findings at once. Only one of its three sources can speak to all 14 of them: NIH ChestX-ray14. CheXpert supplies 7, and the pneumonia set supplies 1. Within the findings CheXpert does carry, an entry can still be explicitly uncertain, or simply not mentioned at all.

The decision that shapes the whole project is what to do with that silence. Treating it as a negative is cheap and wrong: it would teach the model that every CheXpert chest is free of emphysema, fibrosis and hernia, and that every image in the pneumonia set is free of the other thirteen findings. Instead each of those entries is masked, and a masked entry contributes nothing to the loss and nothing to the metrics.

02The loss

Focal weighting, and then a switch that can turn the whole term off.

The loss is a focal loss with label smoothing (0.02), alpha 0.75 so positives are weighted three to one, gamma 2 so confident examples stop dominating, and a class weight applied to positives only so that boosting a rare finding does not also boost the flood of negatives around it. All of that is multiplied by the mask, and normalised by the sum of the mask times the weights rather than by the element count — otherwise batches with a lot of masked entries would be scaled as though those entries had been learned from.

03Splits and evaluation

Split by patient, and judged on the worst finding.

Both CheXpert and NIH are split 80/10/10 at the level of the patient, not the image, so two views of the same person cannot land on both sides of the split. The NIH split is retried until every finding has at least twenty positives in both validation and test, because a split that leaves a rare finding with three positives produces a metric that means nothing.

ROC-AUC per finding, mask-aware, computed only over samples where that channel is certain. The checkpoint is then selected on the minimum class AUC rather than the mean, with Hernia excluded as too rare to steer on — a mean would let a strong majority class hide a finding the model cannot do at all.

Evaluation pipeline implemented; no validated numbers are published in the repository.

Boundaries

A research prototype, and not a clinical one.

  • No trained weightsNothing in the repository can make a prediction.
  • No patient dataDatasets are downloaded from their owners under their own terms.
  • No held-out metricsThe evaluation code exists; its output is not published.
  • No clinical validationNot for diagnosis, triage, or treatment decisions.

The repository states that the implementation must not be used for diagnosis, triage, treatment decisions, or any other clinical purpose. Nothing on this page is a medical claim, no image shown anywhere in it is a real radiograph, and no patient data is used, stored, or published.