Skip to main content

Top Machine Learning Interview Questions

Review this list of 93 Machine Learning interview questions and answers verified by hiring managers and candidates.
  • Meta logoAsked at Meta 
    Video answer for 'Design an evaluation framework for ads ranking.'
    +7

    "Designing an evaluation framework for ads ranking is crucial for optimizing the effectiveness and relevance of ads displayed to users. Here's a comprehensive framework that you can use: Define Objectives and Key Performance Indicators (KPIs):** \\Click-Through Rate (CTR):\\ The ratio of clicks to impressions, indicating the effectiveness of an ad in attracting user attention. \\Conversion Rate:\\ The ratio of conversions (e.g., sign-ups, purchases) to clicks, measuring how well"

    Ajay P. - "Designing an evaluation framework for ads ranking is crucial for optimizing the effectiveness and relevance of ads displayed to users. Here's a comprehensive framework that you can use: Define Objectives and Key Performance Indicators (KPIs):** \\Click-Through Rate (CTR):\\ The ratio of clicks to impressions, indicating the effectiveness of an ad in attracting user attention. \\Conversion Rate:\\ The ratio of conversions (e.g., sign-ups, purchases) to clicks, measuring how well"See full answer

    Machine Learning Engineer
    Machine Learning
    +3 more
  • Meta logoAsked at Meta 
    +2

    "C : Okay. So I would want to start with knowing what is the product for which we have to build a recommendation system. I : This is a photo sharing product. C : Okay. So is this something on the lines of Instagram? I : Yes C : Okay. And are we a new product co or we have some current product built already? I : You can assume yourself. C : Okay. Is there any demography or country we are targeting? I : No, this is a global product C : Okay. So, the biggest goal of any product recommendation system"

    Kartikeya N. - "C : Okay. So I would want to start with knowing what is the product for which we have to build a recommendation system. I : This is a photo sharing product. C : Okay. So is this something on the lines of Instagram? I : Yes C : Okay. And are we a new product co or we have some current product built already? I : You can assume yourself. C : Okay. Is there any demography or country we are targeting? I : No, this is a global product C : Okay. So, the biggest goal of any product recommendation system"See full answer

    Machine Learning Engineer
    Machine Learning
    +1 more
  • Meta logoAsked at Meta 
    Video answer for 'Design a fake news detection system.'

    " Functional Requirements Content Ingestion\: Ingest news articles from various sources (websites, social media, etc.). Handle different types of content (text, images, videos). Content Analysis\: Extract and preprocess text from articles. Analyze the content for potential indicators of fake news. Model Training and Prediction\: Use machine learning models to classify content as fake or real. Continuously improve models with new data and f"

    Scott S. - " Functional Requirements Content Ingestion\: Ingest news articles from various sources (websites, social media, etc.). Handle different types of content (text, images, videos). Content Analysis\: Extract and preprocess text from articles. Analyze the content for potential indicators of fake news. Model Training and Prediction\: Use machine learning models to classify content as fake or real. Continuously improve models with new data and f"See full answer

    Technical Program Manager
    Machine Learning
    +3 more
  • Amazon logoAsked at Amazon 
    Video answer for 'Implement k-means clustering.'

    "at first I want to know number of cluster I will put random number if I don't know and I will use method called Elbow method or Silhouette Score ,Gap Statistic and Davies–Bouldin Index to know the best number of cluster and I will use scikit-learn library to import kmeans from sklearn.cluster import KMeans kmeans = KMeans(nclusters=2, randomstate=0) kmeans.fit(X) and X this my data "

    Taheia S. - "at first I want to know number of cluster I will put random number if I don't know and I will use method called Elbow method or Silhouette Score ,Gap Statistic and Davies–Bouldin Index to know the best number of cluster and I will use scikit-learn library to import kmeans from sklearn.cluster import KMeans kmeans = KMeans(nclusters=2, randomstate=0) kmeans.fit(X) and X this my data "See full answer

    Machine Learning Engineer
    Machine Learning
    +5 more
  • "Overall a very good summary of ranking problems. I wish there are more details in the post on depth of modeling. One can talk more about advance ML architectures like DCN, BertRec etc"

    Kapil D. - "Overall a very good summary of ranking problems. I wish there are more details in the post on depth of modeling. One can talk more about advance ML architectures like DCN, BertRec etc"See full answer

    Machine Learning
    System Design
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • " Thanks a lot for showing us how a recommender system can be build. I see it was proposed to use Collaborative filtering which is user - item matrix having dimension N * M (where N - number os users and M - number of songs). Though, it was explained how it gonna be built, it is still unclear how all users and songs features are going to be used. In that matrix we have values in cell (lets say i, j) like 1 - a specific user (i) clicked on song (j) when it was recommended or it is 0 when the user"

    Dinar M. - " Thanks a lot for showing us how a recommender system can be build. I see it was proposed to use Collaborative filtering which is user - item matrix having dimension N * M (where N - number os users and M - number of songs). Though, it was explained how it gonna be built, it is still unclear how all users and songs features are going to be used. In that matrix we have values in cell (lets say i, j) like 1 - a specific user (i) clicked on song (j) when it was recommended or it is 0 when the user"See full answer

    Machine Learning
    System Design
    +1 more
  • Meta logoAsked at Meta 

    "At a high level, the core challenge here revolves around building an effective recommendation algorithm for news. News is an inherently diverse category, spanning various topics and catering to a wide array of user types and personas, such as adults, business professionals, general readers, or specific cohorts with unique interests. Consequently, developing a single, one-size-fits-all recommendation algorithm is not feasible. To enhance the personalization of the news recommendation algorithm,"

    Sai vuppalapati M. - "At a high level, the core challenge here revolves around building an effective recommendation algorithm for news. News is an inherently diverse category, spanning various topics and catering to a wide array of user types and personas, such as adults, business professionals, general readers, or specific cohorts with unique interests. Consequently, developing a single, one-size-fits-all recommendation algorithm is not feasible. To enhance the personalization of the news recommendation algorithm,"See full answer

    Machine Learning Engineer
    Machine Learning
    +1 more
  • Machine Learning
    System Design
  • OpenAI logoAsked at OpenAI 
    Video answer for 'How is gradient descent and model optimization used in linear regression?'

    "Gradient Descent is an optimisation strategy used in several supervised learning models. It is the technique for finding the optimum solution of an objective function. Typically, for a linear regression use case, it is used to find the weights and bias that produce the lowest loss. It involves computing the partial derivative of the objective function with respect to the weight and bias vectors. To find the optima of the function, the derivative is equated to 0, and iteratively the weight and b"

    Megha V. - "Gradient Descent is an optimisation strategy used in several supervised learning models. It is the technique for finding the optimum solution of an objective function. Typically, for a linear regression use case, it is used to find the weights and bias that produce the lowest loss. It involves computing the partial derivative of the objective function with respect to the weight and bias vectors. To find the optima of the function, the derivative is equated to 0, and iteratively the weight and b"See full answer

    Machine Learning Engineer
    Machine Learning
    +1 more
  • Amazon logoAsked at Amazon 
    Video answer for 'What are common linear regression problems?'

    "I can try to summarize their discussion as I remembered. Linear regression is one of the method to predict target (Y) using features (X). Formula for linear regression is a linear function of features. The aim is to choose coefficients (Teta) of the prediction function in such a way that the difference between target and prediction is least in average. This difference between target and prediction is called loss function. The form of this loss function could be dependent from the particular real"

    Ilnur I. - "I can try to summarize their discussion as I remembered. Linear regression is one of the method to predict target (Y) using features (X). Formula for linear regression is a linear function of features. The aim is to choose coefficients (Teta) of the prediction function in such a way that the difference between target and prediction is least in average. This difference between target and prediction is called loss function. The form of this loss function could be dependent from the particular real"See full answer

    Data Scientist
    Machine Learning
    +2 more
  • Amazon logoAsked at Amazon 
    Video answer for 'Implement a k-nearest neighbors algorithm.'
    +10

    "Even more faster and vectorized version, using np.linalg.norm - to avoid loop and np.argpartition to select lowest k. We dont need to sort whole array - we need to be sure that first k elements are lower than the rest. import numpy as np def knn(Xtrain, ytrain, X_new, k): distances = np.linalg.norm(Xtrain - Xnew, axis=1) k_indices = np.argpartition(distances, k)[:k] # O(N) selection instead of O(N log N) sort return int(np.sum(ytrain[kindices]) > k / 2.0) `"

    Dinar M. - "Even more faster and vectorized version, using np.linalg.norm - to avoid loop and np.argpartition to select lowest k. We dont need to sort whole array - we need to be sure that first k elements are lower than the rest. import numpy as np def knn(Xtrain, ytrain, X_new, k): distances = np.linalg.norm(Xtrain - Xnew, axis=1) k_indices = np.argpartition(distances, k)[:k] # O(N) selection instead of O(N log N) sort return int(np.sum(ytrain[kindices]) > k / 2.0) `"See full answer

    Machine Learning Engineer
    Machine Learning
    +2 more
  • Microsoft logoAsked at Microsoft 
    Video answer for 'How do you select the value of 'k' in the k-means algorithm?'
    +2

    "As an interviewer, I have asked this question to candidates in the past. Here are the major topics I am looking for in an interview The candidate should understand that there are ways of measuring the loss of a particular clustering. For example, we can take the average distance of each point to it's cluster center. The candidate should understand that this loss will always decrease as the number of clusters increases. For that reason, we can't just pick the value of K that minimizes the l"

    Michael F. - "As an interviewer, I have asked this question to candidates in the past. Here are the major topics I am looking for in an interview The candidate should understand that there are ways of measuring the loss of a particular clustering. For example, we can take the average distance of each point to it's cluster center. The candidate should understand that this loss will always decrease as the number of clusters increases. For that reason, we can't just pick the value of K that minimizes the l"See full answer

    Machine Learning Engineer
    Machine Learning
    +1 more
  • "Functional requirements: user can send an input and wait for the result Group up to 100 individual requests in to single GPU The system should should send results back to the user who requested it when done Non functional requirements: Minimize the waiting between two batches of execution/ reduce idle time error message if a batch faiils Scale to support multiple GPUs Core Entities: Request Batch Result API Design: POST /predict -> {requestid: "", response: ""} req"

    Alok S. - "Functional requirements: user can send an input and wait for the result Group up to 100 individual requests in to single GPU The system should should send results back to the user who requested it when done Non functional requirements: Minimize the waiting between two batches of execution/ reduce idle time error message if a batch faiils Scale to support multiple GPUs Core Entities: Request Batch Result API Design: POST /predict -> {requestid: "", response: ""} req"See full answer

    Software Engineer
    Machine Learning
    +4 more
  • Machine Learning Engineer
    Machine Learning
    +2 more
  • Google logoAsked at Google 
    Machine Learning Engineer
    Machine Learning
    +1 more
  • Google logoAsked at Google 

    "Constrain the requirements (The final product should be somewhat like Neptune AI and also enable for A/B testing) Do some back of the envelope calculations Start explaning your system with appropriate architecture diagrams Optimize for scale Answer any questions Wrap-up"

    Varun G. - "Constrain the requirements (The final product should be somewhat like Neptune AI and also enable for A/B testing) Do some back of the envelope calculations Start explaning your system with appropriate architecture diagrams Optimize for scale Answer any questions Wrap-up"See full answer

    Machine Learning Engineer
    Machine Learning
    +1 more
  • Machine Learning
    System Design
  • +1

    "import numpy as np class Centroid: def init(self, location, vectors): self.location = location # (D,) self.vectors = vectors # (N_i, D) class KMeans: def init(self, n_features, k): self.nfeatures = nfeatures self.centroids = [ Centroid( location=np.random.randn(n_features), vectors=np.empty((0, n_features)) ) for _ in range(k) ] def distance(self, x,"

    Dinesh G. - "import numpy as np class Centroid: def init(self, location, vectors): self.location = location # (D,) self.vectors = vectors # (N_i, D) class KMeans: def init(self, n_features, k): self.nfeatures = nfeatures self.centroids = [ Centroid( location=np.random.randn(n_features), vectors=np.empty((0, n_features)) ) for _ in range(k) ] def distance(self, x,"See full answer

    Machine Learning
    Coding
  • "I've watched all the ML Systems designs interviews and this solution provides a clean baseline for predicting ETA using historical averages, but it falls short of addressing the broader problem of route planning. The system predicts ETA for a given segment and time interval, but it doesn’t explain how to compute the ETA for an entire route or how to integrate this into dynamic path selection. It also lacks depth on handling real-time data, adapting to distribution shift, or reacting to sudden"

    Clayton P. - "I've watched all the ML Systems designs interviews and this solution provides a clean baseline for predicting ETA using historical averages, but it falls short of addressing the broader problem of route planning. The system predicts ETA for a given segment and time interval, but it doesn’t explain how to compute the ETA for an entire route or how to integrate this into dynamic path selection. It also lacks depth on handling real-time data, adapting to distribution shift, or reacting to sudden"See full answer

    Machine Learning
    System Design
  • Machine Learning
    System Design
Showing 1-20 of 93