com.rapidminer.operator.features.transformation
Class KernelPCA

java.lang.Object
  extended by com.rapidminer.operator.Operator
      extended by com.rapidminer.operator.features.transformation.KernelPCA
All Implemented Interfaces:
ConfigurationListener, PreviewListener, ParameterHandler, LoggingHandler

public class KernelPCA
extends Operator

This operator performs a kernel-based principal components analysis (PCA). Hence, the result will be the set of data points in a non-linearly transformed space. Please note that in contrast to the usual linear PCA the kernel variant does also works for large numbers of attributes but will become slow for large number of examples.

Author:
Sebastian Land

Field Summary
static java.lang.String PARAMETER_EPSILON
          The parameter name for "The width of the regression tube loss function of the regression SVM"
static java.lang.String PARAMETER_KERNEL_A
          The parameter name for "The kernel parameter a (neural).
static java.lang.String PARAMETER_KERNEL_B
          The parameter name for "The kernel parameter b (neural).
static java.lang.String PARAMETER_KERNEL_DEGREE
          The parameter name for "The kernel parameter degree (polynomial, anova, Epanechnikov).
static java.lang.String PARAMETER_KERNEL_GAMMA
          The parameter name for "The kernel parameter gamma (RBF, anova).
static java.lang.String PARAMETER_KERNEL_SHIFT
          The parameter name for "The kernel parameter shift (polynomial, Multiquadric).
static java.lang.String PARAMETER_KERNEL_SIGMA1
          The parameter name for "The kernel parameter sigma1 (Epanechnikov, Gaussian Combination, Multiquadric).
static java.lang.String PARAMETER_KERNEL_SIGMA2
          The parameter name for "The kernel parameter sigma2 (Gaussian Combination).
static java.lang.String PARAMETER_KERNEL_SIGMA3
          The parameter name for "The kernel parameter sigma3 (Gaussian Combination).
static java.lang.String PARAMETER_KERNEL_TYPE
          The parameter name for "The kernel type"
 
Constructor Summary
KernelPCA(OperatorDescription description)
           
 
Method Summary
 IOObject[] apply()
          Implement this method in subclasses.
 java.lang.Class<?>[] getInputClasses()
          Returns the classes that are needed as input.
 java.lang.Class<?>[] getOutputClasses()
          Returns the classes that are guaranteed to be returned by apply() as additional output.
 java.util.List<ParameterType> getParameterTypes()
          Returns a list of ParameterTypes describing the parameters of this operator.
 
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, 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, 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
 

Field Detail

PARAMETER_KERNEL_TYPE

public static final java.lang.String PARAMETER_KERNEL_TYPE
The parameter name for "The kernel type"

See Also:
Constant Field Values

PARAMETER_KERNEL_GAMMA

public static final java.lang.String PARAMETER_KERNEL_GAMMA
The parameter name for "The kernel parameter gamma (RBF, anova)."

See Also:
Constant Field Values

PARAMETER_KERNEL_SIGMA1

public static final java.lang.String PARAMETER_KERNEL_SIGMA1
The parameter name for "The kernel parameter sigma1 (Epanechnikov, Gaussian Combination, Multiquadric)."

See Also:
Constant Field Values

PARAMETER_KERNEL_SIGMA2

public static final java.lang.String PARAMETER_KERNEL_SIGMA2
The parameter name for "The kernel parameter sigma2 (Gaussian Combination)."

See Also:
Constant Field Values

PARAMETER_KERNEL_SIGMA3

public static final java.lang.String PARAMETER_KERNEL_SIGMA3
The parameter name for "The kernel parameter sigma3 (Gaussian Combination)."

See Also:
Constant Field Values

PARAMETER_KERNEL_DEGREE

public static final java.lang.String PARAMETER_KERNEL_DEGREE
The parameter name for "The kernel parameter degree (polynomial, anova, Epanechnikov)."

See Also:
Constant Field Values

PARAMETER_KERNEL_SHIFT

public static final java.lang.String PARAMETER_KERNEL_SHIFT
The parameter name for "The kernel parameter shift (polynomial, Multiquadric)."

See Also:
Constant Field Values

PARAMETER_KERNEL_A

public static final java.lang.String PARAMETER_KERNEL_A
The parameter name for "The kernel parameter a (neural)."

See Also:
Constant Field Values

PARAMETER_KERNEL_B

public static final java.lang.String PARAMETER_KERNEL_B
The parameter name for "The kernel parameter b (neural)."

See Also:
Constant Field Values

PARAMETER_EPSILON

public static final java.lang.String PARAMETER_EPSILON
The parameter name for "The width of the regression tube loss function of the regression SVM"

See Also:
Constant Field Values
Constructor Detail

KernelPCA

public KernelPCA(OperatorDescription description)
Method Detail

apply

public IOObject[] apply()
                 throws OperatorException
Description copied from class: Operator
Implement this method in subclasses.

Specified by:
apply in class Operator
Throws:
OperatorException

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

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

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 Operator


Copyright © 2001-2009 by Rapid-I