|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.rapidminer.operator.Operator
com.rapidminer.operator.OperatorChain
com.rapidminer.operator.features.FeatureOperator
public abstract class FeatureOperator
This class is the superclass of all feature selection and generation operators. It provides an easy to use plug-in interface for operators that modify populations. Subclasses just have to supply lists of PopulationOperators by overriding getPreEvalutaionPopulationOperators() and getPostEvalutaionPopulationOperators() during a loop which will terminate if solutionGoodEnough() returns true.
| Field Summary | |
|---|---|
static java.lang.String |
PARAMETER_CONSTRAINT_DRAW_RANGE
|
static java.lang.String |
PARAMETER_DRAW_DOMINATED_POINTS
|
static java.lang.String |
PARAMETER_LOCAL_RANDOM_SEED
|
static java.lang.String |
PARAMETER_MAXIMAL_FITNESS
|
static java.lang.String |
PARAMETER_NORMALIZE_WEIGHTS
|
static java.lang.String |
PARAMETER_PLOT_GENERATIONS
|
static java.lang.String |
PARAMETER_POPULATION_CRITERIA_DATA_FILE
|
static java.lang.String |
PARAMETER_SHOW_POPULATION_PLOTTER
|
static java.lang.String |
PARAMETER_SHOW_STOP_DIALOG
|
static java.lang.String |
PARAMETER_USER_RESULT_INDIVIDUAL_SELECTION
|
| Constructor Summary | |
|---|---|
FeatureOperator(OperatorDescription description)
|
|
| Method Summary | |
|---|---|
IOObject[] |
apply()
Applies the feature operator: collects the pre- and postevaluation operators create an initial population evaluate the initial population loop as long as solution is not good enough apply all pre evaluation operators evaluate the population update the population's best individual apply all post evaluation operators return all generation's best individual |
static ExampleSet |
createCleanClone(ExampleSet exampleSet,
double[] weights)
|
abstract Population |
createInitialPopulation(ExampleSet es)
Create an initial population. |
protected void |
evaluate(Population population)
Evaluates all individuals in the population by applying the inner operators. |
protected boolean |
getCheckForMaximum()
Returns if the operator should check if the maximum was reached for the main criterion. |
InnerOperatorCondition |
getInnerOperatorCondition()
Must return a condition of the IO behaviour of all desired inner operators. |
java.lang.Class<?>[] |
getInputClasses()
Returns the classes that are needed as input. |
int |
getMaxNumberOfInnerOperators()
Returns the highest possible value for the maximum number of innner operators. |
int |
getMinNumberOfInnerOperators()
Returns 0 for the minimum number of innner operators. |
java.lang.Class<?>[] |
getOutputClasses()
Returns the classes that are guaranteed to be returned by apply() as additional output. |
java.util.List<ParameterType> |
getParameterTypes()
Returns a list of ParameterTypes describing the parameters of this operator. |
protected Population |
getPopulation()
|
protected PopulationEvaluator |
getPopulationEvaluator(ExampleSet exampleSet)
|
abstract java.util.List<PopulationOperator> |
getPostEvaluationPopulationOperators(ExampleSet input)
Must return a list of PopulationOperators. |
abstract java.util.List<PopulationOperator> |
getPreEvaluationPopulationOperators(ExampleSet input)
Must return a list of PopulationOperators. |
protected RandomGenerator |
getRandom()
|
protected void |
setCheckForMaximum(boolean checkForMaximalFitness)
Sets if the operator should check if the maximum was reached for the main criterion. |
abstract boolean |
solutionGoodEnough(Population pop)
Has to return true if the main loop can be stopped because a solution is concidered to be good enough according to some criterion. |
| 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_NORMALIZE_WEIGHTS
public static final java.lang.String PARAMETER_LOCAL_RANDOM_SEED
public static final java.lang.String PARAMETER_SHOW_STOP_DIALOG
public static final java.lang.String PARAMETER_USER_RESULT_INDIVIDUAL_SELECTION
public static final java.lang.String PARAMETER_SHOW_POPULATION_PLOTTER
public static final java.lang.String PARAMETER_PLOT_GENERATIONS
public static final java.lang.String PARAMETER_CONSTRAINT_DRAW_RANGE
public static final java.lang.String PARAMETER_DRAW_DOMINATED_POINTS
public static final java.lang.String PARAMETER_POPULATION_CRITERIA_DATA_FILE
public static final java.lang.String PARAMETER_MAXIMAL_FITNESS
| Constructor Detail |
|---|
public FeatureOperator(OperatorDescription description)
| Method Detail |
|---|
public abstract Population createInitialPopulation(ExampleSet es)
throws OperatorException
OperatorException
public abstract java.util.List<PopulationOperator> getPreEvaluationPopulationOperators(ExampleSet input)
throws OperatorException
OperatorException
public abstract java.util.List<PopulationOperator> getPostEvaluationPopulationOperators(ExampleSet input)
throws OperatorException
OperatorException
public abstract boolean solutionGoodEnough(Population pop)
throws OperatorException
OperatorExceptionpublic java.lang.Class<?>[] getOutputClasses()
OperatorReturns the classes that are guaranteed to be returned by
apply() as additional output. Please note that input objects
which should not be consumed must also be defined by this method (e.g.
an example set which is changed but not consumed in the case of a preprocessing
operator must be defined in both, the methods Operator.getInputClasses() and
Operator.getOutputClasses()). The default behavior for input consumation
is defined by Operator.getInputDescription(Class) and can be changed by
overwriting this method. Objects which are not consumed (defined by changing
the implementation in Operator.getInputDescription(Class)) must not be
defined as additional output in this method.
May deliver null or an empy array (no additional output is produced or guaranteed). Must return the class array of delivered output objects otherwise.
getOutputClasses in class Operatorpublic java.lang.Class<?>[] getInputClasses()
OperatorOperator.getOutputClasses() and
Operator.apply() if this is necessary. This default behavior can be
changed by overriding Operator.getInputDescription(Class). Subclasses
which implement this method should not make use of parameters since this
method is invoked by getParameterTypes(). Therefore, parameters are not
fully available at this point of time and this might lead to exceptions.
Please use InputDescriptions instead.
getInputClasses in class Operatorpublic InnerOperatorCondition getInnerOperatorCondition()
OperatorChainSimpleChainInnerOperatorCondition. More than one
condition should be combined with help of the class
CombinedInnerOperatorCondition.
getInnerOperatorCondition in class OperatorChainprotected RandomGenerator getRandom()
protected Population getPopulation()
public IOObject[] apply()
throws OperatorException
apply in class OperatorChainOperatorException
public static ExampleSet createCleanClone(ExampleSet exampleSet,
double[] weights)
protected void evaluate(Population population)
throws OperatorException
OperatorExceptionprotected void setCheckForMaximum(boolean checkForMaximalFitness)
protected boolean getCheckForMaximum()
public int getMaxNumberOfInnerOperators()
getMaxNumberOfInnerOperators in class OperatorChainpublic int getMinNumberOfInnerOperators()
getMinNumberOfInnerOperators in class OperatorChainpublic java.util.List<ParameterType> getParameterTypes()
Operator
getParameterTypes in interface ParameterHandlergetParameterTypes in class Operator
protected PopulationEvaluator getPopulationEvaluator(ExampleSet exampleSet)
throws UndefinedParameterError
UndefinedParameterError
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||