Downloads · 30 days
0
light-curve/astra-clr
astra-clr is a machine learning model from light-curve. Use it for the machine learning task on the model card, and read the license before you ship it in a product.
Part of the light-curve family of open-source tools for astronomical time-series analysis.
Downloads · 30 days
0
Access
Public
Updated Jun 19, 2026
Repo size
50.6 MB
Likes
0
Public
Click a slice to open those files.
.onnx50.6 MB · 100%
From the Hugging Face model README
Part of the light-curve family of open-source tools for astronomical time-series analysis.
Available from Python via the light-curve package: pip install light-curve. Documentation: light-curve.snad.space.
Majumder et al., 2026, in prep.
GitHub: https://github.com/TorshaMajumder/astra (private)
HuggingFace: https://huggingface.co/ashrot/astra-clr-base
Inference library: https://github.com/snad-space/astra-infer
MIT
AstraCLR is a contrastive-learning encoder for multi-band photometric light curves. It maps a ZTF (g, r, i) light curve to a 512-dimensional embedding via a transformer architecture trained with a contrastive objective. Unlike ASTROMER, the model accepts multi-band input by concatenating per-band observation sequences with a log-wavelength channel. The ONNX file is distributed pre-built and requires no ML-framework conversion.
| Tensor | Shape | dtype | Description |
|---|---|---|---|
input | [batch, 700, 1] | float32 | Inverse-variance-weighted mean-subtracted magnitude per band window |
times | [batch, 700, 1] | float32 | Observation time minus MJD offset (58 000) |
band_info | [batch, 700, 1] | float32 | lg(effective wavelength in Å) for the observation's band |
mask | [batch, 700] | float32 | 0 = real observation, 1 = padded |
The 700-element sequence is a concatenation of three per-band windows: g (0–299, 300 obs), r (300–649, 350 obs), i (650–699, 50 obs).
| Tensor | Shape | Description |
|---|---|---|
| mean | [batch, 512] | Light-curve embedding |
SEQ_PER_BAND[band] observations ("beginning" strategy).norm_mag = mag − Σ(mag/magerr²) / Σ(1/magerr²)norm_time = mjd − 58 000band_info = lg(eff_wavelength_Å)
— g: lg(4746.48), r: lg(6366.38), i: lg(7829.03)mask = 1 for
padded positions, mask = 0 for real observations.HuggingFace (ONNX): https://huggingface.co/light-curve/astra-clr
Source: https://huggingface.co/ashrot/astra-clr-base/blob/main/astra-clr.onnx Training data: ZTF Zubercal DR16 (https://huggingface.co/datasets/snad-space/astra-zubercaldr16_gaiadr3vclassre)