com.rapidminer.operator.learner.bayes
Class LinearDiscriminantAnalysis
java.lang.Object
com.rapidminer.tools.AbstractObservable<Operator>
com.rapidminer.operator.Operator
com.rapidminer.operator.learner.AbstractLearner
com.rapidminer.operator.learner.bayes.LinearDiscriminantAnalysis
- All Implemented Interfaces:
- ConfigurationListener, PreviewListener, ResourceConsumer, CapabilityProvider, Learner, ParameterHandler, LoggingHandler, Observable<Operator>
- Direct Known Subclasses:
- QuadraticDiscriminantAnalysis, RegularizedDiscriminantAnalysis
public class LinearDiscriminantAnalysis
- extends AbstractLearner
This operator performs a linear discriminant analysis (LDA). This method tries to find the
linear combination of features which best separate two or more classes of examples. The resulting
combination is then used as a linear classifier. LDA is closely related to ANOVA (analysis of
variance) and regression analysis, which also attempt to express one dependent variable as a
linear combination of other features or measurements. In the other two methods however,
the dependent variable is a numerical quantity, while for LDA it is a categorical variable
(i.e. the class label).
LDA is also closely related to principal component analysis (PCA) and factor analysis in
that both look for linear combinations of variables which best explain the data. LDA explicitly
attempts to model the difference between the classes of data. PCA on the other hand does not
take into account any difference in class.
- Author:
- Sebastian Land
| Methods inherited from class com.rapidminer.operator.learner.AbstractLearner |
canCalculateWeights, canEstimatePerformance, doWork, doWork, getEstimatedPerformance, getExampleSetInputPort, getOptimizationPerformance, getWeightCalculationError, getWeights, getWeights, onlyWarnForNonSufficientCapabilities, shouldAutoConnect, shouldCalculateWeights, shouldDeliverOptimizationPerformance, shouldEstimatePerformance |
| 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, getParameterTypes, 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, shouldStopStandaloneExecution, toString, transformMetaData, unregisterOperator, updateExecutionOrder, walk, writeXML, 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 |
LinearDiscriminantAnalysis
public LinearDiscriminantAnalysis(OperatorDescription description)
learn
public Model learn(ExampleSet exampleSet)
throws OperatorException
- Description copied from interface:
Learner
- Trains a model. This method should be called by apply() and is
implemented by subclasses.
- Throws:
OperatorException
getModel
protected DiscriminantModel getModel(ExampleSet exampleSet,
java.lang.String[] labels,
Jama.Matrix[] meanVectors,
Jama.Matrix[] inverseCovariances,
double[] aprioriProbabilities)
throws UndefinedParameterError
- Throws:
UndefinedParameterError
getMeanVectors
protected Jama.Matrix[] getMeanVectors(ExampleSet exampleSet,
int numberOfAttributes,
java.lang.String[] labels)
throws UserError
- Throws:
UserError
getInverseCovarianceMatrices
protected Jama.Matrix[] getInverseCovarianceMatrices(ExampleSet exampleSet,
java.lang.String[] labels)
throws UndefinedParameterError
- Throws:
UndefinedParameterError
getModelClass
public java.lang.Class<? extends PredictionModel> getModelClass()
- Description copied from class:
AbstractLearner
- This method might be overridden from subclasses in order to specify exactly
which model class they use. This is to ensure the proper postprocessing of some models like
KernelModels (SupportVectorCounter) or TreeModels (Rule generation)
- Overrides:
getModelClass in class AbstractLearner
supportsCapability
public boolean supportsCapability(OperatorCapability capability)
- Description copied from interface:
CapabilityProvider
- Checks for Learner capabilities. Should return true if the given
capability is supported.
Copyright © 2001-2009 by Rapid-I