Machine Learning Does Not Work. It Functions.
The legacy side of our field does more harm than good. Legacy Data Scientists have solved logical, stable problems with Machine Learning and don't realize how different unstable problems are.
Understanding the foundational concepts behind Machine Learning is so important because everything we do is partial and flawed. Every implementation that goes beyond basic regression or any other simplistic modeling is an overextension. Every dataset that does not contain all examples is incomplete.
We don’t need the advanced concepts to get the models right. We use advanced concepts to understand why the models are wrong and where they will fail. We overextend math to comprehend our results.
Nothing is 100%. Machine Learning does not work. It functions. The distinction is important because when we say our model is functional not working, the risk is far more obvious. Our burden of proof is greater. We are allowed to bend the rules only because we define functionality with evidence.
We usually start by beating random guessing or supporting and improving a domain expert’s performance. Our models are improved from that modest starting point. Why hide humble beginnings or over promise incredible results? It comes from a side of our field that fails to understand there are two categories of problems we solve.
Logical vs Unstable Problems
Logical, well defined problems and solutions belong to traditional software and programming. Companies will often implement models where software would have done the job. Models perform exceptionally well here because the entire process is stable. Data doesn’t drift very much in logical processes. There is a single distribution of data rather than several.
This gives people and businesses a false sense of security. They move from stable problems with logical solutions to unstable problems requiring intelligent solutions without realizing the difference. Some Data Scientists have only ever solved logical problems and when they talk about certainty and stability, it shows.
When you hear someone say that Machine Learning is just a bunch of if/else statements, they’ve only seen logical implementations. People who dismiss standard approaches for understanding a trained deep learning model’s generalization limitations have only seen deep learning applied to logical problems.