A MissingValue operator. Each missing value in *TheTargetAttribute* is replaced by a predicted value. For prediction, a Support Vector Machine (SVM) is trained in regression mode from *ThePredictingAttributes* (taking *TheTargetAttribute* values that are not missing as target function values). All *ThePredictingAttributes* must belong to *TheInputConcept*. *TheOutputAttribute* contains the original values, plus the predicted values where the original ones were missing.

There are some SVM-specific parameters; the table gives reasonable values to choose if nothing is known about the data or SVMs. For the *KernelType*, only the following values (Strings) are possible: *dot, polynomial, neural, radial, anova*. *Dot* is the linear kernel and can be taken as default.

This operator can use two different versions of the Support Vector Machine algorithm.
One runs in main memory; it needs the parameter *SampleSize* to determine a maximum number of training examples.
The other runs in the database; it is used if the optional parameter *UseDB_SVM* is set to the String
`true`. When this version is used, an additional parameter *TheKey* is needed which gives
the `BaseAttribute` whose column is the primary key of *TheInputConcept*. (*TheKey* can
be left out only if the `ColumnSet` that belongs to *TheInputConcept* represents a table rather than a view.)
The database algorithm restricts the possible kernel types to *dot* and *radial*. It can also use the parameter *SampleSize*.

With the parameters *LossFunctionPos* and *LossFunctionNeg*, the
loss function that is used for the regression can be biased such that predicting
too high is more expensive (`LossFunctionPos > LossFunctionNeg`

)
or less expensive (`LossFunctionNeg > LossFunctionPos`

) than predicting
too low. If both values are equal, no bias is used. The parameter *C* balances
training error against generalisation quality; positive values between 0.01
and 1000 have been used successfully in the literature. *Epsilon* limits
the allowed error an example may produce; small values under 0.5 should be used.

ParameterName | ObjType | Type | Remarks |

TheInputConcept | CON | IN | inherited |

TheTargetAttribute | BA | IN | inherited |

ThePredictingAttributes | BA List |
IN | |

KernelType | V | IN | see explanation above |

SampleSize | V | IN | see explanation above |

LossFunctionPos | V | IN | positive real; try 1.0 |

LossFunctionNeg | V | IN | positive real; try 1.0 |

C | V | IN | positive real; try 1.0 |

Epsilon | V | IN | positive real; try 0.1 |

UseDB_SVM | V | IN | optional; one of true, false |

TheKey | BA | IN | optional |

TheOutputAttribute | BA | OUT | inherited |