edu.udo.cs.miningmart.operator
Class YaleModelApplier

java.lang.Object
  extended byedu.udo.cs.miningmart.operator.ExecutableOperator
      extended byedu.udo.cs.miningmart.operator.ConceptOperator
          extended byedu.udo.cs.miningmart.operator.SingleCSOperator
              extended byedu.udo.cs.miningmart.operator.ModelApplier
                  extended byedu.udo.cs.miningmart.operator.YaleModelApplier

public class YaleModelApplier
extends ModelApplier

This operator applies a model written by YALE to a set of examples. Please note:

Version:
$Id: YaleModelApplier.java,v 1.4 2006/04/11 14:10:11 euler Exp $
Author:
Martin Scholz

Field Summary
 
Fields inherited from class edu.udo.cs.miningmart.operator.ExecutableOperator
generatedSQLDefinitions
 
Constructor Summary
YaleModelApplier()
           
 
Method Summary
protected  edu.udo.cs.yale.example.Attribute applyModel(java.io.File modelFile, edu.udo.cs.yale.example.ExampleSet exampleSet, java.lang.String targetAttribute, int loop)
          This is the main applier model.
protected  java.lang.String getDatabaseDtForNewColumn(BaseAttribute ba)
          Specifies the relational datatype for the new Columns based on their BaseAttribute.
 java.io.File getModelFile(int loop)
           
protected  java.lang.String getRelationalDtForNewColumn(BaseAttribute ba)
          Specifies the relational datatype for the new Columns based on their BaseAttribute.
protected  void predict()
          Predicts the values applying the specified models.
 
Methods inherited from class edu.udo.cs.miningmart.operator.ModelApplier
createPredictedAttributeInDb, createSingleColumnSet, findCorrespondingBaInConcept, generateSQLDefinition, getDatabaseQueryForRows, getInputConcept, getKeyColumnNames, getKeyColumns, getOutputConcept, getPredictedAttribute, getPredictionColumnNames, getPredictionColumns, getSelectStatementOfKeys, getSelectStatementOfPredAttribs, getTargetTableName, getTheKeys, getThePredictingAttributes, getTypeOfNewColumnSet, mustCopyFeature, stringCollectionToCommaSeparatedString
 
Methods inherited from class edu.udo.cs.miningmart.operator.SingleCSOperator
generateColumnSetsForOp, generateSQLDefinition, getNewCSName, getTypeOfNewColumnSet
 
Methods inherited from class edu.udo.cs.miningmart.operator.ConceptOperator
compileStatement, createMetadata, createMetadataForOneBA, createStatement, estimateStatistics, generateColumns, getNewCSName, getStringForSelection, setNewCSMultiStepBranch
 
Methods inherited from class edu.udo.cs.miningmart.operator.ExecutableOperator
autoPrint, checkConditions, doPrint, doPrint, execute, executeBusinessSingleValueSqlRead, executeBusinessSingleValueSqlReadL, executeBusinessSqlRead, executeBusinessSqlWrite, executeM4SingleValueSqlRead, executeM4SingleValueSqlReadL, executeM4SqlRead, executeM4SqlWrite, getArtificalColumnName, getBusinessDbms, getHighestLoopNr, getM4Db, getM4Dbms, getM4ObjectFromCache, getName, getNextM4SequenceValue, getNumberOfLoops, getOperator, getOpParamsIterator, getParameter, getParameter, getSingleParameter, getSingleParameter, getStep, handleAssertions, isDeselectedParameter, isLoopable, isManual, isStepable, load, print, putM4ObjectToCache, showCreateStatement, storedProceduresAvailable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

YaleModelApplier

public YaleModelApplier()
Method Detail

getRelationalDtForNewColumn

protected java.lang.String getRelationalDtForNewColumn(BaseAttribute ba)
Description copied from class: ModelApplier
Specifies the relational datatype for the new Columns based on their BaseAttribute.

Specified by:
getRelationalDtForNewColumn in class ModelApplier
Parameters:
ba - the BaseAttribute of a Column to be predicted
Returns:
M4 relational datatype for the predicted Column(s)

getDatabaseDtForNewColumn

protected java.lang.String getDatabaseDtForNewColumn(BaseAttribute ba)
                                              throws M4CompilerError
Description copied from class: ModelApplier
Specifies the relational datatype for the new Columns based on their BaseAttribute.

Specified by:
getDatabaseDtForNewColumn in class ModelApplier
Parameters:
ba - the BaseAttribute of a Column to be predicted
Returns:
the database level attribute of the predicted Column(s) for creating the table.
Throws:
M4CompilerError

predict

protected void predict()
                throws M4Exception,
                       M4CompilerError
Predicts the values applying the specified models. The models are applied to larger blocks of data, trading of performance when complex models are applied (which need to be parsed and loaded for each block) against memory consumption when huge amounts of data need to be processed.

Specified by:
predict in class ModelApplier
Throws:
M4Exception
M4CompilerError

applyModel

protected edu.udo.cs.yale.example.Attribute applyModel(java.io.File modelFile,
                                                       edu.udo.cs.yale.example.ExampleSet exampleSet,
                                                       java.lang.String targetAttribute,
                                                       int loop)
                                                throws M4CompilerError
This is the main applier model. It reads a model from a flat file and applies it to a given ExampleTable of YALE, creating a new attribute.

Parameters:
modelFile - a File pointing to a YALE model file
exampleSet - an ExampleSet as used by YALE
targetAttribute - the name of the output Column in the database
loop - the current loop number
Returns:
the predicted YALE Attribute created for the model application
Throws:
M4CompilerError

getModelFile

public java.io.File getModelFile(int loop)
                          throws M4CompilerError
Returns:
the path to the YALE model file to be used.
Throws:
M4CompilerError


Copyright © 2001-2005