【问题标题】:Incremental learning - Set Initial Weights or values for Parameters from previous model for ML algorithm in Spark 2.0增量学习 - 在 Spark 2.0 中为 ML 算法的先前模型设置初始权重或参数值
【发布时间】:2019-03-12 22:35:03
【问题描述】:

我正在尝试为 Spark 2.x 中的机器学习(分类)算法设置初始权重或参数。不幸的是,除了 MultiLayerPerceptron 算法,没有其他算法提供设置初始权重/参数值的方法。

我正在尝试使用 spark 解决增量学习问题。在这里,我需要加载旧模型,用系统中的新数据重新训练旧模型。我该怎么做?

我怎样才能为其他算法做到这一点:

  • 决策树
  • 随机森林
  • 支持向量机
  • 逻辑回归

我需要试验多种算法,然后选择性能最好的一种。

【问题讨论】:

  • 还有哪些其他 Spark 算法权重?我建议您具体,将“任何其他算法”放在一边……
  • 问题已编辑
  • 这些算法一开始就没有权重...
  • 如果我想做增量学习,我该如何使用这些算法?
  • 这是一个完全不同的问题(可以说是一个过于宽泛的问题)......

标签: apache-spark machine-learning apache-spark-mllib


【解决方案1】:

我怎样才能为其他算法做到这一点:

  • 决策树
  • 随机森林

你不能。基于树的算法不太适合增量学习,因为它们着眼于数据的全局属性并且没有可用于引导过程的“初始权重或值”。

  • 逻辑回归

您可以使用StreamingLogisticRegressionWithSGD,它完全实现了所需的过程,包括使用setInitialWeights 设置初始权重。

  • 支持向量机

理论上它可以通过扩展StreamingLinearAlgorithm实现类似于流回归StreamingLogisticRegressionWithSGDStreamingLinearRegressionWithSGD,但是没有内置这样的实现,因为org.apache.spark.mllib处于维护模式,所以赢了不是。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-17
    • 2020-10-27
    • 2023-02-26
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 2011-11-25
    • 2019-10-15
    相关资源
    最近更新 更多