This repository showcases a hands-on implementation of fundamental machine learning algorithms in pure Python. These implementations were developed as part of the "Foundations of Machine Learning" course taught by Prof. Sri Rama Murty Kodukula. Rewriting these algorithms line-by-line helped solidify my understanding of their internal mechanics-no black boxes, just straightforward logic and well-documented code.
The repo currently includes minimal, from-the-ground-up versions of several core algorithms, such as:
- Linear Regression
- Logistic Regression
- K-Nearest Neighbors (KNN)
- Naive Bayes Classifier
- Linear Discriminant Analysis (LDA)
- Fisher’s Discriminant Analysis (FDA)
- Perceptron Learning Algorithm
- Predictive Distribution Methods
- Expectation-Maximization (EM) for Gaussian Mixture Models
- Basic Neural Networks (with support for dropout, early stopping, and regularization)
- Adam Optimization Algorithm
...