Supervised learning uses a training set to teach models to yield the desired output. This training dataset includes inputs and correct outputs, which allow the model to learn over time. The algorithm measures its accuracy through the loss function, adjusting until the error has been sufficiently minimized. It is a process of providing input data as well as correct output data to the machine learning model. The aim of a supervised learning algorithm is to find a mapping function to map the input variable(x) with the output variable(y).
Support Vector Machine
Libraries that can be used for SVM are:
Multiple-Instance Support Vector Machines
Python 198 Version:Current License: Permissive (BSD-3-Clause)
Efficient training of Support Vector Machines in Java
Java 121 Version:Current License: Others (Non-SPDX)
An Architecture Combining Convolutional Neural Network (CNN) and Linear Support Vector Machine (SVM) for Image Classification
Python 284 Version:v0.1.0-alpha License: Permissive (Apache-2.0)
Other Classification Techniques are :
Libraries are listed for each classification technique.
Naive Bayes is a probabilistic classifier, which means it predicts on the basis of the probability of an object. It is mainly used in text classification that includes a high-dimensional training dataset.
A java classifier based on the naive Bayes approach complete with Maven support and a runnable example.
Java 292 Version:1.0.7 License: No License
A robust, full-featured Ruby implementation of Naive Bayes
Ruby 147 Version:Current License: Permissive (MIT)
K-NN algorithm assumes the similarity between the new data and available data and put the new data into the category that is most similar to the available categories. K-NN algorithm stores all the available data and classifies a new data point based on the similarity.
A fast K Nearest Neighbor library for low-dimensional spaces
C++ 383 Version:1.0.7 License: Permissive (BSD-3-Clause)
k-Nearest Neighbors algorithm on Spark
Scala 208 Version:Current License: Permissive (Apache-2.0)
Random Forest is a classifier that contains a number of decision trees on various subsets of the given dataset and takes the average to improve the predictive accuracy of that dataset.
ThunderGBM: Fast GBDTs and Random Forests on GPUs
C++ 663 Version:0.3.2 License: Permissive (Apache-2.0)
Decision Tree is a tree-structured classifier, where internal nodes represent the features of a dataset, branches represent the decision rules and each leaf node represents the outcome.
A fast, scalable, high performance Gradient Boosting on Decision Trees library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU.
Python 7169 Version:v1.2 License: Permissive (Apache-2.0)
A python library for decision tree visualization and model interpretation.
Jupyter Notebook 2537 Version:2.2.1 License: Permissive (MIT)
Ensembles of decision trees in go/golang.
Go 724 Version:Current License: Others (Non-SPDX)