there is the PMML standard defined as XML Schema for Data Mining Model portability between different DM software. My question is, does this xml file serve as a sort of "config file" with the specifics of the underlying domain-model relation (with the specific model implementation logic for the data mining problem concerned), for the other software that you want to import your model? Or is the PMML model the implementation itself, I mean is there any logic implemented to execute the model with the PMML xml file itself (e.g if you add some test data and let it run through your xml) or must there exist an implementation of the learning algorithm in the software and the PMML is just the configuration of the specific model?


Essentially, the PMML is just a set of formulas (and the corresponding coefficient values).

The story goes something like this:

  • You develop a model capable of taking some inputs and outputting certain coefficients that correspond to a certain formula.
  • Then, these ouputs are turned into a PMML file (an XML-based encoding of your model's outputs).
  • We can now say, "please evaluate this formula, using these coefficients. As input for the independent variable(s), please use these attributes from my dataset here."

Take a very simple linear regression, for example.

  1. The PMML consumer application parses your PMML file, and finds
    • model =
    • coefficient = <5.46>
    • X = < attribute: colour of the leaf >
  2. It now goes ahead and scores the formula for the reggression

Note: there’s got a to a file somewhere in your application which contains a column called “colour of the leaf”

And, there you have it.

  • $\begingroup$ What I didn't add, but will, if anyone thinks it is necessary: the whole point of PMML is to standardize model consumption. This way, one does not have to dance between languages and environments to implement models where needed. For instance, R&D creates a model and hands off to engineering as PMML. Then engineering can implement in a matter of minutes, in principle. This would not be the case if engineering had to take an R script and turn it into a Java analog. $\endgroup$ – Kevin Glynn Mar 22 '17 at 20:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.