Created on 11-08-2015 01:07 PM - edited 09-16-2022 02:48 AM
JPMML is a great library for evaluating PMML models, including things like feature transformation and a good range of model support. However, it's license is AGPL3, which makes it hard to include in Apache projects.
I'm looking to evaluate PMML models as part of a custom NIFI processor, so need an evaluator library with and Apache license.
Created 11-10-2015 11:27 PM
An older version of JPMML is BSD-3 licensed. It supports PMML 3.0, 3.1, 3.2, 4.0 and 4.1.
Created 11-08-2015 01:30 PM
This came up during a discussion with one of DS groups.
Spark-1406 PMML model evaluation support via MLib
Created 11-08-2015 02:28 PM
That's a start, however PMML support in Spark is a way off being complete. In particular no support for transformations yet. Spark would be a great platform for this, though is a very heavy platform to spin up for simple scoring in a NiFi.
Created 11-09-2015 02:17 PM
I've only looked into this briefly in the past when considering working with existing models produced in SAS but take a look at the Pattern extension for Cascading.
Created 11-10-2015 03:34 PM
@bplath@hortonworks.com cascading using jppml underneath the hood if i remember correctly. So u still hit the same licensing issue.
Created 11-10-2015 10:59 PM
pattern has a dependency on jpmml-model listed in their build. Looking at the licensing for that package - its BSD-3 which is actually pretty open from looking at this license comparison site, unless I'm missing something it seems this would be ok otherwise why would Cascading include in as they are Apache2. Here is the Pattern license link as well calling out the jpmml-model inclusion which again doesn't look to be too restrictive at all. Let me know if you think I'm misunderstanding the licensing at all.
Created 11-10-2015 03:39 PM
@Simon I dont believe there is apache friendly PMML evaluator available now. JPMML and Openscoring have GNU license . If you find one , please share...
Created 11-10-2015 11:27 PM
An older version of JPMML is BSD-3 licensed. It supports PMML 3.0, 3.1, 3.2, 4.0 and 4.1.