Search in sources :

Example 1 with ModelEvaluator

use of org.jpmml.evaluator.ModelEvaluator in project registry by hortonworks.

the class MLModelRegistryService method doGetInputFieldsFromPMMLStream.

private List<MLModelField> doGetInputFieldsFromPMMLStream(String pmmlContents) throws SAXException, JAXBException {
    final List<MLModelField> fieldNames = new ArrayList<>();
    PMMLManager pmmlManager = new PMMLManager(IOUtil.unmarshal(new ByteArrayInputStream(pmmlContents.getBytes())));
    Evaluator modelEvaluator = (ModelEvaluator<?>) pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());
    for (FieldName predictedField : modelEvaluator.getActiveFields()) {
        fieldNames.add(getModelField(modelEvaluator.getDataField(predictedField)));
    }
    return fieldNames;
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) ArrayList(java.util.ArrayList) Evaluator(org.jpmml.evaluator.Evaluator) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) FieldName(org.dmg.pmml.FieldName) PMMLManager(org.jpmml.manager.PMMLManager)

Example 2 with ModelEvaluator

use of org.jpmml.evaluator.ModelEvaluator in project registry by hortonworks.

the class MLModelRegistryService method doGetOutputFieldsForPMMLStream.

private List<MLModelField> doGetOutputFieldsForPMMLStream(String pmmlContents) throws SAXException, JAXBException {
    List<MLModelField> fieldNames = new ArrayList<>();
    PMMLManager pmmlManager = new PMMLManager(IOUtil.unmarshal(new ByteArrayInputStream(pmmlContents.getBytes())));
    Evaluator modelEvaluator = (ModelEvaluator<?>) pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());
    modelEvaluator.getPredictedFields().forEach((f) -> fieldNames.add(getModelField(modelEvaluator.getDataField(f))));
    modelEvaluator.getOutputFields().forEach((f) -> {
        OutputField outputField = modelEvaluator.getOutputField(f);
        ResultFeatureType resultFeatureType = outputField.getFeature();
        if (resultFeatureType != ResultFeatureType.PREDICTED_VALUE && resultFeatureType != ResultFeatureType.PREDICTED_DISPLAY_VALUE) {
            fieldNames.add(getModelField(outputField));
        }
    });
    return fieldNames;
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) ArrayList(java.util.ArrayList) OutputField(org.dmg.pmml.OutputField) ResultFeatureType(org.dmg.pmml.ResultFeatureType) Evaluator(org.jpmml.evaluator.Evaluator) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) PMMLManager(org.jpmml.manager.PMMLManager)

Example 3 with ModelEvaluator

use of org.jpmml.evaluator.ModelEvaluator in project streamline by hortonworks.

the class MLModelRegistryService method doGetInputFieldsFromPMMLStream.

private List<MLModelField> doGetInputFieldsFromPMMLStream(String pmmlContents) throws SAXException, JAXBException, UnsupportedEncodingException {
    final List<MLModelField> fieldNames = new ArrayList<>();
    PMMLManager pmmlManager = new PMMLManager(IOUtil.unmarshal(new ByteArrayInputStream(pmmlContents.getBytes("UTF-8"))));
    Evaluator modelEvaluator = (ModelEvaluator<?>) pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());
    for (FieldName predictedField : modelEvaluator.getActiveFields()) {
        fieldNames.add(getModelField(modelEvaluator.getDataField(predictedField)));
    }
    return fieldNames;
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) ArrayList(java.util.ArrayList) Evaluator(org.jpmml.evaluator.Evaluator) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) FieldName(org.dmg.pmml.FieldName) PMMLManager(org.jpmml.manager.PMMLManager)

Example 4 with ModelEvaluator

use of org.jpmml.evaluator.ModelEvaluator in project streamline by hortonworks.

the class MLModelRegistryService method doGetOutputFieldsForPMMLStream.

private List<MLModelField> doGetOutputFieldsForPMMLStream(String pmmlContents) throws SAXException, JAXBException, UnsupportedEncodingException {
    List<MLModelField> fieldNames = new ArrayList<>();
    PMMLManager pmmlManager = new PMMLManager(IOUtil.unmarshal(new ByteArrayInputStream(pmmlContents.getBytes("UTF-8"))));
    Evaluator modelEvaluator = (ModelEvaluator<?>) pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());
    modelEvaluator.getPredictedFields().forEach((f) -> fieldNames.add(getModelField(modelEvaluator.getDataField(f))));
    modelEvaluator.getOutputFields().forEach((f) -> {
        OutputField outputField = modelEvaluator.getOutputField(f);
        ResultFeatureType resultFeatureType = outputField.getFeature();
        if (resultFeatureType != ResultFeatureType.PREDICTED_VALUE && resultFeatureType != ResultFeatureType.PREDICTED_DISPLAY_VALUE) {
            fieldNames.add(getModelField(outputField));
        }
    });
    return fieldNames;
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) ArrayList(java.util.ArrayList) OutputField(org.dmg.pmml.OutputField) ResultFeatureType(org.dmg.pmml.ResultFeatureType) Evaluator(org.jpmml.evaluator.Evaluator) ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) PMMLManager(org.jpmml.manager.PMMLManager)

Example 5 with ModelEvaluator

use of org.jpmml.evaluator.ModelEvaluator in project storm by apache.

the class JpmmlFactory method newEvaluator.

// ==================   Evaluator   ==================
/**
 * Creates a new {@link Evaluator} object representing the PMML model defined in the {@link PMML} argument.
 */
public static Evaluator newEvaluator(PMML pmml) {
    Objects.requireNonNull(pmml);
    final PMMLManager pmmlManager = new PMMLManager(pmml);
    return (ModelEvaluator<?>) pmmlManager.getModelManager(null, ModelEvaluatorFactory.getInstance());
}
Also used : ModelEvaluator(org.jpmml.evaluator.ModelEvaluator) PMMLManager(org.jpmml.manager.PMMLManager)

Aggregations

ModelEvaluator (org.jpmml.evaluator.ModelEvaluator)5 PMMLManager (org.jpmml.manager.PMMLManager)5 ByteArrayInputStream (java.io.ByteArrayInputStream)4 ArrayList (java.util.ArrayList)4 Evaluator (org.jpmml.evaluator.Evaluator)4 FieldName (org.dmg.pmml.FieldName)2 OutputField (org.dmg.pmml.OutputField)2 ResultFeatureType (org.dmg.pmml.ResultFeatureType)2