This project contains native implementations of fundamental machine learning algorithms and demonstrates their application on various datasets. The goal is to provide a hands-on experience with core ML algorithms without the use of high-level libraries such as scikit-learn or TensorFlow.
/models
: Contains the implementation of each machine learning algorithm./evaluation
: Contains scripts for evaluating the algorithms on different datasets./utilities
: Includes utility functions shared across different evaluation scripts./data
: Includes datasets used for various analyses.
Each algorithm is implemented in a modular way to showcase the core mathematical concepts and their application. The algorithms are all stored in the models.py
file at root. The following algorithms are included:
Evaluation: evaluation/pca.py
Description: PCA is used for dimensionality reduction by projecting data onto a lower-dimensional space while preserving as much variance as possible.
Evaluation: evaluation/linreg.py
Description: Linear regression is used for predicting a continuous target variable based on one or more predictor variables using a closed-form solution.
Evaluation: evaluation/logreg.py
Description: Logistic regression is used for binary classification tasks by estimating the probability that a given input belongs to a certain class.
Evaluation: evaluation/lda.py
Description: LDA is used for classification and dimensionality reduction by finding the linear combinations of features that best separate different classes.
File: models/dtl.py
Evaluation: evaluation/dt.py
Description: Decision trees are used for classification and regression tasks by recursively splitting the data into subsets based on feature values.
- Implement more complex ML algorithms.
- Include more examples and tutorials on how to use the algorithms for classification, regression, and other tasks.
- Enhance the project with additional features and optimizations.
This project is licensed under the MIT License - see the LICENSE file for details.
- Farzan Mirza: farzan.mirza@drexel.edu | LinkedIn