When it comes to machine learning, there are tons of content available on internet. Sometimes it is really useful but sometimes it becomes hard to create the right path by taking each of them in consideration. In this blog, first we will understand how machine learning is different from traditional programming then we will dive deeper in the *process of learning* machine learning. So just grab your coffee mug and walk along..!!

## How machine learning is different from traditional programming ?

Without beating around the bush, let me give you this interesting answer. In traditional programming, we have inputs and outputs, and we have to manually develop rules to satisfy each conditions including corner cases.

where in machine learning, we have inputs and outputs, and we extract a set of rules with the help of machine learning algorithms. Very precisely, these rules are collectively called as models.

Hope now we are clear with this fact. Moving ahead, Let’s break the whole process of learning this amazing technology into steps…

### Step 1) Start with a programming language (*1 month*)

The first step to start learning machine learning is to pick up a programming language. There are different programming languages in the market, but the most suitable for machine learning are Python and R. I would like to recommend python for this. Why ? because it’s easy ? open source ? having a great community in machine learning ? The answer is yes. If you are a non coder then this step will take 1-2 months to complete, else just few weeks of training will be enough. You can learn python from here

### Step 2) Learn Linear Algebra (*2 weeks*)

As you know machine learning is nothing but implementation of mathematical functions in computer science. So get more flexibility over algorithms and models, you need to know how do they work and what can be the right steps to fine tune them. To make this possible, you need to learn Linear Algebra. You don’t have be master in this but should have an understanding of mathematical knowhow. Here is an interesting resource to learn this.

### Step 3) Learn statistics and probability (*2 weeks*)

To master machine learning we also need to understand statistics and probability. This is something which you will be definitely using to understand the processing of machine learning algorithm. Source.

*Tip :- You can start learning Linear Algebra, Statistics and Probability at the same time. This is just basic maths. *

### Step 4) Learn core ML concepts *(1 week)*

In this step, you will be learning basic machine learning concepts as a kickstarter. Like supervised vs unsupervised learning, Reinforcement Learning, Gradient Descent, Model Evaluation, Optimization etc. Source

### Step 5) Learn Numpy, Pandas, Sklearn, Matplotlib (*1 month*)

These are few accessory libraries which should be in the bucket of a machine learning engineer. Book

### Step 6) Learn Core ML Algorithms (*1-2 months*)

Learn basic machine learning algorithm for getting hands over ML. Like* Linear and Polynomial Regression, Support Vector Machines, Decision Trees, Random Forest, K-Nearest-Neighbour, Naive Bayes, K-Means Clustering, Hierarchical Clustering, Association Rule Based Learning, Upper Confidence Bound algorithm, Thompson Sampling algorithm* and the list goes on. Book

### Step 7) Practice on ground (*1 month*)

Till the time, you have mastered all the basic concepts along with important algorithms of machine learning. And rest of the things can be learned by the time. Now it’s time to apply your knowledge on some traditional machine learning problems. Kaggle is the best place for that.

### Step 8) Learn Deployment (*2 weeks*)

When it comes to deployment of ML models, everyone talks about backing over a Flask or Django API. It works but to understand the deployment better, learn more about ML life cycle. Exporting a model should not be our only goal, extracting the performance information and analysis of the model on real world data should also be in the bucket. Few important tools are TensorFlow Serving and AWS Sagemaker

This is it for this blog. Looking for your doubts and feedback in the comment section, till then…. Enjoy Machine Learning.