Deep learning has been all the rage over the past few years, but recently the community has sobered-up.
For sure, deep learning is one of the most significant technological breakthroughs we’ve seen in the last decade. However, it sometimes feels like a lie. We’ve been promised a lot and now we’re disappointed because our bus is 5 minutes late.
As a community, we have focused on advancing the forefront of this brand new field. Research is at an all-time high. Papers are published every day on a variety of topics that it’s hard to keep track of.
Today, a lot of practical applications use deep learning to generate real value. But the field is not going fast enough. We need to translate state-of-the-art algorithms into production systems.
Why don’t we seize the opportunities already existing? First, we lack the know-how. According to stateof.ai, the most recent and thorough survey of the AI Community, there are 20k deep learning researchers and engineers worldwide, but only 3k are available for work. That’s two orders of magnitude lower than what we need. Plus, you will be competing with the likes of Google, Facebook, Tesla, etc. You’d better have some really, really, deep pockets!
The solution is not there. Besides, most innovative projects don’t fail to go into production because the neural network models are not good enough. No, quite the contrary. It’s all the other little things, especially for computer vision:
- Building your first dataset and improving it according to your business needs while doing version control on it.
- Managing who annotates what and assisting them to be faster and smarter.
- Optimizing your neural networks to reach the best performance level.
- Deploying your networks on a public or private cloud, on-premises or on embedded devices, and monitoring their performance in real-time.
- Detecting errors in production and retrieving them, then retraining and updating your deployed networks on the go.
I’m going to stop here, you got the idea. What we need is a complete ecosystem where your datasets, models and deployed systems all interact with each other.
AI Software 2.0
The premise that you can first focus on building your dataset, then tinker with your model to get maximum accuracy and finally optimize the hell out of it and deploy it, is dead. That’s how we used to do things. It doesn’t work anymore. Not when you’re out of the world of research, and you want to build a system that actually goes live into production and deals with all the issues that will come up and that you’d never thought about.
Yes, it’s hard, because fiddling with the neural network is often the fun part. Except it accounts for only 10% of the overall value. What’s more, the difference between a standard model and a model which you’ve spent countless weeks on is not that much. If you really want to deploy your system, you need to focus on all the rest.
For some very specific use cases, you want a team of experts, but most of the time, you don’t. What you want is to enable people to use this technology and actually make it accessible to them. As Andrej Karpathy (Director of AI at Tesla) said, we need Software 2.0.
In the 2.0 stack, the programming is done by accumulating, massaging and cleaning datasets. For example, when the network fails in some hard or rare cases, we do not fix those predictions by writing code, but by including more labeled examples of those cases. Who is going to develop the first Software 2.0 IDEs, which help with all of the workflows in accumulating, visualizing, cleaning, labeling, and sourcing datasets? — Andrej Karpathy
This is our vision at Deepomatic. We’re building the one-stop platform where you can build and manage your datasets, train and optimize your models, then deploy and monitor them in production without any line of code while leveraging the complete ecosystem. We’re building the Software 2.0.
Leo Paillier | Solution Architect @Deepomatic