com.rapidminer.operator.meta
Class ParameterCloner
java.lang.Object
com.rapidminer.tools.AbstractObservable<Operator>
com.rapidminer.operator.Operator
com.rapidminer.operator.meta.ParameterCloner
- All Implemented Interfaces:
- ConfigurationListener, PreviewListener, ResourceConsumer, ParameterHandler, LoggingHandler, Observable<Operator>
public class ParameterCloner
- extends Operator
Sets a list of parameters using existing parameter values.
The operator is similar to ParameterSetter, but differs from that in not requiring a ParameterSet input. It
simply reads a parameter value from a source and uses it to set the parameter value of a target parameter. Both,
source and target, are given in the format 'operator'.'parameter'.
This operator is more general than ParameterSetter and could completely replace it. It is most useful, if you need a
parameter which is optimized more than once within the optimization loop - ParameterSetter cannot be used here.
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 definition 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").
- Author:
- Robert Rudolph
|
Field Summary |
static java.lang.String |
PARAMETER_NAME_MAP
The parameter name for "A list mapping operator parameters from the set to other operator parameters in the
process setup. |
|
Method Summary |
int |
checkProperties()
Will count an error if a non optional property has no default value and
is not defined by user. |
void |
doWork()
Performs the actual work of the operator and must be implemented
by subclasses. |
java.util.List<ParameterType> |
getParameterTypes()
Returns a list of ParameterTypes describing the parameters of
this operator. |
| Methods inherited from class com.rapidminer.operator.Operator |
acceptsInput, addError, addError, addValue, addWarning, apply, apply, assumePreconditionsSatisfied, checkAll, checkAllExcludingMetaData, checkDeprecations, checkForStop, checkIO, clear, clearErrorList, cloneOperator, collectErrors, createExperimentTree, createExperimentTree, createFromXML, createFromXML, createFromXML, createMarkedExperimentTree, createMarkedProcessTree, createProcessTree, createProcessTree, disconnectPorts, execute, fireUpdate, freeMemory, getAddOnlyAdditionalOutput, getApplyCount, getCompatibilityLevel, getDeliveredOutputClasses, getDeprecationInfo, getDesiredInputClasses, getDOMRepresentation, getEncoding, getErrorList, getExecutionUnit, getExperiment, getIncompatibleVersionChanges, getInput, getInput, getInput, getInputClasses, getInputDescription, getInputPorts, getIODescription, getLog, getLogger, getName, getNumberOfBreakpoints, getOperatorClassName, getOperatorDescription, getOutputClasses, getOutputPorts, getParameter, getParameterAsBoolean, getParameterAsChar, getParameterAsColor, getParameterAsDouble, getParameterAsFile, getParameterAsFile, getParameterAsInputStream, getParameterAsInt, getParameterAsMatrix, getParameterAsRepositoryLocation, getParameterAsString, getParameterHandler, getParameterList, getParameters, getParameterTupel, getParameterType, getParent, getPortOwner, getProcess, getResourceConsumptionEstimator, getRoot, getStartTime, getTransformer, getUserDescription, getValue, getValues, getXML, getXML, getXML, hasBreakpoint, hasBreakpoint, hasInput, inApplyLoop, isDebugMode, isDirty, isEnabled, isExpanded, isParallel, isParameterSet, isRunning, log, log, logError, logNote, logWarning, lookupOperator, makeDirty, makeDirtyOnUpdate, notifyRenaming, performAdditionalChecks, preAutoWire, processFinished, processStarts, producesOutput, propagateDirtyness, register, registerOperator, remove, removeAndKeepConnections, rename, resume, setBreakpoint, setCompatibilityLevel, setEnabled, setEnclosingProcess, setExpanded, setInput, setListParameter, setPairParameter, setParameter, setParameters, setUserDescription, shouldAutoConnect, shouldAutoConnect, shouldStopStandaloneExecution, toString, transformMetaData, unregisterOperator, updateExecutionOrder, walk, writeXML, writeXML |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
PARAMETER_NAME_MAP
public static final java.lang.String PARAMETER_NAME_MAP
- The parameter name for "A list mapping operator parameters from the set to other operator parameters in the
process setup."
- See Also:
- Constant Field Values
ParameterCloner
public ParameterCloner(OperatorDescription description)
doWork
public void doWork()
throws OperatorException
- Description copied from class:
Operator
- Performs the actual work of the operator and must be implemented
by subclasses. Replaces the old method
apply().
- Overrides:
doWork in class Operator
- Throws:
OperatorException
checkProperties
public int checkProperties()
- Description copied from class:
Operator
- Will count an error if a non optional property has no default value and
is not defined by user. Returns the total number of errors.
- Overrides:
checkProperties in class Operator
getParameterTypes
public java.util.List<ParameterType> getParameterTypes()
- Description copied from class:
Operator
- Returns a list of ParameterTypes describing the parameters of
this operator. The default implementation returns an empty list if no
input objects can be retained and special parameters for those input
objects which can be prevented from being consumed.
ATTENTION! This will create new parameterTypes. For calling already existing
parameter types use getParameters().getParameterTypes();
- Specified by:
getParameterTypes in interface ParameterHandler- Overrides:
getParameterTypes in class Operator
Copyright © 2001-2009 by Rapid-I