{"id":15349624,"url":"https://github.com/wei-1/scala-machine-learning","last_synced_at":"2025-08-21T07:33:11.169Z","repository":{"id":41876903,"uuid":"72980752","full_name":"Wei-1/Scala-Machine-Learning","owner":"Wei-1","description":"No Dependency Scala Machine Learning Algorithm Gallery","archived":false,"fork":false,"pushed_at":"2024-10-21T15:54:25.000Z","size":354,"stargazers_count":33,"open_issues_count":4,"forks_count":9,"subscribers_count":6,"default_branch":"develop","last_synced_at":"2024-12-17T13:43:36.632Z","etag":null,"topics":["hacktoberfest","machine-learning","scala"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Wei-1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-06T09:22:40.000Z","updated_at":"2024-10-21T15:54:31.000Z","dependencies_parsed_at":"2023-02-08T18:30:32.439Z","dependency_job_id":"e489ad68-948f-4893-9f2b-99be27cba437","html_url":"https://github.com/Wei-1/Scala-Machine-Learning","commit_stats":{"total_commits":202,"total_committers":10,"mean_commits":20.2,"dds":0.6534653465346535,"last_synced_commit":"f8d623e566ffa4cd66b7d71f5b5e6a5f9fa1aa4e"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wei-1%2FScala-Machine-Learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wei-1%2FScala-Machine-Learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wei-1%2FScala-Machine-Learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wei-1%2FScala-Machine-Learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Wei-1","download_url":"https://codeload.github.com/Wei-1/Scala-Machine-Learning/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230501172,"owners_count":18236061,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest","machine-learning","scala"],"created_at":"2024-10-01T11:55:06.920Z","updated_at":"2024-12-19T21:09:29.848Z","avatar_url":"https://github.com/Wei-1.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scala Machine Learning\n\nBranch | Status | CodeCov\n-|-|-\n[master](https://github.com/wei-1/scala-machine-learning/tree/master) | [![Build Status](https://travis-ci.org/Wei-1/Scala-Machine-Learning.svg?branch=master)](https://travis-ci.org/Wei-1/Scala-Machine-Learning) | [![codecov](https://codecov.io/gh/Wei-1/Scala-Machine-Learning/branch/master/graph/badge.svg)](https://codecov.io/gh/Wei-1/Scala-Machine-Learning)\n[develop](https://github.com/wei-1/scala-machine-learning/tree/develop) | [![Build Status](https://travis-ci.org/Wei-1/Scala-Machine-Learning.svg?branch=develop)](https://travis-ci.org/Wei-1/Scala-Machine-Learning) | [![codecov](https://codecov.io/gh/Wei-1/Scala-Machine-Learning/branch/develop/graph/badge.svg)](https://codecov.io/gh/Wei-1/Scala-Machine-Learning)\n\n\n## Light Weight Scala Machine Learning Library\n\nA 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.\n\n\n## Dev-Environment\n\n- Scala 2.13\n\n- Sbt 2.1\n\n\n## This package includes\n\n### Classification :\n\n- [x] Naive Bayesian Decision [[Code]](src/main/scala/algorithm/classification/BayesianDecision.scala) [[Usage]](src/test/scala/algorithm/classification/BayesianDecisionTest.scala)\n\n- [x] K-Nearest Neighborhood (KNN) [[Code]](src/main/scala/algorithm/classification/KNN.scala) [[Usage]](src/test/scala/algorithm/classification/KNNTest.scala)\n\n- [x] Gaussian Process Classification [[Code]](src/main/scala/algorithm/classification/GaussianProcess.scala) [[Usage]](src/test/scala/algorithm/classification/GaussianProcessTest.scala)\n\n- [x] Linear Classification [[Code]](src/main/scala/algorithm/classification/LinearClassification.scala) [[Usage]](src/test/scala/algorithm/classification/LinearClassificationTest.scala)\n\n- [x] Linear Support Vector Machine (linear-SVM) [[Code]](src/main/scala/algorithm/classification/LinearSVM.scala) [[Usage]](src/test/scala/algorithm/classification/LinearSVMTest.scala)\n\n- [x] Perceptron [[Code]](src/main/scala/algorithm/classification/Perceptron.scala) [[Usage]](src/test/scala/algorithm/classification/PerceptronTest.scala)\n\n- [x] Decision Tree [[Code]](src/main/scala/algorithm/classification/DecisionTree.scala) [[Usage]](src/test/scala/algorithm/classification/DecisionTreeTest.scala)\n\n- [x] Random Forest [[Code]](src/main/scala/algorithm/classification/RandomForest.scala) [[Usage]](src/test/scala/algorithm/classification/RandomForestTest.scala)\n\n- [x] Extreme Learning Machine [[Code]](src/main/scala/algorithm/classification/ExtremeLearning.scala) [[Usage]](src/test/scala/algorithm/classification/ExtremeLearningTest.scala)\n\n### Boost :\n\n- [x] Naive Boost [[Code]](src/main/scala/algorithm/classification/NaiveBoost.scala) [[Usage]](src/test/scala/algorithm/classification/NaiveBoostTest.scala)\n\n- [x] Weighted Boost [[Code]](src/main/scala/algorithm/classification/WeightedBoost.scala) [[Usage]](src/test/scala/algorithm/classification/WeightedBoostTest.scala)\n\n- [x] Gradient Boost [[Code]](src/main/scala/algorithm/regression/GradientBoost.scala) [[Usage]](src/test/scala/algorithm/regression/GradientBoostTest.scala)\n\n### Regression :\n\n- [x] Multiple Linear Regression [[Code]](src/main/scala/algorithm/regression/MultipleLinearRegression.scala) [[Usage]](src/test/scala/algorithm/regression/MultipleLinearRegressionTest.scala)\n\n- [x] Multivariate Linear Regression - GD [[Code]](src/main/scala/algorithm/regression/MultivariateLinearRegression.scala) [[Usage]](src/test/scala/algorithm/regression/MultivariateLinearRegressionTest.scala)\n\n- [x] Stochastic Gradient Decent [[Code]](src/main/scala/algorithm/regression/MultivariateLinearRegression.scala) [[Usage]](src/test/scala/algorithm/regression/MultivariateLinearRegressionTest.scala)\n\n- [x] Regression Tree [[Code]](src/main/scala/algorithm/regression/RegressionTree.scala) [[Usage]](src/test/scala/algorithm/regression/RegressionTreeTest.scala)\n\n### Clustering :\n\n- [x] Hierarchical [[Code]](src/main/scala/algorithm/clustering/Hierarchical.scala) [[Usage]](src/test/scala/algorithm/clustering/HierarchicalTest.scala)\n\n- [x] DBSCAN [[Code]](src/main/scala/algorithm/clustering/DBSCAN.scala) [[Usage]](src/test/scala/algorithm/clustering/DBSCANTest.scala)\n\n- [x] HDBSCAN [[Code]](src/main/scala/algorithm/clustering/HDBSCAN.scala) [[Usage]](src/test/scala/algorithm/clustering/HDBSCANTest.scala)\n\n- [x] BIRCH [[Code]](src/main/scala/algorithm/clustering/BIRCH.scala) [[Usage]](src/test/scala/algorithm/clustering/BIRCHTest.scala)\n\n- [x] K-Means [[Code]](src/main/scala/algorithm/clustering/KMean.scala) [[Usage]](src/test/scala/algorithm/clustering/KMeanTest.scala)\n\n- [x] EM Cluster [[Code]](src/main/scala/algorithm/clustering/EMCluster.scala) [[Usage]](src/test/scala/algorithm/clustering/EMClusterTest.scala)\n\n- [x] Density Peak Cluster [[Code]](src/main/scala/algorithm/clustering/DensityPeakCluster.scala) [[Usage]](src/test/scala/algorithm/clustering/DensityPeakClusterTest.scala)\n\n### Neural Net \u0026 Deep Learning :\n\n- [x] Neural Network (NN) [[Code]](src/main/scala/algorithm/deeplearning/NeuralNetwork.scala) [[Usage]](src/test/scala/algorithm/deeplearning/NeuralNetworkTest.scala)\n\n- [x] Restricted Boltzmann Machine (RBM) [[Code]](src/main/scala/algorithm/deeplearning/RBM.scala) [[Usage]](src/test/scala/algorithm/deeplearning/RBMTest.scala)\n\n- [x] Deep Belief Network (DBN) [[Code]](src/main/scala/algorithm/deeplearning/DBN.scala) [[Usage]](src/test/scala/algorithm/deeplearning/DBNTest.scala)\n\n- [x] Long Short-Term Memory (LSTM) [[Code]](src/main/scala/algorithm/deeplearning/LSTM.scala) [[Usage]](src/test/scala/algorithm/deeplearning/LSTMTest.scala)\n\n- [x] Neural Turing Machine - Memory Searching Cognition [[Code (in another Repo)]](https://github.com/Wei-1/Scala-NTM)\n\n### Optimization :\n\n- [x] Gene Algorithm (GA) [[Code]](src/main/scala/algorithm/optimization/GeneAlgorithm.scala) [[Usage]](src/test/scala/algorithm/optimization/GeneAlgorithmTest.scala)\n\n- [x] Minimax [[Code]](src/main/scala/algorithm/optimization/Minimax.scala) [[Usage]](src/test/scala/algorithm/optimization/Minimax.scala)\n\n- [x] Monte Carlo Tree Search (MCTS) [[Code]](src/main/scala/algorithm/optimization/MCTS.scala) [[Usage]](src/test/scala/algorithm/optimization/MCTSTest.scala)\n\n- [x] Epsilon Greedy Search [[Code]](src/main/scala/algorithm/optimization/EpsilonGreedy.scala) [[Usage]](src/test/scala/algorithm/optimization/EpsilonGreedyTest.scala)\n\n- [x] Upper Confidence Bound [[Code]](src/main/scala/algorithm/optimization/UpperConfidenceBound.scala) [[Usage]](src/test/scala/algorithm/optimization/UpperConfidenceBoundTest.scala)\n\n### Reinforcement Learning :\n\n- [x] Naive Feedback [[Code]](src/main/scala/algorithm/reinforcement/NaiveFeedback.scala) [[Usage]](src/test/scala/algorithm/reinforcement/NaiveFeedbackTest.scala)\n\n- [x] Q-Learning [[Code]](src/main/scala/algorithm/reinforcement/QLearning.scala) [[Usage]](src/test/scala/algorithm/reinforcement/QLearningTest.scala)\n\n- [x] Q-Neural Learning [[Code]](src/main/scala/algorithm/reinforcement/QNeuralLearning.scala) [[Usage]](src/test/scala/algorithm/reinforcement/QNeuralLearningTest.scala)\n\n- [x] Deep Q-Network (DQN) [[Code]](src/main/scala/algorithm/reinforcement/DQN.scala) [[Usage]](src/test/scala/algorithm/reinforcement/DQNTest.scala)\n\n- [x] Dueling DQN (D-DQN) [[Code]](src/main/scala/algorithm/reinforcement/DDQN.scala) [[Usage]](src/test/scala/algorithm/reinforcement/DDQNTest.scala)\n\n- [x] Asynchronous Advantage Actor-Critic (A3C) [[Code]](src/main/scala/algorithm/reinforcement/A3C.scala) [[Usage]](src/test/scala/algorithm/reinforcement/A3CTest.scala)\n\n- [x] Prioritized Experience Replay (PER-DQN) [[Code]](src/main/scala/algorithm/reinforcement/PER.scala) [[Usage]](src/test/scala/algorithm/reinforcement/PERTest.scala)\n\n### Feature Analysis :\n\n- [x] Student-T Test [[Code]](src/main/scala/algorithm/analysis/StudentT.scala) [[Usage]](src/test/scala/algorithm/analysis/StudentTTest.scala)\n\n- [x] ANOVA [[Code]](src/main/scala/algorithm/analysis/ANOVA.scala) [[Usage]](src/test/scala/algorithm/analysis/ANOVATest.scala)\n\n- [x] Linear Discriminant Analysis [[Code]](src/main/scala/algorithm/analysis/LDA.scala) [[Usage]](src/test/scala/algorithm/analysis/LDATest.scala)\n\n- [x] Quadratic Discriminant Analysis [[Code]](src/main/scala/algorithm/analysis/QDA.scala) [[Usage]](src/test/scala/algorithm/analysis/QDATest.scala)\n\n### Feature Transformation :\n\n- [x] One Hot Encoding [[Code]](src/main/scala/algorithm/transformation/OneHot.scala) [[Usage]](src/test/scala/algorithm/transformation/OneHotTest.scala)\n\n### Abnormal Detection :\n\n- [x] Isolation Tree [[Code]](src/main/scala/algorithm/abnormal/IsolationTree.scala) [[Usage]](src/test/scala/algorithm/abnormal/IsolationTreeTest.scala)\n\n- [x] Isolation Forest [[Code]](src/main/scala/algorithm/abnormal/IsolationForest.scala) [[Usage]](src/test/scala/algorithm/abnormal/IsolationForestTest.scala)\n\n- [x] Random Cut Tree [[Code]](src/main/scala/algorithm/abnormal/RandomCutTree.scala) [[Usage]](src/test/scala/algorithm/abnormal/RandomCutTreeTest.scala)\n\n- [x] Random Cut Forest [[Code]](src/main/scala/algorithm/abnormal/RandomCutForest.scala) [[Usage]](src/test/scala/algorithm/abnormal/RandomCutForestTest.scala)\n\n\n## TODO\n\n- [ ] Rainbow - Deep Reinforcement Learning\n\n- [ ] Alpha-go Zero (MCTS-NN) - Deep Reinforcement Learning\n\n- [ ] Neural Architect Search (NAS) - Neural Network \u0026 Deep Learning\n\n\n## Installation Process\n\n1. [Install sbt](https://www.scala-sbt.org/download.html)\n\n2. Clone this project\n\n\n## Test\n\n    sbt test\n\n\n## Build Jar\n\n    sbt assembly\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwei-1%2Fscala-machine-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwei-1%2Fscala-machine-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwei-1%2Fscala-machine-learning/lists"}