2016-09-26 6 views
0

my pmmlファイルへのリンク。 R-ツールjavaでロードしようとしたときにjpmmlでInvalidFeatureExceptionが発生しました

pmml file on google drive

によって生成され、ここで私のJavaコードは..です

PMML model = null; 
    File inputFilePath = new File("/home/equation/iris_rf.pmml"); 
    try (InputStream is = new FileInputStream(inputFilePath)) { 
     model = org.jpmml.model.PMMLUtil.unmarshal(is); 
    } catch (Exception e) { 
     throw e; 
    } 

    // construct a tree predictor based on the PMML 
    ModelEvaluator<TreeModel> modelEvaluator = new TreeModelEvaluator(model); 
    System.out.println(modelEvaluator.getSummary()); 

例外---

Exception in thread "main" org.jpmml.evaluator.InvalidFeatureException: PMML 
at org.jpmml.evaluator.ModelEvaluator.selectModel(ModelEvaluator.java:528) 
at org.jpmml.evaluator.tree.TreeModelEvaluator.<init>(TreeModelEvaluator.java:64) 
at com.girnarsoft.Pmml.main(Pmml.java:24) 

任意のアイデア?なぜこのエラーが出るのですか?

答えて

1

org.jpmml.evaluator.ModelEvaluator PMMLファイルの最上位モデル要素に一致するサブクラスをインスタンス化する必要があります。

現在、TreeModel elementに対応するorg.jpmml.evaluator.tree.TreeModelEvaluatorをインスタンス化しています。ただし、PMFファイルの最上位モデル要素はMiningModel elementであるため、代わりにorg.jpmml.evaluator.mining.MiningModelEvaluatorをインスタンス化する必要があります。

一般にModelEvaluatorFactory#newModelEvaluator(PMML)ファクトリメソッドを使用してModelEvaluatorインスタンスを構築する必要があります。

関連する問題