Следуя Spark MLlib Guide, мы можем прочитать, что Spark имеет две библиотеки для машинного обучения:
-
spark.mllib
, построенный поверх RDD. -
spark.ml
, построенный поверх Dataframes.
В соответствии с этим и этим вопросом о StackOverflow, Dataframes лучше (и новее), чем RDD и следует использовать, когда это возможно.
Проблема заключается в том, что я хочу использовать общие алгоритмы машинного обучения (например: "Частый шаблон" , Naive Bayes и т.д.) и spark.ml
(для данных) не предоставляют таких методов, только spark.mllib
(для RDD) предоставляет эти алгоритмы.
Если Dataframes лучше, чем RDD, и упомянутое руководство рекомендует использовать spark.ml
, почему не являются обычными методами машинного обучения, реализованными в этой библиотеке?