Tell me more ×
Cross Validated is a question and answer site for statisticians, data analysts, data miners and data visualization experts. It's 100% free, no registration required.

Last year, I read a blog post from Bendan O'Connor entitled "Statistics vs. Machine Learning, fight!" that discussed some of the differences between the two fields. Andrew Gelman responded to favorably to this:

Simon Blomberg:

From R's fortunes package: To paraphrase provocatively, 'machine learning is statistics minus any checking of models and assumptions'. -- Brian D. Ripley (about the difference between machine learning and statistics) useR! 2004, Vienna (May 2004) :-) Season's Greetings!

Andrew Gelman:

In that case, maybe we should get rid of checking of models and assumptions more often. Then maybe we'd be able to solve some of the problems that the machine learning people can solve but we can't!

There was also the "Statistical Modeling: The Two Cultures" paper by Leo Breiman in 2001 which argued that Statisticians rely too heavily on data modeling, and that machine learning techniques are making progress by instead relying on the predictive accuracy of models.

Has the Statistics field changed over the last decade in response to these critiques? Do the two cultures still exist or has Statistics grown to embrace machine learning techniques such as neural networks and support vector machines?

share|improve this question
2  
It is maybe good to restate what is written in the faq: "Avoid asking questions that are subjective, argumentative, or require extended discussion" – robin girard Aug 9 '10 at 11:34
5  
Thanks @robin; made CW. Although I don't entirely see this as "argumentative"; there are two fields which have informed each other (this is a fact), and the question is how much they have evolved together over the last decade. – Shane Aug 9 '10 at 14:17
1  
Add a third culture: data mining. Machine learners and data miners speak quite different languages. Usually, the machine learners don't even understand what is different in data mining. To them, it's just unsupervised learning; they ignore the data management aspects and apply the buzzword data mining to machine learning, too, adding further to the confusion. – Anony-Mousse Dec 6 '11 at 12:05
There's a similar question on data mining and statistics – naught101 Mar 22 '12 at 23:51
An interesting discussion in Wasserman's blog. – user10525 Jun 16 '12 at 10:43

12 Answers

I think the answer to your first question is simply in the affirmative. Take any issue of Statistical Science, JAMA, Annals of Statistics of the past 10 years and you'll find papers on boosting, SVM, and neural networks, although this area is less active now. Statisticians have appropriated the work of Valiant and Vapnick, but on the other side, computer scientists have absorbed the work of Donoho and Talagrand. I don't think there is much difference in scope and methods anymore. I have never bought Breiman's argument that CS people were only interested in minimizing loss using whatever works. That view was heavily influenced by his participation in Neural Networks conferences and his consulting work; but PAC, SVMs, Boosting have all solid foundations. And today, unlike in 2001, Statistics is more concerned with finite-sample properties, algorithms and massive datasets.

But I think that there are still three important differences that are not going away soon.

  1. Methodological Statistics papers are still overwhelmingly formal and deductive, whereas Machine Learning researchers are more tolerant of new approaches even if they don't come with a proof attached;
  2. The ML community primarily shares new results and publications in conferences and related proceedings, whereas statisticians use journal papers. This slows down progress in Statistics and identification of star researchers. John Langford a nice post on the subject from a while back;
  3. Statistics still covers areas that are (for now) of little concern to ML, such as survey design, sampling, industrial Statistics etc.
share|improve this answer
4  
Great post! Note that Vapnick had a PhD in statistics. I'm not sure there are a lot of computer scientist that know the name Talagrand and I'm sure 0.01% of them can state by memory one result of talagrand :) can you ? I don't know the work of Valiant :) – robin girard Jul 29 '10 at 11:30

The biggest difference I see between the communities is that statistics emphasizes inference, whereas machine learning emphasized prediction. When you do statistics, you want to infer the process by which data you have was generated. When you do machine learning, you want to know how you can predict what future data will look like w.r.t. some variable.

Of course the two overlap. Knowing how the data was generated will give you some hints about what a good predictor would be, for example. However, one example of the difference is that machine learning has dealt with the p >> n problem (more features/variables than training samples) since its infancy, whereas statistics is just starting to get serious about this problem. Why? Because you can still make good predictions when p >> n, but you can't make very good inferences about what variables are actually important and why.

share|improve this answer
4  
Could this be (overly) simplified as something like the difference between generative and discriminative models? – Wayne Feb 14 '11 at 22:19
@Wayne: Yeah, I think this is actually a pretty fair way of putting it. – dsimcha Feb 14 '11 at 22:33
1  
"One should solve the [classification] problem directly and never solve a more general problem as an intermediate step..." - Vapnik – Wayne Feb 14 '11 at 22:42
I disagree that no inference can be done with ML; one can squeeze quite a lot from importance scores some methods produce and/or some feature selection schemes. – mbq Feb 14 '11 at 23:20
1  
@mbq: I didn't mean to imply that no inference can be done, just that it's not the main goal and that usually p >> n in ML, making it a lot harder. – dsimcha Feb 15 '11 at 1:00

In such a discussion, I always recall the famous Ken Thompson quote

When in doubt, use brute force.

In this case, machine learning is a salvation when the assumptions are hard to catch; or at least it is much better than guessing them wrong.

share|improve this answer

What enforces more separation than there should be is each discipline's lexicon.

There are many instances where ML uses one term and Statistics uses a different term--but both refer to the same thing--fine, you would expect that, and it doesn't cause any permanent confusion (e.g., features/attributes versus expectation variables, or neural network/MLP versus projection-pursuit).

What's much more troublesome is that both disciplines use the same term to refer to completely different concepts.

A few examples:

Kernel Function

In ML, kernel functions are used in classifiers (e.g., SVM) and of course in kernel machines. The term refers to a simple function (cosine, sigmoidal, rbf, polynomial) to map non-linearly separable to a new input space, so that the data is now linearly separable in this new input space. (versus using a non-linear model to begin with).

In statistics, a kernel function is weighting function used in density estimation to smooth the density curve.

Regression

In ML, predictive algorithms, or implementations of those algorithms that return class labels "classifiers" are referred to as machines--e.g., support vector machine, kernel machine. The counterpart to machines are regressors, which return a score (continuous variable)--e.g., support vector regression.

Rarely do the algorithms have different names based on mode--e.g., a MLP is the term used whether it returns a class label or a continuous variable.

In Statistics, regression, if you are attempting to build a model based on empirical data, to predict some response variable based on one or more explanatory variables or more variables--then you are doing regression analysis. It doesn't matter whether the output is a continuous variable or a class label (e.g., logistic regression). So for instance, least-squares regression refers to a model that returns a continuous value; logistic regression on the other hand, returns a class labels.

Bias

In ML, the bias term in the algorithm is conceptually identical to the intercept term used by statisticians in regression modeling.

In Statistics, bias is non-random error--i.e., some phenomenon influenced the entire data set in the same direction, which in turn means that this kind of error cannot be removed by resampling or increasing the sample size.

share|improve this answer
10  
In statistics, bias is not the same as error. Error is purely random, bias is not. You have bias when you know that the expected value of your estimate is not equal to the true value. – Joris Meys Sep 8 '10 at 21:30

Machine Learning seems to have its basis in the pragmatic - a Practical observation or simulation of reality. Even within statistics, mindless "checking of models and assumptions" can lead to discarding methods that are useful.

For example, years ago, the very first commercially available (and working) Bankruptcy model implemented by the credit bureaus was created through a plain old linear regression model targeting a 0-1 outcome. Technically, that's a bad approach, but practically, it worked.

share|improve this answer
2  
it's similar to using planet gravitational models to urban traffic. I find it absurd, but it works quiet accurately actually – dassouki Jul 21 '10 at 14:25
3  
I am interested in the last statement: "the very first commercially available (and working) Bankruptcy model implemented by the credit bureaus was created through a plain old linear regression model targeting a 0-1 outcome". Which model was it? I believe that the first model was RiskCalc by Moody's, and even the first version was a logistic regression model. The developers of that model were not CS people with a background in ML, but rather in econometrics. – gappy Jul 25 '10 at 2:58
1  
I bet they used discriminant analysis before logistic regression, as DA was invented well before LR – Neil McGuigan Jul 26 '10 at 22:56
@gappy I'm thinking of the MDS Consumer Bankruptcy model for individual credit bureau records.RiskCalc was a credit risk assessment for companies. The MDS Bankruptcy model differed from the FICO risk models of the time in that the target was Bankruptcy and NOT credit delinquency (such as FICO's original scores). My comment was less about the specifics of ML in that context (because it was barely in use -if at all- at the time the BK model was first built), but related to the fact that practical effectiveness is not necessarily at all related to theoretic restrictions or assumption violations. – Jay Stevens Mar 28 '12 at 21:56

I disagree with this question as it suggests that machine learning and statistics are different or conflicting sciences.... when the opposite is true!

machine learning makes extensive use of statistics... a quick survey of any Machine learning or data mining software package will reveal Clustering techniques such as k-means also found in statistics.... will also show dimension reduction techniques such as Principal components analysis also a statistical technique... even logistic regression yet another.

In my view the main difference is that traditionally statistics was used to proove a pre conceived theory and usually the analysis was design around that principal theory. Where with data mining or machine learning the opposite approach is usually the norm in that we have the outcome we just want to find a way to predict it rather than ask the question or form the theory is this the outcome!

share|improve this answer

Ideally one should have a thorough knowledge of both statsitics and machine learning before attempting to answer his question. I am very much a neophyte to ML, so forgive me if wat I say is naive.

I have limited experience in SVMs and regression trees. What strikes me as lacking in ML from a stats point of view is a well developed concept of inference.

Inference in ML seems to boil down almost exclusively to the predictice accuracy, as measured by (for example) mean classification error (MCE), or balanced error rate (BER) or similar. ML is in the very good habit of dividing data randomly (usually 2:1) into a training set and a test set. Models are fit using the training set and performance (MCE, BER etc) is assessed using the test set. This is an excellent practice and is only slowly making its way into mainstream statistics.

ML also makes heavy use of resampling methods (especially cross-validation), whose origins appear to be in statistics.

However, ML seems to lack a fully developed concept of inference - beyond predictive accuracy. This has two results.

1) There does not seem to be an appreciation that any prediction (parameter estimation etc.) is subject to a random error and perhaps systemmatics error (bias). Statisticians will accept that this is an inevitable part of prediction and will try and estimate the error. Statistical techniques will try and find an estimate that has minimum bias and random error. Their techniques are usually driven by a model of the data process, but not always (eg. Bootstrap).

2) There does not seem to be a deep understanding in ML of the limits of applying a model to new data to a new sample from the same population (in spite of what I said earlier about the training-test data set approach). Various statistical techniques, among them cross validation and penalty terms applied to likelihood-based methods, guide statisticians in the trade-off between parsimony and model complexity. Such guidelines in ML seem much more ad hoc.

I've seen several papers in ML where cross validation is used to optimise a fitting of many models on a training dataset - producing better and better fit as the model complexity increases. There appears little appreciation that the tiny gains in accuracy are not worth the extra complexity and this naturally leads to over-fitting. Then all these optimised models are applied to the test set as a check on predictive performance and to prevent overfitting. Two things have been forgotten (above). The predictive performance will have a stochastic component. Secondly multiple tests against a test set will again result in over-fitting. The "best" model will be choisen by the ML practitioner without a full appreciation he/she has cherry picked from one realisation of many possible outomes of this experiment. The best of several tested models will almost certainly not reflect the true performance on new data.

Any my 2 cents worth. We have much to learn from each other.

share|improve this answer
your comment about The "best" model will be choisen by the ML practitioner... applies equally well to mainstream statistics as well. For in most model selection procedures, one simply conditions on the final model as if no search of the model space had been done (given that model averaging is fairly new). So I don't think you can use that as a "club" to beat the ML practitioner with, so to speak. – probabilityislogic May 29 '11 at 16:03
As a ML practitioner, I don't recognise the picture you are painting. The ML literature is almost all about variations of regularisation, MDL, Bayesian, SRM and other approaches of controlling the complexity of the model. From where I sit, it seems that stat's methods of controlling complexity are less structured, but that is bias for you. – Muhammad Alkarouri Aug 11 '11 at 2:25

I have spoken on this at a different forum the ASA Statistical Consulting eGroup. My response was more specifically to data mining but the two go hand in hand. We statisticians have snubbed our noses at data miners, computer scientists, and engineers. It is wrong. I think part of the reason it happens is because we see some people in those fields ignoring the stochastic nature of their problem. Some statisticians call data mining data snooping or data fishing. Some people do abuse and misuse the methods but statisticians have fallen behind in data mining and machine learning because we paint them with a broad brush. Some of the big statistical results have come from outside the field of statistics. Boosting is one important example. But statisticians like Brieman, Friedman, Hastie, Tibshirani, Efron, Gelman and others got it and their leadership has brought statisticians into the analysis of microarrays and other large scale inference problems. So while the cultures may never mesh there is now more cooperation and collabortion between the computer scientists, engineers and statisticians.

share|improve this answer

I don't really know what the conceptual/historical difference between machine learning and statistic is but I am sure it is not that obvious... and I am not really interest in knowing if I am a machine learner or a statistician, I think 10 years after Breiman's paper, lots of people are both...

Anyway, I found interesting the question about predictive accuracy of models. We have to remember that it is not always possible to measure the accuracy of a model and more precisely we are most often implicitly making some modeling when measuring errors.

For Example, mean absolute error in time series forecast is a mean over time and it measures the performance of a procedure to forecast the median with the assumption that performance is, in some sense, stationary and shows some ergodic property. If (for some reason) you need to forecast the mean temperature on earth for the next 50 years and if your modeling performs well for the last 50 years... it does not means that...

More generally, (if I remember, it is called no free lunch) you can't do anything without modeling... In addition, I think statistic is trying to find an answer to the question : "is something significant or not ", this is a very important question in science and can't be answered through a learning process. To state John Tukey (was he a statistician ?) :

The combination of some data and an aching desire for an answer does not ensure that a reasonable answer can be extracted from a given body of data

Hope this helps !

share|improve this answer

Clearly, the two fields clearly face similar but different problems, in similar but not identical ways with analogous but not identical concepts, and work in different departments, journals and conferences.

When I read Cressie and Read's Power Divergence Statistic it all snapped into place for me. Their formula generalizes commonly used test statistics into one that varies by one exponent, lamda. There are two special cases, lamda=0 and lamda=1.

Computer Science and Statistics fit along a continuum (that presumably could include other points). At one value of lamda, you get statistics commonly cited in Statistics circles, and at the other you get statistics commonly cited in Comp Sci circles.

Statistics

  • Lamda = 1
  • Sums of squares appear a lot
  • Variance as a measure of variability
  • Covariance as a measure of association
  • Chi-squared statistic as a measure of model fit

Computer science:

  • Lamda = 0
  • Sums of logs appear a lot
  • Entropy as a measure of variability
  • Mutual information as a measure of association
  • G-squared statistic as a measure of model fit
share|improve this answer

You run a fancy computer algorithm once -- and you get a CS conference presentation/statistics paper (wow, what a fast convergence!). You commercialize it and run it 1 million times -- and you go broke (ouch, why am I getting useless and irreproducible results all the time???) unless you know how to employ probability and statistics to generalize the properties of the algorithm.

share|improve this answer
1  
I've downvoted this answer. Although with a question such as this it will inevitably involve some personal opinions, IMO we should strive for some more substantive critique. This just comes off as a rant. – Andy W May 6 '12 at 14:58
@AndyW, this is, of course, an exaggeration of what I see around. A failure to think ahead statistically is true of academic world, too: the replicability of published results in psychology or medical sciences is at most 25% (see, e.g., simplystatistics.tumblr.com/post/21326470429/…) rather than the nominal 95%. The OP wanted statistics to embrace computer science; maybe computer science should embrace some statistics, and I gave the reasons why. – StasK May 7 '12 at 3:25

The finer composer, it is felt, should be capable of elaborating the work [of music] solely in his head, and ought not to need the crutch of trying it out at the keyboard.
— Charles Rosen, Piano Notes

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.