Tag: pmml

使用JPMML评估SAS生成的PMML文件时出现FMTWIDTH错误

我有一个从SAS Miner生成的PMML,我无法使用JPMML 1.1.4正确评估。 JPMML 1.1.4表示它支持PMML 4.2,而PMML表示它是PMML版本4.2。 下面的FMTWIDTHfunction是“SAS-EM-String-Normalize”正确的PMML语法吗? 任何想法为什么我不能使用JPMML评估此function? 我的TransformationDictionary中的函数看起来像, 1 FMTWIDTH 我得到以下exception, 线程“main”org.jpmml.evaluator.TypeCheckException中的exception:期望的INTEGER,但在org.jpmml.evaluator.FunctionRegistry $ 36的org.jpmml.evaluator.FieldValue.asInteger(FieldValue.java:125)获得STRING(FMTWIDTH)。评估(FunctionRegistry.java:463)org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:38)org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:203)atg.jpmml.evaluator.ExpressionUtil 。在org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:76)的org.jpmml.evaluator上的org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:76)中评估(ExpressionUtil.java:91)。 ExpressionUtil.evaluateApply(ExpressionUtil.java:203)位于org.jpmml.evaluator上org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:188)的org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91) org.jpmml.evaluator.Expres上的org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:58)中的.ExpressionUtil.evaluate(ExpressionUtil.java:91) org.jpmml.evaluator上的org.jpmml.evaluator.ExpressionUtil.evaluateMapValues(ExpressionUtil.java:169)中的org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:87)中的sionUtil.evaluate(ExpressionUtil.java:45)位于org.jpmml的org.jpmml.evaluator.RegressionModelEvaluator.evaluateRegressionTable(RegressionModelEvaluator.java:150)org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:45)的.ExpressionUtil.evaluate(ExpressionUtil.java:58)。评估者.RegressionModelEvaluator.evaluateClassification(RegressionModelEvaluator.java:107)atg.jpmml.evaluator.RegressionModelEvaluator.evaluate(RegressionModelEvaluator.java:57)atg.jpmml.evaluator.ModelEvaluator.evaluate(ModelEvaluator.java:65)at ValidPMMLTesterRandomScores.randomEvaluation ValidPMMLTesterRandomSc的ValidPMMLTesterRandomScores.readModelFromFile(ValidPMMLTesterRandomScores.java:142)上的ValidPMMLTesterRandomScores.printModelInformation(ValidPMMLTesterRandomScores.java:94)中的(ValidPMMLTesterRandomScores.java:116) ores.main(ValidPMMLTesterRandomScores.java:160)

将PMML – 模型(人工神经网络)转换为Java代码

我有一个训练有素的人工神经网络(ANN)的PMML文件。 我想创建一个Java方法,它只接受输入并返回目标值。 这似乎很容易,但我不知道如何实现它。 PMML版本= 3.0 更新:24.05.2013 我尝试使用jpmml Java API。 这就是我做的: (1)通过Maven Central Repository( 链接 )下载三个.Jar文件: PMML经理-1.0.2.jar PMML模型-1.0.2.jar PMML评价器-1.0.2.jar (2)使用eclipse“配置构建路径”并添加了这三个外部.Jar (3)导入名为“text.xml”的PMML文件(人工神经网络(ANN))PMML version =“3.0” (4)试图运行jpmml-project提供的示例“ TreeModelTraversalExample.java ” 显然它由于某些原因不起作用: 提到的例子不适用于ANN。 如何改写呢? 我的PMML文件是XML格式的。 它是正确的格式吗? 我不知道如何处理或添加Java API。 我应该在eclipse中通过“配置构建路径”添加它们吗? 明显的事实#2,我不知道我做了什么:-) 再次感谢和最亲切的问候。 斯特凡