/exoplanetml

This is a repository of exoplanet detection using Machine learning (ML)

Primary LanguageJupyter NotebookMIT LicenseMIT

Exoplanet ML

Exoplanet ML is a machine learning project dedicated to the detection of exoplanets using transit survey-based light curves. This project leverages advanced machine learning algorithms and feature engineering techniques to improve the accuracy and efficiency of exoplanet discovery.

Table of Contents

Features

  • Detection of exoplanets using transit-based light curves
  • Implementation of various machine learning classifiers
  • Advanced feature engineering with time-series data
  • Dimensionality reduction for improved model performance
  • Comprehensive Jupyter notebooks for exploration and analysis

Machine Learning Algorithms

  • Random Forest Classifier
  • Naive Bayes
  • LightGBM
  • XGBoost
  • AdaBoost
  • Histogram Gradient Boosting
  • Multi-Layer Perceptron
  • Neural Network

Important Notebooks

Installation

Follow these steps to set up the Exoplanet ML project locally:

git clone https://github.com/yourusername/exoplanet-ml.git
cd exoplanet-ml
pip install -r requirements.txt

Ensure you have Python 3.7 or higher installed. It's recommended to use a virtual environment:

python -m venv venv
source venv/bin/activate  
pip install -r requirements.txt

Usage

After installation, you can start by exploring the Jupyter notebooks provided. To launch Jupyter Notebook, run:

jupyter notebook

Navigate to the desired notebook (e.g., Kepler_Lightcurve.ipynb) and execute the cells to begin analyzing exoplanet light curves.

For command-line usage or integration into your own scripts, refer to the src/ directory where the main modules and scripts are located.

Contributing

Contributions are welcome! To contribute to Exoplanet ML, please follow these guidelines:

  1. Fork the repository on GitHub.
  2. Clone your fork to your local machine:
  3. git clone https://github.com/yourusername/exoplanet-ml.git
    cd exoplanet-ml
    
  4. Create a new branch for your feature or bugfix:
  5. git checkout -b feature/your-feature-name
    
  6. Make your changes and commit them with clear messages:
  7. git commit -m "Add feature XYZ"
    
  8. Push your changes to your fork:
  9. git push origin feature/your-feature-name
    
  10. Open a pull request on the main repository describing your changes.

Please ensure your code follows the project's coding standards and includes appropriate tests.

License

This project is licensed under the MIT License. You are free to use, modify, and distribute this project as per the license terms.