# Algorithms Every Machine Learning Expert Should Know

This post is all about the most popular machine learning algorithms. Before we start regardless of field, it advisable to list all available tools and techniques in that field. So, for machine learning here I am going to present a brief review of available machine learning algorithms.  Services such as Algorithmia, the largest marketplace for algorithms In the world, provides service with around 800 algorithms and it feels overwhelming when you realize that you don’t even ever heard about 90% of them ?!

So basically, the machine could be divided into three categories:

#### 1. Supervised Learning

Supervised learning needs seed information, for example, classes in case of the Iris flower data set we have three class Iris setosa, Iris virginica and Iris versicolorA model is set up through a preparation procedure in which it is required to make forecasts and is rectified when those expectations aren’t right. The preparation procedure proceeds until the point when the model accomplishes the coveted dimension of precision on the preparation information. This type of algorithms primarily focuses on problems based on classification and regression. The examples include Logistic Regression and the Back Propagation Neural Network.

#### 2. Unsupervised Learning

Input data is not needed to be labeled. The model is prepared by intuiting structures of data present in the input data by applying mathematical results. The most widely recognized unsupervised learning strategy is bunch examination, which is utilized for exploratory information investigation to discover shrouded examples or gathering in information. Example problems are clustering, dimensionality reduction, and association rule learning.

#### 3. Semi-Supervised Learning

Semi-Supervised Learning lies in between of both the supervised and unsupervised learning. The Input data consists the mixture of labeled and unlabeled data. There is a coveted expectation issue yet the model must take in the structures to compose the information and additionally make forecasts.

Another way by which the machine learning algorithms could be organized is as follows:

#### Memory-based learning

The memory-based learning is a family of learning algorithms that, compare new problem instances with instances seen in training, instead of performing explicit generalization, which has been put away in memory.

 k-nearest neighbor algorithm kernel machines RBF networks

#### Decision-based learning

Decision-based learning methods construct a tree model of decisions based on the actual values of attributes in the data.

 C4.5 and C5.0 (different versions of a powerful approach) Chi-squared Automatic Interaction Detection (CHAID) Classification and Regression Tree (CART) Conditional Decision Trees Decision Stump M5

#### Regression-based learning

The regression is a set of statistical method for estimating the relationships among one or more variables. It includes many mathematical techniques for modeling and analyzing several variables.

 Elastic Net Least Absolute Shrinkage and Selection Operator (LASSO) Least-Angle Regression (LARS) Linear Regression Locally Estimated Scatterplot Smoothing (LOESS) Logistic Regression Multivariate Adaptive Regression Splines (MARS) Ordinary Least Squares Regression (OLSR) Ridge Regression Stepwise Regression

#### Rule-based Learning

In this type of learning, first of all, requires to extract rules which could best explain the relationship among variables.

 Apriori algorithm Eclat algorithm

#### Artificial Neural Network based learning

Artificial Neural Network (ANN) based learning are methods which involve tons of matrix multiplications which kind easy to implement on CUDA based graphics cards. Their design is inspired by the processing unit of human brains the neurons. The most popular machine learning technique, Deep learning (highlighted in blue) also comes under this category.

 Back-Propagation Hopfield Network Perceptron Radial Basis Function Network (RBFN) Convolutional Neural Network (CNN) Deep Belief Networks (DBN) Deep Boltzmann Machine (DBM) Stacked Auto-Encoders

#### Clustering based learning

Clustering based methods are a classical method which is being used in bioinformatics studies extensively. This is the type of unsupervised learning which do not require labeled data.

 k-nearest neighbor algorithm kernel machines RBF networks

The above-mentioned categories learning approaches and list of algorithms is not extensive but includes popular algorithms. In my flowing blogs, we will see the application of these algorithms with examples.