public interface Evaluator extends Consumer
Performs the evaluation of a Model in "interpreted mode".
Evaluator instance:
PMML pmml = ...; PMMLManager pmmlManager = new PMMLManager(pmml); Evaluator evaluator = (Evaluator)pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());Preparing
active fields:
Map<FieldName, Object> arguments = new LinkedHashMap<FieldName, Object>();
List<FieldName> activeFields = evaluator.getActiveFields();
for(FieldName activeField : activeFields){
arguments.put(activeField, evaluator.prepare(activeField, ...));
}
Performing the evaluation:
Map<FieldName, ?> result = evaluator.evaluate(arguments);Retrieving the value of the
predicted field and output fields:
FieldName targetField = evaluator.getTargetField();
Object targetValue = result.get(targetField);
List<FieldName> outputFields = evaluator.getOutputFields();
for(FieldName outputField : outputFields){
Object outputValue = result.get(outputField);
}
Decoding complex value to simple value:
Object value = ...;
if(value instanceof Computable){
Computable<?> computable = (Computable<?>)value;
value = computable.getResult();
}
EvaluatorUtil| Modifier and Type | Method and Description |
|---|---|
Map<FieldName,?> |
evaluate(Map<FieldName,?> arguments) |
Object |
prepare(FieldName name,
Object value)
Prepares the input value for a field.
|
getActiveFields, getDataField, getGroupFields, getMiningField, getOutputField, getOutputFields, getPredictedFields, getSummary, getTargetFieldObject prepare(FieldName name, Object value)
name - The name of the fieldstring - The input value in user-supplied representation. Use null to represent missing input value.EvaluationException - If the input value preparation failsConsumer.getDataField(FieldName),
Consumer.getMiningField(FieldName)Map<FieldName,?> evaluate(Map<FieldName,?> arguments)
arguments - Map of active field values.predicted field and output field values.
Simple values are represented using the Java equivalents of PMML data types (eg. String, Integer, Float, Double etc.).
Complex values are represented as instances of Computable that return simple values.EvaluationException - If the evaluation failsComputableCopyright © 2013 University of Tartu. All Rights Reserved.