[null, {"document_url": "https://www.mediabuzz.com.sg/asian-emarketing-latest-issue/321-asian-e-marketing/august-2018-predictive-algorithms-native-ads/3588-predictive-model-markup-language-pmml", "unformatted_src": "/images/0818/buzzwords.jpg", "src": "https://www.mediabuzz.com.sg/images/0818/buzzwords.jpg", "formatted_filename": "buzzwords", "alt_text": "buzzwords", "rendered_width": 303, "rendered_height": 202}, null, null, null]


Predictive Model Markup Language (PMML)

PMML , predictive model markup language , The Predictive Model Markup Language (PMML) is an XML-based predictive model interchange format that provides a way for analytic applications to describe and exchange predictive models produced by data mining and machine learning algorithms. Version 1.0 was published in 1999 and Version 4.0 ten years later.

It’s latest version PMML 4.3 was released on August 23, 2016 with new features, including new model types (Gaussian Process, Bayesian Network), new built-in functions, usage clarifications, and documentation improvements.

In general, a PMML file can be described by the following components:

Data Dictionary: contains definitions for all the possible fields used by the model. It is here that a field is defined as continuous, categorical, or ordinal (attribute OpType). Depending on this definition, the appropriate value ranges are then defined as well as the data type (such as, string or double).

Data Transformations: allow for the mapping of user data into a more desirable form to be used by the mining model. PMML defines several kinds of simple data transformations.

Model: contains the definition of the data mining model, for instance, a multi-layered “feedforward neural network” is represented in PMML by a "NeuralNetwork" element which contains attributes such as Model Name, Function Name, Algorithm Name, Activation Function, Number of Layers. This information is then followed by three kinds of neural layers which specify the architecture of the neural network model being represented in the PMML document. These attributes are NeuralInputs, NeuralLayer, and NeuralOutputs. Besides neural networks, PMML allows for the representation of many other types of models including support vector machines, association rules, Naive Bayes classifier, clustering models, text models, decision trees, and different regression models.

Mining Schema: a list of all fields used in the model. This can be a subset of the fields as defined in the data dictionary. It contains specific information about each field, such as:

Targets: allows for post-processing of the predicted value in the format of scaling if the output of the model is continuous. Targets can also be used for classification tasks. In this case, the attribute priorProbability specifies a default probability for the corresponding target category. It is used if the prediction logic itself did not produce a result. This can happen, e.g., if an input value is missing and there is no other method for treating missing values.

Output: this element can be used to name all the desired output fields expected from the model. These are features of the predicted field and so are typically the predicted value itself, the probability, cluster affinity (for clustering models), standard error, etc.
