Scala-Machine-Learning
Scala-Machine-Learning copied to clipboard
No Dependency Scala Machine Learning Algorithm Gallery
Scala Machine Learning
| Branch | Status | CodeCov |
|---|---|---|
| master | ||
| develop |
Light Weight Scala Machine Learning Library
A very light weight Scala machine learning library that provide some basic ML algorithms in Scala. The repo is served as a algorithm gallery. Please enjoy and dive into the algorithm that you will like to learn in its basic level.
Dev-Environment
-
Scala 2.13
-
Sbt 2.1
This package includes
Classification :
-
[x] Naive Bayesian Decision [Code] [Usage]
-
[x] K-Nearest Neighborhood (KNN) [Code] [Usage]
-
[x] Gaussian Process Classification [Code] [Usage]
-
[x] Linear Classification [Code] [Usage]
-
[x] Linear Support Vector Machine (linear-SVM) [Code] [Usage]
-
[x] Perceptron [Code] [Usage]
-
[x] Decision Tree [Code] [Usage]
-
[x] Random Forest [Code] [Usage]
-
[x] Extreme Learning Machine [Code] [Usage]
Boost :
-
[x] Naive Boost [Code] [Usage]
-
[x] Weighted Boost [Code] [Usage]
-
[x] Gradient Boost [Code] [Usage]
Regression :
-
[x] Multiple Linear Regression [Code] [Usage]
-
[x] Multivariate Linear Regression - GD [Code] [Usage]
-
[x] Stochastic Gradient Decent [Code] [Usage]
-
[x] Regression Tree [Code] [Usage]
Clustering :
-
[x] Hierarchical [Code] [Usage]
-
[x] DBSCAN [Code] [Usage]
-
[x] HDBSCAN [Code] [Usage]
-
[x] BIRCH [Code] [Usage]
-
[x] K-Means [Code] [Usage]
-
[x] EM Cluster [Code] [Usage]
-
[x] Density Peak Cluster [Code] [Usage]
Neural Net & Deep Learning :
-
[x] Neural Network (NN) [Code] [Usage]
-
[x] Restricted Boltzmann Machine (RBM) [Code] [Usage]
-
[x] Deep Belief Network (DBN) [Code] [Usage]
-
[x] Long Short-Term Memory (LSTM) [Code] [Usage]
-
[x] Neural Turing Machine - Memory Searching Cognition [Code (in another Repo)]
Optimization :
-
[x] Gene Algorithm (GA) [Code] [Usage]
-
[x] Minimax [Code] [Usage]
-
[x] Monte Carlo Tree Search (MCTS) [Code] [Usage]
-
[x] Epsilon Greedy Search [Code] [Usage]
-
[x] Upper Confidence Bound [Code] [Usage]
Reinforcement Learning :
-
[x] Naive Feedback [Code] [Usage]
-
[x] Q-Learning [Code] [Usage]
-
[x] Q-Neural Learning [Code] [Usage]
-
[x] Deep Q-Network (DQN) [Code] [Usage]
-
[x] Dueling DQN (D-DQN) [Code] [Usage]
-
[x] Asynchronous Advantage Actor-Critic (A3C) [Code] [Usage]
-
[x] Prioritized Experience Replay (PER-DQN) [Code] [Usage]
Feature Analysis :
-
[x] Student-T Test [Code] [Usage]
-
[x] ANOVA [Code] [Usage]
-
[x] Linear Discriminant Analysis [Code] [Usage]
-
[x] Quadratic Discriminant Analysis [Code] [Usage]
Feature Transformation :
- [x] One Hot Encoding [Code] [Usage]
Abnormal Detection :
-
[x] Isolation Tree [Code] [Usage]
-
[x] Isolation Forest [Code] [Usage]
-
[x] Random Cut Tree [Code] [Usage]
-
[x] Random Cut Forest [Code] [Usage]
TODO
-
[ ] Rainbow - Deep Reinforcement Learning
-
[ ] Alpha-go Zero (MCTS-NN) - Deep Reinforcement Learning
-
[ ] Neural Architect Search (NAS) - Neural Network & Deep Learning
Installation Process
-
Clone this project
Test
sbt test
Build Jar
sbt assembly