_images/logo.png

High-Performance PMML Scoring

cPMML is C++ library for scoring machine learning models serialized with the Predictive Model Markup Language (PMML). It exposes a minimalist and user-friendly API and it targets high performance in model scoring, keeping a predictable and minimal memory footprint.

Currently, the following PMML elements are supported:

  • PMML General structure (preprocessing, data dictionary, etc.)

  • Tree-based models

  • Regression models

  • Ensembles of the previous

Getting Started

#include "cPMML.h"

cpmml::Model model("IrisTree.xml");
std::unordered_map<std::string, std::string> sample = {
    {"sepal_length","6.6"},
    {"sepal_width","2.9"},
    {"petal_length","4.6"},
    {"petal_width","1.3"}
};

std::cout << model.predict(sample); // "Iris-versicolor"