What Is Machine Learning Anyway?
dockyard.com
dockyard.com
I recently started interviewing ML Engineers for my company. In general I'm quite surprised by the lack of knowledge of people applying for the job. People seem to have several misconceptions, very surface knowledge, and lack even the fundamentals.
That made me question if I my expectations are set right. Is it possible that working in the field every day I expect candidates to know way more than it's reasonable? I'm not sure, and I don't feel we have a solid way to deal with that.
But to me, most business applied ML falls under the optimization umbrella. For some reason it’s never portrayed this way, but perhaps if it were, junior practitioners would more commonly pay attention to learning to thoroughly examine how their trained models will perform.
The best book I found at the time was Kuhn & Johnson. If anyone can recommend a better book I'd love to hear it? (Examples in R or Python, it doesn't matter.)
> and lack even the fundamentals
I don't think there is a strong consensus on what the fundamentals are. I've also noticed that the fundamentals differ remarkably between people who think of themselves as "data scientists" vs those who think of themselves as "machine learning practitioners".
I feel like the term data science is completely useless. Machine learning is an approach to "do AI" through statistics. Specifically, it is a branch of statistics where the sole focus is on prediction, compared to e.g. inference.
I agree these are good "filtering" topics, among many others.
Anyway least we forget: Neural networks came from cybernetics!
Artificial intelligence is ofcourse a scientific field on it's own right, even before machine learning was a thing. I'm just saying that AI scientists have used concepts from statistics to create an approach to AI called machine learning. I'm not saying that ML is a subset of statistics, mind you, but the statistical underpinnings of it definitely are. ML is not _just_ statistics too.
Moreover, why would statisticians be pissed about the efficacy of a model?
Firstly, many problems/questions that I work on are not concerned with prediction.
Secondly, even if I did, I would love to use DNNs. It's just that I never have a use for it considering I'm only looking at tabular data. Why bother with DNNs when, say, a random forest will do?
You should know it's used in deep learning but unless you need to include some math in a research paper to impress the reviewers (true story) you never need it.
Personally, I believe Kaggle is one of the ways to slowly gain some practical experience: https://www.kaggle.com/
However, I’m not sure if it’s sufficient.
Recently, I’ve been taking a deeper dive into studying various types of competitions. For example, I’ve created a repo where I’m organizing notebooks, etc for a regression competition:
https://github.com/melling/ml-regression
I’m creating others for classification, nlp, vision, etc
Of course, the self-study method means people have knowledge gaps because there’s no syllabus tailored for an interview
I ask for the actual fundamental skills in the job ad. Say 5 skills for junior, 15 skills for senior, organizing other people (incl clients) for a manager
I'm still experimenting with the format, but I do a mix of asking theoretical ML questions, prior experience with ML, and designing a system to solve a business problem using ML.
My expectations are always evolving since this is a new role for us. The current guidelines are that candidates should have broad knowledge of ML fundamentals. We also work through a design challenge together where a candidate solves a business problem using ML.
I'm still figuring out the best ways to evaluate these.
This is basically what all "optimizers" achieve in various ways, including momentum.
Adam uses several times more memory, and is slower, than momentum or just SGD. That's reason to not use if not needed.
Every time they pull off another thing that's just "too dang silly to work", and yet it does... it really makes me smile.
I took the free Machine Learning course at Stanford ways back, it was fun to get another toolkit, should I ever actually need it.