- Prerequisites
- Variables Used
- Logic Used
- File Execution Order
- Commands to Run
- Gradient Boosting Overview
- K2/TESS Data Analysis
- Additional Features and Functions
- Project Status
- Contributing
- Install the following libraries using pip:
scikit-learn,Flask,pandas,numpy,joblib, andastropy(for Kepler data analysis) - Ensure you have Python 3.8 or higher installed
- Familiarity with machine learning and data analysis concepts is recommended
MISSIONS: a dictionary containing configuration for each mission (K2, TESS)config: a variable used to store the current configuration being processeddf: a pandas DataFrame used to store the input datakepler_data: a variable used to store Kepler datak2_features: a list of features used for K2 data analysistess_features: a list of features used for TESS data analysis
The project uses gradient boosting as its machine learning algorithm. Gradient boosting is an ensemble learning
method that combines multiple weak models to create a strong predictive model. In this project, we use
scikit-learn's GradientBoostingClassifier to classify the data into two categories: confirmed and false
positive.
Additionally, the project analyzes Kepler data using astropy and pandas. The Kepler data is processed to extract relevant features, such as planetary period and eccentricity, which are then used in conjunction with machine learning algorithms to predict planetary status.
- Run
python aimodel.py: This script cleans and preprocesses the data for each mission. - Run
python app.py: This script creates a Flask web application that serves the cleaned and analyzed data. - Optionally, run
python kepler_analysis.pyto analyze Kepler data.
- To run the project, first run
python aimodel.pyfollowed bypython app.py - Alternatively, you can run both scripts in parallel using
python -m multiprocess aimodel.pyandpython -m multiprocess app.py - If analyzing Kepler data, run
python kepler_analysis.py
Gradient boosting is a powerful machine learning algorithm that has been shown to achieve high accuracy levels. In this project, we use gradient boosting to classify the K2 and TESS data into confirmed and false positive categories.
The accuracy of our model exceeds 99.5% for both K2 and TESS missions, demonstrating its effectiveness in predicting planetary status based on available features.
In addition to using machine learning algorithms, we also analyze Kepler data using astropy and pandas. The Kepler data is processed to extract relevant features, such as planetary period and eccentricity, which are then used in conjunction with machine learning algorithms to predict planetary status.
The K2 and TESS missions have provided unprecedented amounts of data on exoplanetary systems, allowing us to develop more accurate models of planetary behavior. Our analysis takes advantage of this wealth of information to improve the accuracy of our predictions.
- The
kepler_analysis.pyscript analyzes Kepler data using astropy and pandas. - The
aimodel.pyscript cleans and preprocesses the data for each mission, including K2 and TESS data. - The
app.pyscript creates a Flask web application that serves the cleaned and analyzed data.
The project has achieved high accuracy levels of 99.5%+ for both K2 and TESS missions. Some features of the website are still not finished and have some gaps, but we are working to address these issues in future updates. We encourage you to try out our project and provide feedback on how we can improve it.
If you're interested in contributing to this project, please fork the repository and submit a pull request. We welcome contributions from experienced data scientists and machine learning engineers.