Towards AI: How long does it take you to go from idea to working prototype? - a day, a month?

5,628 reads

Our case

At DeepSystems, we have been running consulting business for over 5 years. We focus on helping other companies to leverage AI to optimise their operations. Vast majority of our projects are in a space of computer vision.

Whenever we start negotiating Scope Of Works and pricing, it’s very beneficial to have some early, dirty and working prototype. Otherwise, it’s hard to estimate the efforts and put appropriate price. So in our business practice it’s quite usual to build something before the contract even signed.

But in this post, we suggest to focus less on us and more on you guys.

Your case

Suppose you have an idea (or business request) to solve semantic segmentation or object detection task that attacks a particular business need. It might be finding cracks on the road, vessels on an eye, detecting persons in the crowd or something else.

Person detection

Quality inspection: finding cracks on a road

Eye vessels automatic segmentation

How much time will it take you to go from an idea /business request to something working?

Definitely, the answer depends on the background. Let’s consider the following categories of people.

Category 1. Data scientist. Uses Python as a main language, has experience with TensorFlow, PyTorch. Has math, statistics and machine learning background.

Category 2. Software developer. Uses C++ as a main language, also familiar with Docker, RabbitMQ, SQL & NoSQL databases. Has computer science degree.

Category 3. Domain expert. Responsible for safety, quality, efficiency, and cost reduction, for instance, in manufacturing, agriculture or construction. Or, in medical domain, we might consider a doctor as an example.

To make things interesting, let’s put 1 day limit to perform the task.

Our empirical answer is that, on average, only a “Data scientist” has chances to have the job done within given time constraints. And, actually, not every data scientist — he needs to have experience in computer vision, as well as solving similar tasks in the past.

The main reason our “ideal data scientist” have chances is that he has working pipeline (or at least, good understanding of it) to address these kinds of tasks.

So he knows:

what software to use to label the data

And he has:

code / library to construct training data from labeled images, for example, by augmenting the labeled images

Pytorch / tensorflow implementations of Deep Learning models like Unet, Mask R-CNN or others, which he used in his projects in the past

Visualization tools to present the solution

In other words, our data scientist leverages his experience and ecosystem to get the result in a short time period.

But what about 2 other categories of people?

The time limit is too tough for them. In most cases, they have no idea how to approach the task.

AI is not only for data scientists, everyone should use it

Actually, software Developers are very familiar with various development tools and transition to Data Science is the most natural for them. After taking several online courses, some kaggle competitions and working on personal projects they are in a very good shape. But the transition process is still hard, it takes time and motivation.

As for domain experts, they are in the worst situation — most of them have neither computer science nor data science background. But nevertheless, these guys are very powerful in a way that they are the only ones who face real needs of people / businesses on a daily basis. People involved in medicine, agriculture, construction, production pipelines see inefficiencies, they understand the real pain, or, speaking in other words, real tasks to solve. So the ideas coming from these guys are extremely valuable.

A following questions arise: “Is that situation normal?”, “Maybe, everyone should mind his own business?”, “Let software engineers develop software, and construction guys construct the bridges the way they used to?”

Our answer is that AI today has so much to offer and it’s not very clever to ignore it. Literally, every industry will benefit from AI and, as a result, we will live longer and happier.

Going back to our topic, let’s make the following statement:

“We believe that Data Scientists, Software Engineers and Domain Experts should be able to leverage AI today, right now.”

And one more statement:

“It should take 2 hours to go from idea to “dirty prototype” for all 3 category of people”

We know that it is possible for computer vision applications — recall our earlier discussion on DeepSystems’ policy to build a prototype before signing a contract.

Obviously, we can do that not for every task, but for the most common tasks in computer vision like detection or segmentation — we can and actually do.

Supervisely platform — steps toward AI democratisation

We leverage our Supervise.ly platform not only to prototype fast but also to perform active learning and continuously improve the quality of models.

The idea behind the platform is to address the entire pipeline — from data labelling to training and running neural networks within a single environment. Community edition of Supervise.ly is free, available online, and, mostly, open sourced.

The easiest way to start is to watch the following video:

It covers 3 main concepts we have to deal with when building an AI app:

Data labeling Data preparation Model building

More importantly, the entire process of building a prototype is shown there — semantic segmentation model is built to distinguish lemons from kiwi.

You will find all information here to reproduce experiments described in the video.

After watching, we hope that you realise that building AI models today is actually easy and you can start doing it straight away (though, several years ago it was not the case).

We will keep releasing new videos on weekly basis to attract more people to AI development.

Let me put a disclaimer here. We think that deep understanding of AI technologies is beneficial and worth the efforts. For instance, in this blog post you will find great guidelines on how to better approach AI field.

If you found this article interesting, then let’s help others too. More people will see it if you give it some 👏.

Tags