com.rapidminer.operator.learner.tree
Class DecisionTreeLearner

java.lang.Object
  extended by com.rapidminer.operator.Operator
      extended by com.rapidminer.operator.learner.AbstractLearner
          extended by com.rapidminer.operator.learner.tree.AbstractTreeLearner
              extended by com.rapidminer.operator.learner.tree.DecisionTreeLearner
All Implemented Interfaces:
ConfigurationListener, PreviewListener, Learner, ParameterHandler, LoggingHandler
Direct Known Subclasses:
CHAIDLearner, RandomTreeLearner

public class DecisionTreeLearner
extends AbstractTreeLearner

This operator learns decision trees from both nominal and numerical data. Decision trees are powerful classification methods which often can also easily be understood. This decision tree learner works similar to Quinlan's C4.5 or CART.

The actual type of the tree is determined by the criterion, e.g. using gain_ratio or Gini for CART / C4.5.

Author:
Sebastian Land, Ingo Mierswa
Keywords:
C4.5, CART

Field Summary
static java.lang.String PARAMETER_CONFIDENCE
          The parameter name for "The confidence level used for pruning.
static java.lang.String PARAMETER_MAXIMAL_DEPTH
          The parameter name for the maximum tree depth.
static java.lang.String PARAMETER_NO_PRE_PRUNING
           
static java.lang.String PARAMETER_NO_PRUNING
          The parameter name for "Disables the pruning and delivers an unpruned tree.
static java.lang.String PARAMETER_NUMBER_OF_PREPRUNING_ALTERNATIVES
           
 
Fields inherited from class com.rapidminer.operator.learner.tree.AbstractTreeLearner
CRITERIA_CLASSES, CRITERIA_NAMES, CRITERION_ACCURACY, CRITERION_GAIN_RATIO, CRITERION_GINI_INDEX, CRITERION_INFO_GAIN, PARAMETER_CRITERION, PARAMETER_MINIMAL_GAIN, PARAMETER_MINIMAL_LEAF_SIZE, PARAMETER_MINIMAL_SIZE_FOR_SPLIT
 
Fields inherited from class com.rapidminer.operator.learner.AbstractLearner
PROPERTY_RAPIDMINER_GENERAL_CAPABILITIES_WARN
 
Constructor Summary
DecisionTreeLearner(OperatorDescription description)
           
 
Method Summary
 java.util.List<ParameterType> getParameterTypes()
          Returns a list of ParameterTypes describing the parameters of this operator.
 Pruner getPruner()
          Returns the pruner for this tree learner.
 java.util.List<Terminator> getTerminationCriteria(ExampleSet exampleSet)
          Returns all termination criteria.
protected  TreeBuilder getTreeBuilder(ExampleSet exampleSet)
           
 boolean supportsCapability(LearnerCapability capability)
          Checks for Learner capabilities.
 
Methods inherited from class com.rapidminer.operator.learner.tree.AbstractTreeLearner
createCriterion, getSplitPreprocessing, learn
 
Methods inherited from class com.rapidminer.operator.learner.AbstractLearner
apply, getEstimatedPerformance, getInputClasses, getInputDescription, getOptimizationPerformance, getOutputClasses, getWeights, onlyWarnForNonSufficientCapabilities, shouldCalculateWeights, shouldDeliverOptimizationPerformance, shouldEstimatePerformance
 
Methods inherited from class com.rapidminer.operator.Operator
addError, addValue, addWarning, apply, checkDeprecations, checkForStop, checkIO, checkProperties, clearErrorList, cloneOperator, createExperimentTree, createExperimentTree, createFromXML, createMarkedExperimentTree, createMarkedProcessTree, createProcessTree, createProcessTree, getAddOnlyAdditionalOutput, getApplyCount, getDeliveredOutputClasses, getDeprecationInfo, getDesiredInputClasses, getEncoding, getErrorList, getExperiment, getInnerOperatorsXML, getInput, getInput, getInput, 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, performAdditionalChecks, processFinished, processStarts, register, registerOperator, remove, rename, resume, setApplyCount, setBreakpoint, setEnabled, setExpanded, setInput, setListParameter, setOperatorParameters, setParameter, setParameters, setParent, setUserDescription, toString, unregisterOperator, writeXML
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.rapidminer.operator.learner.Learner
getName
 

Field Detail

PARAMETER_MAXIMAL_DEPTH

public static final java.lang.String PARAMETER_MAXIMAL_DEPTH
The parameter name for the maximum tree depth.

See Also:
Constant Field Values

PARAMETER_CONFIDENCE

public static final java.lang.String PARAMETER_CONFIDENCE
The parameter name for "The confidence level used for pruning."

See Also:
Constant Field Values

PARAMETER_NO_PRUNING

public static final java.lang.String PARAMETER_NO_PRUNING
The parameter name for "Disables the pruning and delivers an unpruned tree."

See Also:
Constant Field Values

PARAMETER_NO_PRE_PRUNING

public static final java.lang.String PARAMETER_NO_PRE_PRUNING
See Also:
Constant Field Values

PARAMETER_NUMBER_OF_PREPRUNING_ALTERNATIVES

public static final java.lang.String PARAMETER_NUMBER_OF_PREPRUNING_ALTERNATIVES
See Also:
Constant Field Values
Constructor Detail

DecisionTreeLearner

public DecisionTreeLearner(OperatorDescription description)
Method Detail

getPruner

public Pruner getPruner()
                 throws OperatorException
Description copied from class: AbstractTreeLearner
Returns the pruner for this tree learner. If this method returns null, pruning will be disabled.

Specified by:
getPruner in class AbstractTreeLearner
Throws:
OperatorException

getTerminationCriteria

public java.util.List<Terminator> getTerminationCriteria(ExampleSet exampleSet)
                                                  throws OperatorException
Description copied from class: AbstractTreeLearner
Returns all termination criteria.

Specified by:
getTerminationCriteria in class AbstractTreeLearner
Throws:
OperatorException

supportsCapability

public boolean supportsCapability(LearnerCapability capability)
Description copied from interface: Learner
Checks for Learner capabilities. Should return true if the given capability is supported.


getTreeBuilder

protected TreeBuilder getTreeBuilder(ExampleSet exampleSet)
                              throws OperatorException
Specified by:
getTreeBuilder in class AbstractTreeLearner
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.

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


Copyright © 2001-2009 by Rapid-I