【发布时间】:2019-08-10 13:18:10
【问题描述】:
我有 Spark 2.2.1(集群)和 Spark 2.4(我的笔记本电脑)。我可以在集群和笔记本电脑中训练并保存 CrossValidator 模型。但是当我尝试重新加载它时,在 Spark 2.4 中,CrossValidatorModel.load 可以工作,但在 Spark 2.2.1 中,CrossValidatorModel 没有加载方法。我怎样才能加载它?示例代码如下:数据来自 Spark GitHub Repo
training = spark.read.format("libsvm").load("sample_multiclass_classification_data.txt")
logreg = LogisticRegression(maxIter = 200)
paramGrid_logreg = ParamGridBuilder().addGrid(logreg.regParam, np.linspace(0.0, 1, 11))\
.addGrid(logreg.elasticNetParam, np.linspace(0, 1, 11)).build()
crossval_logreg = CrossValidator(estimator = logreg,
estimatorParamMaps = paramGrid_logreg,
evaluator = BinaryClassificationEvaluator(), numFolds = 10)
cvModel_logreg = crossval_logreg.fit(training)
cvModel_logreg.save("cvModel_logreg_numFolds10")
现在,使用 spark 2.4,我可以使用以下方法加载它:
CrossValidatorModel.load('cvModel_logreg_numFolds10')
但在 Spark 2.2 CrossValidatorModel 中确实有 load 方法。有什么办法读吗?
【问题讨论】:
标签: pyspark cross-validation apache-spark-ml