【问题标题】:pySpark: Save ML ModelpySpark:保存 ML 模型
【发布时间】:2016-08-05 07:08:05
【问题描述】:

有人可以举例说明如何在 pySpark 中保存 ML 模型吗?

对于

ml.classification.LogisticRegressionModel

我尝试使用以下内容:

model.save("path")

但它似乎不起作用。

【问题讨论】:

  • 你遇到的错误是什么?更多细节(您的堆栈跟踪和代码)可能会有所帮助
  • 它只是说它找不到任何同名的方法(顺便说一下我使用的是Spark 1.6.1)
  • 我正在运行 v2.2.0 并且还得到 AttributeError: 'RandomForestRegressor' 对象没有属性 'save'。谷歌让我失望了。所有文档似乎都表明这应该有效。

标签: apache-spark machine-learning pyspark


【解决方案1】:

如果我正确理解您的问题,则您的方法签名不正确。

根据文档,您还需要在 spark 上下文中传递。

文档:https://spark.apache.org/docs/1.6.1/api/python/pyspark.mllib.html?highlight=save#pyspark.mllib.classification.LogisticRegressionModel.save

【讨论】:

  • 但这属于mllib。 ml 是否继承了这些功能?无论如何,这听起来很合理,因为我没有使用火花上下文 (sc)。谢谢!
  • stackoverflow.com/questions/30231840/… 更好地回答了这个问题,但是你的方法应该是一样的。如果可行,请接受此答案为正确答案!
  • 我明天试试,因为我现在无法访问 pyspark。非常感谢!
【解决方案2】:

在 Spark 2.3.0 中,如果您使用的是 ML:

model.save("path")

参考:Spark ML model .save

我刚刚运行 LogisticRegression 并保存了它。


但是,如果您使用的是 mllib,那么正如其他答案所建议的那样:

save(sc, path)

参考:Spark MLLib model .save

【讨论】:

    猜你喜欢
    • 2018-01-08
    • 2018-02-01
    • 1970-01-01
    • 2016-10-17
    • 2021-06-25
    • 1970-01-01
    • 2023-04-09
    • 2019-03-13
    • 2019-05-26
    相关资源
    最近更新 更多