|
||||||||||
| 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.meta.ParameterSetter
public class ParameterSetter
Sets a set of parameters. These parameters can either be generated by a
ParameterOptimizationOperator or read by a
ParameterSetLoader. This operator is
useful, e.g. in the following scenario. If one wants to find the best
parameters for a certain learning scheme, one usually is also interested in
the model generated with this parameters. While the first is easily possible
using a ParameterOptimizationOperator, the latter is not possible
because the ParameterOptimizationOperator does not return the
IOObjects produced within, but only a parameter set. This is, because the
parameter optimization operator knows nothing about models, but only about
the performance vectors produced within. Producing performance vectors does
not necessarily require a model.
To solve this problem, one can use a
ParameterSetter. Usually, a process with a
ParameterSetter contains at least two operators of the same
type, typically a learner. One learner may be an inner operator of the
ParameterOptimizationOperator and may be named "Learner",
whereas a second learner of the same type named "OptimalLearner"
follows the parameter optimization and should use the optimal parameter set
found by the optimization. In order to make the ParameterSetter
set the optimal parameters of the right operator, one must specify its name.
Therefore, the parameter list name_map was introduced. Each
parameter in this list maps the name of an operator that was used during
optimization (in our case this is "Learner") to an operator that
should now use these parameters (in our case this is
"OptimalLearner").
| Field Summary | |
|---|---|
static java.lang.String |
PARAMETER_NAME_MAP
The parameter name for "A list mapping operator names from the set to operator names in the process setup. |
| Constructor Summary | |
|---|---|
ParameterSetter(OperatorDescription description)
|
|
| Method Summary | |
|---|---|
IOObject[] |
apply()
Implement this method in subclasses. |
java.lang.Class<?>[] |
getInputClasses()
Returns the classes that are needed as input. |
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. |
| 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_NAME_MAP
| Constructor Detail |
|---|
public ParameterSetter(OperatorDescription description)
| Method Detail |
|---|
public IOObject[] apply()
throws OperatorException
Operator
apply in class OperatorOperatorExceptionpublic 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 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.util.List<ParameterType> getParameterTypes()
Operator
getParameterTypes in interface ParameterHandlergetParameterTypes in class Operator
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||