LightML.jl is a collection of reimplementation of general machine learning algorithm in Julia.
The purpose of this project is purely self-educational.
This project is targeting people who want to learn internals of ml algorithms or implement them from scratch.
The code is much easier to follow than the optimized libraries and easier to play with.
All algorithms are implemented in Julia.
You should access test function of every implementation for its usage in detail. Every model is actually constructed in a similar manner.
Pkg.clone("https://github.com/memoiry/LightML.jl")using LightML
demo()Figure 1: The Digit Dataset using Demo algorithms
using LightML
test_PCA()Figure 2: The Digit Dataset using PCA
- Adaboost
- Decision Tree
- Gradient Boosting
- K Nearest Neighbors
- Linear Discriminant Analysis
- Linear Regression
- Logistic Regression
- Multilayer Perceptron
- Naive Bayes
- hiddenMarkovModel
- Ridge Regression
- Lasso Regression
- Support Vector Machine
- Hidden Markov Model
- Label propagation
- Random Forests
- XGBoost
- test_ClassificationTree()
- test_RegressionTree()
- test_label_propagation()
- test_LDA()
- test_naive()
- test_NeuralNetwork()
- test_svm()
- test_kmeans_random()
- test_PCA()
- test_Adaboost()
- test_BoostingTree()
- test_spec_cluster()
- test_LogisticRegression()
- test_LinearRegression()
- test_kneast_regression()
- test_kneast_classification()
- test_GaussianMixture() (Fixing)
- test_GDA() (Fixing)
- test_HMM() (Fixing)
using LightML
test_LinearRegression()Figure 3: The regression Dataset using LinearRegression
using LightML
test_Adaboost()Figure 4: The classification Dataset using Adaboost
using LightML
test_svm()Figure 5: The classification Dataset using LinearRegression
using LightML
test_ClassificationTree()Figure 6: The digit Dataset using Classification Tree
using LightML
test_kmeans_random()Figure 7: The blobs Dataset using k-means
using LightML
test_LDA()Figure 8: The classification Dataset using LDA







