[
https://issues.redhat.com/browse/DROOLS-5422?page=com.atlassian.jira.plug...
]
Gabriele Cardosi updated DROOLS-5422:
-------------------------------------
Description:
"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."
"*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 as "_target/predicted_"
inside _MiningSchema_ or the one(s) defined inside
[
Targets|[http://dmg.org/pmml/v4-4/Targets.html]] element.
_Output_ has 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 "_target/predicted_" _OutputField_(s), the one(s)
from _MiningSchema_ or _Targets_ will be managed.
was:
"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."
"*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 as "_target/predicted_"
inside _MiningSchema_ or the one(s) defined inside
[
Targets|[http://dmg.org/pmml/v4-4/Targets.html]] element.
_Output_ has 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.
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
Priority: Major
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 as "_target/predicted_"
inside _MiningSchema_ or the one(s) defined inside
[
Targets|[http://dmg.org/pmml/v4-4/Targets.html]] element.
_Output_ has 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 "_target/predicted_" _OutputField_(s), the one(s)
from _MiningSchema_ or _Targets_ will be managed.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)