【发布时间】:2016-04-06 09:15:38
【问题描述】:
我是 Apache Spark 的新手。我使用 crossValidation 训练了一个 LogisticRegression 模型。例如:
val cv = new CrossValidator() .setEstimator(管道) .setEvaluator(新的 BinaryClassificationEvaluator) .setEstimatorParamMaps(paramGrid) .setNumFolds(5) val cvModel = cv.fit(数据)
我能够毫无错误地训练和测试我的模型。然后我使用以下方法保存了模型和管道:
cvModel.save("/path-to-my-model/spark-log-reg-transfer-model") pipeline.save("/path-to-my-pipeline/spark-log-reg-transfer-pipeline")
直到这个阶段,操作都很完美。后来,我尝试重新加载我的模型以对新数据点进行预测,然后出现以下错误:
val sameModel = PipelineModel.load("/path-to-my-model/spark-log-reg-transfer-model")
java.lang.IllegalArgumentException:要求失败:加载元数据时出错:预期类名 org.apache.spark.ml.PipelineModel 但找到类名 org.apache.spark.ml.tuning.CrossValidatorModel
知道我做错了什么吗?谢谢。
【问题讨论】:
标签: apache-spark logistic-regression cross-validation bigdata