This repository contains an implementation of various machine learning algorithms from scratch using Python. The algorithms are designed to provide a clear understanding of their underlying principles and functionalities.
-
Binary Bayes Classifiers
Implemented learning algorithms based on Maximum Likelihood estimation for binary classification tasks. -
Multiclass Bayes Classifiers
Developed algorithms to handle multiple classes using Maximum Likelihood estimation. -
Overfitting and Underfitting Analysis in Regression
A comprehensive analysis to demonstrate the concepts of overfitting and underfitting in regression models. -
Bayesian Regression
Implementation of Bayesian methods for regression tasks, providing a probabilistic framework for inference. -
Logistic Regression
Developed from scratch, this model is used for binary classification problems. -
Decision Tree
A simple yet powerful algorithm for classification and regression tasks, built from fundamental principles. -
Random Forest
An ensemble learning method that combines multiple decision trees to improve predictive accuracy. -
AdaBoost
An implementation of the Adaptive Boosting algorithm, which combines weak classifiers to create a strong classifier. -
Lasso Regression
Developed an implementation of Lasso regression, which includes L1 regularization to reduce overfitting.
You can use these implementations as a reference or as a foundation for your own machine learning projects. Each algorithm is modular and can be easily integrated into larger systems.
Make sure you have the following libraries installed:
- NumPy
- Pandas
- Matplotlib (for visualization)
You can install the required libraries using pip:
pip install numpy pandas matplotlib