9 September 2020

SPACEKIT: Machine Learning for Astrophysics

by Ru Kein

Overview

spacekit is a python library designed to do the heavy lifting of machine learning in astronomy-related applications. The modules contained in this package can be used to assist and streamline each step of a typical data science project. The library is especially useful for performing signal analysis and machine learning on astronomical datasets. This post shows how to install spacekit locally and presents an overview of the library. The next few posts include walkthroughs and demos including how to acquire and preprocess datasets from MAST (Mikulsky Archive for Space Telescopes) via AWS, analyze time-series light curves (flux signals) of stars from the K2 telescope to identify possible orbiting exoplanets (also known as threshold crossing events or TCEs), and more.

References:

Ingest/Extract

Import large datasets from a variety of file formats .csv, .hdf5, .fits, .json, .png .asdf

Scrub/Preprocess

Scrub and preprocess raw data to prepare it for use in a machine learning model

Modeling

Build, train and deploy custom machine learning models using classification, logistic regression estimation, computer vision and more

Analysis

Evaluate model performance and do exploratory data analysis (EDA) using interactive graphs and visualizations

Visualize

Deploy a web-based custom dashboard for your models and datasets via docker, a great way to summarize and share comparative model evaluations and data analysis visuals with others

Applications

The Skøpes module includes real-world machine learning applications used by the Hubble and James Webb Space Telescopes in data calibration pipelines. These mini-applications are an orchestration of functions and classes from other spacekit modules to run real-time, automated analysis, training, and inference on a local server as well as in the cloud (AWS).

Install spacekit via pip

$ pip install spacekit[x]

spacekit.radio

Fetch data hosted on AWS using the MAST api

How to scrape MAST archives and download NASA space telescope datasets

spacekit.analyzer

How to perform flux-timeseries signal analysis with light curves

spacekit.analyzer (part 1): plotting light curves spacekit.analyzer (part 2): frequency spectrographs

spacekit.transformer

Exploring tools for converting and preprocessing signals as numpy arrays

spacekit.builder

building and fitting convolutional neural networks

spacekit.computer

gets model predictions and evaluates metrics

Contact

If you want to contact me you can send a message on LinkedIn.

License

This project uses the following license: MIT License.

  
            /\    _       _                           _                      * 
   /\_/\___/  \__| |_____| |_________________________| |___________________*___
   [===]  / /\ \ | |  _  |  _  | _  \/ __/ -__|  \| \_  _/ _  \ \_/ | * _/| | |
    \./  /_/  \_\|_|  ___|_| |_|__/\_\ \ \____|_|\__| \__/__/\_\___/|_|\_\|_|_|
                   | /             |___/                                       
                   |/