astronomy/ai produced the result/The Astrophysical Journal 2024 · v2
Neural network picks bright exploding stars from sky survey alerts and books telescope time
Astronomers built BTSbot, a neural network that scores each alert from the Zwicky Transient Facility for whether it marks a bright transient. In production it saved 296 sources and requested spectra automatically, work previously done by human scanners.
spectrum · one line per step, placed by what the step does · bright lines used AI
The Zwicky Transient Facility Bright Transient Survey. III. BTSbot: Automated Identification and Follow-up of Bright Transients with Deep Learning
The Astrophysical Journal, 2024
doi:10.3847/1538-4357/ad5666 · record aix-00017 v2 · checked 2026-10-07
- AI was for
- Classification, Experimental design
- Model family
- Convolutional neural network, Multilayer perceptron
- Checked by
- Experimental296 tested
- Code
- available
The finding the paper is about came from the AI.
What this research was about
Robotic telescopes photograph the whole visible sky again and again, then subtract an older reference picture of the same patch to see what has changed. Anything that brightens or appears produces an alert. Most alerts are uninteresting: image artefacts, or stars and galaxy cores that flicker routinely. A smaller number are transients, objects that flare up and fade, such as exploding stars. The Zwicky Transient Facility in California generates far more alerts each night than people can look through, so human volunteers, known as scanners, have sifted them by eye to decide which objects deserve a spectrum, the spread-out light that reveals what an object actually is.
The researchers set out to hand that sifting to software, and to let the software not only recognise bright transients but also ask a telescope for the follow-up spectrum itself.
Where AI came in
BTSbot is a convolutional neural network, a model that learns visual patterns directly from images. It is multi-modal: it looks at three small image cutouts for each alert, the new picture, the older reference and the difference between them, and at the same time reads 25 numerical features describing the alert, including how the object's brightness has changed over time. It was trained from scratch on 608,943 alerts from 19,558 already-catalogued sources, and outputs a single score for whether the source is, or will become, a bright extragalactic transient.
Fixed rules then turn sequences of those scores into decisions: save the source, and send a request to a robotic spectrograph. Other models appear alongside it. An existing classifier called braai re-scored every training alert for whether it was a genuine detection or an artefact, and SNIascore classified some of the resulting spectra. In this chain the network stood in for the nightly human scan, and one source, SN 2023tyk, was detected, identified, classified and reported with no human action.
Written by AIxSci from the checked record below, to give context for readers outside the field. It is not part of the record.
The work
Technical · from the record
BTSbot is a multi-modal convolutional neural network that assigns each Zwicky Transient Facility alert packet a score for whether its source is, or will become, a bright extragalactic transient, using three 63x63-pixel image cutouts and 25 extracted features. It was trained on 608,943 alerts from 19,558 catalogued ZTF sources and reached 94.9% accuracy and ROCAUC of 0.985 on a concealed test split, recovering 100% of the bright transients in that split, with 93.0% purity under the stricter of two follow-up policies and 84.6% under the looser one. Running in production inside ZTF's alert broker and marshal during October 2023, it saved 296 sources and sent automatic spectroscopic follow-up requests; 92.6% of those sources were confirmed as extragalactic transients. Median differences in saving and triggering time relative to human scanners on the test split were -0.0381 and -0.0147 days, and one selected source, SN 2023tyk, was detected, identified, spectroscopically classified and publicly reported with no human action.
How AI was used
The authors assembled a labelled training set of ZTF alert packets by querying internal Bright Transient Survey catalogues for four source classes (spectroscopically confirmed bright transients; AGN, CVs, VarStars and QSOs; dim transient-like sources; and candidates scanners declined to save), retrieving all alerts for those identifiers from the Kowalski broker. Science, reference and difference cutouts were Euclidean-normalised and stacked into 63x63x3 triplets; six custom light-curve features (days to peak, days since peak, age, peakmag so far, maxmag so far, nnondet) were computed from each alert's own perspective and combined with alert-packet metadata to give 25 features, and all alerts were re-scored with the d6 m9 version of the braai real/bogus classifier. Cleaning cuts removed corrupted cutouts, ambiguous labels, missing Pan-STARRS1 cross-matches, i-band alerts, negative difference images and sources with transients in the reference image; sources were split 81/9/10 into train, validation and test, and alerts per source were thinned to Nmax = 100. The multi-modal network passes images through a VGG-like convolutional branch and metadata through batch normalisation and two dense layers, concatenates the branches, and emits a unit-interval score; it was implemented in TensorFlow and Keras with the Adam optimiser, binary cross-entropy loss, class weighting, rotation and flip augmentation, learning-rate decay, and Bayesian hyperparameter sweeps on the Weights and Biases platform, with 20 trials trained at the optimal hyperparameters and uni-modal CNN and fully-connected variants trained for comparison. In production, Kowalski computes the custom features, runs BTSbot on incoming alerts, and two policies (bts p1 and bts p2) map sequences of alert scores to source-level decisions that auto-save sources on Fritz and send SEDM spectroscopic follow-up requests at priority 1 or 2, with resulting spectra reduced by pySEDM and classified by SNIascore.
The shape of the work
Structural · the record, drawn
no AI
Compile labelled source and alert sample
Obtaining raw data, whether by measurement, download or retrieval.
Once we have a list of ZTF-IDs and their corresponding labels, we query Kowalski to retrieve all alert packets from each source.where the paper describes this · verbatim
AI
Re-score alerts with real/bogus classifier
Running a trained model over new data to predict, classify or score. The AI stood in for manual curation.
We rerun all alert packets through the d6 m9 version of braai and replace all drb scores with these new scores.where the paper describes this · verbatim
no AI
Clean, build features and split data
Cleaning, filtering, normalising or labelling data already obtained.
Next, we clean our training set with a series of cuts.where the paper describes this · verbatim
AI
Optimise hyperparameters and train BTSbot and uni-modal baselines
Fitting model parameters, including fine-tuning an existing model. The AI stood in for manual curation.
We adopt the Adam optimizer (Kingma & Ba 2014) and the binary cross-entropy loss function.where the paper describes this · verbatim
AI
Score alert packets with BTSbot
Running a trained model over new data to predict, classify or score. The AI stood in for manual curation.
BTSbot is able to eliminate the need for daily human scanning by automatically identifying and requesting spectroscopic follow-up observationswhere the paper describes this · verbatim
no AI
Apply saving and triggering policies to select sources
Reducing a candidate set by filtering or ranking, in a single pass.
The policy bts p1 requires that a source have at least two alerts with high (≥ 0.5) bright transient scorewhere the paper describes this · verbatim
AI
Obtain and automatically classify spectra
Physical execution, by hand or by robot. The AI stood in for expert judgement.
whether assigned automatically by SNIascore (Fremling et al. 2021) or manually by a scannerwhere the paper describes this · verbatim
no AI
Evaluate completeness, purity and speed against scanners
Testing outputs against ground truth.
By simulating our policies on BTS candidates, we can compute performance metrics which realistically represent how BTSbot performs as a scanner.where the paper describes this · verbatim
What the record says
Technical · every part carries its own basis
+ in the paper~ our reading− not reported
How to read the quotations. A quotation shows where the paper describes something. It does not quote every value beside it: one passage locates a part of the work, and values without their own quotation are our reading of that passage.
The paper's subject is the model itself: BTSbot's scores are what select transients for spectroscopic follow-up in production, so the reported outcome is the model's output
We present BTSbot, a multi-modal convolutional neural network, which provides a bright transient score to individual ZTF detectionswhere the paper describes this · verbatim
BTSbot selected 296 sources in real-time, 93% of which were real extragalactic transientswhere the paper describes this · verbatim
We make the BTSbot source code and trained model publicly available on GitHubwhere the paper describes this · verbatim
What this paper did not report
Technical · absence is published deliberately
- DataWhether the data are available is not stated.
- Version of Uni-modal CNN (UM-CNN) BTSbot alternativeWhich version of the model was used is not stated.
- Version of Fully-connected neural network (NN) BTSbot alternativeWhich version of the model was used is not stated.
- Version of SNIascoreWhich version of the model was used is not stated.
About this article
Record aix-00017, version 2, checked by a person on 2026-10-07. The record describes the paper; it does not assess whether the paper's findings are right. The paper is published under CC-BY-4.0; quotations are at most 25 words. How we work · Report an error