Simple Introduction to Machine Learning (ML)

What is Machine Learning (ML) ?

Machine learning (ML) is a subset of Artificial Intelligence (AI) which enables software systems to be able to make predictions based on data fed into it and make them intelligent. Machine Learning is the science (and art) of programming computers so they can learn from data.

"Machine Learning is the field of study that gives computers the ability to learn without being explicitly programmed." - Arthur Samuel, 1959

The common real world examples of machine learning systems include: self-driving car, image recognition, chat bot, recommendation system, etc.

machine learning
Machine Learning

Why implement ML in Software Solutions ?

Instead of explicit programming and rule-based (if-then) paradigm of problem solving, ML uses algorithms to detect patterns and structures in data and make decisions.
  • Reduce Time Programming
  • Customize & Scale Products
  • Complete seemingly "unprogrammable" tasks e.g. Face Recognition

Philosophy behind ML

ML Changes the way of thinking about the problem. Instead of thinking logically and mathematically, it encourages to use assertions by shifting from mathematical science to natural science.

Types of ML Algorithms

Algorithms are the one that enable machine learning. There are mainly three broad categories of ML algorithms:

Supervised Learning

Supervised learning algorithms are trained using labeled data.
For example, to train an algorithm to classify dog vs cat, it is fed with images of cat and dog along with the label whether it is dog or cat(1 or 0). Then it learns mapping from images to label and based on which the trained model can predict outcome if any image of dog or cat is provided to it. Classification and Regression Analysis are the two main tasks of supervised learning. For example: Linear Regression, SVM, Decision Tree, etc.

Semi-Supervised Learning

Semi-supervised learning is a method of learning which only require few labeled datasets. Such algorithms are provided few labeled data and a bit information about various types of data based on which the machines need to learn from large, structured and unstructured data they receive regularly.
The few labeled datasets provided to the algorithm serve as the starting point for learning. After that, the algorithms need to learn from large volumes of unlabeled data.
It is the combination of supervised and unsupervised learning. For example: Deep Belief Networks (DBNs).

Unsupervised Learning

Unlike supervised learning algorithms, unsupervised algorithms doesn't require labeled data. Given only input data without any target, the algorithms can learn from data. Such algorithms include clustering and association rule mining. For example: Apriori, k-means, etc.

Reinforcement Learning

Reinforcement learning algorithms doesn't need labeled data to train but require some kind of assistance during learning. The algorithms continuously learn from data. The reward function shows the way to converge by providing reward or punishment based on its actions. The most common use case is self driving car. For example: Q-Learning.

Comments