What is Machine Learning
What Machine Learning is Not
[1] Tom M. Mitchell, "Machine Learning," McGraw-Hill, 1997.
Before we ask what Machine Learning is, we would do well to
clarify what we mean by a machine. In normal usage we refer to any device that
performs a job as machine whether it is a kitchen appliance or a lathe. In
computing, a machine is not something physical. Rather it is refers to a type
of computer program. Just like a physical device, a machine in this case is a
program that can be configured to perform a task subject to some rules.
Let start with a definition:
Definition [Mitchell]: A computer program is said to learn
from experience E with respect to some class of tasks T and performance measure
P if its performance at tasks in T, as measured by P, improves with experience.
Informally, a machine learns when its performance improves
with more data. Consider an example like weather forecasting. We would like to
create a machine that could predict the maximum temperature to-morrow. To do
that we could create a model that computes likely values given today's
temperature, humidity level and other such measurements. Assuming that it is
workable model, the learning consists of generating a function
f(temperature,humidity,...) that computes the predicted temperature. One way of
modelling this function would be to compute a linear combination of predictors:
β0 + β1 *temperature + β2*humidity.
In this case learning consists of computing β0 , β1 and β2
based on past records such that predicted value matches the actual results
closely. One would expect that the prediction will improve if the volume of historical data is increased. This improvement is referred to as learning. What has just been described
is known as linear regression, a technique known for more than a century. There are many models that can be used. It is
possible to combine many such models to provide a composite machine.
Notice that the machine cannot pick the predictors at
random, although given a large number of predictors the machine learning model
can select the best predictors. The choice of predictors is still mostly human.
However a day may come when there are a large number of machine learning
systems and a meta learning program can identify from its vast repository of learned
machines the most suitable factors that can be used to model a new learning
task. Although we are not there yet, programs like IBM's Watson give a good
idea of what the future portends.
What Machine Learning is Not
Machine learning involves uncertainity. When a problem is well defined it is no more a case of
Machine Learning; it is a search problem or an optimisation problem. 'Where is the closest
Starbucks?' is a search problem. 'Will there be a Starbucks within a 5 mile
radius one year from now?' is a machine learning problem.
Applications of Machine Learning
Based on the past growth it is safe to assume that there are still a large number of applications of machine learning that people have yet to discover. To discover the promising new ones it would be good to have an idea as to what the current applications are. As Steve Jobs once said "Good artists copy, great artists steal." Here are a few:
Based on the past growth it is safe to assume that there are still a large number of applications of machine learning that people have yet to discover. To discover the promising new ones it would be good to have an idea as to what the current applications are. As Steve Jobs once said "Good artists copy, great artists steal." Here are a few:
- Computer Vision
- Text analysis to authenticate literary works
- Spam detection
- Speech recognition
- Speech synthesis
- Robotics
- Prediction: Which candidate is more likely to complete a Ph.D. Thesis?
- Which toddler is likely to have learning difficulties?
- Which employee will stick around for five years?
- Recommender Systems for movies, books, fashion accessories
- Fault diagnosis of machines
- Medical Diagnosis
- Performance Analysis and Tuning of Computer Systems
- Predicting house Prices
- Economic Forecast
- Predicting marriage success
- Predicting potential terrorists
- Predicting potential mass murders
- Analysing cargo movements to detect contraband trafficking.
- Generating Unit Tests
- Software debugging using crash dumps and code analysis
- Analysing network protocols to predict failure and congestion scenarios and
- Analysing multi-threaded applications to locate deadloacks and starvation
[1] Tom M. Mitchell, "Machine Learning," McGraw-Hill, 1997.
No comments:
Post a Comment