What is Machine Learning?

Machine Learning (ML) seems to be one of the buzzwords these days, and I’m sure most of you have already heard of it. But what is it exactly? ML is simply the science of getting computers learn and act like humans do, and improve their learning over time autonomously.
Written by

Updated on

Jan 26 2022

Table of contents

    by Arthur Nielsen Demain and Chris Ching



    Machine Learning (ML) seems to be one of the buzzwords these days, and I’m sure most of you have already heard of it. But what is it exactly? Don’t fret because you don’t need to be an all out techie to fully understand it!

    ML is simply the science of getting computers learn and act like humans do, and improve their learning over time autonomously. And nope, ML is not the same as Artificial Intelligence (AI). AI is that broad field that aims to make machines smart, which makes ML under AI. 

    Imagine when you’re a baby and you’re just starting to learn the alphabet. When you finally got your A to Z correctly, you started to learn new words, right? Then you eventually figured out to connect those words together to form sentences, until that time came when you started speaking and writing longer and faster. In short, human beings progressively learn from experiences or previously acquired knowledge! ML is on the same line of thought in the sense that when we feed data or information into machines, they will be able to process these data more accurately as time goes by without the persistent need for human intervention.  

    The Concept of Weights

    The idea of giving weights to certain pieces of data as part of the decision-making process is a crucial concept of ML. Remember when you first got attracted to someone? Why did you somehow fall for that person’s charm? Was it because of that person’s lovely eyes or his or her humorous personality? Whether you’re conscious of it or not, you’re actually giving weights to certain attributes to come up with a decision.

    Now imagine that you’re working in a paper factory, and your job is to manually sort writing papers from envelopes. You’ve been doing this for five years of your life for five days a week, and to be honest, you’re freaking tired of it. So one day you decided to make a machine that will do the sorting for you to make your life easy peasy. Yay! 

    The first thing that you do is to identify characteristics of a paper that makes it stand out from an envelope. Color, perhaps? Let’s say that most of the papers you’re handling are colored white, whereas most of the envelopes are colored brown. So you feed this piece of color information into the machine so it can start sorting out the papers from the envelopes correctly based on color. But color is obviously not enough, so you think of another distinguishing characteristic. Thickness, perhaps? Envelopes are generally thicker than papers.

    So you give the machine you built 100 pieces of paper and 100 pieces of envelope to test if it can manually sort them based on the color and thickness data that you gave. At first it’s all good. If it’s white the machine automatically thinks it’s paper, and if it’s brown then it’s an envelope. But what if the next batch of paper and envelope have other colors? There’s a chance that the machine will wrongly classify a white envelope as paper and a brown paper as envelope. The machine will realize its mistake, and based on the previous data that it processed, it will then readjust the weight that it gave to color by adding more weight to an item’s thickness. Yet there are papers that are thicker than normal and envelopes that are thinner than usual. So again, the machine will readjust the weights that it’s giving to both color and thickness until it hits that perfect spot! This process of readjusting weights will go on and on until such time that the machine will figure out the right way of sorting papers from envelopes accurately based on previously processed data.   

    Common Applications of ML

    ML is basically everywhere nowadays! Check out this list:

    Social media recognition

    Facebook recommends people for you to add as friends because it thinks that you know them based on your previous interactions on the site. And remember tagging? You upload a picture and Facebook automatically suggests the names of the people in the picture because hey, it’s one smart fella!

    Autocomplete

    Yes, that autocomplete texts and emails that got you into some funny trouble at some point is all because of ML. ML predicts when you’re about to compose a “Sorry, I’ll be late” text so you can just finish and send the message as quickly as possible. Or how about those random Google searches that you do when you’re bored? Type “is” followed by the name of your favorite celebrity in the Google Search field and see what comes up.

    Spam filtering

    Imagine your inbox having legit business emails getting mixed with emails coming from random people claiming that you just inherited $100,000,000 from a rich tycoon. Not good! Thanks to ML, the innocent-looking mails get sent straight to your inbox while those that look scammy get sent to your spam folder for your review.

    Virtual Assistants

    You gotta thank ML for all the help that you’re getting from Alexa and Siri even though they can act funny at times. These smart assistants provide you with the most accurate and tailored information that you need based on your previous data searches and virtual interactions. Cheapest flights from your city to anywhere? Sure. Daily alarms at 6 in the morning? They got you!

    Video Surveillance

    Cities around the world now use ML to make video surveillance a smart and effective crime-buster. Closed-circuit cameras can now be equipped with unusual behavior detection to predict people who might cause trouble and eventually prevent crime from happening. 

    Hope that this introductory lesson about ML was easy to digest. What other daily ML applications can you think of?

    Thanks to machine learning, we are now enjoying the full range of benefits that the following mobile apps give us:

    Tinder

    Finding your possible lifelong partner is now very much possible just by a few taps on the phone, all thanks to Tinder that has been developed using algorithms for profile matching and image recognition. 

    Netflix

    Netflix uses several machine learning algorithms such as linear and logistic regressions to give us a customized list of shows that we will most likely watch based on our viewing history and stated show preferences. 

    Snapchat

    Ever wondered how those infamous Snapchat filters came into existence? Thanks to augmented reality and various algorithms that can analyze facial structure on various angles, filters are easily applied on a snap regardless of the person’s age. 

    Google Maps 

    Thanks to GPS technology and a bunch of data analysis algorithms, Google Maps is powerful enough to connect location points and determine key input data that surround a particular reference point. No wonder you can easily spot the nearest vegan restaurant from your house and the most accessible route to reach it!

    It’s clear that with ML, the possibilities are so huge in terms of app development. You too have the power to make that next big app!

    CoreML

    If you want to apply machine learning in Apple devices, then CoreML has your back. CoreML is the main machine learning tool that Apple provides for developers. I’m sure you’ve been amazed at some point by your iPhone’s FaceID and its other predictive and inferential features. That’s all because of CoreML! I know that the developer in you is crying to tinker around those really cool iOS features, so be ready to get your hands dirty on CoreML.

    CoreML has three embedded libraries in it: (1) Vision, the library that makes face or image recognition and analysis possible; (2) Foundation, the library that processes text or language, which makes features like autocorrect or autocomplete possible, and (3) Gameplay Kit, which allows developers to create the next big mobile games.



    Get started for free

    Join over 2,000+ students actively learning with CodeWithChris