Blog

  1. Home
  2. Blog
A neural network built from scratch for Kepler, K2 and TESS data

A neural network built from scratch for Kepler, K2 and TESS data

For a 2025 NASA exoplanet challenge I wanted a classifier whose whole path I could see: from the raw archive tables to the probabilities on screen. The result is a small system that sorts objects of the NASA Exoplanet Archive into three classes: confirmed planets, planet candidates and false positives.

The data

Three public tables are used: the Kepler KOI cumulative table, the TESS Objects of Interest and the K2 planets and candidates table. Their columns have different names, so a Python script maps them to one vector of 14 features: orbital period, transit duration and depth, planet radius, insolation, temperatures, stellar parameters, sky position, signal-to-noise ratio and false-positive flags. A class-balanced sample of 4500 objects is normalized with median filling, a log transform for strictly positive features and standardization.

The network

The classifier is a fully connected network with the shape 14-64-32-16-3, sigmoid activations and one output per class. It is written in C++17 without machine-learning frameworks and trained by back-propagation with full-batch gradient descent, parallelized with OpenMP. A separate C++ predictor loads the weights, and a small local web interface lets me try manual input or a CSV file.

The result

The note reports 71.1% ± 1.1% accuracy on a held-out 20% split, averaged over five runs with different splits and random initializations, where chance level is 33.3%. The weakest class is the candidate class, which is expected: candidates are objects whose status has not been settled yet.

The full method, the figures and a list of limitations are published as a technical note with a DOI: 10.5281/zenodo.23675369. The project page is here.

Mihail Charilaou
Author: Mihail Charilaou

Software, AI and systems engineering student at the University of Nicosia and software developer at Oneix Ltd. I write about neural networks, evaluation and offline AI.