org.knime.base.node.mine.bfn.fuzzy
Class FuzzyBasisFunctionLearnerNodeModel

java.lang.Object
  extended by org.knime.core.node.NodeModel
      extended by org.knime.base.node.mine.bfn.BasisFunctionLearnerNodeModel
          extended by org.knime.base.node.mine.bfn.fuzzy.FuzzyBasisFunctionLearnerNodeModel

public class FuzzyBasisFunctionLearnerNodeModel
extends BasisFunctionLearnerNodeModel

The fuzzy basis function model training FuzzyBasisFunctionLearnerRows.

Author:
Thomas Gabriel, University of Konstanz

Field Summary
 
Fields inherited from class org.knime.base.node.mine.bfn.BasisFunctionLearnerNodeModel
DISTANCE, DISTANCES, HILITE_MAPPING_FILE_NAME, MAX_CLASS_COVERAGE, MAX_EPOCHS, MODEL_INFO, MODEL_INFO_FILE_NAME, SHRINK_AFTER_COMMIT, TARGET_COLUMNS
 
Constructor Summary
FuzzyBasisFunctionLearnerNodeModel()
          Inits a new model for fuzzy basisfunctions.
 
Method Summary
 PortObjectSpec[] configure(PortObjectSpec[] ins)
          Configure method for general port types.
 FuzzyBasisFunctionPortObject createPortObject(BasisFunctionModelContent content)
          Creates a new basisfunction port object given the model content.
 PortObject[] execute(PortObject[] data, ExecutionContext exec)
          Starts the learning algorithm in the learner.
 BasisFunctionFactory getFactory(DataTableSpec spec)
          Create factory to generate BasisFunctions.
 DataType getModelType()
           
 int getNorm()
           
 int getShrink()
           
 void loadValidatedSettingsFrom(NodeSettingsRO settings)
          Sets new settings from the passed object in the model.
 void saveSettingsTo(NodeSettingsWO settings)
          Adds to the given NodeSettings the model specific settings.
 void validateSettings(NodeSettingsRO settings)
          Validates the settings in the passed NodeSettings object.
 
Methods inherited from class org.knime.base.node.mine.bfn.BasisFunctionLearnerNodeModel
getDistance, getMaxNrEpochs, getMissingFct, getModelInfo, getOutHiLiteHandler, getTargetColumns, isMaxClassCoverage, isShrinkAfterCommit, loadInternals, reset, saveInternals, setInHiLiteHandler
 
Methods inherited from class org.knime.core.node.NodeModel
addWarningListener, configure, continueLoop, execute, executeModel, getInHiLiteHandler, getLoopEndNode, getLoopStartNode, getNrInPorts, getNrOutPorts, getWarningMessage, notifyViews, notifyWarningListeners, peekFlowVariableDouble, peekFlowVariableInt, peekFlowVariableString, peekScopeVariableDouble, peekScopeVariableInt, peekScopeVariableString, pushFlowVariableDouble, pushFlowVariableInt, pushFlowVariableString, pushScopeVariableDouble, pushScopeVariableInt, pushScopeVariableString, removeWarningListener, setWarningMessage, stateChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FuzzyBasisFunctionLearnerNodeModel

public FuzzyBasisFunctionLearnerNodeModel()
Inits a new model for fuzzy basisfunctions.

Method Detail

execute

public PortObject[] execute(PortObject[] data,
                            ExecutionContext exec)
                     throws CanceledExecutionException
Starts the learning algorithm in the learner.

Overrides:
execute in class BasisFunctionLearnerNodeModel
Parameters:
data - the input training data at index 0
exec - the execution monitor
Returns:
the output fuzzy rule model
Throws:
CanceledExecutionException - if the training was canceled

getFactory

public BasisFunctionFactory getFactory(DataTableSpec spec)
Create factory to generate BasisFunctions.

Specified by:
getFactory in class BasisFunctionLearnerNodeModel
Parameters:
spec - the cleaned data for training
Returns:
factory to create special basis function rules

configure

public PortObjectSpec[] configure(PortObjectSpec[] ins)
                           throws InvalidSettingsException
Configure method for general port types. The argument specs represent the input object specs and are guaranteed to be subclasses of the PortObjectSpecs that are defined through the PortTypes given in the constructor. Similarly, the returned output specs need to comply with their port types spec class (otherwise an error is reported by the framework). They may also be null.

For a general description of the configure method refer to the description of the specialized NodeModel.configure(DataTableSpec[]) methods as it addresses more use cases.

Overrides:
configure in class BasisFunctionLearnerNodeModel
Parameters:
ins - The input object specs.
Returns:
The output objects specs or null.
Throws:
InvalidSettingsException - If this node can't be configured.

loadValidatedSettingsFrom

public void loadValidatedSettingsFrom(NodeSettingsRO settings)
                               throws InvalidSettingsException
Sets new settings from the passed object in the model. You can safely assume that the object passed has been successfully validated by the #validateSettings(NodeSettings) method. The model must set its internal configuration according to the settings object passed.

Overrides:
loadValidatedSettingsFrom in class BasisFunctionLearnerNodeModel
Parameters:
settings - The settings to read.
Throws:
InvalidSettingsException - If a property is not available.
See Also:
NodeModel.saveSettingsTo(NodeSettingsWO), NodeModel.validateSettings(NodeSettingsRO)

saveSettingsTo

public void saveSettingsTo(NodeSettingsWO settings)
Adds to the given NodeSettings the model specific settings. The settings don't need to be complete or consistent. If, right after startup, no valid settings are available this method can write either nothing or invalid settings.

Method is called by the Node if the current settings need to be saved or transfered to the node's dialog.

Overrides:
saveSettingsTo in class BasisFunctionLearnerNodeModel
Parameters:
settings - The object to write settings into.
See Also:
NodeModel.loadValidatedSettingsFrom(NodeSettingsRO), NodeModel.validateSettings(NodeSettingsRO)

validateSettings

public void validateSettings(NodeSettingsRO settings)
                      throws InvalidSettingsException
Validates the settings in the passed NodeSettings object. The specified settings should be checked for completeness and consistency. It must be possible to load a settings object validated here without any exception in the #loadValidatedSettings(NodeSettings) method. The method must not change the current settings in the model - it is supposed to just check them. If some settings are missing, invalid, inconsistent, or just not right throw an exception with a message useful to the user.

Overrides:
validateSettings in class BasisFunctionLearnerNodeModel
Parameters:
settings - The settings to validate.
Throws:
InvalidSettingsException - If the validation of the settings failed.
See Also:
NodeModel.saveSettingsTo(NodeSettingsWO), NodeModel.loadValidatedSettingsFrom(NodeSettingsRO)

getModelType

public final DataType getModelType()
Specified by:
getModelType in class BasisFunctionLearnerNodeModel
Returns:
FuzzyIntervalCell.TYPE

getShrink

public final int getShrink()
Returns:
shrink function for conflict avoidance

getNorm

public final int getNorm()
Returns:
fuzzy norm

createPortObject

public FuzzyBasisFunctionPortObject createPortObject(BasisFunctionModelContent content)
Creates a new basisfunction port object given the model content.

Specified by:
createPortObject in class BasisFunctionLearnerNodeModel
Parameters:
content - basisfunction rules and spec
Returns:
a new basisfunction port object


Copyright, 2003 - 2010. All rights reserved.
University of Konstanz, Germany.
Chair for Bioinformatics and Information Mining, Prof. Dr. Michael R. Berthold.
You may not modify, publish, transmit, transfer or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part, except as otherwise expressly permitted in writing by the copyright owner or as specified in the license file distributed with this product.