TheAlgorithms/Rust

Suggestion: Add optimization functions, ml algorithms under `machine_learning` folder

Navaneeth-Sharma opened this issue ยท 11 comments

I would like to suggest adding Optimization functions, machine learning and deep learning algorithms in this repository. This can be added in a separate folder called machine_learning folder. Further, this folder can contain various algorithms that are used in machine learning and deep learning.

Initially, these Optimization functions can be added under machine_learning/optimization/

  • Gradient Descent
  • Stochastic Gradient Descent (SGD)
  • Mini-Batch Gradient Descent
  • Adam (Adaptive Moment Estimation)
  • RMSprop (Root Mean Square Propagation)
  • AdaGrad (Adaptive Gradient Algorithm)

And these in machine_learning/

  • Linear Regression
  • Logistic Regression
  • Decision Trees
  • Random Forest
  • Support Vector Machines (SVM)
  • K-Nearest Neighbors (K-NN)
  • Naive Bayes
  • K-Means Clustering
  • Principal Component Analysis (PCA)
siriak commented

I like the idea, let's do that

Linear regression has been merged (#579), so requesting you to check that part

@Navaneeth-Sharma @siriak Lets also keep loss functions in that folder. #582

This issue has been automatically marked as abandoned because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@siriak hey, can you do something, so that it doesn't get automatically close. I think it should remain open.

Hello I am new to open source contribution, I would love to help in implementing some of the optimisation techniques. Kindly let me know if someone is already working on them, or I can start working with few?

Pull request has been raised for K-Nearest Neighbors Algorithm (#723). Request you to please check on that

Hello, I would love to start contributing to this project. Specifically on optimization algorithms like Stochastic Gradient Descent (SGD) or Mini-Batch Gradient Descent. Are they still possible to work on them?

Sure, you can start implementing them