This repository provides Python implementations of foundational machine learning algorithms developed as part of the Machine Learning (20942) course. It includes:
- The Perceptron Algorithm and the Pocket Algorithm, designed to handle both linearly separable and inseparable data.
- A multiclass extension of the Pocket Algorithm using the One-Versus-All strategy, where multiple binary classifiers are trained to distinguish each class from the rest.
- A Softmax Regression implementation, suitable for multiclass classification tasks.
- A digit classification system built on Softmax Regression, demonstrating its application on real-world multiclass data such as handwritten digits.