public class MultiObjectiveRegression extends BaseRegression
MultiObjectiveEntryRanker
.
Usage: <ranker method> [<ranker options...>]
Implemented Commands:
submodel - Print type and status of model associated with each property <model> = submodel get <property> - Get a model for a certain property
submodel set <property> $<model> - Set a model for a certain property
submodel set generic $<model> - Set a model for any property without an associated model
<output> = submodel get <property> - Get a model associated with a certain property
Modifier and Type | Field and Description |
---|---|
protected BaseModel |
GenericModel
Generic model (in case one has not already been defined)
|
protected java.util.Map<java.lang.String,BaseModel> |
Models
Map of property name to model used to predict it.
|
protected MultiObjectiveEntryRanker |
ObjFunction
Objective function used to calculate class variable.
|
AttributeSelector, trained, TrainingStats, validated, ValidationStats
Constructor and Description |
---|
MultiObjectiveRegression() |
Modifier and Type | Method and Description |
---|---|
MultiObjectiveRegression |
clone() |
BaseModel |
getModel(java.lang.String propertyName)
Get the model designed to predict a certain property.
|
int |
getNFittingParameters()
Number of fitting parameters in a model.
|
java.lang.String[] |
getPropertiesBeingModeled()
Get a list of properties for which a model is defined.
|
boolean |
modelIsDefined(java.lang.String propertyName)
Determine whether a model for a certain property is defined
|
boolean |
modelIsTrained(java.lang.String propertyName)
Whether the model for a certain property is trained.
|
boolean |
modelIsValidated(java.lang.String propertyName)
Whether the model for a certain property is validated
|
protected java.lang.String |
printModel_protected()
Internal method that handles printing the model as a string.
|
java.util.List<java.lang.String> |
printModelDescriptionDetails(boolean htmlFormat)
Print details of the model.
|
java.lang.String |
printUsage()
Print out required format for options.
|
void |
run_protected(Dataset TrainData)
Run a model without checking if stuff is trained (use carefully)
|
java.lang.Object |
runCommand(java.util.List<java.lang.Object> Command)
Process some command described by a list of Objects.
|
protected java.lang.Object |
runSubmodelCommand(java.util.List<java.lang.Object> Command)
Run commands associated with operating on submodels
|
void |
setGenericModel(BaseModel model)
Define the model to be used for a property if one is not specifically defined.
|
void |
setModel(java.lang.String propertyName,
BaseModel model)
Define a model for a certain property.
|
void |
setObjectiveFunction(MultiObjectiveEntryRanker objFunction)
Define the objective function used to calculate perform of each entry.
|
void |
setOptions(java.util.List<java.lang.Object> Options)
Set any options for this object.
|
protected void |
train_protected(Dataset TrainData)
Train a model without evaluating performance
|
doRobustRegression, getRobustRegressionQ, robustTraining, setRobustRegressionQ
about, crossValidate, crossValidate, crossValidate, done, externallyValidate, getAttributeSelector, getCitations, getFilter, getTrainTime, getValidationMethod, handleSetCommand, isTrained, isValidated, loadState, printCommand, printDescription, printModel, resetModel, run, saveCommand, saveState, setAttributeSelector, setComponent, setFilter, train, train
protected java.util.Map<java.lang.String,BaseModel> Models
protected MultiObjectiveEntryRanker ObjFunction
protected BaseModel GenericModel
public void setOptions(java.util.List<java.lang.Object> Options) throws java.lang.Exception
Options
Options
- Array of options as Objects - can be null
java.lang.Exception
- if problem with inputspublic java.lang.String printUsage()
Options
public void setObjectiveFunction(MultiObjectiveEntryRanker objFunction)
objFunction
- Objective function to usepublic MultiObjectiveRegression clone()
clone
in class BaseRegression
public java.lang.String[] getPropertiesBeingModeled()
public BaseModel getModel(java.lang.String propertyName)
propertyName
- Name of property to be modelednull
if no model exists
for that propertypublic void setModel(java.lang.String propertyName, BaseModel model) throws java.lang.Exception
propertyName
- Name of propertymodel
- Example of model to be usedjava.lang.Exception
public void setGenericModel(BaseModel model) throws java.lang.Exception
model
- Generic regression modeljava.lang.Exception
public boolean modelIsDefined(java.lang.String propertyName)
propertyName
- Name of propertypublic boolean modelIsTrained(java.lang.String propertyName)
propertyName
- Name of propertypublic boolean modelIsValidated(java.lang.String propertyName)
propertyName
- Name of propertyprotected void train_protected(Dataset TrainData)
BaseModel
train_protected
in class BaseModel
TrainData
- Training datapublic void run_protected(Dataset TrainData)
BaseModel
run_protected
in class BaseModel
TrainData
- Training datapublic int getNFittingParameters()
AbstractRegressionModel
protected java.lang.String printModel_protected()
BaseModel
printModel_protected
in class BaseModel
public java.util.List<java.lang.String> printModelDescriptionDetails(boolean htmlFormat)
BaseModel
BaseModel.printDescription(boolean)
.
Implementation note: No not add indentation for details. That is handled
by BaseModel.printDescription(boolean)
. You should also call the super
operation to get the Normalizer and Attribute selector settings
printModelDescriptionDetails
in class BaseModel
htmlFormat
- Whether to use HTML formatpublic java.lang.Object runCommand(java.util.List<java.lang.Object> Command) throws java.lang.Exception
Commandable
runCommand
in interface Commandable
runCommand
in class BaseRegression
Command
- Command as a list of objectsjava.lang.Exception
- If something goes wrongprotected java.lang.Object runSubmodelCommand(java.util.List<java.lang.Object> Command) throws java.lang.Exception
Command
- Command to runjava.lang.Exception
- If something goes wrong