Friday, 25 January 2019

Basic and Introductory Machine Learning Interview Questions and Answers

Machine Learning has gained a lot of popularity by now. I will be writing a lot of interview questions and answers which you should definitely know about Machine Learning. So, I am going to start with very simple, basic and introductory Machine Learning interview questions and answers. In my future posts, I will cover interview questions regarding various Machine Learning Algorithms and Python. 

So, for now, I have a list of following 9 interview questions about Machine Learning. I am going to write just brief answers. You can google around to find out the details.

1. What is Machine Learning? What are its various applications?

2. What is the difference between Artificial Intelligence, Machine Learning and Deep Learning?

3. What are various types of Machine Learning? What is Supervised Learning, Unsupervised Learning and Reinforcement Learning?

4. What is Deep Learning?

5. Explain Neural Networks.

6. What is the difference between Data Mining and Machine learning?

7. Why is Machine Learning gaining so much attraction now-a-days?

8. Which programming languages should I know to learn Machine Learning? (Not an interview question, just added for the sake of knowledge)

9. What mathematics concepts should I know to learn Machine Learning? (Not an interview question, just added for the sake of knowledge)

Lets handle all these Machine Learning interview questions one by one and try to answer them.

1. What is Machine Learning? What are its various applications?

Machine Learning enables machines to learn and make predictions based on some experience (previous data). It deals with extraction of patterns from dataset. It uses statistical methods to enable machines to improve with experience. ML makes machines to take data-driven decisions rather than being explicitly programmed.

Applications of Machine Learning:

1. Google Maps (Predicts traffic patterns, fastest route, traffic jam and delays based on current and historic data of the route) 

2. Facebook (Provides friend tagging suggestions, face recognition, image recognition using deep learning (DeepFace Algorithm))

3. Uber Eats (Estimates delivery time accurately)

4. Apple (Face recognition)

5. Tesla Self Driving Cars (Unsupervised Learning)

6. Recommendation Engine (Netflix, Youtube Amazon, Google Ads) 

7. Robots: Moley (The robotic chef), KUKA (Industrial robot), Sophia

8. Google Translate (Just scan the signboard in local language with camera)

9. Chess Playing Computer

10. Apple Siri, Amazon Alexa, Google Assistant

11. Document classification, Image and Video recognition, Speech recognition, Biometric recognition, Weather forecast, Handwriting detection, Spam detection, Fraud detection, Unusual patterns detection, News categorization, Medical diagnosis and much more...

2. What is the difference between Artificial Intelligence, Machine Learning and Deep Learning?

1. ML is the subset of AI and further Deep Learning is the subset of ML.

2. AI enables machines to mimic human behavior.

3. ML enables machines to learn and make predictions based on some experience (previous data). It deals with extraction of patterns from dataset. It uses statistical methods to enable machines to improve with experience.

4. ML makes machines to take data-driven decisions rather than being explicitly programmed.

5. Deep Learning: Subset of ML which is inspired by the functionality of human brain cells called neurons which led to the concept of artificial neural network. More sample data is required for Deep Learning as compared to Machine Learning and learning phase is also longer than Machine Learning but the execution time is far less as compared to Machine Learning.

3. What are various types of Machine Learning? What is Supervised Learning, Unsupervised Learning and Reinforcement Learning?

Supervised Learning

Machine is trained and supervised using the training data for some time. Afterwards, real data is provided and it makes prediction on it using its learning from the training data. If the accuracy of the prediction is acceptable, the algorithm is accepted. Otherwise the process of training is repeated again and again until we get satisfactory accuracy level in its prediction.

Mathematically: Input data and expected output is known beforehand. 
y = f(x)
Create a mapping between input data (x) and output data (y) to predict accurately with minimum scope for error.

Unsupervised Learning

There is no training dataset and no expected outcome. No past knowledge and experience of data. Analyze the data on the go. No prior training is given unlike Supervised Learning.

It creates clusters (groups / classification) of related / similar data.

Example: Going to an unknown party, first time watching any football or cricket match, Recommendation System

So, here we don't know proper input data and machine does not know about that data beforehand. So, the machine is not trained over that data. In this case it will not break and but try to provide a reasonable output.

Mathematically: We only have input data (x) but no corresponding expected output data (y).

Reinforcement Learning

Uses Hit and Trial method. Given rewards for the hit and penalty for the miss. 

Mechanisms: Exploration (Hit and Trial) and Exploitation (If it is a hit or miss, it learns and remembers the result for future).

Examples

1. You are left on an island, you have to survive anyhow, you will do hit and trial, get rewarded and penalized accordingly, you will first explore and then start exploiting the island.

2. Whether a given image is an apple or not? If in reality it is an apple and machine figures it out as an orange, machine is penalized, if it predicts it as an apple, machine is rewarded.

4. What is Deep Learning?

Deep Learning is a subset of Machine Learning which is inspired by the functionality of human brain cells called neurons which led to the concept of artificial neural network. More sample data is required for Deep Learning as compared to Machine Learning and learning phase is also longer than Machine Learning but the execution time is far less as compared to Machine Learning.

5. Explain Neural Networks.

Neural network is one group of algorithms used for machine learning that models the data using graphs of Artificial Neurons, those neurons are a mathematical model that “mimics approximately how a neuron in the brain works”.

6. What is the difference between Data Mining and Machine learning?

Data Mining is about using statistics as well as other programming methods to find patterns hidden in the data so that you can explain some phenomenon. Data Mining builds intuition about what is really happening in some data and is still little more towards math than programming, but uses both.

Machine Learning uses Data Mining techniques and other learning algorithms to build models of what is happening behind some data so that it can predict future outcomes. Math is the basis for many of the algorithms, but this is more towards programming.

7. Why is Machine Learning gaining so much attraction now-a-days?

Machine Learning is an old concept but it is getting popular now because earlier there was not that much data for machines to predict and analyze. Now as the data has increased, predictions can be accurate and machines will learn from this huge data itself. More the data, more accurate is the prediction (with minimum errors).

8. Which programming languages should I know to learn Machine Learning?

Must: Data Structures, Python
Optional: R, C++, Hadoop (Java based)

9. What mathematics concepts should I know to learn Machine Learning?

Matrix, Vector, Differentiation, Integration, Logs, Probability, Statistics

No comments:

Post a Comment