Hi there. First of all, congrats and try not to be too nervous - just prepare as much as you can! I assume your major/background is not in stats?
In terms of preparing for the technical interview, here are the major parts to review and prepare for:
- ML coding: practice writing code from scratch for methods like k-means, KNN, Gaussian Naive Bayes, etc. How would you do kfold cross validation?
- ML fundamental concepts: I would review the basics obviously as you mentioned but also deep learning (check out deep learning specialization course on Coursera), SVM, MLE, logistic regression. It’ll be good to know techniques to improve or tune your network such as dropout, batch normalization etc. I would say logistic regression, linear regression (including Ridge and Lasso), clustering and neural networks are most important. Know regression VERY well, there are a lot of questions that can be asked here. Also know the metrics in which to measure the performance of these models such as precision/recall, mean squared error, etc. They also like to ask about things related to Bayes Statistics/Bayesian interpretation. You wanna be able to explain the pros and cons of different learning methods and which one you would use given different scenarios or datasets.
- ML System design:you can check out educative.IO’s system design course, especially the par on recommendation systems.
- Probability and other math/statistics concepts: make sure you know things like random variables, expectation & variance, most commonly used distributions (normal, exponential, binomial etc.), conditional expectation, Bayes Theorem. You can also check out https://datascienceprep.com or any intro to probability/stats course on MIT Courseware.
Useful books to check out:
- An Introduction to Statistical Learning by James et al.
- Elements of Statistical Learning by Hastie et al.
- Cracking The Machine Learning Interview by Nitin Su
Let me know if you have any more questions or anything I can elaborate on. Don’t worry, you got this!