com.rapidminer.operator.learner.meta
Class SDRulesetInduction

java.lang.Object
  extended by com.rapidminer.operator.Operator
      extended by com.rapidminer.operator.OperatorChain
          extended by com.rapidminer.operator.learner.meta.SDRulesetInduction
All Implemented Interfaces:
ConfigurationListener, PreviewListener, ParameterHandler, LoggingHandler

public class SDRulesetInduction
extends OperatorChain

Subgroup discovery learner.

Author:
Martin Scholz Exp $

Field Summary
static double MIN_ADVANTAGE
          Discard models with an advantage of less than the specified value.
static java.lang.String PARAMETER_ADDITIVE_REWEIGHT
          Boolean parameter: true for additive reweighting, false for multiplicative.
static java.lang.String PARAMETER_GAMMA
          Boolean parameter to specify whether the label priors should be equally likely after first iteration.
static java.lang.String PARAMETER_ITERATIONS
          Name of the variable specifying the maximal number of iterations of the learner.
static java.lang.String PARAMETER_RATIO_INTERNAL_BOOTSTRAP
          Name of the flag indicating internal bootstrapping.
static java.lang.String PARAMETER_ROC_CONVEX_HULL_FILTER
          A parameter whether to discard all rules not lying on the convex hull in ROC space.
static java.lang.String TIMES_COVERED
          Name of special attribute counting the times an example has been covered by a rule.
 
Constructor Summary
SDRulesetInduction(OperatorDescription description)
          Constructor.
 
Method Summary
 IOObject[] apply()
          Constructs a Model repeatedly running a weak learner, reweighting the training example set accordingly, and combining the hypothesis using the available weighted performance values.
 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 maximum number of inner operators.
 int getMinNumberOfInnerOperators()
          Returns the minimum number of inner operators.
 java.lang.Class<?>[] getOutputClasses()
          Returns the classes that are guaranteed to be returned by apply() as additional output.
 java.util.List<ParameterType> getParameterTypes()
          Adds the parameters "number of iterations" and "model file".
static int getPosIndex(Attribute label)
           
 
Methods inherited from class com.rapidminer.operator.OperatorChain
addAddListener, addOperator, addOperator, checkDeprecations, checkIO, checkNumberOfInnerOperators, checkProperties, clearErrorList, cloneOperator, createExperimentTree, createProcessTree, getAllInnerOperators, getIndexOfOperator, getInnerOperatorForName, getInnerOperatorsXML, getNumberOfAllOperators, getNumberOfOperators, getOperator, getOperatorFromAll, getOperators, performAdditionalChecks, processFinished, processStarts, registerOperator, removeAddListener, removeOperator, shouldAddNonConsumedInput, shouldReturnInnerOutput, unregisterOperator
 
Methods inherited from class com.rapidminer.operator.Operator
addError, addValue, addWarning, apply, checkForStop, createExperimentTree, createFromXML, createMarkedExperimentTree, createMarkedProcessTree, createProcessTree, getAddOnlyAdditionalOutput, getApplyCount, getDeliveredOutputClasses, getDeprecationInfo, getDesiredInputClasses, getEncoding, getErrorList, getExperiment, getInput, getInput, getInput, getInputDescription, getIOContainerForInApplyLoopBreakpoint, getIODescription, getLog, getName, getOperatorClassName, getOperatorDescription, getParameter, getParameterAsBoolean, getParameterAsColor, getParameterAsDouble, getParameterAsFile, getParameterAsFile, getParameterAsInputStream, getParameterAsInt, getParameterAsMatrix, getParameterAsString, getParameterList, getParameters, getParameterType, getParent, getProcess, getStartTime, getStatus, getUserDescription, getValue, getValues, getXML, hasBreakpoint, hasBreakpoint, hasInput, inApplyLoop, isDebugMode, isEnabled, isExpanded, isParallel, isParameterSet, log, logError, logNote, logWarning, register, remove, rename, resume, setApplyCount, setBreakpoint, setEnabled, setExpanded, setInput, setListParameter, setOperatorParameters, setParameter, setParameters, setParent, setUserDescription, toString, writeXML
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PARAMETER_ITERATIONS

public static final java.lang.String PARAMETER_ITERATIONS
Name of the variable specifying the maximal number of iterations of the learner.

See Also:
Constant Field Values

PARAMETER_RATIO_INTERNAL_BOOTSTRAP

public static final java.lang.String PARAMETER_RATIO_INTERNAL_BOOTSTRAP
Name of the flag indicating internal bootstrapping.

See Also:
Constant Field Values

PARAMETER_ROC_CONVEX_HULL_FILTER

public static final java.lang.String PARAMETER_ROC_CONVEX_HULL_FILTER
A parameter whether to discard all rules not lying on the convex hull in ROC space.

See Also:
Constant Field Values

PARAMETER_ADDITIVE_REWEIGHT

public static final java.lang.String PARAMETER_ADDITIVE_REWEIGHT
Boolean parameter: true for additive reweighting, false for multiplicative.

See Also:
Constant Field Values

PARAMETER_GAMMA

public static final java.lang.String PARAMETER_GAMMA
Boolean parameter to specify whether the label priors should be equally likely after first iteration.

See Also:
Constant Field Values

TIMES_COVERED

public static final java.lang.String TIMES_COVERED
Name of special attribute counting the times an example has been covered by a rule. This attribute is created for additive reweighting, only.

See Also:
Constant Field Values

MIN_ADVANTAGE

public static final double MIN_ADVANTAGE
Discard models with an advantage of less than the specified value.

See Also:
Constant Field Values
Constructor Detail

SDRulesetInduction

public SDRulesetInduction(OperatorDescription description)
Constructor.

Method Detail

getInnerOperatorCondition

public InnerOperatorCondition getInnerOperatorCondition()
Description copied from class: OperatorChain
Must return a condition of the IO behaviour of all desired inner operators. If there are no "special" conditions and the chain works similar to a simple operator chain this method should at least return a SimpleChainInnerOperatorCondition. More than one condition should be combined with help of the class CombinedInnerOperatorCondition.

Specified by:
getInnerOperatorCondition in class OperatorChain

getMaxNumberOfInnerOperators

public int getMaxNumberOfInnerOperators()
Description copied from class: OperatorChain
Returns the maximum number of inner operators.

Specified by:
getMaxNumberOfInnerOperators in class OperatorChain
See Also:
OperatorChain.getMaxNumberOfInnerOperators()

getMinNumberOfInnerOperators

public int getMinNumberOfInnerOperators()
Description copied from class: OperatorChain
Returns the minimum number of inner operators.

Specified by:
getMinNumberOfInnerOperators in class OperatorChain
See Also:
OperatorChain.getMinNumberOfInnerOperators()

getInputClasses

public java.lang.Class<?>[] getInputClasses()
Description copied from class: Operator
Returns the classes that are needed as input. May be null or an empty (no desired input). As default, all delivered input objects are consumed and must be also delivered as output in both Operator.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.

Specified by:
getInputClasses in class Operator
See Also:
Operator.getInputClasses()

getOutputClasses

public java.lang.Class<?>[] getOutputClasses()
Description copied from class: Operator

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

Specified by:
getOutputClasses in class Operator
See Also:
Operator.getOutputClasses()

getPosIndex

public static int getPosIndex(Attribute label)

apply

public IOObject[] apply()
                 throws OperatorException
Constructs a Model repeatedly running a weak learner, reweighting the training example set accordingly, and combining the hypothesis using the available weighted performance values. If the input contains a model, then this model is used as a starting point for weighting the examples.

Overrides:
apply in class OperatorChain
Returns:
the last inner operator's output or the input itself if the chain is empty.
Throws:
OperatorException

getParameterTypes

public java.util.List<ParameterType> getParameterTypes()
Adds the parameters "number of iterations" and "model file".

Specified by:
getParameterTypes in interface ParameterHandler
Overrides:
getParameterTypes in class Operator


Copyright © 2001-2009 by Rapid-I