# Introduction to machine learning and deep learning.

--

Signup for my live computer vision course: https://bit.ly/cv_coursem

This is the first part of deep learning workshop. The link to lessons will be given below as soon as I update them. Github link of this repo is here. First two parts will cover the basics of machine learning and the background. Later We will jump to code and maths.

- Introduction to machine learning and deep learning. <— You are here
- Introduction to neural networks.
- Introduction to python.
- Building our first neural network in keras.
- A comprehensive guide to CNN.
- Image classification with CNN.

# What is machine learning?

Machine learning is a field of study which allows machines(computers) to learn from data or experience and make a prediction based on the experience.

It enables the computers or the machines to make data-driven decisions rather than being explicitly programmed for carrying out a certain task. These programs or algorithms are designed in a way that they learn and improve over time when are exposed to new data.

# Types of machine learning

## Machine learning can be broadly divided into 3 subcategories

# 1. Supervised learning -

In supervised learning, we have a labeled data containing input X and a label Y. In supervised learning, our task is to find the mapping between the input variable(X) called the independent variable and output variable(Y) called the dependent variable. Supervised learning can further be divided into two types of tasks:-

- Regression — Regression problem is when the output variable is continuous and real value. For example price, weight, etc.
- Classification — Classification is a problem when the output variable is a category, such as “red” or “blue” or “disease” or “no disease”.

# 2. Unsupervised learning -

Unsupervised learning is where you only have input data (X) and no corresponding output variables. The goal of unsupervised learning is to model the underlying structure or distribution in the data in order to learn more about the data. Unsupervised learning can further be divided into two types of tasks:-

- Clustering: A clustering problem is where you want to discover the inherent groupings in the data, such as grouping customers by purchasing behavior.
- Association: An association rule learning problem is where you want to discover rules that describe large portions of your data, such as people that buy X also tend to buy Y.

# 3. Reinforcement learning -

Reinforcement learning, in the context of artificial intelligence, is a type of dynamic programming that trains algorithms using a system of reward and punishment. A reinforcement learning algorithm, or agent, learns by interacting with its environment. The agent receives rewards by performing correctly and penalties for performing incorrectly. The agent learns without intervention from a human by maximizing its reward and minimizing its penalty.

Now we will directly jump to deep learning without discussing machine learning algorithms, to learn about various machine learning algorithms refer here.

# What is Deep Learning?

Deep Learning is a subfield of machine learning concerned with algorithms inspired by the structure and function of the brain called artificial neural networks.

# Why there is hype for deep learning?

Neural networks which are the basic building block of deep learning are not new, and even older than most machine learning algorithms. But they were not mainstream in earlier years of its development because of lack of computation power and lack of data. In the year 2012 when a team of researcher won imagenet yearly computer vision competition using convolution neural network for the first time in imagenet competition lead made deep learning mainstream ai. They created alexnet CNN(convolution neural network) architecture, the network achieved a top-5 error of 15.3%, more than 10.8 percentage points lower than that of the runner up. The idea of CNN was not new and it was proposed in the year 1998 by Yan Le Cun one of the pioneers of modern ai. In 2012, neural networks due to available computation power and enough data showed their true potential.

# Applications of deep learning: -

Applications of deep learning are vast and many of great technologies now use deep learning to improve the task. Some of the examples are:-

- Self-driving cars
- Voice search and virtual assistants
- Machine translation
- Image caption generation
- Colorization of Black and White Images
- Game playing ai(Open Ai dota bot, google brain alpha go).
- Real-time object recognition in the image (Google lens).

This list can become huge rather endless. See these links to learn about more applications of deep learning.

https://machinelearningmastery.com/inspirational-applications-deep-learning/

https://medium.com/@vratulmittal/top-15-deep-learning-applications-that-will-rule-the-world-in-2018-and-beyond-7c6130c43b01

http://www.yaronhadad.com/deep-learning-most-amazing-applications/

We will discuss neural networks in the next chapter and will start with mathematics. Link to other chapters is at the beginning.