What is Machine Learning?

‘Machine learning’ has become a rather prolific buzz-word, one that has become especially prevalent over the past five years. Still, for a topic so often talked about, seldom do we see any useful explanations putting this topic into understandable terms. In this article, we aim to turn this complex beast into plain English.

 

So, what exactly is Machine Learning?

 

In essence, machine learning is the scientific art of making computers learn and act like humans. That is, designing them to learn and improve from experiences overtime without explicit instruction from an operator. Machine learning is, at its core, a programmed algorithm that improves with experience. For an algorithm to improve, it needs to study, just as humans do for exams. 

 

It sounds almost like Sci-Fi when explained as such, but it is not a new concept by any means. Machine learning algorithms have been around since the 1950s! Crazy, right? 

 

Let’s dive in deeper and see just how these algorithms work. To do so, let’s use an analogy. Imagine you are prepping for an exam on different dog breeds. In this scenario, you will receive pictures of dogs (such as our office mascot below) and told to name the breed.

Product development dog

For you to study for the exam, you would need to look at many different pictures of dogs, guess their breeds and have a friend or teacher provide feedback on your answers. For the exam, you must learn to differentiate not only between the breeds but also be able to recognise the variations within the same breed. 

 

To perform in the exam, you will need to learn the differences between many breeds, for example, the differences between a Jack Russel and a Smooth Fox Terrier – two breeds which are often confused with one another.

Product development Jack Russel

VS

Product Development Fox Terrier

Furthermore, you must also understand what features define a Jack Russel and Fox Terrier so you can identify the slight variations within each breed. Some Jack Russels have white fur, brown fur, long fur, short fur, floppy ears, straight ears, but when all is said and done, it is still a Jackie.

Software development dogs

Through repeated exposure to the images and consistent, regular feedback, in the form someone correcting you, you quickly learn to spot these crucial differences.

 

Now, let’s say you revise for this exam with a mate, Tommy. Tommy collects 20 pictures of dog breeds and begins to quiz you. For the sakes of our explanation, the images Tommy shows will be referred to as ‘inputs’ and the answers you retort with will be known as ‘outputs’. These are the terms used in the machine learning world.

 

Now, you look at the first input (image) and give your three best outputs (answers) in order of probability. 

 

Given your current knowledge base, you are about 70% sure that the input is a Jackie, but a niggling voice in the background thinks there is a 30% chance it is a Fox Terrier and a 20% chance it is a Jug (half pug, half Jack Russel). Please note that in the machine learning world, the totals do not need to add to 100%. 

 

 Based on this, the outputs will be:

1. Jack Russel

Jack russel

 

2. Smooth Fox Terrier

Programmer dog

 

3. Scottish Terrier

Scottish Terrier Programmer

Tommy looks at you with pure disappointment as he lists number three as the correct answer…

 

However, that instant feedback refines your understanding of what Jack Russels and Jugs look like so when the same pictures circle back around; you will have a better likelihood of selecting the correct breed.

 

After hours of study, going through the inputs over and over, making multiple mistakes, receiving feedback, you become super efficient at picking the right breed. You will have become a professional breed recogniser that can quickly differentiate between breeds and the variations within them. A real savant!

Machine learning dogs

So, what does this have to do with machine learning?

 In essence, this is how machine learning functions. The difference being, in the previous example, you were the machine learning algorithm.

 

Machine learning has a number of applications in our modern world that can boost productivity. One Australian company that is harnessing the power of machine learning is Tiliter. Tiliter is a startup using machine learning algorithms to identify products at grocery stores without the need for bar codes or customers manually entering the product information.

machine learning for vegetables

How Tiliter uses machine learning follows the same principles we detailed in our example with dog breeds. The only difference is that you have been swapped out for a machine learning algorithm, customers have replaced Tommy, and the dogs are the shopping produce.

 

To illustrate this, let’s see how such an algorithm can be trained to complete this task.

 

Let’s say you want to buy a pink lady apple. You walk to the self-serve counter and place the apple on the scanner, just like the ones you see at woolies. The machine learning algorithm views the input ‘apple’ and gives three outputs ‘guesses of what the item is’ in the order of probability as to which guess is correct.

 

The algorithm is almost certain the item is a royal gala, so lists it as the first option. However, it thinks there is a small likelihood it could be a red delicious or a sundowner, so it lists these in places two and three.

 

Machine learning apples

The algorithm spits these options out for you to

select and you inform the algorithm that the 3rd option was in fact correct by selecting the pink lady. The algorithm receives this information and uses it to refine its criteria on what represents a pink lady so it can better identify them in the future.

 

Over time and repeated exposures to various products, the algorithm learns to differentiate not just between different products, but also the varieties between them.

 

Just like the dog breed example where you altered your responses based on feedback from Tommy, machine learning algorithms tweak their responses based on consumer feedback.

 

Machine Learning

On the surface, machine learning can seem like a complex topic, and you would be right thinking so. However, put simply, machine learning algorithms are nothing more than mathematical formulas written in code. These algorithms are tweaked every time they receive an input, produce an output and receive feedback, so that the next time an input is received, the algorithm will be more accurate. This is essentially how machine learning algorithms learn.

 

A salient takeaway we at SAPHI would like to leave you with is that machine learning does not always mean ‘better’. If these algorithms are applied incorrectly, you can quickly find yourself in a tangled mess of a project that wastes your time and money.

 

Programmer stressed

If you think you have a project that would benefit from machine learning or would just like to reach out and find out more about how it can help your business, reach out to our friendly team for a chat today.

 

If you liked this article be sure to follow our business page here and if you are interested in learning more about tech, check out our other articles like our Water Tank Monitoring System or consider coming along to our free monthly meetup BlastFurnace. BlastFurnace is an in-person and online meetup that runs every second Thursday of the month. Come along to learn more about relevant tech topics, have a laugh and join in on the fun.

Thank you again everyone!