загрузить pmml (генерируемый sklearn) в spark, чтобы предсказать, но получить ошибку - PullRequest
0 голосов
/ 05 июля 2018

Я следую инструкции jpmml -valuator-spark для загрузки локальной модели pmml мой код как показано ниже

import java.io.File
import org.jpmml.evaluator.spark._
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql._

// load pmml
val new File(getClass.getClassLoader.getResource("random_forest.pmml").getFile)

// create evaluator 
val evaluator = EvaluatorUtil.createEvaluator(pmmlFile)

Я не могу показать сообщение об ошибке напрямую, поэтому я поместил его здесь

догадки:

есть некоторые причины, которые, я думаю, могут вызвать эту проблему

1, «jpmml -valuator-spark» не поддерживает PMML4.3, даже если автор сказал, что новая версия 1.1.0 уже поддерживает PMML4.3

2, есть некоторые проблемы с моим "random_forest.pmml", потому что этот файл от других

Примечание:

среда разработки

искра 2.1.1

Скала 2.11.8

и я работаю на локальной системе Mac, версия OS X El Capitan 10.11.6

Ответы [ 2 ]

0 голосов
/ 25 июля 2019

Другой вариант использования PMML в Spark - PMML4S-Spark , который поддерживает последнюю версию PMML4.3, например:

import org.pmml4s.spark.ScoreModel

val model = ScoreModel.fromFile(pmmlFile)
val scoreDf = model.transform(df)
0 голосов
/ 05 июля 2018

Вы используете Apache Spark 2.0, 2.1 или 2.2, который предшествует устаревшей версии библиотеки JPMML-Model (если быть точным, 1.2.15) к пути к классу вашего приложения. Эта проблема задокументирована в SPARK-15526 .

Решение - исправьте путь к классу приложения, как описано в документации JPMML-Evaluator-Spark (в качестве альтернативы рассмотрите возможность перехода на Apache Spark 2.3.0 или новее).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...