Machine Learning is a part of Artificial Intelligence. Its algorithms can self-learn from experience. It builds some patterns based on historical data by using statistical techniques. **In 1959, Arthur Samuel defined Machine Learning as a “Field of study that gives computers the ability to learn without being explicitly programmed****”.**

### There are three types of Machine Learning algorithms.

#### 1. Supervised Learning

#### 2. Unsupervised Learning

#### 3. Reinforcement Learning

**1. What is Supervised Learning?**

Supervised learning is a prediction of labeled data i.e. the computer learns from past data where both independent and dependent data are present. It acts as a teacher to the machine. The variable which we predict is called as Dependent variable or Target variable and the variables which we use for prediction are called as Predictors or independent variables.

**Supervised Learning is classified into 2 categories **

- Regression Models
- Classification Models

**Regression Model**

It will build a relation between dependent variable and independent variables. It is used for Continuous data.

**Ex: **Suppose we want to predict the cost of a house. The cost of a house is dependent on the parameters like number of bedrooms, bathrooms and the area of the room. The cost of the house increases with increase in our requirements. Consider the parameters on X-axis and Cost of house on Y-axis. The relation will be linear.

**List of Regression Algorithms are:**

- Linear Regression
- Polynomial Regression
- Stepwise Regression
- Ridge Regression
- Lasso Regression
- Elastic Net Regression
- Random Forest

**Classification Models**

Classification Models are used for predicting categorical data like “Yes” or “No”, 0 or 1 or “Small”, “Medium” and “Large” etc. It classifies new data and places this data in the category to which it belongs to, based on historical data.

**Ex: ** For example, if we want to predict admission of students into a college, then we must train our model with some historical data which consists of the details of students who got admission into the college and who failed to get an admission with parameters like Grade, Rank and Score etc.

List of Classification Algorithms are:

- Logistic Regression
- Random Forest
- Decision Trees
- SVM
- Naive Byes Algorithm
- K -nearest Algorithm etc.

**2. What is Unsupervised Learning?**

Unsupervised Learning is a class of Machine Learning techniques used to find patterns in data. The data given to unsupervised algorithms are not labeled, which means only the input variables(X) are given with no corresponding output variables. In unsupervised learning, the algorithms are left to themselves to discover interesting structures in the data.

Some applications of unsupervised machine learning techniques include:

**Clustering **allows you to automatically split the dataset into groups according to similarity. Often, however, cluster analysis overestimates the similarity between groups and doesn’t treat data points as individuals. For this reason, cluster analysis is a poor choice for applications like customer segmentation and targeting.
**Anomaly detection **can automatically discover unusual data points in your dataset. This is useful in pinpointing fraudulent transactions, discovering faulty pieces of hardware, or identifying an outlier caused by a human error during data entry.
**Association mining **identifies sets of items that frequently occur together in your dataset. Retailers often use it for basket analysis, because it allows analysts to discover goods often purchased at the same time and develop more effective marketing and merchandising strategies.
**Latent variable** models are commonly used for data preprocessing, such as reducing the number of features in a dataset (dimensionality reduction) or decomposing the dataset into multiple components.

List of Unsupervised algorithms used for clustering are:

- K mean clustering
- Hierarchical clustering
- DBSCAN

It is mainly used in the fields of Marketing and biology.** **

**3. Reinforcement Learning**** **

It allows machines and software agents to automatically determine the ideal behavior within a specific context, in order to maximize its performance. Simple reward feedback is required for the agent to learn its behavior; this is known as the reinforcement signal.

It could be a self-driving car or a program playing chess, interacting with its environment and receiving a reward state depending on its performance, such as driving to destination safely or winning a game. Conversely, the agent receives a penalty for performing incorrectly, such as going off the road or being checkmated.

The advantage of this approach is that it allows an AI program to learn without a programmer spelling out how an agent should perform the task.