Implement k-means from scratch
Last updated: January 11, 2026
Quick Overview
Write a clean implementation of k-means without using ML libraries.
Goldman Sachs
January 11, 2026126
7
3,866 solved
Write a clean implementation of k-means without using ML libraries.
Machine learning questions at Goldman Sachs test both theoretical understanding and practical experience. This Onsite question evaluates your knowledge of ML fundamentals and your ability to apply them to real-world problems.
What the Interviewer Expects
- Explain the mathematical foundations with clarity
- Discuss practical implementation considerations and hyperparameter tuning
- Analyze the technique's strengths and weaknesses for different data types
- Demonstrate understanding of evaluation methodology and metrics
- Connect theory to real-world applications with concrete examples
Key Topics to Cover
How to Approach This
- Understand the bias-variance trade-off. High training accuracy but low test accuracy signals overfitting.
- Choose evaluation metrics carefully based on the problem. Accuracy alone is often insufficient.
- Feature engineering is often more impactful than model selection.
- Know when to use tree-based models (tabular data) vs neural networks (unstructured data).
- Handle class imbalance with SMOTE, class weights, or appropriate loss functions.
Possible Follow-up Questions
- How would you ensure reproducibility in your ML pipeline?
- What are the computational costs of this approach at scale?
- How would you detect and handle concept drift?
Sharpen Your Skills on Codemia
Practice similar problems with our interactive workspace, get AI feedback, and track your progress.
Explore ML Interview PrepSample Answer
Core Concept: K-Means Clustering
K-Means is an unsupervised learning algorithm used for clustering. The core concept revolves around partitioning a dataset into K distinct, non-overlapping subsets (clusters) based on feature similari...
How It Works: Algorithmic Mechanism
The K-Means algorithm follows these steps:
- Initialization: Randomly select K initial centroids from the dataset.
- Assignment Step: For each data point, calculate the distance to each cent...