The world’s leading publication for data science, AI, and ML professionals.

What Is Machine Learning

Discussing the learning methods, types and real-world applications of Machine Learning

Photo by moren hsu on Unsplash
Photo by moren hsu on Unsplash

Introduction

Machine Learning is a branch of Computer Science that is concerned with the use of data and algorithms that enable machines to imitate human learning so that they are capable of performing some sort of predictions by learning from input examples.

Around the world, computers and smart devices collect and store petabytes of data in just one day – from biomarkers, to financial and environmental data. Information extraction by humans is almost unattainable due to the size and complexity of these datasets.

Humans are conditioned to operate and think in a three-dimensional world and therefore, it’s extremely hard for us to extract information from data of higher dimension. This means we pretty much have two options; we can either reduce the number of dimensions until we are able to figure things out (but this is going to come at the cost of throwing information out of the window) or train machines so that they are capable of extracting information, despite the high dimensionality of the data we need to deal with.

The field of Machine Learning combines the computational power that modern machines offer with statistical algorithms that are capable of learning from data in a way that can help humans understand complex concepts, make better decisions and eventually solve the practical problem.


Learning

The key concept here is how to make computers learn from data. This means that somehow, we need to teach machines how to remember, adapt (or make corrections) and generalise the learned information so that they can apply it to similar contexts and examples. Machine Learning combines concepts from neuroscience, physics, mathematics, statistics and biology in order to make computers capable of learning through modelling.

Another important aspect of learning methods, is the computational complexity. We usually need to use such methods over extremely large datasets and therefore, algorithms with high-degree polynomial complexity could be problematic. Usually, complexity is broken into two separate parts; the complexity of training the model and the complexity of applying the trained algorithm on real-world data. Model training is a task that does not happen too frequently and usually is performed "offline" in a sense therefore it’s OK if it takes longer. However, when applying the trained model to real-world data say in order to perform a prediction, things need to move a little bit faster and thus low computational cost is crucial.


Types of Learning

Depending on the problem we want to solve and the data we’ve got access to, we also need to make sure to pick a suitable learning algorithm. Machine Learning comes with numerous learning types that can be used in different contexts to provide answers of different nature as needed. These are:

  • Supervised Learning: In supervised learning, the dataset includes labelled examples. In other words, the set contains the correct responses (known as targets) of each example. The goal is to develop a model that takes as input a feature vector and outputs a predicted target variable.
  • Unsupervised Learning: On the other hand, in unsupervised learning the dataset is a collection of unlabelled examples. This learning type is mostly useful when we want to perform clustering, dimensionality reduction or outlier detection.
  • Semi-supervised Learning: When a dataset contains both labelled and unlabelled examples we may need to apply a semi-supervised learning algorithm.
  • Reinforcement Learning: This type of learning is mostly suitable when the learning process is "sequential". In reinforcement learning, the algorithm usually gets instructed when the predicted answer is wrong but it does not get told how to correct it.

For a more comprehensive discussion around supervised, unsupervised and semi-supervised learning in the context of Machine Learning make sure to read the following article.

Supervised vs Unsupervised Learning


Real-world applications of Machine Learning

Machine learning has seen a great advancement in its applications to real-world problems. This is because the – continuously increasing – computational power that is available can help machines solve problems that would otherwise take centuries for humans to figure out on their own.


Recommendation engines: Machine Learning algorithms are used by companies in order to provide to the users recommendations either based on what they may have purchased in the past or based on what similar users have bought.

Speech recognition: Additionally, ML models can be trained and used in the context of Natural Language Processing to process human speech and convert it into a written format (also known as speech-to-text). Siri, Alexa and Google Assistant are perfect examples.

Computer Vision: Another hot area of Machine Learning and Artificial Intelligence is computer vision that enables computers to extract information from digital images and videos. A few applications of CV include self-driving cards and medical imaging.

Automated Trading: ML can even be used to optimize stock portfolios and drive automated high-frequency trading by analysing information that can potentially affect stock prices.

Customer Service: Online chatbots are taking over the world, by replacing traditional human agents that used to support customers. The bots are usually capable of answering frequently asked questions, recommend products and even execute certain actions on behalf of the customer.


Final Thoughts

In today’s article, we introduced Machine Learning which is definitely among the fields of Computer Science that have seen great advancement in the last few years. Additionally, we discussed how machines are capable of learning as well as the different learning types that exist. Finally, we explored a few areas that Machine Learning and Artificial Intelligence can have a great impact.

Become a member and read every story on Medium. Your membership fee directly supports me and other writers you read.


You may also like

Feature Scaling and Normalisation in a Nutshell

How to Split a Dataset Into Training and Testing Sets with Python

Data Versioning for Efficient Workflows with MLFlow and LakeFS


Related Articles