Machine Learning


I wouldn't have to tell you about what 'Machine Learning' is, since the name itself is pretty clear. But you couldn't possibly imagine how big a part these two words have played in developing today's technology. To know that, lets travel back to those days when we were little, so little that we could barely walk. Think now, how did we learn to walk and how did we learn to talk? Do you remember telling yourself to walk or saying hi to your mother, or anything like that. No, right? But we did learn to walk and talk, isn't that true? So, how and when did we do all these? The best possible explanation is that the brain is continuously observing the environment and learning from it.

This is exactly what 'Machine Learning' algorithms are designed to do. These algorithms make the machine learn from its environment. There are three ways to teach a machine. First is supervised learning , which provides the computer with a set of inputs and their outputs, so that machine can recognize the pattern in outputs for their respective inputs and learn to make right decision. Second is unsupervised learning, wherein the machine is given only a set of inputs so that it can find on its own patterns and structures in the input and respond accordingly. Third is reinforcement learning, where the machine learns dynamically from it environment; like learning to play a game against an opponent. A more technical definition for Machine Learning will therefore be, Machine learning is a method of data analysis that automates analytical model building. Using algorithms that iteratively learn from data, machine learning allows computers to find hidden insights without being explicitly programmed where to look.

Cortana is a very popular Artificial Intelligence application, rooted in the principles of machine learning. Cortana is a very popular Artificial Intelligence application, rooted in the principles of machine learning.

Supervised Learning algorithm receives a set of inputs along with the corresponding correct outputs, and the algorithm learns by comparing its actual output with correct outputs to find errors. It then modifies the model accordingly. Through methods like classification, regression, prediction and gradient boosting, supervised learning uses patterns to predict the values of the label on additional unlabeled data. Supervised learning is commonly used in applications where historical data predicts likely future events. For example, it can anticipate when credit card transactions are likely to be fraudulent or which insurance customer is likely to file a claim.

Unsupervised Learning algorithm is used against data that has no historical labels. The system is not told the "right answer." The algorithm must figure out what is being shown. The goal is to explore the data and find some structure within. Unsupervised learning works well on transactional data. For example, it can identify segments of customers with similar attributes who can then be treated similarly in marketing campaigns. Or it can find the main attributes that separate customer segments from each other. Popular techniques include self-organizing maps, nearest-neighbor mapping, k-means clustering and singular value decomposition. These algorithms are also used to segment text topics, recommend items and identify data outliers.

Reinforcement Learning algorithm is often used for robotics, gaming and navigation. With reinforcement learning, the algorithm discovers through trial and error which actions yield the greatest rewards. This type of learning has three primary components: the agent (the learner or decision maker), the environment (everything the agent interacts with) and actions (what the agent can do). The objective is for the agent to choose actions that maximize the expected reward over a given amount of time. The agent will reach the goal much faster by following a good policy. So the goal in reinforcement learning is to learn the best policy.