Machine Learning Engineer Interview Questions For FAANG - What to expect
What to expect: Machine Learning Engineer - Interview questions for FAANG
Machine learning interviews can be hard and excruciating, especially if you don’t know what exactly you need to focus, for cracking the interview process. These interviews are more than just Q&A of basic machine learning concepts. The interviews for machine learning engineer roles evaluate a candidate’s capacity to solve complex real-world problems using machine learning methodologies, working with a team. Machine learning algorithms learn from the data, unlike the hard coding role to solve the problem.
Here’s what to focus on while preparing for the MLE role:
Data processing (be comfortable with basic data preparation and munging tasks, including tidying data, querying a database (using SQL, for example), features augmentation and extraction, data imputation).
Basic ML algorithms (Be prepared for questions about linear and logistic regressions, clustering, k-means, and k-nearest neighbors).
Basic ML principles (be comfortable with bias and variance trade-offs,
hyper-parameters and cross-validation - training and testing sets, under and over-fitting, dimension reduction, supervised and unsupervised learning, online and batch (“offline”) learning).
Programing language knowledge (you should know at least R or Python).
Business knowledge (should know about some applications of machine learning in this field: recommender systems, growth, and retention, search, churn analysis, A/B testing).
Company knowledge (collect information about the company and try to connect with former and current employees).
Which is the key to crack the machine learning interview?
The answer is PRACTICE!
Below I’ll list machine learning engineer interview questions from FAANG companies, which will help you easier to crack the interview.
All machine learning interview questions can fit into 4 categories. Below are the categories:
ML basic questions
- What are bias and variance?
- Difference between unsupervised and supervised learning?
- Define accuracy and validation loss?
- Define optimizers? Name some of them?
- Difference between L1 and L2 regularization?
- What does the F1 score imply?
- Difference between overfitting and underfitting?
- Talk about an ML project you have recently worked on?
- How do you eliminate overfitting/underfitting?
- Which mathematical operation is mainly used when an image is passed through the DNN layers?
- Explain one tactic to increase accuracy and one tactic to reduce the loss?
- How do you reduce model size without affecting the accuracy much? Explain one method to do so (Pruning/Deep compression/Design Space Exploration)?
- What is model speed?
- Name an activation function better than ReLU?
Questions from resume (project-based)
You should have an absolute knowledge of all projects that you have showcased in your resume. So, don’t add projects for the sake of adding more projects to your portfolio. You will be asked questions in detail about these topics in your resume, and failing to answer the questions related to them will be detrimental to your selection process. The interviewer will describe the project first and then will ask you questions that can emphasize technical skills, business impact, or leadership. Here’s a sample of those questions:
- Why did you choose this model? Have you tried different models?
- How did you evaluate the model performance (online and offline)?
- What is the impact on the product or the service?
- Did you work with other teams? Did you lead any of the processes?
ML coding questions
Besides the theory, they also evaluate whether you are able to code up an algorithm from scratch in a short amount of time.
The most commonly asked algorithms during this type of coding interview are:
- Supervised Learning: Linear Regression and K-nearest Neighbors.
- Unsupervised Learning: K-means Clustering.
‘Applied ML problems’ questions
- How to design a text classification model?
- How to design an image classification model?
- How to detect spam emails?
- How to detect spam accounts?
- How to design a recommendation system?
- How to design an estimated time of arrival (ETA) model?
- How to design a query and ranking system?
The type of questions varies a lot depending on the field of the company.
Below is the list of MLE interview questions from Amazon, Google, and Facebook:
- What are the differences between generative and discriminative models?
- How would you weigh nine marbles three times on a balance scale to select the heaviest one?
- What’s the difference between MLE and MAP inference?
- Why did you use this particular machine learning algorithm for your project?
- What is the K-means algorithm?
- Describe a time when you let go of a short-term goal for a long-term goal.
- What’s the difference between the summaries of a Logistic Regression and SVM?
- Explain ICA and CCA. How do you get a CCA objective function from PCA?
- What is the relationship between PCA with a polynomial kernel and a single layer auto-encoder? What if it is a deep auto-encoder?
- What is A/B testing in machine learning?
- What is an activation function in machine learning?
- How would you build, train and deploy a system to detect if multimedia and/or a content being posted violated terms or contained offensive materials?
- How do you solve a disagreement with a team member?
- What is the bias-variance tradeoff? How is it expressed using an equation?
- Describe the idea behind boosting. Give an example of one method and describe one advantage and disadvantage.
- Formulate the background behind an SVM and show the optimization problem it aims to solve.