FOSSPred is a machine learning project aimed at predicting the Graduation & Retirement of Apache Software Foundation Incubator Projects. This repository accompanies the thesis "Predictive Insights: Machine Learning and FOSS Project Sustainability"
Developed with the software and tools below.
• Multiple ML-models for prediction
• Evaluation metrics for model performance
└── fosspred/
├── README.md
├── __init__.py
├── the_data.csv
├── run.py
├── confusion_matrices.txt
├── model_results.csv
├── models/
│ ├── decisiontree.py
│ ├── gradientboosting.py
│ ├── k-nearest.py
│ ├── logreg.py
│ ├── randomforest.py
│ └── supportvector.py
└──| File | Summary |
|---|---|
| run.py | Main script to run the predictions and write results |
| confusion_matrices.txt | Stores confusion matrices of the models |
| model_results.csv | Logs the results of model evaluations |
| the_data.csv | Dataset used for training and predictions |
models
| File | Summary |
|---|---|
| decisiontree.py | Decision Tree algorithm |
| gradientboosting.py | Gradient Boosting algorithm |
| supportvector.py | Support Vector Machine algorithm |
| k-nearest.py | K-Nearest algorithm |
| logreg.py | Logistic Regression algorithm |
| randomforest.py | Random Forest algorithm |
Requirements
Ensure you have the following installed on your system:
- Python: at least
version 3.11.0
- Clone the fosspred repository:
git clone https://github.com/m-kudahl/fosspred- Change to the project directory:
cd fosspred- Install the dependencies:
pip install pandas
pip install scikit-learn
pip install numpyUse the following command to run FOSSPred:
python run.py