ExoMDN is a machine-learning-based exoplanet interior inference model using Mixture Density Networks. The model is trained on more than 5.6 million synthetic planet interior structures. Given mass, radius, and equilibrium temperature, ExoMDN is capable of providing a full inference of the interior structure of low-mass exoplanets in under a second without the need for a dedicated interior model.
This repository contains the trained models shown Baumeister & Tosi 2023 (accepted in A&A), as well as Python
notebooks to load the models and run interior predictions of exoplanets. Interactive widgets are included
to simplify loading an MDN model and running a prediction.
We also make available the training routines in more_examples/model_training_demo.ipynb
.
Create a new conda environment named exomdn from the environment.yml
file, which installs all the required
packages:
conda env create -f environment.yml
Activate the environment:
conda activate exomdn
Then install the exomdn package by running
pip install -e .
This project requires Python 3.7 or higher.
Install the required packages and dependencies using
pip install -r requirements.txt
Then install the exomdn package by running
pip install -e .
- python>=3.7
- tensorflow=2.11
- tensorflow-probability=0.15
- scikit-learn=1.1.1
- numpy
- pandas
- scipy
- matplotlib
- seaborn
- joblib
- ipywidgets
- jupyter
To get started check out introduction.ipynb
. More in-depth examples can be found in the more_examples directory and
more will be added over time. This directory also contains the training routines used to train the ExoMDN models, with some example trianing data to be found in the data directory.
We are using the MDN layer for Keras by https://github.com/cpmpercussion/keras-mdn-layer