Skip to content

yetalit/Mojmelo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stargazers Issues BSD-3-Clause License CodeQL


About The Project

The name Mojmelo is derived from the "Mojo Machine Learning" expression. It includes the implementation of Machine Learning algorithms from scratch in pure Mojo. Here is the list of the algorithms:

  • Linear Regression
  • Polynomial Regression
  • Logistic Regression
  • KNN
  • KMeans
  • DBSCAN
  • SVM
    1. Primal
    2. Dual
  • Perceptron (single layer: Binary Classification)
  • Naive Bayes
    1. GaussianNB
    2. MultinomialNB
  • Decision Tree (both Regression/Classification)
  • Random Forest (both Regression/Classification)
  • GBDT (both Regression/Classification)
  • PCA
  • LDA
  • Adaboost

Preprocessing:

  • normalize
  • MinMaxScaler
  • StandardScaler
  • KFold
  • GridSearchCV

Mojmelo will not only be limited to above algorithms.

Getting Started

The following steps let you know how to get started with Mojmelo.

Prerequisites

  • Mojo compiler

Additionally, you may want to install bellow Python packages for a better usability and to run tests:

  1. Numpy
  2. Pandas
  3. Scikit-learn
  4. Matplotlib

Installation

You can put the compiled version of the package into your project and use it. The file can be found in releases folder.

or just download the whole mojmelo folder and put it into your project.

Usage

Just import any model you want this way:

from mojmelo.LinearRegression import LinearRegression

You may also want to use the utility codes I've written for this project:

from mojmelo.utils.Matrix import Matrix
from mojmelo.utils.utils import *

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

You can contribute to the project in 3 ways:

  1. Apply improvements to the code and Open a Pull Request
  2. Report a bug
  3. Suggest new features

Acknowledgments

Took inspiration from Patrick Loeber's MLfromscratch and Erik Linder-Norén's ML-From-Scratch

Mojo usage and distribution is licensed under the MAX & Mojo Community License.

About

Machine Learning algorithms in pure Mojo 🔥

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published