Here PMML helps you only if you have a C ++-based PMML evaluation engine (alternatively, you can use C ++ to invoke a Java-based PMML evaluation engine such as JPMML-Evaluator ).
You can translate the GBM model into C ++ source code and run it โnativelyโ later. Translation is not difficult because GBM decision trees can be encoded as simple if-else statements. You can see how it is implemented in the JPMML-Converter library (class org.jpmml.converter.GBMConverter ) and from there from there.
Translation in PMML:
Node node = new Node() .withPredicate($predicate) .withScore($score);
Translation in C / C ++ / C #:
if($predicate){ return $score; }
You can export a GBM data structure from an R to C ++ conversion application using the ProtoBuf data format (as implemented by the RProtoBuf package). Again, see how the JPMML-Converter library does this.
source share