About decision tree regression possibilities in KNIME 3.2 and PMML: buggy behavior of PMML Model Appender node

Dear KNIMErs,

KNIME 3.2 introduced the possibility to export Random Forest regression models as well as Simple Regression Trees to PMML (Through Model Ensemble Model Extract and Table to PMML Ensemble nodes). That is a great advance and the community will surely take advantage from it!

Nevertheless in order for this possibility to be complete and consistent there is at least a couple of nodes that should be modified.

1. The PMML Model Appender node currently does not accept regression model. When I try to redirect the output of Table to PMML Ensemble node to the PMML Model Appender one, it gives me an error saying that “Only classification tree is supported”. Despite these errors the node complete its task (finishing with the green light) changing the MiningModel functionName of model from "regression" to "classification" and generating a not valid PMML. This should be a bug as the model appending action should be correctly managed or not managed at all. It would be great if this node would support also regression tree, otherwise there would be no chance in KNIME to build a complete regression tree PMML (i.e. meaning with the possibility to set PMML headers, to add transformation table and add PMML validation data).

2. The PMML Predictor node is currently usable only with classification node. When I try to use it with a regression model it gives me an error saying: “Execute failed: This predictor only supports target fields of data type string (got Number (double))”. Anyway this time the error is correctly managed as the node does not complete its task. It would be good to have the possibility to use this node also with regression models, otherwise we have the situation where KNIME is producing a PMML model (e.g. regression random forest) that is not able to reuse. This seems like an inconsistency.

Please, is there any possibility to adjust the behavior of these 2 nodes?

Hello gcincilla,

we are always happy if our changes and new nodes are of help to the community.

Thank You for reporting those issues, we will work on solutions for them.

For the second one there already is a workaround: In KNIME Labs there is a JPMML Regression Predictor node which can already handle the regression tree models.

Best,

nemad

Hello Nemad,

Thank you for your reply. I'm happy to know that these issues will be taken into account for solutions. For the second one I would temporarily using the JPMML node as you suggested.

I hope you can update this forum thread when the solutions will be available.

Thanks a lot,

Gio

Hello Nemad,

Any news on the front of the PMML Model Appender node? I just want to remember that now this node is not usable with regression models. This means that currently it is not possible in KNIME to build a complete regression tree PMML (i.e. meaning with the possibility to set PMML headers, to add transformation table and add PMML validation data). I think this would be something very useful for all the community.

Thanks in advance for your time!

Best,

Gio

I second that - I've had issues with Forest models stored in cells as well in 3.2.0. Not sure if 3.2.1 fixed it, since I worked around the issue with and forgot all about it ever since.

Regards,
E

Hello Gio,

unfortunately not yet. But I will bring this up to discussion again.
However, I can't make any promises about when it will be fixed but I will report back once I have more information.

Hi Ergonomist,

in your case, I believe to have good news.
The problem related to storing Random Forest models in cells is fixed in the current version of the KNIME AP.

Cheers,

nemad

OK Nemad,

Thank you to bring this up to discussion again!

Best,

Gio

Hey nemad,

Didn't realise you were a KNIMEr - thanks! :)

-E

Hi E,

he definittely is!

And did write all the super cool tree ensemble learner nodes.

Cheers, Iris

... and I had the pleasure to review nemad's patches and check it in. At least the first part (PMML Model Appender node) will be fixed in 3.3 (due early December). It will then also be more picky about unsupported functions and only support regression and classification.

Very good Wiswedel, this is a good news! I think it will be an advance in the KNIME-PMML front.

Once it will be out I will surely test it.

Thank you very much.

Gio

hi all,

I use Random Forest Regression Node and save it to PMML. Now i would like to use the PMML to predict the new value. When I use JPMML Regression Predictor, i received an error as follows:

ERROR JPMML Regression Predictor 7:69:104:114 Execute failed: Segmentation@multipleModelMethod=majorityVote

Any suggestion how I can solve this issue?

Palupi

 

An update on this thread

With KNIME version 3.3.1 the first of the 2 problems (related with the PMML Model Appender node) identified in my first message is definitively solved. This is a good news indeed. Congratulation. Unfortunately point 2 (problem related with the PMML Predictor node) needs still to be solved.

P.S. Palupi, unfortunately I cannot help you with the problem you are experiencing with the JPMML Regression Predictor node but I suggest you to open up a new specific thread for that, maybe also including the problem in the title. Probably that will be more effective.

Hello @pkusuma and gcincilla,

first of all sorry for my delayed answer.
Regarding your problems:
The problem with the JPMML Predictor is actually the model because the aggregation method majoriy vote is not well defined for regression models. Use average instead and you should be fine.

Regarding the PMML Predictor, can you maybe provide an example because in KNIME 3.5.2 it works for me. Note that we also have a dedicated PMML Ensemble Predictor (which actually states the problem with majority vote in regression models).

Have a good time,

nemad

Hello nemad,
Thank you for your reply. I can confirm that now also the second problem I mentioned in the first message of this thread seems to be solved (I checked using KNIME 3.5.0). Great!
Congrats guys!

PS: Should I mark this thread as solved? How can I do that?

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.