Was ist der Unterschied zwischen Spark ML- und MLLIB-Paketen?

9

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?

    
vyakhir 08.08.2016, 18:10
quelle

1 Antwort

9

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 .

    
zero323 08.08.2016, 18:32
quelle