Skip to main content

Data Lifecycle

This page follows one batch of spectra from download to prediction and interpretation, naming for each stage the module that performs it and the file it leaves behind. It is a map: details live on the linked pages, and no run-level number appears here.


Overview​

Stages​

#StageModuleOutputDocumented in
1Download — resumable, round-robin across observing plans, atomic .part → final rename, session logtools/dr5_downloader.py (SmartDownloader)data/raw/<plan>/<file>.fits.gz, logs/download_log_*.txt, completed plans in downloaded_plans.csvDownloading Data
2Batch selection — never reuses a spectrum from a previous sessiontools/dataset_builder.py (DatasetBuilder)list of relative paths; ledger trained_spectra.csvDataset Versions
3Catalogue — header fields only, flux arrays untouchedtools/generate_catalog_from_fits.pymaster_catalog_temp.csvMaster Catalog
4Gaia cross-match (optional)tools/gaia_crossmatcher.pymaster_catalog_gaia.csvGaia DR3 Cross-match
5Preprocessing — load flux and inverse variance, sanitise, normalisepipeline/preprocessor.pyarrays in memoryPreprocessing
6Peak detectionpipeline/peak_detector.pymatch_* valuesPeak Detection
7Feature extraction and catalogue joinpipeline/feature_engineering.py, processing.pyfeatures_<timestamp>.csvProcessing Pipeline, Feature Catalogue
8Classification — train/test split, optional feature selection, calibration, evaluationpipeline/classifier.pymodel file, *_meta.json, session_report_*.json, confusion/ROC/PR/calibration figuresClassification
9Interpretation and validation — SHAP, physical checksnotebooks 03_…, 04_…logs/shap/, logs/validation/SHAP Interpretability, Scientific Validation
10Dimensionality reduction (parallel branch, unsupervised)dimred/*run reports .json + .txt, figuresDimensionality Reduction

Steps 2–8 are chained by MasterPipeline.

Where the data generations enter​

The same lifecycle produced two generations of feature tables, kept separate throughout the documentation: the PHY-3500 · G1 · 43,019 spectra set (dimensionality reduction) and the 349,998-spectra G2 set (reference classifier). See Dataset Versions.

Where filtering and exclusion happen​

PlaceWhat is excludedPage
Gaia stepGaia columns of sources with high RUWE are maskedQuality Filters
Feature extractionSpectra that fail to load or compute are skippedProcessing Pipeline
ClassifierNon-A/F/G/K/M classes; non-spectroscopic columns in spectro_only modespectro_only mode
Dimensionality-reduction loaderLow-SNR spectra, sparse columnsQuality Filters

Artefact conventions​

  • File names carry a UTC timestamp (YYYYMMDDTHHMMSSZ), shared by the model, its metadata, the session report and the figures of one session.
  • Intermediate state of a session is stored in session_pending.json so that a long Gaia step is not repeated after a restart.
  • Raw data and catalogues are not versioned in Git (data/ is ignored); only code and documentation are.