This article was originally published on Towards Data Science on July 13th, 2020.
Deep learning has been a hot topic in the news for quite some time now. There are excellent reasons why — the most important one being the added value it provides through software. Today we’ll explore just how easy deep learning got over the years and what that means for the job market.
Let me make a big bold disclaimer first — this article does not apply to the research portion of deep learning. This article, however, does apply to practical deep learning. By the term “practical” I mean utilizing deep learning libraries to solve a specific business problem.
Today we’ll explore just what the companies can do deep-learning-wise without having any deep learning engineers employed. All of the work can be done either by software developers or by domain experts — as it boils down to a couple of mouse clicks.
The aim here is to test if deep learning engineers are becoming obsolete, and to test the needed skill levels for entry level deep learning jobs — all according to the standards in 2020.
But how can we test this? Good question. Let’s go through a concrete example in the next section.
A concrete example
“Without data, you’re just another person with an opinion” — said William Edwards Deming, and I couldn’t agree more. I don’t expect you to believe in everything you read — I know I wouldn’t. That’s why I’ve prepared a concrete and easy to follow showcase you just can’t argue with.
Let me introduce you to Joe.
Joe works in a hospital in a department that deals with lung diseases and lungs in general. There’s a lack of medical experts, and the work just keeps coming in. Medical personnel is overworked, tired, and as a result — prone to errors.
I’m not a medical expert, so pardon me if I get something wrong here — it’s the overall idea that counts.
To somehow relieve the team, Joe decides to use deep learning to “outsource” the repetitive tasks of, let’s say, lung image classification. As the end result, Joe’s medical team should have more time to work on the human aspect of the job. The only problem is — Joe doesn’t know the first thing about deep learning.
Joe searches over the web and finds some AutoML tools — like Apple’s CreateML. It also just happens that he has a Mac at his disposal. Great!
After a bit more research, Joe finds CreateML good for a bunch of tasks — image classification being one of them:
Awesome. Joe works in a hospital, so acquiring data isn’t a problem. His team has collected and labeled a couple of thousands of images, ready to be plugged into CreateML.
Now I don’t have access to their images, so I’ll use the Pneumonia lung image dataset for demonstration. The dataset contains over 5K lung images of (very) different sizes — which would pose a problem for a deep learning practitioner, but not to CreateML.
The next step for Joe is to develop a predictive model. After reading an article or two, he is familiar with the concept of train/test/validation split, so he organizes the data in that way. It just turns out CreateML works in the same way:
Joe can now hit that big bold Run button and start the training process. It took around 1 hour to complete on my machine, but as a result yielded 85% accuracy on the test set (previously unseen data):
I don’t know how often medical experts are wrong in their classification, but 85% must be a good starting point!
I’ve worked on this Pneuomina dataset before (with PyTorch) and obtained only 83.5% accuracy on the test set. The recall values are very high here — around 99.5% — which means that if the image is classified as infected, we can be 99.5% sure that it actually is infected.
In simpler terms, the model is highly unlikely to misclassify positive cases. The problem with this dataset is that the classes are not balanced — there are around 2x more negative than positive cases — which has an impact on the overall predictive power of the model (accuracy).
Nevertheless, 85% is rock solid, at least to get started with. Joe is an imaginary person, of course, alongside with his medical team, but I hope you get the idea.
What does this mean for the job market?
Does this mean deep learning jobs will become a thing of the past? Not at all, but you should still be concerned to a degree.
Try to think like a business for a second. Would you hire newbie deep learning practitioners if a free tool can outperform them? I know I wouldn’t. Also, CreateML models are easy to deploy models to iOS and macOS, but with some manual work, the model can be deployed anywhere.
Tools like CreateML are designed for software developers — to make it easier for them to use machine learning in applications. It’s not meant to replace people, but one can only assume that a good portion of companies don’t need a more sophisticated solution than tools like these can provide.
Also, could you expect newbies to know how to handle model deployment? No, but your software development and DevOps teams can handle this task easily.
So what’s the purpose of deep learning practitioners then? Well, to outperform tools like this one through expertise and domain knowledge. And junior-level practitioners likely won’t be able to do that. That’s why most of the positions in the field are senior.