Supervised Learning
In supervised learning, we are given both inputs and outputs. The input given will be more than one variable, also known as a vector.
It can be used for regression, predicting numerical values for outputs for any new data points we input or it can be used for classification,e.g., identifying the breed of dog by training our algorithm.
K Nearest Neighbors
It is a supervised learning technique where distance is measured between the new data point and already-classified data and thus concludes to which class our new data point belongs. It can also be used for regression.
Naive Bayes Classifier
This technique is based on Bayes Theorem to calculate the probability of new data points being in different classes. The “naive” refers to the assumptions made which are rarely true in practice, however, can work wonders for complex problems. Naive Bayes has been denigrated as “the punching bag
of classifiers” (Lewis, 1998).
Regression Methods
This technique tries to explain the numerical dependent variable in terms of independent variables,e.g., linear regression.
Support Vector Machines
This technique divides data into classes according to which side of a hyperplane in feature space each data point lies.
Unsupervised Learning
Here, the data is not labeled, i.e., we only have inputs and not outputs. The algorithm finds relationships or patterns for us.
K means clustering
As part of an unsupervised learning technique, we have lots of data in vector form, and we measure the distance of each data point from K centroids. Then we find the optimal position for these centroids that gives us the best division into the K classes.
Neural Networks
A neural network can be used for either supervised or unsupervised learning. It is a type of machine learning which mimics what happens in the brain. It has an input vector that is transformed, typically by multiplying by a matrix. This linear result is then put into a non-linear activation function, and this is one layer. Like this, we have multiple layers. The parameters in the neural network are found by training.
Reinforcement Learning
This algorithm learns to do something. It is rewarded for successful behavior and punished for unsuccessful one.