|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.rapidminer.tools.AbstractObservable<Operator>
com.rapidminer.operator.Operator
com.rapidminer.operator.OperatorChain
com.rapidminer.operator.validation.ValidationChain
com.rapidminer.operator.validation.XValidation
public class XValidation
XValidation encapsulates a cross-validation process. The
example set S is split up into number_of_validations
subsets S_i. The inner operators are applied
number_of_validations times using S_i as the test
set (input of the second inner operator) and S\backslash S_i
training set (input of the first inner operator).
The first inner operator must accept an
ExampleSet while the second must accept an
ExampleSet and the output of the first (which
is in most cases a Model) and must produce
a PerformanceVector.
Like other validation schemes the RapidMiner cross validation can use several types of sampling for building the subsets. Linear sampling simply divides the example set into partitions without changing the order of the examples. Shuffled sampling build random subsets from the data. Stratifed sampling builds random subsets and ensures that the class distribution in the subsets is the same as in the whole example set.
The cross validation operator provides several values which can be logged
by means of a ProcessLogOperator. Of course the number of the current
iteration can be logged which might be useful for ProcessLog operators wrapped
inside a cross validation. Beside that, all performance estimation operators
of RapidMiner provide access to the average values calculated during the estimation.
Since the operator cannot ensure the names of the delivered criteria, the
ProcessLog operator can access the values via the generic value names:
| Field Summary | |
|---|---|
static java.lang.String |
PARAMETER_AVERAGE_PERFORMANCES_ONLY
The parameter name for "Indicates if only performance vectors should be averaged or all types of averagable result vectors" |
static java.lang.String |
PARAMETER_LEAVE_ONE_OUT
The parameter name for "Set the number of validations to the number of examples. |
static java.lang.String |
PARAMETER_NUMBER_OF_VALIDATIONS
The parameter name for "Number of subsets for the crossvalidation. |
static java.lang.String |
PARAMETER_SAMPLING_TYPE
The parameter name for "Defines the sampling type of the cross validation (linear = consecutive subsets, shuffled = random subsets, stratified = random subsets with class distribution kept constant)" |
| Fields inherited from class com.rapidminer.operator.validation.ValidationChain |
|---|
PARAMETER_CREATE_COMPLETE_MODEL |
| Constructor Summary | |
|---|---|
XValidation(OperatorDescription description)
|
|
| Method Summary | |
|---|---|
void |
estimatePerformance(ExampleSet inputSet)
This is the main method of the validation chain and must be implemented to estimate a performance of inner operators on the given example set. |
java.util.List<ParameterType> |
getParameterTypes()
Returns a list of ParameterTypes describing the parameters of this operator. |
protected MDInteger |
getTestSetSize(MDInteger originalSize)
|
protected MDInteger |
getTrainingSetSize(MDInteger originalSize)
|
protected void |
performIteration(SplittedExampleSet splittedES,
int iteration)
|
| Methods inherited from class com.rapidminer.operator.validation.ValidationChain |
|---|
doWork, evaluate, executeEvaluator, executeLearner, learn, shouldAutoConnect |
| Methods inherited from class com.rapidminer.tools.AbstractObservable |
|---|
addObserver, addObserverAsFirst, fireUpdate, removeObserver |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String PARAMETER_NUMBER_OF_VALIDATIONS
public static final java.lang.String PARAMETER_LEAVE_ONE_OUT
public static final java.lang.String PARAMETER_SAMPLING_TYPE
public static final java.lang.String PARAMETER_AVERAGE_PERFORMANCES_ONLY
| Constructor Detail |
|---|
public XValidation(OperatorDescription description)
| Method Detail |
|---|
public void estimatePerformance(ExampleSet inputSet)
throws OperatorException
ValidationChain
estimatePerformance in class ValidationChainOperatorException
protected void performIteration(SplittedExampleSet splittedES,
int iteration)
throws OperatorException,
ProcessStoppedException
OperatorException
ProcessStoppedException
protected MDInteger getTestSetSize(MDInteger originalSize)
throws UndefinedParameterError
getTestSetSize in class ValidationChainUndefinedParameterError
protected MDInteger getTrainingSetSize(MDInteger originalSize)
throws UndefinedParameterError
getTrainingSetSize in class ValidationChainUndefinedParameterErrorpublic java.util.List<ParameterType> getParameterTypes()
Operator
getParameterTypes in interface ParameterHandlergetParameterTypes in class ValidationChain
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||