如何在Scala上导入保存的ML模型?

时间:2018-07-18 13:47:56

标签: scala intellij-idea machine-learning

我在本地保存了线性回归模型,我想在以后的应用程序中使用它。

如何导入和调用在当前应用程序中未创建的已保存模型?

我在IntelliJ上使用Scala。

这是我保存模型的方式:

LRmodel.write.save(ORCpath+"LinearRegModel")

2 个答案:

答案 0 :(得分:0)

要能够加载模型,您需要事先定义相同的模型。因此,将模型加载到新环境中并不是直接的。

即。您不能将包含4个节点的模型加载到包含10个节点的模型中。

您可以在这里看到:https://spark.apache.org/docs/latest/mllib-linear-methods.html#logistic-regression 加载的方法是:

val sameModel = LogisticRegressionModel.load(
   sc,
   "target/tmp/scalaLogisticRegressionWithLBFGSModel"
)

答案 1 :(得分:0)

不同的应用程序不是问题。您只需按照@Wonay的说明加载保存路径即可。

问题是当您移至另一个文件系统时,例如从本地移至Hadoop ...或仅移至另一台本地PC。坦率地说,在这种情况下,最好只是在新文件系统上重新生成模型。