Looking for options to evaluate a decision tree


I am currently looking into options to make use of KNIME for a rather small use case. We have a decision tree we want to evaluate but the use case (business case) is too small and isolated to buy and setup KNIME server. My idea was to train the tree, write a PMML file and then use a library within a REST service to make evaluations.

To my surprise there do not seem to be too many options at hand: so far I discovered SMILE which does not seem to read PMML files and JPMML(-Evaluator) . Has anyone ever used these in a similar environment? Are there options I missed?

One ‘brutal’ way could be to convert the decision tree rules into SQL and then use the SQL code. Or use the ruleset to make some kind of If then rules. Not very elegant I have to admit.

kn_example_decision_tree.knwf (510.8 KB)

Hi mlauber,

thank you for your reply. I think your suggestion is inelegent and brilliant at the same time. I did not think of this my myself and will surely keep this in mind for the future.

What will prevent this in my use case is that I want to give a maximum of flexibility to the business department with virtually no need for an IT department / developer to interfere or do changes. The idea I have in my mind that the business department (which has some technical skills) uses KNIME to generate the PMML file. We will provide a web interface to upload the PMML file which is then evaluated by a simple PMML web service. Most probably the PMML service does not have access to the original training data in the database. I am afraid that taking a detour for SQL or a ruleset may break things easier.

Hi @Brausepaul -

You might check out this blog post and associated video for some additional brainstorming: https://www.knime.com/blog/seven_modes_deployment