com.rapidminer.operator.preprocessing.outlier
Class DBOutlierOperator

java.lang.Object
  extended by com.rapidminer.tools.AbstractObservable<Operator>
      extended by com.rapidminer.operator.Operator
          extended by com.rapidminer.operator.AbstractExampleSetProcessing
              extended by com.rapidminer.operator.preprocessing.outlier.AbstractOutlierDetection
                  extended by com.rapidminer.operator.preprocessing.outlier.DBOutlierOperator
All Implemented Interfaces:
ConfigurationListener, PreviewListener, ResourceConsumer, ParameterHandler, LoggingHandler, Observable<Operator>

public class DBOutlierOperator
extends AbstractOutlierDetection

This operator is a DB outlier detection algorithm which calculates the DB(p,D)-outliers for an ExampleSet passed to the operator. DB(p,D)-outliers are Distance based outliers according to Knorr and Ng. A DB(p,D)-outlier is an object to which at least a proportion of p of all objects are farer away than distance D. It implements a global homogenous outlier search.

Currently, the operator supports cosine, sine or squared distances in addition to the usual euclidian distance which can be specified by the corresponding parameter. The operator takes two other real-valued parameters p and D. Depending on these parameters, search objects will be created from the examples in the ExampleSet passed to the operator. These search objects will be added to a search space which will perform the outlier search according to the DB(p,D) scheme.

The Outlier status (boolean in its nature) is written to a new special attribute "Outlier" and is passed on with the example set.

Author:
Stephan Deutsch, Ingo Mierswa

Field Summary
static java.lang.String PARAMETER_DISTANCE
          The parameter name for "The distance for objects.
static java.lang.String PARAMETER_DISTANCE_FUNCTION
          The parameter name for "Indicates which distance function will be used for calculating the distance between two objects"
static java.lang.String PARAMETER_PROPORTION
          The parameter name for "The proportion of objects related to D.
 
Constructor Summary
DBOutlierOperator(OperatorDescription description)
           
 
Method Summary
 ExampleSet apply(ExampleSet eSet)
          This method implements the main functionality of the Operator but can be considered as a sort of wrapper to pass the RapidMiner operator chain data deeper into the SearchSpace class, so do not expect a lot of things happening here.
protected  java.util.Set<java.lang.String> getOutlierValues()
           
 java.util.List<ParameterType> getParameterTypes()
          Returns a list of ParameterTypes describing the parameters of this operator.
 ResourceConsumptionEstimator getResourceConsumptionEstimator()
          Subclasses can override this method if they are able to estimate the consumed resources (CPU time and memory), based on their input.
 
Methods inherited from class com.rapidminer.operator.preprocessing.outlier.AbstractOutlierDetection
modifyMetaData, writesIntoExistingData
 
Methods inherited from class com.rapidminer.operator.AbstractExampleSetProcessing
doWork, getExampleSetInputPort, getExampleSetOutputPort, getInputPort, getRequiredMetaData, shouldAutoConnect
 
Methods inherited from class com.rapidminer.operator.Operator
acceptsInput, addError, addError, addValue, addWarning, apply, apply, assumePreconditionsSatisfied, checkAll, checkAllExcludingMetaData, checkDeprecations, checkForStop, checkIO, checkProperties, 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, 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, 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_DISTANCE

public static final java.lang.String PARAMETER_DISTANCE
The parameter name for "The distance for objects."

See Also:
Constant Field Values

PARAMETER_PROPORTION

public static final java.lang.String PARAMETER_PROPORTION
The parameter name for "The proportion of objects related to D."

See Also:
Constant Field Values

PARAMETER_DISTANCE_FUNCTION

public static final java.lang.String PARAMETER_DISTANCE_FUNCTION
The parameter name for "Indicates which distance function will be used for calculating the distance between two objects"

See Also:
Constant Field Values
Constructor Detail

DBOutlierOperator

public DBOutlierOperator(OperatorDescription description)
Method Detail

apply

public ExampleSet apply(ExampleSet eSet)
                 throws OperatorException
This method implements the main functionality of the Operator but can be considered as a sort of wrapper to pass the RapidMiner operator chain data deeper into the SearchSpace class, so do not expect a lot of things happening here.

Specified by:
apply in class AbstractExampleSetProcessing
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

getOutlierValues

protected java.util.Set<java.lang.String> getOutlierValues()
Specified by:
getOutlierValues in class AbstractOutlierDetection

getResourceConsumptionEstimator

public ResourceConsumptionEstimator getResourceConsumptionEstimator()
Description copied from class: Operator
Subclasses can override this method if they are able to estimate the consumed resources (CPU time and memory), based on their input. The default implementation returns null.

Specified by:
getResourceConsumptionEstimator in interface ResourceConsumer
Overrides:
getResourceConsumptionEstimator in class Operator


Copyright © 2001-2009 by Rapid-I