What is the best out-of-the-box 2-class classifier for your application? Rules:


*

*one classifier per answer

*vote up if you agree 

*downvote/remove duplicates.

*put your application in the comment

 A: Regularized discriminant for supervised problems with noisy data


*

*Computationally efficient

*Robust to noise and outliers in data

*Both linear discriminant (LD) and quadratic discriminant (QD) classifiers can can be obtained from the same implementation setting the regularization parameters '[lambda, r]' to '[1 0]' for LD classifier and '[0 0]' for QD classifier - very useful for reference purposes.

*Model is easy to interpret and export

*Works well for sparse and 'wide' data sets where class covariance matrices may not be well defined.

*An estimate of posterior class probability can be estimated for each sample by applying the softmax function to the discriminant values for each class.


Link to original 1989 paper by Friedman et al here. Also, there very good explanation by Kuncheva in her book "Combining pattern classifiers".
A: Gradient Boosted Trees.


*

*At least as accurate as RF on a lot of applications

*Incorporates missing values seamlessly

*Var importance (like RF probably biased in favor of continuous and many level nominal)

*Partial dependency plots

*GBM versus randomForest in R : handles MUCH larger datasets

A: Gaussian Process classifier - it gives probabilistic predictions (which is useful when your operational relative class frequencies differ from those in your training set, or equivalenty your false-positive/false-negative costs are unknown or variable).  It also provides an inidcation of the uncertainty in model predictions due to the uncertainty in "estimating the model" from a finite dataset. The co-variance function is equivalent to the kernel function in an SVM, so it can also operate directly on non-vectorial data (e.g. strings or graphs etc).  The mathematical framework is also neat (but don't use the Laplace approximation).  Automated model selection via maximising marginal likelihood.
Essentially combines good features of logistic regression and SVM.
A: L1-regularized logistic regression.


*

*It is computationally fast.

*It has an intuitive interpretation.

*It has only one easily understandable hyperparameter that can be automatically tuned by cross-validation, which often is a good way to go.

*Its coefficients are piecewise linear and their relation to the hyperparameter is 
instantly and easily visible in a simple plot.

*It is one of the less dubious methods for variable selection.

*Also it has a really cool name.

A: kNN
A: Naive Bayes and Random Naive Bays
A: Random forest


*

*easily captures complicated structure/nonlinear relationship

*invariant to variables' scale

*no need to create dummy variables for categorical predictors

*variable selection is not much needed

*relatively hard to overfit

A: Support vector machine
A: Logistic Regression:


*

*fast and perform well on most datasets

*almost no parameters to tune

*handles both discrete/continuous features

*model is easily interpretable

*(not really restricted to binary classifications)

A: K-means clustering for unsupervised learning.
