This is a list of machine learning models and algorithms, with links to library implementations.

## Contents

- AdaBoost
- Affinity Propagation
- Apriori
- Averaged One-Dependence Estimators (AODE)
- Averaged One-Dependence Estimators (AODE) with Subsumption Resolution
- Bagging
- Bayesian Logistic Regression
- Bayesian Network (BN)
- Bernoulli Naive Bayes
- C4.5 and C5.0
- Chi-squared Automatic Interaction Detection (CHAID)
- Classification And Regression Tree (CART)
- Conditional Decision Trees
- DBSCAN
- Decision Stump
- Discriminative Multinomial Naive Bayes
- Eclat
- Elastic Net
- Expectation Maximisation (EM)
- Feedforward Network
- Gaussian Naive Bayes
- Gaussian Processes
- Gradient Boosted Trees (GBT)
- Hidden Naive Bayes
- Hierarchical Clustering
- Isotonic Regression
- Iterative Dichotomiser 3 (ID3)
- K-Means
- K-Medians
- K-Nearest Neighbour
- Kernel Perceptron
- Learning Vector Quantization (LVQ)
- Least Absolute Shrinkage And Selection Operator (LASSO)
- Least Median of Squares Regression
- Least-Angle Regression (LARS)
- Locally Weighted Learning (LWL)
- Logistic Regression
- M5
- Mean Shift
- Multilayer Perceptron
- Multinomial Naive Bayes
- Naive Bayes
- Ordinary Least Squares
- Perceptron
- Polynomial Regression
- Radial Basis Function (RBF) Networks
- Random Forest
- Recurrent Neural Network
- Ridge Regression
- Self-Organizing Map (SOM), Kohonnen Network
- Spectral Clustering
- Support Vector Machine (SVM)
- Voted Perceptron
- Weightily Averaged One-Dependence Estimators

## AdaBoost

**OpenCV:**http://docs.opencv.org/2.4/modules/ml/doc/boosting.html**R:**https://cran.r-project.org/web/packages/adabag/index.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/meta/AdaBoostM1.html**scikit-learn:**http://scikit-learn.org/dev/modules/ensemble.html#adaboost

- Boosting
- Ensemble

## Affinity Propagation

**R:**https://cran.r-project.org/web/packages/apcluster/vignettes/apcluster.pdf**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.cluster.AffinityPropagation.html

- Clustering
- Unsupervised

## Apriori

**R:**https://cran.r-project.org/web/packages/arules/arules.pdf**Weka:**http://weka.sourceforge.net/doc.stable/weka/associations/Apriori.html

- Association rules learning

## Averaged One-Dependence Estimators (AODE)

- Bayesian
- Classification

## Averaged One-Dependence Estimators (AODE) with Subsumption Resolution

- Bayesian
- Classification

## Bagging

**R:**https://cran.r-project.org/web/packages/ipred/ipred.pdf**R:**https://cran.r-project.org/web/packages/adabag/adabag.pdf**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/meta/Bagging.html**scikit-learn:**http://scikit-learn.org/dev/modules/ensemble.html#bagging

- Averaging
- Ensemble

## Bayesian Logistic Regression

- Bayesian
- Regression

## Bayesian Network (BN)

**Dlib:**http://dlib.net/bayes.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/bayes/BayesNet.html

- Bayesian
- Classification

## Bernoulli Naive Bayes

- Bayesian
- Classification

## C4.5 and C5.0

- Classification
- Decision tree
- Regression
- Supervised

## Chi-squared Automatic Interaction Detection (CHAID)

**R:**http://r-forge.r-project.org/projects/chaid/**R:**http://www.inside-r.org/packages/cran/party/docs/ctree

- Classification
- Decision tree
- Regression
- Supervised

## Classification And Regression Tree (CART)

**OpenCV:**http://docs.opencv.org/2.4/modules/ml/doc/decision_trees.html**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/cart.html**Weka:**http://weka.sourceforge.net/doc.packages/simpleCART/weka/classifiers/trees/SimpleCart.html

- Classification
- Decision tree
- Regression
- Supervised

## Conditional Decision Trees

**R:**http://www.inside-r.org/packages/cran/party/docs/ctree**R:**http://www.r-bloggers.com/package-party-conditional-inference-trees/

- Classification
- Decision tree
- Regression
- Supervised

## DBSCAN

**R:**https://cran.r-project.org/web/packages/dbscan/index.html**Weka:**http://weka.sourceforge.net/doc.packages/optics_dbScan/weka/clusterers/DBScan.html**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.cluster.DBSCAN.html

- Clustering

## Decision Stump

**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/trees/DecisionStump.html**mlpack:**http://www.mlpack.org/man/decision_stump.html**scikit-learn:**http://scikit-learn.org/stable/auto_examples/ensemble/plot_adaboost_twoclass.html

- Classification
- Decision tree
- Regression
- Supervised

## Discriminative Multinomial Naive Bayes

- Bayesian
- Classification

## Eclat

**R:**https://cran.r-project.org/web/packages/arules/arules.pdf**Weka:**http://bioweka.sourceforge.net/docs/api/bioweka/classifiers/sequence/eclat/Eclat.html

- Association rules learning

## Elastic Net

**R:**https://cran.r-project.org/web/packages/pensim/index.html**mlpack:**http://www.mlpack.org/doxygen.php?doc=classmlpack_1_1regression_1_1LARS.html**scikit-learn:**http://scikit-learn.org/stable/modules/linear_model.html#elastic-net

- Regression
- Regularisation

## Expectation Maximisation (EM)

**OpenCV:**http://docs.opencv.org/2.4/modules/ml/doc/expectation_maximization.html**R:**https://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Clustering/Expectation_Maximization_%28EM%29

- Clustering
- Unsupervised

## Feedforward Network

**OpenCV:**http://docs.opencv.org/modules/ml/doc/neural_networks.html**Weka:**http://wekaclassalgos.sourceforge.net/

- Neural network

## Gaussian Naive Bayes

- Bayesian
- Classification

## Gaussian Processes

**R:**https://cran.r-project.org/web/packages/GPfit/GPfit.pdf**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/functions/GaussianProcesses.html

- Regression

## Gradient Boosted Trees (GBT)

**OpenCV:**http://docs.opencv.org/2.4/modules/ml/doc/gradient_boosted_trees.html**scikit-learn:**http://scikit-learn.org/dev/modules/ensemble.html#gradient-boosting

- Boosting
- Ensemble

## Hidden Naive Bayes

- Bayesian
- Classification

## Hierarchical Clustering

**R:**https://stat.ethz.ch/R-manual/R-devel/library/stats/html/hclust.html**scikit-learn:**http://scikit-learn.org/stable/modules/clustering.html#hierarchical-clustering

- Clustering
- Unsupervised

## Isotonic Regression

**R:**https://stat.ethz.ch/R-manual/R-devel/library/stats/html/isoreg.html**Weka:**http://weka.sourceforge.net/doc.stable/weka/classifiers/functions/IsotonicRegression.html**scikit-learn:**http://scikit-learn.org/stable/auto_examples/plot_isotonic_regression.html

- Regression

## Iterative Dichotomiser 3 (ID3)

- Classification
- Decision tree
- Regression
- Supervised

## K-Means

**Dlib:**http://dlib.net/ml.html#find_clusters_using_kmeans**OpenCV:**http://docs.opencv.org/modules/core/doc/clustering.html#kmeans**R:**https://stat.ethz.ch/R-manual/R-devel/library/stats/html/kmeans.html**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/kmeans.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/clusterers/SimpleKMeans.html**mlpack:**http://www.mlpack.org/doxygen.php?doc=kmtutorial.html**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html

- Clustering
- Unsupervised

## K-Medians

- Clustering
- Unsupervised

## K-Nearest Neighbour

**OpenCV:**http://docs.opencv.org/modules/ml/doc/k_nearest_neighbors.html**R:**https://stat.ethz.ch/R-manual/R-devel/library/class/html/knn.html**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/nearestNeighbor.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/lazy/IBk.html**mlpack:**http://www.mlpack.org/docs/mlpack-1.0.12/doxygen.php?doc=nstutorial.html**scikit-learn:**http://scikit-learn.org/stable/modules/neighbors.html

- Classification
- Instance based

## Kernel Perceptron

## Learning Vector Quantization (LVQ)

**R:**https://stat.ethz.ch/R-manual/R-devel/library/class/html/00Index.html**Weka:**http://wekaclassalgos.sourceforge.net/**Weka:**http://sourceforge.net/projects/wekann/files/LVQ/

- Instance based
- Neural network
- Unsupervised

## Least Absolute Shrinkage And Selection Operator (LASSO)

**R:**http://www.r-bloggers.com/twelve-days-2013-lasso-regression/**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/LASSO.html**mlpack:**http://www.mlpack.org/doxygen.php?doc=classmlpack_1_1regression_1_1LARS.html**scikit-learn:**http://scikit-learn.org/stable/modules/linear_model.html#lasso

- Regression
- Regularisation

## Least Median of Squares Regression

**Weka:**http://weka.sourceforge.net/doc.packages/leastMedSquared/weka/classifiers/functions/LeastMedSq.html

- Regression

## Least-Angle Regression (LARS)

- Regression
- Regularisation

## Locally Weighted Learning (LWL)

- Instance based
- Regression

## Logistic Regression

**R:**http://www.ats.ucla.edu/stat/r/dae/logit.htm**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html

- Classification

## M5

- Classification
- Decision tree
- Regression
- Supervised

## Mean Shift

**R:**https://cran.r-project.org/web/packages/LPCM/LPCM.pdf**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.cluster.MeanShift.html

- Clustering
- Unsupervised

## Multilayer Perceptron

**Dlib:**http://dlib.net/ml.html#mlp**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/functions/MultilayerPerceptron.html

- Neural network

## Multinomial Naive Bayes

**R:**http://www.bnlearn.com/**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/bayes/NaiveBayesMultinomial.html**scikit-learn:**http://scikit-learn.org/stable/modules/naive_bayes.html#multinomial-naive-bayes

- Bayesian
- Classification

## Naive Bayes

**OpenCV:**http://docs.opencv.org/modules/ml/doc/normal_bayes_classifier.html**R:**https://cran.r-project.org/web/packages/e1071/index.html**R:**http://www.inside-r.org/packages/cran/e1071/docs/naiveBayes**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/bayes/NaiveBayes.html**mlpack:**http://www.mlpack.org/doxygen.php?doc=classmlpack_1_1naive__bayes_1_1NaiveBayesClassifier.html**scikit-learn:**http://scikit-learn.org/stable/modules/naive_bayes.html

- Bayesian
- Classification

## Ordinary Least Squares

**R:**http://www.cyclismo.org/tutorial/R/linearLeastSquares.html**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/linearRegression.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/functions/LinearRegression.html**mlpack:**http://www.mlpack.org/docs/mlpack-1.0.12/doxygen.php?doc=lrtutorial.html

- Regression

## Perceptron

**Weka:**http://www.cs.utsa.edu/~bylander/cs6243/Perceptron.java**mlpack:**http://www.mlpack.org/doxygen.php?doc=classmlpack_1_1perceptron_1_1Perceptron.html

- Neural network

## Polynomial Regression

**scikit-learn:**http://scikit-learn.org/stable/auto_examples/linear_model/plot_polynomial_interpolation.html

- Regression

## Radial Basis Function (RBF) Networks

**Dlib:**http://dlib.net/ml.html#rbf_network_trainer**Weka:**http://weka.sourceforge.net/packageMetaData/RBFNetwork/index.html**scikit-learn:**http://scikit-learn.org/stable/auto_examples/svm/plot_rbf_parameters.html

- Instance based
- Neural network
- Regression

## Random Forest

**OpenCV:**http://docs.opencv.org/2.4/modules/ml/doc/random_trees.html**R:**https://cran.r-project.org/web/packages/randomForest/index.html**Weka:**http://weka.sourceforge.net/doc.dev/weka/classifiers/trees/RandomForest.html**scikit-learn:**http://scikit-learn.org/dev/modules/ensemble.html#forest

- Averaging
- Ensemble

## Recurrent Neural Network

- Neural network

## Ridge Regression

**R:**https://cran.r-project.org/web/packages/pensim/index.html**mlpack:**http://www.mlpack.org/doxygen.php?doc=lrtutorial.html**scikit-learn:**http://scikit-learn.org/stable/modules/linear_model.html#ridge-regression

- Regression
- Regularisation

## Self-Organizing Map (SOM), Kohonnen Network

**R:**https://cran.r-project.org/web/packages/kohonen/kohonen.pdf**Weka:**http://jsalatas.ictpro.gr/weka/

- Instance based
- Neural network
- Unsupervised

## Spectral Clustering

**Dlib:**http://dlib.net/ml.html#spectral_cluster**R:**http://artax.karlin.mff.cuni.cz/r-help/library/kernlab/html/specc.html**Weka:**http://www.luigidragone.com/software/spectral-clusterer-for-weka/**scikit-learn:**http://scikit-learn.org/stable/modules/generated/sklearn.cluster.SpectralClustering.html

- Clustering
- Unsupervised

## Support Vector Machine (SVM)

**Dlib:**http://dlib.net/ml.html**LIBSVM:**http://www.csie.ntu.edu.tw/~cjlin/libsvm/**OpenCV:**http://docs.opencv.org/modules/ml/doc/support_vector_machines.html**R:**http://www.inside-r.org/node/57517**Shark:**http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/algorithms/svm.html**TinySVM:**http://chasen.org/~taku/software/TinySVM/**Weka:**http://weka.wikispaces.com/LibSVM**scikit-learn:**http://scikit-learn.org/stable/modules/svm.html

- Classification
- Instance based
- Kernel machine
- Regression
- Supervised

## Voted Perceptron

- Neural network

## Weightily Averaged One-Dependence Estimators

- Bayesian
- Classification