# Regression¶

A regression example is explained for the SALSA package by the `sinc(x) = sin(x)./x`

function.

This package provides a function `salsa`

and explanation on `SALSAModel`

for the regression case. This use case is supported by the Fixed-Size approach [FS2010] and *Nyström approximation* with the specific `LEAST_SQUARES()`

loss function and cross-validation criterion `mse()`

(mean-squared error).

```
using SALSA, Base.Test
srand(1234)
sinc(x) = sin(x)./x
X = linspace(0.1,20,100)''
Xtest = linspace(0.11,19.9,100)''
y = sinc(X)
model = SALSAModel(NONLINEAR, SIMPLE_SGD(), LEAST_SQUARES,
validation_criterion=MSE(), process_labels=false)
model = salsa(X, y, model, Xtest)
@test_approx_eq_eps mse(sinc(Xtest), model.output.Ytest) 0.05 0.01
```

By taking a look at the code snippet above we can notice a major difference with the *Classification* example. The model is equipped with the `NONLINEAR`

mode, `LEAST_SQUARES`

loss function while the cross-validation criterion is given by `MSE`

. Another important model-related parameter is `process_labels`

which should be set to `false`

in order to switch into regression mode. These four essential components unambiguously define a regression problem solved stochastically by the `SALSA`

package.

[FS2010] | De Brabanter K., De Brabanter J., Suykens J.A.K., De Moor B., “Optimized Fixed-Size Kernel Models for Large Data Sets”, Computational Statistics & Data Analysis, vol. 54, no. 6, Jun. 2010, pp. 1484-1504. |