Skip to content

Latest commit

 

History

History
79 lines (61 loc) · 1.8 KB

README.md

File metadata and controls

79 lines (61 loc) · 1.8 KB

MLAlgorithms

Implementation of machine learning algorithms from scratch for learning purposes. PyTorch is the only dependency. Scikit-learn and Matplotlib are used in the example.py file to compare the scikit-learn implementations with the custom made implementations and give examples on how to use the components. However, the library itself only depends on PyTorch.

Requirements

  • torch (2.4.0)
  • [Optional] : scikit-learn (1.5.1)

Installation

Clone the project and use algorithms. The example.py file shows how to use the algorithms.

pip install torch==2.4.0

git clone git@github.com:GM07/MLAlgorithms.git
cd MLAlgorithms

Algorithms implemented

Regression

  • Linear Regression
  • Ridge Regression
  • Lasso Regression
  • Logistic Regression

Clustering

  • KMeans

K-means Clustering

  • DBSCAN

DBSCAN Clustering

Naive Bayes

  • Gaussian Naive Bayes
  • Bernoulli Naive Bayes
  • Multinomial Naive Bayes

Dimensionality Reduction

  • PCA
  • t-SNE
  • UMAP

Decision Trees

  • Decision Tree Classifier
  • Decision Tree Regressor

Ensemble Learning

  • Bagging
  • Boosting
  • XGBoost
  • Random Forests

Deep Learning Layers

  • Linear Layer
  • Attention Layer
  • Convolutional Layer
  • Max Pooling Layer
  • Average Pooling Layer
  • Layer Normalization Layer
  • Batch Normalization Layer

Deep Learning

  • Neural Network
  • LSTM
  • RNN
  • Transformer
  • Diffusion Model

Metrics

  • RMSE

References

  • Scikit-learn: Machine Learning in Python, Pedregosa et al., JMLR 12, pp. 2825-2830, 2011.