This Repository contains most of the Machine Learning Algorithms, Step By Step through User defined functions and also some statistical concepts . Additionally, some datasets are included for experimentation.
- Bayes_Classifier.ipynb - Implements a Bayesian classifier for probabilistic classification.
- Euclidean_Distance_Classifier.ipynb - A classifier based on Euclidean distance.
- KNN.ipynb - Implements the k-Nearest Neighbors algorithm.
- Logistic_Regression.ipynb - Logistic Regression for binary classification.
- Perceptron_Direct.ipynb - Direct solution for the Perceptron algorithm.
- Perceptron_Iterative.ipynb - Iterative implementation of the Perceptron algorithm.
- Mahalanobis_Classifier.ipynb - Classification using Mahalanobis distance.
- Closedform_LinearReg.ipynb - Closed-form solution for Linear Regression.
- Closedform_RidgeReg.ipynb - Ridge Regression using a closed-form solution.
- GradientDesc_LinearReg.ipynb - Linear Regression using gradient descent.
- GradientDesc_RidgeReg.ipynb - Ridge Regression with gradient descent.
- MultipleDegree_PolynomialReg.ipynb - Polynomial Regression with multiple degrees.
- Polynomial_Regression.ipynb - Basic implementation of Polynomial Regression.
- Covariance_Matrix.ipynb - Computing and analyzing the covariance matrix.
- Multiclass_Confusion_Matrix.ipynb - Generating a confusion matrix for multiclass classification.
- Binary_Confusion_Matrix.ipynb - Creating a confusion matrix for binary classification.
- Multivariate_Normal_Dist.ipynb - Working with the multivariate normal distribution.
- Univariate_Normal_Dist.ipynb - Understanding and visualizing the univariate normal distribution.
- TestTrainsplit.ipynb - Train-test split implementation for datasets.
- heart.csv - A dataset related to heart disease classification.
- Housing.csv - Housing price dataset for regression tasks.
- Iris.csv - Classic Iris dataset for classification.
Feel free to explore and modify the notebooks to gain a deeper understanding of machine learning algorithms!
(This repository will be constantly updated to include more and more algorithms along with more efficient codes for existing algos)