All Projects → supernnova → SuperNNova

supernnova / SuperNNova

Licence: other
Open Source Photometric classification https://supernnova.readthedocs.io

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to SuperNNova

Stats Maths With Python
General statistics, mathematical programming, and numerical/scientific computing scripts and notebooks in Python
Stars: ✭ 381 (+2016.67%)
Mutual labels:  pandas, bayesian-statistics
ocbnn-public
General purpose library for BNNs, and implementation of OC-BNNs in our 2020 NeurIPS paper.
Stars: ✭ 31 (+72.22%)
Mutual labels:  bayesian-neural-networks, bayesian-deep-learning
spatial-smoothing
(ICML 2022) Official PyTorch implementation of “Blurs Behave Like Ensembles: Spatial Smoothings to Improve Accuracy, Uncertainty, and Robustness”.
Stars: ✭ 68 (+277.78%)
Mutual labels:  bayesian-neural-networks, bayesian-deep-learning
Document Classifier Lstm
A bidirectional LSTM with attention for multiclass/multilabel text classification.
Stars: ✭ 136 (+655.56%)
Mutual labels:  recurrent-neural-networks, arxiv
Pingouin
Statistical package in Python based on Pandas
Stars: ✭ 651 (+3516.67%)
Mutual labels:  pandas, bayesian-statistics
Stock Price Predictor
This project seeks to utilize Deep Learning models, Long-Short Term Memory (LSTM) Neural Network algorithm, to predict stock prices.
Stars: ✭ 146 (+711.11%)
Mutual labels:  pandas, recurrent-neural-networks
DUN
Code for "Depth Uncertainty in Neural Networks" (https://arxiv.org/abs/2006.08437)
Stars: ✭ 65 (+261.11%)
Mutual labels:  bayesian-neural-networks, bayesian-deep-learning
python-programming-for-data-science
Content from the University of British Columbia's Master of Data Science course DSCI 511.
Stars: ✭ 29 (+61.11%)
Mutual labels:  pandas
seeing-without-looking
PyTorch implementation for Seeing without Looking: Contextual Rescoring of Object Detections for AP Mazimization
Stars: ✭ 28 (+55.56%)
Mutual labels:  recurrent-neural-networks
Data-Analyst-Nanodegree
Kai Sheng Teh - Udacity Data Analyst Nanodegree
Stars: ✭ 42 (+133.33%)
Mutual labels:  pandas
GTAV-Self-driving-car
Self driving car in GTAV with Deep Learning
Stars: ✭ 33 (+83.33%)
Mutual labels:  recurrent-neural-networks
r10e-ds-py
Reproducible Data Science in Python (SciPy 2019 Tutorial)
Stars: ✭ 12 (-33.33%)
Mutual labels:  reproducible-science
support-tickets-classification
This case study shows how to create a model for text analysis and classification and deploy it as a web service in Azure cloud in order to automatically classify support tickets. This project is a proof of concept made by Microsoft (Commercial Software Engineering team) in collaboration with Endava http://endava.com/en
Stars: ✭ 142 (+688.89%)
Mutual labels:  pandas
forest-software
A curated list of projects developed using the Forest quantum programming environment.
Stars: ✭ 39 (+116.67%)
Mutual labels:  arxiv
astrodash
Deep learning for the automated spectral classification of supernovae
Stars: ✭ 25 (+38.89%)
Mutual labels:  cosmology
tiny-rnn
Lightweight C++11 library for building deep recurrent neural networks
Stars: ✭ 41 (+127.78%)
Mutual labels:  recurrent-neural-networks
Python-Matematica
Explorando aspectos fundamentais da matemática com Python e Jupyter
Stars: ✭ 41 (+127.78%)
Mutual labels:  pandas
models
Forecasting 🇫🇷 elections with Bayesian statistics 🥳
Stars: ✭ 24 (+33.33%)
Mutual labels:  bayesian-statistics
visions
Type System for Data Analysis in Python
Stars: ✭ 136 (+655.56%)
Mutual labels:  pandas
HBTplus
HBT+ subhalo finder and merger tree builder, the tool to get you out of mess and back to physics.
Stars: ✭ 12 (-33.33%)
Mutual labels:  cosmology

Paper DOI arXiv Data DOI

Logo

Build Status

Read the documentation

For the main branch: https://supernnova.readthedocs.io

The paper branch differs slightly from the master. Take a look to "changelog_paper_to_new_branch" or Build the docs for this branch.

Installation

Clone this repository (preferred)

git clone https://github.com/supernnova/supernnova.git

or install pip module (check versioning)

pip install supernnova

Read the paper

Links to the publication: MNRAS,ArXiv. All results quoted in these publications were produced using the branch "paper" which is frozen for reproducibility.

Please include the full citation if you use this material in your research: A Möller and T de Boissière, MNRAS, Volume 491, Issue 3, January 2020, Pages 4277–4293.

Table of contents

  1. Repository overview
  2. Getting Started
    1. With Conda
    2. With Docker
  3. Usage
  4. Reproduce paper
  5. Pipeline Description
  6. Running tests
  7. Build the docs

Repository overview

├── supernnova              --> main module
    ├──data                 --> scripts to create the processed database
    ├──visualization        --> data plotting scripts
    ├──training             --> training scripts
    ├──validation           --> validation scripts
    ├──utils                --> utilities used throughout the module
├── tests                   --> unit tests to check data processing
├── sandbox                 --> WIP scripts

Getting started

With Conda

cd env

# Create conda environment
conda create --name <env> --file <conda_file_of_your_choice>

# Activate conda environment
source activate <env>

With Docker

cd env

# Build docker images
make cpu  # cpu image
make gpu  # gpu image (requires NVIDIA Drivers + nvidia-docker)

# Launch docker container
python launch_docker.py (--use_gpu to run GPU based container)

For more detailed instructions, check the full setup instructions

Usage

When cloning this repository:

# Create data
python run.py --data  --dump_dir tests/dump --raw_dir tests/raw --fits_dir tests/fits

# Train a baseline RNN
python run.py --train_rnn --dump_dir tests/dump

# Train a variational dropout RNN
python run.py --train_rnn --model variational --dump_dir tests/dump

# Train a Bayes By Backprop RNN
python run.py --train_rnn --model bayesian --dump_dir tests/dump

# Train a RandomForest
python run.py --train_rf --dump_dir tests/dump

When using pip, a full example is https://supernnova.readthedocs.io

# Python
import supernnova.conf as conf
from supernnova.data import make_dataset

# get config args
args =  conf.get_args()

# create database
args.data = True            # conf: making new dataset
args.dump_dir = "tests/dump"        # conf: where the dataset will be saved
args.raw_dir = "tests/raw"      # conf: where raw photometry files are saved 
args.fits_dir = "tests/fits"        # conf: where salt2fits are saved 
settings = conf.get_settings(args)  # conf: set settings
make_dataset.make_dataset(settings) # make dataset

Reproduce paper results

Please change to branch paper:

python run_paper.py

General pipeline description

  • Parse raw data in FITS format
  • Create processed database in HDF5 format
  • Train Recurrent Neural Networks (RNN) or Random Forests (RF) to classify photometric lightcurves
  • Validate on test set

Running tests with py.test

PYTHONPATH=$PWD:$PYTHONPATH pytest -W ignore --cov supernnova tests

Build docs

cd docs && make clean && make html && cd ..
firefox docs/_build/html/index.html
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].