Ich habe bemerkt, dass es in SparkML zwei LinearRegressionModel
-Klassen gibt, eine in ML und eine weitere in MLLib
-Paket.
Diese zwei sind ziemlich unterschiedlich implementiert - z.B. Der eine von MLLib
implementiert Serializable
, der andere nicht.
Übrigens ist ame über RandomForestModel
wahr.
Warum gibt es zwei Klassen? Welches ist das "Richtige"? Und gibt es eine Möglichkeit, eines in ein anderes zu konvertieren?
o.a.s.mllib
enthält eine alte RDD-basierte API, während o.a.s.ml
eine neue API enthält, die um Dataset
und ML Pipelines herum erstellt wurde. ml
und mllib
haben Feature Parity in 2.0.0 erreicht und mllib
wird langsam veraltet (dies ist bereits im Falle einer linearen Regression passiert) und wird wahrscheinlich in der nächsten Hauptversion entfernt.
Wenn Ihr Ziel also keine Abwärtskompatibilität ist, dann ist die "richtige Wahl" o.a.s.ml
.
Tags und Links apache-spark apache-spark-mllib apache-spark-ml