We have spent thousands of man-hours on this challenging subject. Gallons of coffee later, we would like to show you something that might change how you work with data in Machine Learning & AI. We believe that this simple idea speeds-up your workflow to setup a complex computer vision system and brings unseen scalability to your teams.
It’s already 2020, so let’s challenge ourselves! We are here to offer a lot more than just training models, as common AI companies do. Our purpose is not to develop AGI, which is going to take over the World, but easy to use AI solutions for people like us. Are you ready for that?
AI Setup Cannot Get Much Easier
With flows, you can break your ML problem down into smaller, separate recognition tasks (models) and then easily chain these tasks one after each other to achieve the full complexity. The image processing can be conditional — for instance, your first recognition task filters out non-valid images, then your next task decides a category of the image and, according to the result, other tasks are employed to recognise specific features for given category.
Flows allow your team to review and change datasets of all complexity levels fast and without any trouble. It doesn’t matter if your model uses three simple categories (e.g. cats, dogs and guinea pigs) or works with enormous and extremely complex hierarchy with exceptions, special conditions and interdependencies: Flows will help you to review the whole dataset structure, to analyse and, if necessary, change its logic. With a few clicks, you can add new tasks, labels and change their chaining, you can change the names of the output fields, etc. Neat? More than that.
Define a Flow with a Few Clicks
Let’s assume we are building a real-estate web site and we want to automatically recognise different features visible on the photos. But there are different features to be recognised for an apartment and for different kinds of houses. Here is how we can define this workflow using recognition flows:
First, we let the top category task recognise the type of estate (Apartment vs. Outdoor House). If it is apartment, we can see that two subsequent tasks are called — “Apartment features” and “Room type”. If the image is Outdoor house, we continue processing by another nested flow called “Outdoor house”:
In this flow, we can see another branching according to task that recognises “House type” and different tasks are called for individual types (Bungalow, Cottage, …).
Best Application — Fashion Tagging
We are playing with Fashion subject since the inception of Ximilar. It is the most challenging one and also the most promising one. We have created all kinds of tools and helpers for Fashion, such as Annotate App and now we are proud to have a very precise service (see demo) with a rich Fashion Taxonomy. This is what we can say about a dress now:
And, of course, Fashion Tagging is internally powered by Flows. It is a huge project with several dozens of features to recognise, about a hundred of recognition tasks and hundreds of labels all chained into several interconnected flows. In this way, we define our taxonomy and each image traverses through this taxonomy tree. This is our “top classifier” — a flow that can tell one of our seven top categories of a fashion product image. For instance, if it is a “Clothing” product, the image continues to “Clothing tagging” flow.
And we are not finished yet
Stay tuned for a subsequent blog post about how to get maximum out of Flows — we plan to add “object detection” to flows. Imagine a dentist assistant app: you take a picture of a dental x-ray, your first model detects individual teeth, the Flow then cuts out the image are of each tooth and so that your other model can recognise if the tooth is healthy or not. And you don’t have to write a single line of code to achieve this! Looking forward to it? We certainly are!
Try It Now — it’s Free
And what’s the best part? Flows are part of Ximilar’s free plan and you can try them right now. Register or Sign-Up, activate Flows service in the Ximilar App, right at the Dashboard, and you can interconnect tasks and labels defined in your Image Recognition service like we just explored.
Before Flows, setting up the AI Vision process was a tedious task for a skilled developer. Now everyone can setup, manage and alter steps on their own. In a comprehensive, visual way. Being able to optimise the process quickly, getting faster response, loosing less time and expenses, delivering higher quality to customers.
We strongly believe you will love Flows as much as we enjoyed to bring them to life. And even if you feel like there is a feature missing, let us know and we are open to refine what we have, to even increase the superpowers the Flows feature has.