What Is Machine Learning?: Machines Can Do High-Frequency Repetitive Tasks With High Accuracy Without Getting Bored
What Is Machine Learning?: Machines Can Do High-Frequency Repetitive Tasks With High Accuracy Without Getting Bored
Machine Learning is the science of teaching machines how to learn by themselves. Now,
you might be thinking – why on earth would we want machines to learn by themselves?
Well – it has a lot of benefits.
On the other hand, if we can teach machines to detect whether the floor needs cleaning
and mopping and how much cleaning is required based on the condition of the floor and
the type of the floor – machines would perform the same job far better. They can go on
to do that job without getting tired or sick!
This is what Machine Learning aims to do – enable machines to learn on their own. In
order to answer the questions like:
Machines need a way to think and this is precisely where machine learning models help.
The machines capture data from the environment and feed it to the machine learning
model. The model then uses this data to predict things like:
Let us look at a few examples where we use the outcome of machine learning already:
The applications of machine learning are immense. You can read this article for a
comprehensive list of applications driven by machine learning, which we use in our day-
to-day life:
Overview
We are the in middle of a revolution being led by machine learning applications
Here’s a comprehensive list of popular and common machine learning use cases
we see every day
These use cases range from the application of machine learning in our
smartphones to the transactions we do daily
Introduction
Picture this – you have an interview tomorrow for a machine learning role you have been
aspiring to for a long time. Everything needs to go as per schedule otherwise plans
might get messed up.
The beauty about all of this? You didn’t need to move or spend time typing all of this. All
you did was speak to your virtual assistant and the machine learning algorithms
powering that system went to work!
This isn’t some futuristic scenario where machines have a human-level psyche – this is
now! We are living in the midst of a truly global revolution thanks to advancements in
computational power and thus machine learning applications.
So, let’s look at the most common use cases of machine learning we deal with in our
day-to-day lives (sometimes without even realizing it’s machine learning at play).
That’s right! From the voice assistant that sets your alarm and find you the best
restaurants to the simple use case of unlocking your phone via facial recognition –
machine learning is truly embedded in our favorite devices.
Voice Assistants
That example we saw in the introduction about talking to our virtual assistant? That was
all about the concept of speech recognition– a budding topic in machine learning right
now.
Voice assistants are ubiquitous right now. You must have used (or at least heard about)
the below popular voice assistants:
Apple’s Siri
Google Assistant
Amazon’s Alexa
Google Duplex
Microsoft’s Cortana
Samsung’s Bixby
And so on. The common thread between all of these voice assistants? They are
powered by machine learning algorithms! These voice assistants recognize speech (the
words we say) using Natural Language Processing (NLP), convert them into numbers
using machine learning, and formulate a response accordingly.
The field is ripe for these assistants becoming smarter in the future as machine learning
techniques become more advanced. And you can learn to build your own speech
recognition system with our awesome tutorial:
Smartphone Cameras
Wait – what in the world does machine learning have to do with my smartphone
camera? Quite a lot, as it turns out.
The incredible images we are able to click these days and the depth of these images –
all of that is thanks to machine learning algorithms. They analyze every pixel in a given
image to detect objects, blur the background, and a whole host of tricks.
These machine learning algorithms do several things to improve and enhance the
smartphone’s camera:
Object detection to locate and single out the object(s) (or human) in the image
Filling in the missing parts in a picture
Using a certain type of neural network using GAN to enhance the image or even
extend its boundaries by imagining what the image would look like, etc.
Interested in reading more about how you can use machine learning to build your own
smartphone camera software? Your wait is over! Here’s the perfect tutorial to get you on
your way:
How does Apple or Google do this? Two words – recommendation engines. This is a
very popular concept in machine learning right now. There are various ways of building a
recommendation engine and you can get started with your own right here:
What a lot of people don’t know about this is that our smartphones use a technique
called facial recognition to do this. And the core idea behind facial recognition is
powered by – you guessed it – machine learning.
The applications of facial recognition are vast and businesses around the world are
already reaping the benefits:
The usage of face recognition models is only going to increase in the next few years so
why not teach yourself how to build one from scratch?
These companies use machine learning throughout their many products, from planning
optimal routes to deciding prices for the rise we take. So let’s look at a few popular use
cases in transportation which use machine learning heavily.
So I dug into this a bit more and came across the concept of dynamic pricing – an
excellent machine learning use case. To understand this, let’s take a simple example.
Imagine you’re starting a ride-hailing business. You need to plan the ride prices for each
route in the city in a way that would attract customers but also improve your bottomline.
One way to do it is to manually map prices to each route. Not an ideal solution.
This is where dynamic pricing plays a vital role. It means adjusting your prices to
changing market conditions. So prices vary depending on factors like location, time of
day, weather, overall customer demand, etc. That’s the underlying idea behind why
surge pricing was introduced.
There are multiple machine learning techniques at play that aim to optimize the route we
take.
Check out this article by Uber where they talk more about using machine learning to
identify efficient routes:
Google Maps
You must have guessed this one by now. Google Maps is a prime example of a machine
learning use case. In fact, I would recommend opening up Google Maps right now and
picking out the different features it offers.
Here are some that I can see (and have used extensively):
Google uses a ton of machine learning algorithms to produce all these features. Machine
learning is deeply embedded in Google Maps and that’s why the routes are getting
smarter with each update.
The estimated travel time feature works almost perfectly. If it shows ’40 minutes’ to
reach your destination, you can be sure your travel time will be approximately around
that timeline. Got to love machine learning!
Here are four use cases you are ultra familiar with. Now, look at them from a machine
learning perspective.
Email filtering
Dealing with way too emails at work? Or is your personal email inbox bursting with
utterly random and spam emails? We’ve all been there. My inbox count once read
11,000+ unread emails!
Wouldn’t it be easy if we could write a rule that would filter emails according to their
subject? A marketing mail would go to that folder. An email about work would come into
my primary inbox (and so on). This would make life so much easier.
As it turns out, this is exactly what most email services are now doing! They’re using
machine learning to parse through the email’s subject line and categorize it accordingly.
Take Gmail for example. The machine learning algorithm Google uses has been trained
on millions of emails so it can work seamlessly for the end-user (us).
While Gmail allows us to customize labels, the service offers default labels:
Primary
Social
Promotions
The machine learning algorithms immediately categorize the email into one of these
three labels as soon as you receive an email. We get an instant alert if Gmail deems it a
‘Primary’ email.
Of course, Gmail also uses machine learning to figure out if the email is spam or not. A
feature we are all truly grateful for. Google’s algorithm has become a lot smarter over the
years in deciding if an email is spam or not. This is where getting more data for a
machine learning algorithm is so helpful – something Google has in abundance.
Google Search
The most popular machine learning use case in this (or any) list. Everyone has used
Google Search and most of us use it multiple times on a daily basis. I would venture to
say we take it for granted that Google will serve us the best results up front.
Google Search has become an impenetrable behemoth that mortals cannot crack. How
it works underneath is something only those folks who have designed Google Search
know. One thing we can say for certain – Google uses machine learning to power its
Search engine.
The amount of data Google has to constantly train and refine its algorithms is a number
we cannot fathom. No calculator in the world will tell us the number of queries Google
has processed in the last two decades. It is a trasure trove for data scientists!
Now – imagine you were asked to build your own Google search. What rules would you
use? What kind of content would you include? How would you rank sites? Here’s an
article that will get you started:
Google Translate
I’m fluent in Google Translate. I’ve picked up bits and pieces of foreign languages like
German, Spanish, and Italian thanks to this wonderful service by Google. Anytime I
come across a bit of text in a foreign language, Google Translate immediately offers me
the answer.
It won’t surprise you to know that Google uses machine learning to understand the
sentence(s) sent by the user, convert them to the requested language, and show the
output. Machine learning is deeply embedded in Google’s ecosystem and we are all
benefitting from that.
Fortunately, we have a sense of how Google uses machine learning to power it’s
Translate engine. This article will help you understand and get started with the topic:
A feature which we regularly see if ‘People you may know’. This is a common feature
across all social media platforms, Twitter, Facebook, LinkedIn, etc. These companies
use machine learning algorithms to look at your profile, your interests, your current
friends, their friends, and a whole host of other variables.
The algorithm then generates a list of people that match a certain pattern. These people
are then recommended to you with the expectation that you might know them (or at least
have profiles very similar to yours).
I have personally connected with a lot of my professional colleagues and college friends
thanks to LinkedIn’s system. It’s a use case of machine learning benefitting everyone
involved in the process.
The ads that we see work in a similar fashion. They are tailored to your tastes, interests
and especially your recent browsing or purchase history. If you are a part of a lot of data
science groups, Facebook or LinkedIn’s machine learning algorithm might suggest
machine learning courses.
Pay attention to this next time you’re using social media. It’s all machine learning behind
the curtains!
These days if you’re working in the marketing an sales field, you need to know at least
one Business Intelligence tool (like Tableau or Power BI). Additionally, marketers are
expected to know how to leverage machine learning in their day-to-day role to increase
brand awareness, improve the bottomline, etc.
So, here are three popular use cases in marketing and sales where machine learning is
changing the way things work.
Recommendation Engines
We briefly spoke about recommendation engines earlier. I mentioned that these systems
are ubiquitous. But where are they used in the marketing and sales field? And how?
Let’s take a simple example to understand this. Before the advent of IMDb (and Netflix),
we all used to go to DVD stores or rely on Google to search for movies to watch. The
store clerk would offer suggestions on what to watch and we took a hail mary pass by
picking up movies we had no idea about.
That world is almost completely in the past now thanks to recommendation engines. We
can log on to a site and it recommends products and services to me based on my taste
and previous browsing history. Some popular examples of recommendation engines:
The list is long. Recommendation engines are everywhere around us and marketing and
Sales departers are leaning on them more than ever before to attract (and retain) new
customers.
I encourage you to read this beginner-friendly tutorial on how to build your own
recommendation engine:
Personalized Marketing
Recommendation engines are part of an overall umbrella concept called personalized
marketing. The meaning of this concept is in the name itself – it is a type of marketing
technique tailored to an individual’s need.
Think about this. How many calls do you get from credit card or loan companies offering
their services “for free”? These calls offer the same services without understanding what
you want (or don’t want). It’s traditional marketing that is now outdated and well behind
the digital revolution.
Now imagine if these calls or emails came highly personalized to your interests. If you’re
a big shopaholic and that reflects in your purchase history, perhaps the message could
be about a new service offering to extend your credit line. Or if you’re a machine learning
enthusiast, the email could offer courses suited to your taste.
Honestly, the potential for personalized marketing is HUGE. Machine learning helps to
identify customer segments and tailor your marketing campaigns for those segments.
You can regularly check how your campaign is doing through metrics like open rates,
clickthrough rates, and so on.
I strongly recommend reading the below guide which will help you rebrand your digital
marketing strategy:
Customer Support Queries (and Chatbots)
You will understand this at a very personal level if you’ve ever dealt with customer
support (and who hasn’t?). Those dreaded phone calls, the interminable wait, the
unresolved query – it all adds up to a very frustrating user experience.
Machine learning is helping remove all these obstacles. Using concepts of Natural
Language Processing (NLP) and sentiment analysis, machine learning algorithms are
able to understand what we’re saying and the tone which we are saying it in.
Voice-based queries
Text-based queries
For the former, machine learning algorithms detect the message and the sentiment to
redirect the query to the appropriate customer support person. They can then deal with
the user accordingly.
Text-based queries, on the other hand, are now almost exclusively being handled by
chatbots. Almost all businesses are now leveraging these chatbots on their sites. They
remove the impediment of waiting and immediately provide answers – hence, a super
useful end-user experience.
We have put together two intuitive articles on how to build your own chatbot which you
should check out:
Businesses are using machine learning to better analyze threats and respond to
adversarial attacks. These use cases extend to both offline threats as well as online
(bank frauds, financial threats, etc.).
Video Surveillance
I’m certain you must have heard or read about a certain country using video surveillance
to track its citizens (a quick Google search will tell you anyway). Organizations globally
are using video surveillance for various tasks, like detecting intruders, identifying threats
of violence, catching criminals, etc.
All of this is not being done manually, however. That would be immensely time taking.
So instead, machine learning algorithms are being used for the software that is put
inside these surveillance cameras.
These machine learning algorithms use various computer vision techniques (like object
detection) to identify potential threats and nab offenders.
Cyber Security (Captchas)
“I’m not a robot” – does this sentence seem familiar? We often encounter this button
when a website suspects it is dealing with a machine rather than a human.
These tests are called CAPTCHA, short for Completely Automated Public Turing test.
We are asked to identify traffic lights, trees, crosswalks, and all sorts of objects to prove
that we are, indeed, human.
The traffic lights and trees are getting covered by other objects, cars are getting
obscured, crosswalks are more distant, and all sorts of complications. Why are websites
making life more difficult for us? The answer to this lies with machine learning.
“Because CAPTCHA is such an elegant tool for training AI, any given
test could only ever be temporary, something its inventors
acknowledged at the outset. With all those researchers, scammers, and
ordinary humans solving billions of puzzles just at the threshold of
what AI can do, at some point the machines were going to pass us by.”
So Google is using machine learning to make CAPTCHA even more complex to
decipher. The researchers are using image recognition techniques to crack these
CAPTCHAS and consequently enhance their security at the backend.
7. Machine Learning Use Cases in the Financial
Domain
Most of the jobs in machine learning are geared towards the financial domain. And that
makes sense – this is the ultimate numbers field. A lot of banking institutions till recently
used to lean on logistic regression (a simple machine learning algorithm) to crunch these
numbers.
There are tons of use cases of machine learning in finance. Let’s look at two very
common ones you (most likely) have come across.
Thankfully, machine learning is solving different layers of this process. From fraud
detection to fraud prevention, machine learning algorithms are changing the way banks
work to improve the customer’s experience.
The challenge with this is keeping up with the level of cyber threats. These adversaries
are two steps ahead of the curve at each stage. As soon as the latest machine learning
solution comes up, these attachers perfect it and build on top of it.
Having said that, machine learning has definitely helped streamline the process. These
algorithms are able to identify fraudulent transactions and flag them so the bank can
connect with the customers ASAP to check if they made the transaction.
A good example is to look at the spending patterns of consumers. If a purchase does not
fit in with this pattern (the amount is too high, or from a different country, etc.), then the
algorithms alert the bank and put the transaction on hold.
The below two articles by a cybersecurity and machine learning expert explain how to
build robust malware detection models:
Personalized Banking
Another use case of recommendation engines! This one is targeted specifically for the
banking domain. You must be quite familiar with personalization at this point – so think
about what personalized banking could mean before you read further.
We have read about banks targeting customer microsegments and tailoring offers to
them. Personalized banking takes this concept to an entirely new level.
The ideal personalization scenario is using machine learning to anticipate the user’s
need and targeting segments of each individual. As a report by BCG states:
Self-Driving Cars
Out of all the use cases we have covered in this article, self-driving cars fascinate me
the most. It is a crowning achievement of what we have been able to accomplish using
hardware and machine learning.
The beauty of self-driving cars is that all the three main aspects of machine learning –
supervised, unsupervised and reinforcement learning – are used throughout the car’s
design.
Here are just a few features of self-driving cars where machine learning is used:
Languages:
o R
o Python
o SAS
o Julia
o Java
o Javascript
o Scala
Databases:
o SQL
o Oracle
o Hadoop
Visualization tools:
o D3.js
o Tableau
o QlikView
Other tools commonly used:
o Excel
o Powerpoint
Supervised Machine Learning: When you have past data with outcomes (labels
in machine learning terminology) and you want to predict the outcomes for the
future – you would use Supervised Machine Learning algorithms. Supervised
Machine Learning problems can again be divided into 2 kinds of problems:
o Classification Problems: When you want to classify outcomes into
different classes. For example – whether the floor needs
cleaning/mopping is a classification problem. The outcome can fall into
one of the classes – Yes or No. Similarly, whether a customer would
default on their loan or not is a classification problem which is of high
interest to any Bank
o Regression Problem: When you are interested in answering how much –
these problems would fall under the Regression umbrella. For example –
how much cleaning needs to be done is a Regression problem. Or what is
the expected amount of default from a customer is a Regression problem
Unsupervised Machine Learning: There are times when you don’t want to
exactly predict an Outcome. You just want to perform a segmentation or
clustering. For example – a bank would want to have a segmentation of its
customers to understand their behavior. This is an Unsupervised Machine
Learning problem as we are not predicting any outcomes here
Introduction
“What’s the difference between supervised learning and unsupervised
learning?”
This is an all too common question among beginners and newcomers in machine
learning. The answer to this lies at the core of understanding the essence of machine
learning algorithms. Without a clear distinction between these supervised learning and
unsupervised learning, your journey simply cannot progress.
This is actually among the first things you should learn when you’re embarking on your
machine learning journey. We cannot simply jump into the model building phase if we
don’t understand where algorithms like linear regression, logistic regression, clustering,
neural networks, etc. fall under.
If we don’t know what the objective of the machine learning algorithm is, we will fail in
our endeavor to build an accurate model. This is where the idea of supervised learning
and unsupervised learning comes in.
In this article, I will discuss these two concepts using examples and also answer the big
question – how to decide when to use supervised learning or unsupervised learning?
If you prefer learning in video form, the below video explains 10 machine learning
algorithms in a very easy-to-understand manner:
I have mentioned a few excellent resources below that are ideal to check out as a
beginner in machine learning:
For accurate predictions, the input data is labeled or tagged as the right answer.
1) Classification Models – Classification models are used for problems where the
output variable can be categorized, such as “Yes” or “No”, or “Pass” or “Fail.”
Classification Models are used to predict the category of the data. Real-life examples
include spam detection, sentiment analysis, scorecard prediction of exams, etc.
2) Regression Models – Regression models are used for problems where the output
variable is a real value such as a unique number, dollars, salary, weight or pressure, for
example. It is most often used to predict numerical values based on previous data
observations. Some of the more familiar regression algorithms include linear regression,
logistic regression, polynomial regression, and ridge regression.
There are some very practical applications of supervised learning algorithms in real life,
including:
Text categorization
Face Detection
Signature recognition
Customer discovery
Spam detection
Weather forecasting
Predicting housing prices based on the prevailing market price
Stock price predictions, among others
The idea is to expose the machines to large volumes of varying data and allow it to learn
from that data to provide insights that were previously unknown and to identify hidden
patterns. As such, there aren’t necessarily defined outcomes from unsupervised learning
algorithms. Rather, it determines what is different or interesting from the given dataset.
Fraud detection
Malware detection
Identification of human errors during data entry
Conducting accurate basket analysis, etc.
In general, a good strategy for honing in on the right machine learning approach is to:
Evaluate the data. Is it labeled/unlabelled? Is there available expert knowledge
to support additional labeling? This will help to determine whether a supervised,
unsupervised, semi-supervised or reinforced learning approach should be used
Define the goal. Is the problem recurring, defined one? Or, will the algorithm be
expected to predict new problems?
Review available algorithms that may suit the problem with regards to
dimensionality (number of features, attributes or characteristics). Candidate
algorithms should be suited to the overall volume of data and its structure
Study successful applications of the algorithm type on similar problems