# Machine Learning Roadmap 2022

## What is machine learning? Machine Learning Roadmap : Machine learning (ML) is a type of...

**What is machine learning?**

**Machine Learning Roadmap** : Machine learning (ML) is a type of artificial intelligence (AI) that allows software applications to become more accurate at predicting outcomes without being explicitly programmed to do so. Machine learning algorithms use historical data as input to predict new output values.

Recommendation engines are a common use case for machine learning. Other popular uses include fraud detection, spam filtering, malware threat detection, business process automation (BPA) and predictive maintenance.

**Why is machine learning important?**

Machine learning is important because it gives enterprises a view of trends in customer behavior and business operational patterns, as well as supports the development of new products. Many of today’s leading companies, such as Facebook, Google and Uber, make machine learning a central part of their operations. Machine learning has become a significant competitive differentiator for many companies.

If you want to learn Machine Learning with Python. expected you know the below concepts:

- Variables
- Mathematical Operators
- Control Statements
- Data Structures (List, Set, Dict, etc.)
- Work with files
- Functions
- Object-Oriented Programming

If you are not familiar with Python, there are several ways to learn this powerful simple language. You can take some courses on Udemy, Coursera, etc.

**Recommended Articles**

**What Is Cryptocurrency? Everything You Need To Know****Best Game Development Roadmap-2022****What Is The Dark Web? How To Access It And What You Will Discover****Ethical Hacking Roadmap – A Beginners Guide**

**Features of Machine Learning:**

• ML uses data to detect various patterns in a

given dataset automatically

• Machine learning can learn from past data and improve automatically

. ML is a data-driven technology

• It is much similar to data mining as it also deals with the huge amount of the data

**What is the Need of Machine Learning:**

- To solving complex problems

- Decision making in various sector including finance

- Finding hidden patterns and extracting useful information from the data

- Rapid increment in the production of data

**Applications of Machine Learning:**

- Self-driving cars

- Stock market trading

- Image Recognition

- Speech Recognition

- Traffic Prediction

- Online Fraud Detection

- Medical Diagnosis

- Email spams and malware filtering

- Automatic Language Translation

**Let’s Begin**

**Step 1: Pick a programming language & Get Started!**

The first step to starting 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 recommend Python. Why? Because its popular, easy to learn and future-ready

With Python, you can switch domains easily. Python offers popular frameworks like Django and Flask for backend development, Tkinter for GUI development, Pygames for Game development, etc.

If you go with Python, you must learn sklearn for Machine Learning. Sklearn is a modern machine learning library written in Python.

The best thing about sklearn is that most of the Machine learning algorithms are written for you already. It has a lot of useful classes for preprocessing your data for further analysis

If you want to learn machine learning in Hindi you can learn from an end-to-end machine learning video YouTube channel where he will walk you through the steps of tackling a machine learning problem from scratch.

You should also look into the Tensorflow module, which can help you build a neural network without much effort!

**Step 2: Learn Linear Algebra**

You should learn Linear Algebra if you wish to master Machine Learning and become a pro!

This is essential because if you want to tune your models with maximum flexibility, you need to know how they work, and knowing linear algebra is a must for that!

When you start, you should focus on Step 1, and while you are following step 1, you can begin learning Linear Algebra parallelly. This is what I call the parallel conquering technique.

You start two similar things parallelly, focusing on the first and keeping relatively less priority on the other tasks. This can help you keep the enthusiasm and motivation up.

One of the resources I found very helpful for revisiting linear algebra concepts was these pdf notes.

**Step 3: Learn Probability & Statistics**

Having a basic understanding of probability and statistics is important when it comes to mastering Machine Learning.

Here is one of the best resources for that: Statistics Revision Notes by MathBox.

Since the basis of the concepts of Machine Learning is derived from statistics and probability, familiarity with them and mastery of statistics and probability help a lot in understanding ML concepts. You can learn them in the KhanAcademy course. You should know the following concepts:

- Categorical & Numerical Data
- Mean, Mode and Median
- Standard Deviation and Variance
- Co-Variance
- Correlation
- Skewness
- Random Variables
- Distributions
- Classic Probability
- Conditional Probability

**Step 4: Learn Core ML Algorithms**

Once you have some idea of using sklearn after learning python, you should start looking into how these machine learning algorithms work.

While using sklearn, and ML Algorithm is a black box written by the sklearn developers.

In order to get an idea of how these Machine learning algorithms work from within, look into:

- Gradient Descent
- Slope
- Supervised vs Unsupervised learning
- Reinforcement Learning
- Basic Linear Regression
- Working of all such similar models
- Clustering

An amazing resource to learn about all this is a book called “Hands-on ML with Scikit learn and tensorflow.” (Not an affiliate link)

Try to grab a copy of this book. It will help you a lot.

There are few other resources too that are worth looking into:

##### How to read a book

- Schedule your reading time
- Try to turn the pages and look for exercise-questions
- Now try to find the answers to those questions while reading
- These are the points author of the book wants your focus on
- Try to use read-aloud feature of Microsoft edge. It works pretty well

**Step 5: Learn Python Libraries**

- Learn Numpy
- Learn Pandas
- All this will be helpful to debug the python/sklearn code

**Step 6: Learn Deployment**

To host your machine learning models with a powerful backend, you will need to learn frameworks like Django and Flask.

Docker and Kubernetes can be of great help if you want to ship and deploy your models quickly!

Streamlit is worthy of looking into if you wish to build custom web apps for machine learning and data science .

**Resources For Learning ML **

**Machine Learning Resources**

These are the resources you can use to become a machine learning or deep learning engineer. All of the resources are available for free online. Please check their respective licenses.

**Machine Learning Theory**

- Machine Learning, Stanford University
- Machine Learning, Carnegie Mellon University
- Machine Learning, MIT
- Machine Learning, California Institute of Technology
- Machine Learning, Oxford University
- Machine Learning, Data School

**Deep Learning Theory**

- Deep Learning, Ian Goodfellow
- Neural Networks and Deep Learning
- Understanding LSTM Networks
- Deep Residual Learning

**Forward and Backpropagation Theory and Code**

- Step by Step Forwardpropagation and Backpropagation with Numbers
- Full Manual Backward Propagation with TensorFlow
- Reverse Mode Automatic Differentiation with TensorFlow
- Simple Backward Propagation with Python
- Backward Propagation from Scratch with Python
- Neural Networks Demystified with Python, Welch Labs

**General Machine Learning with Python and Scikit-learn**

- Machine Learning with scikit-learn, Data School
- Machine Learning with scikit-learn, Jake Vanderplas
- Decision Trees, The Grimm Scientist
- Machine Learning with scikit-learn, Andreas Mueller
- Convolutional Neural Networks with Python, Stanford

**Convolutional Neural Networks with TensorFlow/Keras**

- Deep Learning Models like VGG, Inception V3, ResNet and more in Keras
- Practical Deep Learning with Keras, Jason Brownlee
- Wide Residual Networks in Keras
- Wide ResNet in TensorLayer
- TensorLayer Official Tutorials

**Reinforcement Learning Theory**

- Reinforcement Learning Introduction, Nervana
- Reinforcement Learning, Sutton
- Uncertainty Estimates from Dropouts

**Reinforcement Learning with TensorFlow/Keras**

- Using Keras with DPPG to play TORCS
- Advantage async actor-critic Algorithms (A3C) and Progressive Neural Network in TensorFlow

**Recurrent Neural Networks Theory**

**Recurrent Neural Networks with TensorFlow**

- RNN Official TensorFlow Tutorials
- RNN-LSTM with TensorFlow
- Introduction to RNN in TensorFlow
- Advanced RNN guides and code
- RNN in TensorFlow with and without API
- RNNs in TensorFlow, A Practical Guide and Undocumented Features
- TensorFlow code for Latest RNN Papers

**Mathematics Useful for Machine Learning**

- Discrete Mathematics, MIT
- Linear Algebra, MIT
- Linear Algebra Review, Stanford
- Probability Review, Stanford
- Convex optimization overview, Stanford
- More convex optimization overview, Stanford
- Single Variable Calculus, MIT
- Practical Guide for Matrix Calculus for Deep Learning

**Deep Learning Environment**

**Best Books**

Personally, I’ve found books to be the best source of knowledge after going through the courses. This is where you can strengthen your theoretical understanding of the concepts that you use in your ML projects.

**1 –** *The Hundred-Page Machine Learning Book* by Andriy Burkov

A very short book but with perfect knowledge. Andriy has compressed all the vital points in AI/ ML and put it in this 100 pages book[138 to be precise].

**2 –** *Hands-on Machine Learning with Scikit-Learn, Keras and Tensorflow 2.0 Book* by Aurelien Geron — O’Reilly

According to me, this book is an alternative to the Machine Learning and Deep Learning specializations by deeplearning.ai. I prefer this book as it has perfect explanations and every concept has a good code to try out side by side. You can also access the open-sourced code from this book at the following link —* **https://github.com/ageron/handson-ml2*

**3 –** *Deep Learning book* by Ian Goodfellow

If you want to get deeper into the mathematical side of deep learning then this book has everything that you need. It was published in 2015, so it is relatively old but the content is great.

Bonus Book

** Life 3.0** by Max Tegmark

Life 3.0 isn’t for learning AI and ML but it is a beautiful book that discusses the impact of Artificial Intelligence on the future of the human race and cosmic influence. The views of the author are interesting and it is indeed a great read.

**Theory of Machine Learning**

As a machine learning engineer, you should be a master of the following concept:

- Clean Data
- Fill Missing Value
- Drop Some Feature
- Feature Selection
- Feature Scaling
- Regularization
- Feature Engineering (optional at first)
- Regression Algorithms
- Simple Linear Regression
- Ridge & Lasso
- Multiple Linear Regression
- Polynomial Regression
- XGBRegressor
- Classification Algorithms
- KNN (K Nearest Neighbor)
- Logistic Regression
- Decision Tree
- Random Forest
- Naive Bayes
- XGBClassifier
- Clustering Algorithms
- K-Means
- DBSCAN (Density-based spatial clustering of applications)
- Dimensionality Reduction
- PCA (Principale Component Analysis)
- LDA
- t-SNE

**Machine Learning in Practice**

You should learn `sklearn`

to implement all last step concepts. There are also many courses for this library. You can also use `sklearn`

documentation.

**Frequently Asked Question**

**What are different types of Machine Learning algorithms?**

Machine Learning algorithms are typically broken down in the following categories

**Supervised learning**– They are set of algorithms which predict an output given an input based on example input output data given to the algorithm.**Unsupervised learning**– They are set of algorithms which try and find undiscovered patterns in a dataset without any example input output data given to the algorithm.**Reinforcement learning**– Reinforcement learning is trial and error learning, where the program tries different strategies and learns from its mistakes and success to get better at the task.

**How Does Machine Learning Work?**

Using a multitude of analytical programmes, algorithms are developed and refined within a process in accordance with your business questions. Machine learning looks at the history of your current data and detects patterns within it, and then adjusts its future actions accordingly. Its main aim is to both clean your data, and make predictions towards future data sets.

Machine learning statistical methods such as clustering, regression and classification are used in predictive analytics.

**What Can Machine Learning Do For Me And My Business?**

Machine learning in its simplest form will automate repetitive tasks. Data collection, sorting, entry and transformation can all be automated, saving your business crucial time and resources. In a more refined form, it’s able to tell you where and how your business is being successful, and make predictions regarding your businesses’ future.

**What Do I Need To Start?**

To be able to apply machine learning you need a problem to solve, and you need data relating to this problem. Your data can preferably be in a structured form (within a database or multiple spreadsheets), or an unstructured form (emails and social data).

**Where Can I Find Some Use Cases?**

Product recommendation engines, such as those used by Amazon and Netflix, are produced with machine learning at the core of their design. These have been proven to increase revenue and interaction drastically, with Amazon stating 35% of their total revenue comes from their product recommendation engine.

**Is Machine Learning Expensive?**

This completely comes down to the exact process that you’re after, and whether or not you go with a bespoke or off the shelf system. Whilst off the shelf systems typically work on a pay as you go basis, their algorithms are often limited in flexibility. Bespoke packages on the other hand typically test and refine the models. Pilots start at a few thousand pounds and can rise with increased development.

**What is a regression problem and what is a classification problem? Give examples?**

**Regression problem **is a problem when output variable is continuous, a **classification problem** is a problem where output variable is discrete. Example of a **regression problem** is predicting temperature of New York City next day, example of a **classification problem** is predicting if a Tumor is malignant or benign.

**What is cross validation?**

**Cross validation** is a modeling technique for assessing how the statistical model will generalize to out of sample data. **Cross validation** is also used to search or select model hyperparameters.

There are various **Cross Validation** techniques:

- Holdout cross validation.
- k-fold cross validation.
- nested cross validation.

**Conclusion**

Machine learning is a hot topic these days, but it can be hard to know where you should start. This roadmap will help! We’ll go over the different steps that are needed for someone who wants to become an expert in this field and take their career from “beginner” all the way up to “expert” level!