com.rapidminer.operator.meta
Class ParameterSetter

java.lang.Object
  extended by com.rapidminer.tools.AbstractObservable<Operator>
      extended by com.rapidminer.operator.Operator
          extended by com.rapidminer.operator.meta.ParameterSetter
All Implemented Interfaces:
ConfigurationListener, PreviewListener, ResourceConsumer, ParameterHandler, LoggingHandler, Observable<Operator>

public class ParameterSetter
extends Operator

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").

Author:
Simon Fischer, Ingo Mierswa

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
 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 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

PARAMETER_NAME_MAP

public static final 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."

See Also:
Constant Field Values
Constructor Detail

ParameterSetter

public ParameterSetter(OperatorDescription description)
Method Detail

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

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

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


Copyright © 2001-2009 by Rapid-I