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.3.tar.gz (32.9 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.3-py3-none-any.whl (35.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for btsbot-2.0.3.tar.gz
Algorithm Hash digest
SHA256 454c433f3ad729c45fbaa9e3aca1a882c02374369f2b9ca17f3fd624dee43d1d
MD5 1c1d3cde4dfa127e344c66a344edcc40
BLAKE2b-256 ac83ebe06023a82e25849235e536622c2f6cad6be4395b82eddf03fae63d27db

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for btsbot-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 85079ea35eb3d28f63309c1fbb7e64089325730b3bb4680306caa5bf252933c8
MD5 a41fcac6fa9f4f7f228a41292d9814c5
BLAKE2b-256 cf16878a6ae50a8afea3efce8e6c07e21042d9703b4034f211fce27daa14eee6

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