What is machine learning?

Machine learning
Machine learning refers to a set of methodologies that make machines apparently "learning" to perform tasks (see my machine learning cheat sheet). Although it is hard to define learning, it is related to progressive improvement in performing a task successfully. Intuitively there are two types of learning: self-learning (unsupervised) and learning from others (supervised).


Supervised learning
In supervised learning the learner learns to accomplish a task with supervision, i.e., there is a set of instances that the learner learns from, or there is a system that provides feedback to the actions of the learner (reinforcement). Imagine for example you need a system to learn how to drive. For a human, we just hire an instructor and train the person and done. This is precisely the same for a machine, we provide instances or a feedback loop so that the machine can evaluate its performance and learns. Applications of supervised learning include self-driving cars, stock market prediction, object recognition, natural language processing, maintenance prediction, recommendation engines, weather forecast, and more.

Unsupervised learning
In the unsupervised learning, the algorithm "figures out" the patterns in the instances, without any supervision. This is the more sophisticated while the most exciting use of machine learning. Customer segmentation, anomaly detection, product similarities, and many other applications require unsupervised learning.

Learning in human vs machine
A human or an animal learns from the environment by re-structuring the connectivity of neurons in their brain. The phenomenon has not been well understood yet but, in the abstract level, it is just like branching a graph, with billions of nodes and connections, to work better with the learning task at hand. The aim is to provide a generic (abstract) representation of the problem and the solution in the brain that is accessible when needed.

This, however, is slightly different for a machine. The problem needs to first be translated into a "mathematical space" (coordinate systems, or simply numbers) and feed into the machine. The instances (samples of the learning task) need to be presented by their basic components (so-called features) in a "vector space" (numbers each with a particular meaning). The machine then tries to separate these instances by transforming them into lines, hyperplanes, manifolds, etc. The rule used for this separation, either it is a separator line or hyperplane or anything of these sorts, is considered as a representation that is then used for further decisions (applied to any new instance).

For many problems, the features are already known. For example, we already know that a feed in a newspaper is considered interesting for a particular reader if the reader spends more time on it (the spent time is a feature). However, recognizing someone's face form an image is not easy to be defined by apparent features. This encourages methods like Deep Learning to not only learn the task but also find the best presentation for the problem, just from the given data.

How it is used
The range of use cases for machine learning models is wide, from modeling reality to forecasting the future. See some examples here (these two are essentially the same). 


Like always, this is only my opinion based on my experience and only a point of discussion. I would love to discuss this topic further in the comments.


By R. Bonyadi




Comments

Popular Posts