This week on #TechTalksWithMelwyn we talk about Artificial Intelligence and how it’s raising the notch at every step with Machine Learning.
One of the recent tech trends that has fanboys jumping in their seat, no it’s not Bitcoin or Blockchain, instead, it is the field of Machine Learning. If you haven’t had a chance to get familiar with Artificial Intelligence (AI), you may want to check out my last blog post before you get to digest this one.
You must be wondering what will happen to all those bearded guys in plaid shirts (or women in oversized hoodies) with their MacBooks hogging all the space in your local coffee shop claiming to be programmers. Simply speaking, programmers will be fine because the use case for machine learning is a little different from what they are programming systems for. The primary use case for Machine Learning is in environments where the inputs are constantly changing or in recognizing patterns that are not easily distinguishable to a human.
A real-life example would be when you tell your email account that a particular sender was ‘Spam’ and did the same for all such senders versus you telling your email account that a particular email looks like ‘Spam’ and it automatically filters similar emails in the future from any email id. In the former, you are setting rules and individually programming your email account whereas in the latter you are training the “machine” to identify certain keywords and patterns of ‘Spam’.
Practical applications of Machine Learning are all around us from facial recognition to mutual fund bots that invest for you down to natural language processing i.e. understanding what we speak or write. The one thing in common to all these applications is the infinite amount of complex and constantly evolving data. As this data keeps changing, it becomes impractical for a person to parse through and program the system. For example, if you use the FaceID feature on your iPhone, it can still recognize you if you wear makeup or drop 5 lbs.
There are 2 primary types of learning that we will cover in this topic. To make it simpler, let’s consider the analogy of training a baby.
- Supervised Learning: As the name suggests, we use supervised learning when we have known problems and known solutions. Let’s assume we want to train the baby to stand up, we know the baby has to push off the ground and balance its weight on its legs so we place the baby near a sofa (or couch) and place its toy on the top of the couch. The baby grabs on to the couch and learns to stand up to reach its toy. This method of learning allows us to guardrail the direction of the output by clearing the surroundings of the baby and focusing its efforts to get to the toy.
In the real world, this method has multiple uses like handwriting detection and predicting the weather based on previous examples. The most common methods of implementing this are with classification i.e. identifying the closest resemblance and with regression i.e. crunching numbers to reduce the possible range of errors. At its core, this method relies on having previous knowledge of the desired output and then repeating it multiple times over.
- Unsupervised Learning: A little more complex than the supervised learning, this method relies on the system finding patterns among the underlying data and grouping together the most similar outputs. Here the baby wants to chill but isn’t aware of what is a good place to be at what time. The baby crawls all around the house and finds that the kitchen floor is hard, the mat is soft, and the couch is softer but difficult to get to. So, the baby decides the best places to fall asleep while crawling is on the mat, if it can climb, then chill on the couch, or if it wants to roam around, the hard floor is the easiest to move on.
Practical applications of this type of learning are implemented by clustering known groups that are most like each other and dissimilar from others that form a separate cluster of their own. An example you may come across daily is Google news – articles from different sources with different headlines and content are grouped as one type of news.
Although researchers are coming up with more types of learning like Semi-supervised, Self-supervised, etc. at the core of Machine Learning, we still implement everything with either knowns or unknowns and group based on similarity. In the next few issues, we will get a little bit deeper into each type of learning and how you could build your own Machine Learning model at home!
Till then, keep learning, and remember that just like that baby, even the computer doesn’t know what it’s doing!
Fount of wisdom, insufferable know it all, make it go away are just some of the phrases used to define Melwyn. When he is not at his Consulting job, he spends his time reading about technology and current affairs.