A supervised machine learning algorithm (as opposed to an unsupervised machine learning algorithm) is one that relies on a labeled input data to learn a function that produces an appropriate output when given new unlabeled data.
Let’s imagine a computer as a child 🧒 and we are its supervisor (e.g parent, guardian, or teacher), and we want the child (computer) to learn what a dog 🐶 looks like. We will show the child a lot of different pictures, some of which are dogs and the rest could be pictures of anything (cats 😼, pigs 🐷, cows 🐮, etc.)
When we see a dog, we shout “dog!” and when it’s not a dog, we shout “no, not a dog!” After we have repeated this process with the child, we show them an image and ask them “dog?” and they will correctly (most of the time at least) answer by saying “dog!” or “no, not a dog!” depending on what the picture is. That is supervised machine learning.