This repository contains implementations of core Machine Learning algorithms built completely from scratch using Python, without relying on pre-built ML model libraries such as Scikit-learn.
The goal of this project is to deeply understand how machine learning algorithms work internally by implementing the mathematics, training logic, and prediction workflows manually.
- Implemented algorithms from scratch
- Object-Oriented Programming based design
- Custom preprocessing workflows
- Training and prediction pipelines
- Educational and learning-focused implementations
- K-Nearest Neighbors (KNN)
- Logistic Regression
- Decision Tree Classifier
- Random Forest
- Support Vector Machine (SVM)
- Naive Bayes
- AdaBoost
- Multi-Layer Perceptron (MLP)
- Bayesian Networks
- Hidden Markov Models (HMM)
- Python
- NumPy
- Pandas
- Sklearn (Only for importing datasets in some programs)
- hmmlearn (For Hidden Markov Model implementation)
- Object-Oriented Programming (OOP)
.
├── Adaboost.py
├── BayesianNetwork.py
├── DecisionTree.py
├── HMM.py
├── K-NearestNeighbour.py
├── LogisticRegression.py
├── MLPClassifier.py
├── NaiveBayes.py
├── RandomForest.py
├── SVM.py
├── Preprocess.py
├── dataset.csv