Hello everyone. This is a new Blog series on Concepts in Machine Learning and Deep Learning. In this I will be covering almost all Machine Learning and Deep Learning concepts and coding and explaining the algorithms from scratch. For coding, I will be using Python as the language and the code will be posted on the blog as a Python Jupyter Notebook and will also be available on my GitHub Repository to download.

But before diving deep into the concepts, let’s first get to know that why we need to learn Machine Learning !!!

What is Artificial Intelligence [AI] ?

We all had a moment sometime back where we have thought that what is AI ? When we think about AI, what comes to our mind is something like a Terminator or the SkyNet that takes over all the humans killing all of us !!! Well, not that easy.

There will be another set of people thinking of AI as a Virtual Assistant something like JARVIS from Iron Man.

IronMan

You can talk to it, make it do all your work while you enjoy your drink at a beach. Sounds nice :D

But why should I learn AI ?

With the continuous development in the field of AI, and lots of Research papers being published almost every 10 days by companies like OpenAI, Facebook AI Research, Google Brain, DeepMind etc. this field is the fastest growing field.

We now have Generative Networks that can generate a video of a Leader by looking at his/her videos and with any audio which a person wants, it can lead to riots or even war. If the people would have had access to this technology during the World War it might have lead to a much worse war, maybe even leading to the extinction of the human race.

So, in order to either avoid the AI Apocalypse or to make our own JARVIS, we need to learn these things either way. Now you would ask that when we know that AI development can cause an AI Apocalypse, then why even study it !!! Why all the research in this field ?? The point is that we are not there yet but will be eventually one day. And at that time, if you even know that how these things work even on the top, you might be able to prevent that.

AI is not thought only in terms of destruction but also as something constructive. Imagine that in future AI is able to read your mind and do the things you want it to do [Neuralink] or maybe you give it a problem like “Solve Poverty” or “Solve Drought” and it is able to solve them all. That way we can all have a better future.

Poverty

Machine Learning has been around since the late 50’s but at that time neither did we had enough data nor did we have enough compute power as we have today. So, in my view, this time which we are living in is the best time to learn Machine Learning.

Earlier we used to have a simple CPU that could do some simple calculations whereas now we have powerful CPU’s and GPU’s all on the same desktop/laptop or even mobile devices. Also, the data has been growing by a large extent and is still growing. These advances lead us to efficiently use the fields of Artificial Intelligence, Big Data Analysis etc. to make predictions or use the data productively.

Applications of AI [ML/DL/CV]

So, where is this AI used ?? What’s the use of studying anything that doesn’t has any use case. Well, we all use AI everyday, almost every moment of our life knowingly or unknowingly. Some of the applications of Artificial Intelligence [ML/DL/CV] in our day to day lives are:

  1. Self Driving Cars using Computer Vision [Tesla, Google, NVIDIA] SDC

  2. Virtual Assistants like Google Home, Siri, Alexa, Bixby etc. [Google, Amazon, Apple, Samsung] VPA

  3. Market stock prediction. Stock

  4. Sentiment Analysis.
    SA

  5. Artifying Images. NST

  6. Self-Aware Robots [Nao] SAR

  7. Heart Sound Analysis.
  8. News generation, Article Summarizer etc. Generation

  9. Face Recognition FR

and a lot more. . .

So, now you would be thinking, “Good Stuff there, but, how do I actually get started with all this ??”. This is my main motivation for writing this Blog series. I think that education should be free and easily accessible to all. Through these Blogs, I will try my best to present these concepts as clearly as possible.

The code tutorials expect you to be a beginner with no experience at all in Machine Learning or Deep Learning. We will start everything from scratch. The knowledge of basic Python syntax and some of its in-built libraries will be useful.

In these tutorials, you can make use of your laptop/desktop or if you think you require more compute power you can spin up a EC2 server on Amazon Web Services or even Google Cloud. Both of these provide with a year long free access to their resources.

Great work on completing this tutorial, let’s move to the next tutorial in series, Introduction to Machine Learning: Machine Learning Basics.

For more projects and code, follow me on Github.

Please feel free to leave any comments, suggestions, corrections if any, below.