[jboss-jira] [JBoss JIRA] (DROOLS-5422) Fix DMN-PMML integration/managed fields

Gabriele Cardosi (Jira) issues at jboss.org
Tue Jun 9 05:03:12 EDT 2020


Gabriele Cardosi created DROOLS-5422:
----------------------------------------

             Summary: Fix DMN-PMML integration/managed fields
                 Key: DROOLS-5422
                 URL: https://issues.redhat.com/browse/DROOLS-5422
             Project: Drools
          Issue Type: Task
            Reporter: Gabriele Cardosi
            Assignee: Gabriele Cardosi


>From [Output|[http://dmg.org/pmml/v4-4/Output.html]] documentation:

"If present, the attribute {{targetField}} must refer either to a {{MiningField}} of usage type {{target}} or a field described in {{Targets}} element. {{targetField}} is a required attribute in case the model has multiple target fields."

"predictedValue
Select the raw predicted value. More than one OutputField element can have the predictedValue feature only if the model predicts more than one field. Details can be found in the description of the individual models."

>From [MiningSchema|[http://dmg.org/pmml/v4-4/MiningSchema.html]] documentation:

"*predicted*: field whose value is predicted by the model. As of PMML 4.2, this is deprecated and it has been replaced by the usage type {{target}}."

 

So, predicted field(s) is/are the one(s) defined i"target/predicted"  inside _MiningSchema_ or inside [Targets|[http://dmg.org/pmml/v4-4/Targets.html]] element.

 

Output have to be considered as _additional_ results; it does not _necessarily_ contains the _target/predicted_ value; *but* the _target/predicted_ value should always be returned.

 

Currently,  DMN (see DMNKiePMMLInvocationEvaluator as example) implement the following algorithm:

1) if "_Output_" element is present, it only manage it (ignores _MiningSchema_ fields)

2) if "_Output_" element is not present, it retrieves "_target_" from _MiningSchema_.

This approach has the following issues

1) it is not mandatory to have the "_target/predicted_" field referenced inside the "_Output_" element; but with the current implementation, the user is "_forced_" to duplicate target reference inside "_Output_" if s/he wants additional outputs from model

2) it completely ignores "_Targets_" element

With this PR, DMN will manage both the _Output_ elements (if present) and all the _target/predicted_ fields, regardless of where/how they are defined. 

 

If such _target/predicted_ fields is/are referred *also* in Output element, only the one(s) inside _Output_ will be managed.

If _Output_ does not define "t_arget/predicted_" _OutputField_(s), the one(s) from _MiningSchema_ or _Targets_ will be managed.

 

 

 



--
This message was sent by Atlassian Jira
(v7.13.8#713008)



More information about the jboss-jira mailing list