Nonparametric regression

Nonparametric regression is a category of regression analysis in which the predictor does not take a predetermined form but is constructed according to information derived from the data. That is, no parametric form is assumed for the relationship between predictors and dependent variable. Nonparametric regression requires larger sample sizes than regression based on parametric models because the data must supply the model structure as well as the model estimates.
Definition.
In nonparametric regression, we have random variables formula_1 and formula_2 and assume the following relationship:
where formula_4 is some deterministic function. Linear regression is a restricted case of nonparametric regression where formula_4 is assumed to be affine.
Some authors use a slightly stronger assumption of additive noise:
where the random variable formula_7 is the `noise term', with mean 0.
Without the assumption that formula_8 belongs to a specific parametric family of functions it is impossible to get an unbiased estimate for formula_8, however most estimators are consistent under suitable conditions.
List of general-purpose nonparametric regression algorithms.
This is a non-exhaustive list of algorithms suitable for nonparametric regression problems.
Examples.
Gaussian process regression or Kriging.
In Gaussian process regression, also known as Kriging, a Gaussian prior is assumed for the regression curve. The errors are assumed to have a multivariate normal distribution and the regression curve is estimated by its posterior mode. The Gaussian prior may depend on unknown hyperparameters, which are usually estimated via empirical Bayes. 
The hyperparameters typically specify a prior covariance kernel. In case the kernel should also be inferred nonparametrically from the data, the critical filter can be used. 
Smoothing splines have an interpretation as the posterior mode of a Gaussian process regression.
Kernel regression.
Kernel regression estimates the continuous dependent variable from a limited set of data points by convolving the data points' locations with a kernel function—approximately speaking, the kernel function specifies how to "blur" the influence of the data points so that their values can be used to predict the value for nearby locations.
Regression trees.
Decision tree learning algorithms can be applied to learn to predict a dependent variable from data. Although the original Classification And Regression Tree (CART) formulation applied only to predicting univariate data, the framework can be used to predict multivariate data, including time series.