Machine Learning Algorithms covered in this guide are

Multiple linear regression (MLR), also known simply as multiple regression, is a machine learning algorithm that uses several explanatory variables to predict the outcome of a response variable. In reality, multiple regression is the extension of ordinary least-squares (OLS) regression because it includes more than one explanatory variable.

**👉 Logistic Regression**

Logistic regression is part of a family of machine learning algorithms called classification algorithms. It is the go-to method for binary classification problems. The algorithm is used to predict the probability of occurrence of an event by fitting data to a logit function. Hence, it is also known as logit regression. Customer churn, spam email, website or ad click predictions are some examples of the areas where logistic regression offers a powerful solution.

**👉 Decision Trees**

A decision tree is a flow-chart-like tree structure that uses a branching method to illustrate every possible outcome of a decision. Each node within the tree represents a test on a specific variable – and each branch is the outcome of that test. Some of the most popular decision trees algorithms are Classification and Regression Tree (CART), Iterative Dichotomiser 3 (ID3), C4.5 and C5.0, Chi-squared Automatic Interaction Detection (CHAID), Decision Stump, and more.

**👉 Random Forest**

The random forest algorithm establishes the outcome based on the predictions of the decision trees. It predicts by taking the average or mean of the output from various trees. Increasing the number of trees increases the precision of the outcome. A random forest eradicates the limitations of a decision tree algorithm. It reduces the overfitting of datasets and increases precision.

**👉 Support Vector Machine**

A Support Vector Machine (SVM) is a discriminative classifier formally defined by a separating hyperplane. In other words, given labeled training data (supervised learning), the algorithm outputs an optimal hyperplane which categorizes new examples. In two dimensional space this hyperplane is a line dividing a plane in two parts where in each class lay in either side.

**👉 K Nearest Neighbors**

K-nearest neighbors (kNN) is a supervised learning algorithm that can be used to solve both classification and regression tasks. The main idea behind this algorithm is that the value or class of a data point is determined by the data points around it. kNN classifier determines the class of a data point by the majority voting principle. kNN becomes very slow as the number of data points increases because the model needs to store all data points. Thus, it is also not memory efficient. Another downside of kNN is that it is sensitive to outliers.

**Article**

**👉 K-Means Clustering**

K Means Clustering is one of the most popular clustering algorithms and it’s the first algorithm practitioners apply when solving clustering tasks to get an idea of the structure of the dataset. It’s an algorithm that, given a dataset, will identify which data points belong to each one of the k clusters. It takes your data and learns how it can be grouped. Through a series of iterations, the algorithm creates groups of data points referred to as clusters that have similar variance and that minimize a specific cost function: the within-cluster sum of squares.

**👉 Hierarchical Clustering**

Hierarchical clustering means creating a tree of clusters by iteratively grouping or separating data points. There are two types of hierarchical clustering named Agglomerative clustering and Divisive clustering.

Agglomerative clustering is the bottom-up approach. It merges the two points that are the most similar until all points have been merged into a single cluster. Divisive clustering is the top-down approach. It starts with all points as one cluster and splits the least similar clusters at each step until only single data points remain. One of the advantages of hierarchical clustering is that we do not have to specify the number of clusters (but we can).

**👉 Neural Networks**

Neural networks are a set of algorithms inspired by the functioning of the human brain. Generally, when you open your eyes, what you see is called data and is processed by the Neurons(data processing cells) in your brain, and recognize what is around you. That’s how similar the Neural Networks works. They take a large set of data, process the data(draws out the patterns from data), and outputs what it is. With various variants like CNN (Convolutional Neural Networks), RNN (Recurrent Neural Networks), Autoencoders, Deep Learning, etc. Neural networks are slowly becoming for data scientists or machine learning practitioners what linear regression was one for statisticians.

**link**

– Neural Networks In Python

A typical question asked by beginners, when facing various types of machine learning algorithms, is “which algorithm is the best and which one should I use?” The answer to the question varies depending on multiple factors, like (1) The size, quality, and nature of data; (2) The available computational time; (3) The urgency of the task; and (4) What you want to do with the data.

**Insane**App. A special thanks to

**Avik Jain**for creating Infographics,

**Allison George**for creating an interactive guide on neural networks from scratch, and all scientists, researchers, etc for open sourcing their codes on GitHub.