What Kind Of Problems Can Machine Learning Solve?
Machine learning can be applied to solve really hard problems, such as credit card fraud detection, face detection and recognition, and even enable self-driving cars! For today's IT Big Data challenges, machine learning can help IT teams unlock the value hidden in huge volumes of operations data, reducing the time to find and diagnose issues. Enterprises can automatically process large quantities of data in ways that were previously unattainable to improve IT operations, prevent breakdowns, and enhance support for critical business services.
While Machine learning can't be applied to everything, here we look at the different approaches for applying Machine Learning and the problems that can be solved.
Machine Learning Areas
Depending on the nature of the learning "signal" or "feedback" available to a learning system, machine learning tasks are typically classified into three broad areas:
- Supervised learning
- Unsupervised learning
- Reinforcement learning
Supervised learning is the type of learning that takes place when the training data are labelled with the correct outcome, which gives the learning algorithm examples for learning. This is like having a supervisor who can show different objects and tell what they represent. The task of the learning algorithm is to learn the relation. More technically, given a set of example inputs X and their outcomes Y, the supervised learning aims to learn a general mapping function f that transforms inputs to outputs: f: X a Y
Supervised learning can address credit card fraud detection, where the learning algorithm is presented with credit card transactions marked as normal or suspicious. The learning algorithm produces a decision model that marks unseen transactions as normal or suspicious.
On the other hand, unsupervised learning is harder because there is no supervisor telling you what the objects represent; instead, the learning algorithm should figure that out which objects go together by itself. Unsupervised learning algorithms do not assume any outcome labels Y, since they focus on grouping similar inputs X into clusters. Unsupervised learning can hence discover hidden patterns in data as well as similar items in the dataset.
Unsupervised learning can enable an item-based recommendation system, where the learning algorithm discovers similar items bought together, for example like how Amazon looks at the people who bought book A also bought book B.
Reinforcement learning addresses the learning process, allowing machines and software agents to automatically determine the ideal behavior within a specific context, in order to maximize performance. Simple reward feedback is required for algorithms to learn behavior.
Reinforcement learning assumes that an agent, which can be a robot, a bot or a computer program, interacts with a dynamic environment to achieve a specific goal. The environment is described with a set of states and the agent can take different actions to move from one state to another. Some states are marked as goal states and if the agent achieves that state, it receives a large reward. In other states, the reward is smaller, non-existing or even negative.
The goal of reinforcement learning is to find an optimal policy, that is, a mapping function that specifies what action to take in each of the states without a supervisor explicitly telling whether this leads to the goal state or not.
Reinforcement learning can make possible for a program to drive a vehicle, where the states correspond to driving conditions; for example, current speed, road segment information, surrounding traffic, speed limits, obstacles on the road, and actions could be driving maneuvers such as turn left/right, stop, accelerate, continue. The learning algorithm produces a policy that specifies what action to take in specific configuration of driving conditions.
In IT operations, reinforcement learning enables a self-healing system that learns what actions need to do to recover from an incident, increase data flows, and optimize operations.
Machine Learning Can Solve Key IT Operations Problems
Today's IT operations, struggle daily to cope with—and derive value from—huge amounts of data generated in dynamic infrastructures and applications. Due to the complexity of the underlying systems, human and policy driven management is, basically, unable to react fast enough and realize value from large amounts of data statistics and patterns.
Machine learning can help IT operations teams to analyze IT performance issues, and provide insights to maintain high levels of availability for critical business systems and applications.
Machine learning relies on these different types of data analysis:
- Descriptive (data mining): Looks at data and analyzes past events for insight for how to approach the future, quantifying data relationships. Using anomaly detection (supervised and unsupervised learning approach), IT operations can locate problematic behavior changes hidden in huge volumes of operations data, so IT operations can know what happened and get to a root cause faster.
- Predictive (forecasting): Turns data into valuable, actionable information by using data to predict (supervised learning approach) when problems will occur, given past behavior, analyzing frequent operational patterns that could lead to incidents.
- Prescriptive (optimization): Automatically synthesizes big data and other inputs to make predictions about what could go wrong and suggest decision options for taking steps to prevent issues.
Due to the complexity of IT systems, machine learning is best geared to automatically and quickly analyze tremendous volumes of data distributed across disparate data stores, identifying patterns for detecting anomalies, and revealing performance and security risks.
Machine learning can help IT managers to not only isolate errors, but also gain valuable insight in real-time into those data anomalies that create system errors and failures. Automated analysis of the data created by IT systems is critical for seeing the clues as to why applications and systems fail. By clearly seeing the associated causes of issues and correlating them to a specific error, operations managers can better maintain peak operational efficiency for their IT infrastructures, reduce the mean-time-to-resolution within support organizations and provide end users with a near error-free experience. Credit This article is excerpted from my upcoming book: Practical Machine Learning in Java, scheduled to be published later this year.
This article is excerpted from my upcoming book: Practical Machine Learning in Java, scheduled to be published later this year.