Инкрементальное обучение - установка начальных весов или значений для параметров из предыдущей модели для алгоритма ML в Spark 2.0 - PullRequest
0 голосов
/ 08 октября 2018

Я пытаюсь установить начальные веса или параметры для алгоритма машинного обучения (классификации) в Spark 2.x.К сожалению, за исключением алгоритма MultiLayerPerceptron, ни один другой алгоритм не предоставляет способ установки начальных весов / значений параметров.

Я пытаюсь решить проблему постепенного обучения с использованием искры.Здесь мне нужно загрузить старую модель, переучить старую модель новыми данными в системе.Как я могу это сделать?

Как я могу сделать это для других алгоритмов, таких как:

  • Деревья решений
  • Случайный лес
  • SVM
  • Логистическая регрессия

Мне нужно поэкспериментировать с несколькими алгоритмами, а затем выбрать наиболее эффективный.

1 Ответ

0 голосов
/ 08 октября 2018

Как я могу сделать это для других алгоритмов, таких как:

  • Деревья решений
  • Случайный лес

Вы не можете.Древовидные алгоритмы не очень подходят для инкрементного обучения, так как они смотрят на глобальные свойства данных и не имеют «начальных весов или значений», которые можно использовать для начальной загрузки процесса.

  • Логистическая регрессия

Вы можете использовать StreamingLogisticRegressionWithSGD, который точно реализует требуемый процесс, включая установку начальных весов с помощью setInitialWeights.

* 1025.* SVM

Теоретически это может быть реализовано аналогично регрессии потока StreamingLogisticRegressionWithSGD или StreamingLinearRegressionWithSGD путем расширения StreamingLinearAlgorithm, но естьнет такой встроенной реализации, поскольку org.apache.spark.mllib находится в режиме обслуживания, не будет.

...