1.1. WHAT IS DATA MINING?
3
However, machine learning can be uncompetitive in situations where we can
describe the goals of the mining more directly. An interesting case in point is
the attempt by WhizBang! Labs1 to use machine learning to locate people’s
resumes on the Web. It was not able to do better than algorithms designed
by hand to look for some of the obvious words and phrases that appear in the
typical resume. Since everyone who has looked at or written a resume has a
pretty good idea of what resumes contain, there was no mystery about what
makes a Web page be a resume. Thus, there was no advantage to machine-
learning over the direct design of an algorithm to discover resumes.
Another problem with some machine-learning methods is that they often
yield a model that, while it may be quite accurate, is not explainable. In some
cases, explainability is not important. For example, if you ask Google why it
has classiﬁed a gmail as spam, it usually says something like “it looks like other
messages that people have identiﬁed as spam.”
That is, the email matches
whatever model of spam Google has developed that day, undoubtedly using a
technique from the arsenal of machine-learning algorithms. That explanation
is probably satisfactory. We really don’t care what Google does, as long as it
makes the correct spam/not-spam decision.
On the other hand, consider an automobile-insurance company that creates
a model of the risk associated with each driver and assigns diﬀerent premiums to
each, according to the model. If your premium goes up, you might well want an
explanation of what the new model is doing and why it changed the estimate of
your risk. Unfortunately, in many machine-learning methods, especially “deep
learning,” where the model involves layer upon layer of small elements, each of
which makes a decision based on inputs from the previous layer, it may not be
possible to give a coherent explanation of what the model is doing.
1.1.4
Computational Approaches to Modeling
In contrast to the statisical approach, computer scientists tend to look at data
mining as an algorithmic problem. In this case, a model of the data is simply
the answer to a complex query about that data. For instance, given the set
of numbers of Example 1.2, we might compute their average and standard
deviation. Note that these values might not be the parameters of the Gaussian
that best ﬁts the data, although they will almost certainly be very close if the
size of the data is large, and the source of the data is truly Gaussian.
There are many diﬀerent approaches to modeling data. We have already
mentioned the possibility of constructing a random process whereby the data
could have been generated. Most other approaches to modeling can be described
as either
1. Summarizing the data succinctly and approximately, or
2. Extracting the most prominent features of the data and ignoring the rest.
1This startup attempted to use machine learning to mine large-scale data, and hired many
of the top machine-learning people to do so. Unfortunately, it was not able to survive.
