Skip to main content
Racing Turtles

Can I Create an ML App Without a Team?

The Vision Behind Comparing Apples to Oranges




$500,000.

That's not the cost of a luxury car. Nadiia Shevchuk from Altamira estimates you need to spend upwards of half a million dollars to develop an image recognition app. From business to coding to maintenance, the steep cost of creating an image recognition app prevents many from even attempting. In an age of rapid AI/ML development, making use of its potential feels daunting. I didn't know how to build such an app. Little knowledge of Artificial Intelligence and Machine Learning, but expertise required in both to create image recognition apps. I didn't know what to do.

I was working on an “Uber for trash” project. The plan was to let “waste droppers” drop off their trash to “waste pickers” for a fee if they didn't have local waste pickup. Those pickers could then make a living taking people's waste to the appropriate destination. Ridiculous idea. Discarded. Still, it posed a problem. How would the droppers know how to sort the waste? I didn't want them to stress about it. They might want to know whether the waste belonged in “trash”, “recycle”, or “compost” bins. What if they could take pictures of the waste to know where to put it?

That gave me an idea: build an image classifier. It takes an image trained on a dataset and identifies it. Images collected from image search engines pose a risk, but will serve as a dataset for now. The application works for any set of categories. To build the app, I need a few parts. A Python script sorts images between a list of categories, gather images from image search engines, train a neural network on them, then export the model. A web app will make it easier to use.

Prototype finished. Thankfully. Shortens dataset building, neural network training, and model deployment from days or weeks to less than an hour. The cost floor to building image classifiers seemed within reach, and I became excited for the future of the app. The UI design, frontend and backend development, and server administration learned proved critical to make this project idea become reality. I scooped up information. Building this project taught me what I can do and what I can't.

Attempting to build this business humbled me more than expected. Every aspect of the software is important, from backend to frontend. Know when and where to pivot. Your idea at the start won't necessarily be your most productive idea. Listen to customers. You don't know better than the customer. Bad design destroys even a good product. Setting up a successful business is difficult and requires more than software development knowledge. Most importantly, never give up.

License #

This work is licensed under CC BY-ND 4.0.