Skip to main content

Automatic supernova discovery with deep learning

Project description

BTSbot Logo

arXiv arXiv arXiv

BTSbot is a multi-modal deep vision model for automating supernova identification and follow-up in the Zwicky Transient Facility (ZTF) Bright Transient Survey (BTS).

BTSbot contributed to the first supernova to be fully automatically discovered, confirmed, classified, and shared (AstroNote, press release) as well automated space-based supernova follow-up (AstroNote). See this animated walkthrough of the fully-automated BTS workflow.

Presented at the ML for Astrophysics workshop at ICML 2023 (Extended abstract)

The training set for the original production model is available on Zenodo.

Installation

Install with pip:

pip install btsbot

Usage

BTSbot models are now available on the HuggingFace Hub and can be downloaded and loaded into Python automatically. Here's how simple it is to get started:

import btsbot

# This will automatically download the model if not already present locally
model = btsbot.load_HF_model(
    architecture="convnext",  # or "maxvit"
    multi_modal=True,         # Set to False for image-only models
    pretrain="galaxyzoo"      # or "imagenet", "randinit"
)

The model object can then be used for inference. For a complete inference example, see inference_example.py which demonstrates:

  • Loading example data (triplets and metadata)
  • Running inference on batches
  • Processing predictions

Citing BTSbot

If you use or reference BTSbot please cite Rehemtulla et al. 2024 (ADS).

@ARTICLE{Rehemtulla+2024,
       author = {{Rehemtulla}, Nabeel and {Miller}, Adam A. and {Jegou Du Laz}, Theophile and {Coughlin}, Michael W. and {Fremling}, Christoffer and {Perley}, Daniel A. and {Qin}, Yu-Jing and {Sollerman}, Jesper and {Mahabal}, Ashish A. and {Laher}, Russ R. and {Riddle}, Reed and {Rusholme}, Ben and {Kulkarni}, Shrinivas R.},
        title = "{The Zwicky Transient Facility Bright Transient Survey. III. BTSbot: Automated Identification and Follow-up of Bright Transients with Deep Learning}",
      journal = {\apj},
     keywords = {Time domain astronomy, Sky surveys, Supernovae, Convolutional neural networks, 2109, 1464, 1668, 1938, Astrophysics - Instrumentation and Methods for Astrophysics},
         year = 2024,
        month = sep,
       volume = {972},
       number = {1},
          eid = {7},
        pages = {7},
          doi = {10.3847/1538-4357/ad5666},
archivePrefix = {arXiv},
       eprint = {2401.15167},
 primaryClass = {astro-ph.IM},
       adsurl = {https://ui.adsabs.harvard.edu/abs/2024ApJ...972....7R},
      adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

If you use or reference a pre-trained BTSbot model like the updated ConvNeXt-based BTSbot or any BTSbot output from 2026 or beyond, please also cite our follow-up publication.

@ARTICLE{Rehemtulla+2025,
      title={Pre-training vision models for the classification of alerts from wide-field time-domain surveys}, 
      author={Nabeel Rehemtulla and Adam A. Miller and Mike Walmsley and Ved G. Shah and Theophile Jegou du Laz and Michael W. Coughlin and Argyro Sasli and Joshua Bloom and Christoffer Fremling and Matthew J. Graham and Steven L. Groom and David Hale and Ashish A. Mahabal and Daniel A. Perley and Josiah Purdum and Ben Rusholme and Jesper Sollerman and Mansi M. Kasliwal},
      year={2025},
      eprint={2512.11957},
      archivePrefix={arXiv},
      primaryClass={astro-ph.IM},
      url={https://arxiv.org/abs/2512.11957}, 
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

btsbot-2.0.5.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

btsbot-2.0.5-py3-none-any.whl (32.6 kB view details)

Uploaded Python 3

File details

Details for the file btsbot-2.0.5.tar.gz.

File metadata

  • Download URL: btsbot-2.0.5.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for btsbot-2.0.5.tar.gz
Algorithm Hash digest
SHA256 bf13dfcf776f4b2d2641088f014cabd2e0b528582ebee6b0dbb8d691c97f63cc
MD5 54f7ffafa430f92ea4f24a1cac3558ec
BLAKE2b-256 2f2ed1facbae986a9a029f595754e090b32c32228f8cb38b92398b46b2ab3bd7

See more details on using hashes here.

File details

Details for the file btsbot-2.0.5-py3-none-any.whl.

File metadata

  • Download URL: btsbot-2.0.5-py3-none-any.whl
  • Upload date:
  • Size: 32.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for btsbot-2.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 96192824f10d856095d13d137982a6f97a414f4fa6f3c82c7009d825b5d27dae
MD5 3a07cc1e7b53b56b16a1c6a790d38d57
BLAKE2b-256 075ef55e00d820725fb158bfc6f64f8320d819ccb67d7d93ec9f15d924bc5723

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page