Learning to see — A no-code ML workshop

30 participants with no background in data science developing their own machine learning-based image classification in just 2 hours

Benjamin Flader
AIxDESIGN
8 min readOct 21, 2020

--

_________________________________________________________________

PSA: It is a key value for us at AIxDESIGN to open-source our work and research. The forced paywalls here have led us to stop using Medium so while you can still read the article below, future writings & resources will be published on other platforms. Learn more at aixdesign.co or come hang with us on any of our other channels. Hope to see you there 👋

A no-code machine learning workshop with 30 participants, with diverse backgrounds — from (UX-)designers, managing directors, innovation scouts to even a biologist — all with zero to basic AI knowledge, none with any expert knowledge in data science or statistics. The goal of this workshop was to understand the basic vocabulary, processes, and limits of AI in a playful approach using a no-code tool from Google named Teachable Machine.

The warm-up exercise: The participants mood — already two cats, good start!

We use artificial intelligence in all our everyday lives already. Often we do not even recognize it as such. Typical use cases are simple predictions, recommendations, chatbots, and image classifications. We unlock our phones by our face, our photos get automatically organized in Google Photos, and we visually search both in shopping apps and Google Lens. In this workshop, we focused on image classification. Why? Because you literally see how AI works.

Covering the basics of AI and image classification

But first, what is AI? It is important to emphasize that AI is not a complete representation of the human brain (= General AI) in today’s context. We talk about self-learning statistics, also named machine learning, usable just for a single case — e.g., such as classifying dogs and cats (= Narrow AI). Image classification is all about machines learning how to recognize objects in images. A way to understand it is by finding analogies to the way humans remember objects. Namely, by understanding characteristics — here named features.

For example, a cat might be different from a dog by the form of its ears or the whiskers. Or as one participant pointed out you can differentiate a cat from dogs by the “cold hatred in the eyes” (does not represent the opinion of the author). We went on to explain convolutional neural networks (the basis for image classification) and transfer learning (the way to use prior knowledge to learn something new).

Covering the basics of AI
Covering the basics of AI & image classification

To learn more about the theory behind AI take a look at:

Drawing donuts to understand image classification

An easy way to better understand how image classification works is a game from Google named “Quick, draw!”. You can try it out here.

“Quick, draw!” is precisely what the name says. It tells you to draw an object and the machine has to guess what you are drawing. Are you as good of a drawer as our workshop participants? Some of them reached 6/6. Here some highlights from our session:

1) Doughnut or fried egg? 2) Kitchen sink art 3) Disappointed whale (hopefully, not by that workshop)

Getting started with Teachable Machine

Teachable Machine is an easy to use tool to build an image classification model quickly. You can train it to recognize different objects, body poses, gestures, and facial expressions from your camera’s input or files. The resulting model can be exported and used in real web projects where you can trigger any output. Try it out here. It gets even used by kids, so you should be able, too.

The interface of Teachable Machine represents the typical machine learning process — gather data, train a model, and test it.

Interface of Teachable Machine

But, before building the first model, everyone needs a use case first.

Brainstorming Teachable Machine Use Cases

In a 5-minute brainstorming task, the workshop participants found over 60 use cases for image classification. Some easily possible with Teachable Machine. Some are more tricky.

The (unstructured) result of the 5-minute brainstorming

Training of the first image classification model in Teachable Machine

This is how you go about teaching your image classification machine:

  1. Choose if it is an image or poses project
  2. Get familiar with the interface
  3. Create classes and label them
    Do not use too many classes — e.g., cat (class 1) or dog (class 2).
  4. Prepare data
    Aim for at least 50 for each class (from webcam or images).
  5. Train your model
  6. Test, test, test
  7. Iterate
Training a “Stop biting nails” model

Between step 6 and 7, here are some ways to improve your model:

  • Train more! Different angles, positions, backgrounds of the object. Wider variety (e.g., different kinds of dogs for the cat/dog-classification). Third-party sources.
  • Use the crop feature of Teachable Machine to see if it really detects your object or simply something in the background.
  • Balance training data for the classes (don’t train 50 images on one, and 10 on the other)
  • Use a fallback class (for all cases which do not belong to any classes already defined)
  • Never train alone! Get help from at least one other person.

Exporting your classification model into the real world

Once you created your own model in Teachable Machine, you can export it to use it in other projects. Just two options to highlight in this article:

Teachable Machine project in Adacraft

Showcasing 5 “taught machines” from the workshop

The participants came up with a range of creative and interesting use cases. Let’s take a look and pick out five results:

1. Types of boots by Jesus Jmunox

Jesus trained Teachable Machine to detect different types of Doc Martens. While it had difficulties to differentiate between the Jarrow Derby and the Country Derby, the Grassington Derby stood out from the rest. Train more pictures from different angles & positions and it should be fine. Could be used for visual search in shopping apps or to understand individual taste.

Recognising shoes

2. Half-full or half-empty: A philosophical question

Does the machine consider a glass empty or full? The answer is based on the trained model: If there is something in the glass it is deemed full. Why? The data in the “empty” class is all almost the same, whereas the “full” class contains all types of states, so it automatically falls back to the “full” class whenever the picture is different from the “empty” glasses. To quote from one of the participants, in the end “it’s us humans that label what a class actually refers to, NOT the machine.”.

3. Is it a teddy or a corgi? by Laura Sima

Picked this one out because in the first round (with only a few images per class as training data) it classified one corgi in the test as a teddy bear. The suspected reason: the shape represented the edge of a teddy bear.

Teddy vs. Corgi

4. Sleeping room or bathroom? by Sofia Gomez

Interesting as a real-life use case. Consider improvements in search. Or connecting descriptions or reviews with corresponding images.

5. Virtual background or not

Ever wanted to know if someone in the video call lives in a luxury room or is it just a virtual background? In general, this is hard for a machine (or even a human) to detect, especially for a pre-built model that is best suited to detect different objects, as in Teachable Machine. Surprisingly, it worked exceptionally well.

Awesome image classification models everywhere

Workshop reflections

What did we learn in the two hours of the workshop? The theory part laid the basis for understanding what AI and a model are in a dense way. Naturally, you could teach it yourself with the links above. “Quick, draw!” on the other hand helped everyone to “think” like a machine. The brainstorming made clear that there are hundreds of use cases for image classification (and therefore for AI in general). Teachable Machine was extremely useful in several ways.

First of all, you visually see the whole AI process in one interface — from data preparation, overtraining the model to actually test and use it. By using it everyone now experienced the whole process — rather than just talking about it. Which also makes it more memorable.

Secondly, it was about failing — and in the first round, many did. Failing (and fixing it) actually made everyone realize the inner workings of the model, but also helped to get a sense of the limits.

And thirdly, all participants successfully created a working image classification model for their own use cases. Some of them can actually be used in real projects afterwards. Sounds like a successful workshop for everyone participating!

Happy participant posts :)

About AIxDesign

AIxDesign is a place to unite practitioners and evolve practices at the intersection of AI/ML and design. We are currently organizing monthly virtual events, sharing content, exploring collaborative projects, and developing fruitful partnerships.

To stay in the loop, follow us on Instagram, Linkedin, or subscribe to our monthly newsletter to capture it all in your inbox. You can now also find us at aixdesign.co.

--

--