Machine Learning Engineer Interview Questions

Review this list of 259 Machine Learning Engineer interview questions and answers verified by hiring managers and candidates.
  • Amazon logoAsked at Amazon 
    Video answer for 'Implement a k-nearest neighbors algorithm.'
    +8

    "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
    Coding
    +2 more
  • Apple logoAsked at Apple 

    "First of all, stack and heap memory are abstraction on top of the hardware by the compiler. The hardware is not aware of stack and heap memory. There is only a single piece of memory that a program has access to. The compiler creates the concepts of stack and heap memory to run the programs efficiently. Programs use stack memory to store local variables and a few important register values such as frame pointer and return address for program counter. This makes it easier for the compiler to gene"

    Stanley Y. - "First of all, stack and heap memory are abstraction on top of the hardware by the compiler. The hardware is not aware of stack and heap memory. There is only a single piece of memory that a program has access to. The compiler creates the concepts of stack and heap memory to run the programs efficiently. Programs use stack memory to store local variables and a few important register values such as frame pointer and return address for program counter. This makes it easier for the compiler to gene"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +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
    Concept
    +1 more
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    Machine Learning Engineer
    System Design
    +1 more
  • Goldman Sachs logoAsked at Goldman Sachs 
    +10

    "public static Integer[] findLargest(int[] input, int m) { if(input==null || input.length==0) return null; PriorityQueue minHeap=new PriorityQueue(); for(int i:input) { if(minHeap.size()(int)top){ minHeap.poll(); minHeap.add(i); } } } Integer[] res=minHeap.toArray(new Integer[0]); Arrays.sort(res); return res; }"

    Divya R. - "public static Integer[] findLargest(int[] input, int m) { if(input==null || input.length==0) return null; PriorityQueue minHeap=new PriorityQueue(); for(int i:input) { if(minHeap.size()(int)top){ minHeap.poll(); minHeap.add(i); } } } Integer[] res=minHeap.toArray(new Integer[0]); Arrays.sort(res); return res; }"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +2 more
  • 🧠 Want an expert answer to a question? Saving questions lets us know what content to make next.

  • Adobe logoAsked at Adobe 
    Video answer for 'Find the median of two sorted arrays.'
    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • Machine Learning Engineer
    Artificial Intelligence
    +3 more
  • Databricks logoAsked at Databricks 
    Video answer for 'What is your leadership style?'
    +7

    "My leadership style is flexible and adaptive, it varies depending on the team members and the needs of the company. My leadership goal is to empower the team and inspire and grow leaders. In order to achieve that, I combine transformational, democratic and coaching leadership styles. Usually when we are facing a new type of challenge, or at the early stage of a project, I like to adapt the transformational leadership which allows me to listen to all the suggestions from the team members and sta"

    onering2ruleall - "My leadership style is flexible and adaptive, it varies depending on the team members and the needs of the company. My leadership goal is to empower the team and inspire and grow leaders. In order to achieve that, I combine transformational, democratic and coaching leadership styles. Usually when we are facing a new type of challenge, or at the early stage of a project, I like to adapt the transformational leadership which allows me to listen to all the suggestions from the team members and sta"See full answer

    Machine Learning Engineer
    Behavioral
    +4 more
  • Accenture logoAsked at Accenture 
    +2

    "My Answer. Please let me know your feedback. I have led many projects throughout my career. So, whenever I lead the project, I first try to clarify the goals and values delivered. For example, I was in charge of Data Analytics projects at my employment at a Startup. The team’s goal was launching the MVP. First, I discussed with the CEO to define the clear goal and scope for each of the projects. Next, I identified all the key stakeholders and received their inputs on the project's different a"

    Balaji G. - "My Answer. Please let me know your feedback. I have led many projects throughout my career. So, whenever I lead the project, I first try to clarify the goals and values delivered. For example, I was in charge of Data Analytics projects at my employment at a Startup. The team’s goal was launching the MVP. First, I discussed with the CEO to define the clear goal and scope for each of the projects. Next, I identified all the key stakeholders and received their inputs on the project's different a"See full answer

    Machine Learning Engineer
    Behavioral
    +3 more
  • Anthropic logoAsked at Anthropic 
    Machine Learning Engineer
    Artificial Intelligence
    +3 more
  • Machine Learning Engineer
    Coding
    +1 more
  • Adobe logoAsked at Adobe 
    Video answer for 'Given an nxn grid of 1s and 0s, return the number of islands in the input.'
    +13

    " from typing import List def getnumberof_islands(binaryMatrix: List[List[int]]) -> int: if not binaryMatrix: return 0 rows = len(binaryMatrix) cols = len(binaryMatrix[0]) islands = 0 for r in range(rows): for c in range(cols): if binaryMatrixr == 1: islands += 1 dfs(binaryMatrix, r, c) return islands def dfs(grid, r, c): if ( r = len(grid) "

    Rick E. - " from typing import List def getnumberof_islands(binaryMatrix: List[List[int]]) -> int: if not binaryMatrix: return 0 rows = len(binaryMatrix) cols = len(binaryMatrix[0]) islands = 0 for r in range(rows): for c in range(cols): if binaryMatrixr == 1: islands += 1 dfs(binaryMatrix, r, c) return islands def dfs(grid, r, c): if ( r = len(grid) "See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • Adobe logoAsked at Adobe 
    Video answer for 'Find a triplet in an array with a given sum.'
    +13

    " import java.util.*; class Solution { // Time Complexity: O(n^2) // Space Complexity: O(n) public static List> threeSum(int[] nums) { // Ensure that the array is sorted first Arrays.sort(nums); // Create the results list to return List> results = new ArrayList(); // Iterate over the length of nums for (int i = 0; i < nums.length-2; i++) { // We will have the first number in"

    Victor O. - " import java.util.*; class Solution { // Time Complexity: O(n^2) // Space Complexity: O(n) public static List> threeSum(int[] nums) { // Ensure that the array is sorted first Arrays.sort(nums); // Create the results list to return List> results = new ArrayList(); // Iterate over the length of nums for (int i = 0; i < nums.length-2; i++) { // We will have the first number in"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +3 more
  • Adobe logoAsked at Adobe 
    +43

    " Brute Force Two Pointer Solution: from typing import List def two_sum(nums, target): for i in range(len(nums)): for j in range(i+1, len(nums)): if nums[i]+nums[j]==target: return [i,j] return [] debug your code below print(two_sum([2, 7, 11, 15], 9)) `"

    Ritaban M. - " Brute Force Two Pointer Solution: from typing import List def two_sum(nums, target): for i in range(len(nums)): for j in range(i+1, len(nums)): if nums[i]+nums[j]==target: return [i,j] return [] debug your code below print(two_sum([2, 7, 11, 15], 9)) `"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +5 more
  • Meta (Facebook) logoAsked at Meta (Facebook) 
    Machine Learning Engineer
    System Design
  • Machine Learning Engineer
    Artificial Intelligence
    +2 more
  • Capital One logoAsked at Capital One 
    Machine Learning Engineer
    System Design
  • Adobe logoAsked at Adobe 
    +8

    "from typing import List def find_primes(n: int) -> List[int]: if n < 2: # Handle edge cases explicitly return [] Initialize a boolean list to track primality is_prime = [True] * (n + 1) isprime[0] = isprime[1] = False # 0 and 1 are not primes p = 2 while p * p <= n: # Loop until sqrt(n) if is_prime[p]: # Only process if 'p' is still marked as prime Mark multiples of p as non-prime for multiple in range(p * p,"

    Anonymous Roadrunner - "from typing import List def find_primes(n: int) -> List[int]: if n < 2: # Handle edge cases explicitly return [] Initialize a boolean list to track primality is_prime = [True] * (n + 1) isprime[0] = isprime[1] = False # 0 and 1 are not primes p = 2 while p * p <= n: # Loop until sqrt(n) if is_prime[p]: # Only process if 'p' is still marked as prime Mark multiples of p as non-prime for multiple in range(p * p,"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • Adobe logoAsked at Adobe 
    Video answer for 'Given the root of a binary tree of integers, return the maximum path sum.'

    "\# Definition for a binary tree node. class TreeNode: def init(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right class Solution: def maxPathSum(self, root: TreeNode) -> int: self.max_sum = float('-inf')"

    Jerry O. - "\# Definition for a binary tree node. class TreeNode: def init(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right class Solution: def maxPathSum(self, root: TreeNode) -> int: self.max_sum = float('-inf')"See full answer

    Machine Learning Engineer
    Data Structures & Algorithms
    +4 more
  • OpenAI logoAsked at OpenAI 
    Machine Learning Engineer
    Behavioral
    +5 more
Showing 81-100 of 259