Skip to content

MIMIC-CXR imaging results are not independently verifiable: no per-case rows are committed #375

Description

@sebasmos

Raising this as a verification gap rather than a bug. Nothing here is wrong, but a third of the imaging evidence currently rests on files nobody outside the run can check, including me.

experiments/mimic_cxr_image/.gitignore excludes:

results/**/*.jsonl
results/**/*.log
manifests/provenance.json
manifests/*.csv

So the lane commits 8 summary JSONs and zero per-case rows. For comparison, on main: MedQA commits 176 per-case files and 25 cache files, NIH 28 and 8. Every MIMIC-CXR imaging rate is therefore unrecomputable from the repo, and the per-image checksums the docs describe are not present either.

This is legitimate under the PhysioNet terms, and I am not suggesting the raw data be committed. The problem is only that there is currently no DUA-safe path to confirm the numbers.

What rests on it:

  • the MIMIC contagion rows, n=43 / 87 / 179 / 169
  • the MIMIC blind-metric column, 78 drifters, 0 naming the rubric
  • the n=834 image solo null
  • the referee comparison at n=417, which I have now withdrawn from the paper's referee table for a separate reason: that cohort's own README records 79% of plants coinciding with the true read, so its adoptions largely measure the holdout being moved toward the correct answer, and it cannot be restricted to the genuinely-false subgroup without the per-case rows

Either of these would close it:

  1. Commit a DUA-safe derived file. Per-case rows reduced to non-identifying fields only, for example case_index, iso_adopt, shared_adopt, solo_flip, gt with no study or patient identifiers and no report text. That is enough to recompute every published rate and to run the plant-direction restriction.
  2. Independent confirmation. A second person with PhysioNet access re-runs the arms and confirms the summaries, recorded on this issue.

@amarzullo24 you own this lane. @armaanvgrewal you have access and offered to run #347's arms, so option 2 may be quickest if travel makes option 1 awkward.

Related: #343 covers the missing runner scripts, which is the other half of making this lane reproducible. #371 is separately blocked on a solo_flip versus iso_adopt polarity question in the same lane, and resolving that likely needs the same per-case data.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions