Spark MLlib与Hadoop Mahout,可以对比着学习,以下是MLlib主要支持的机器学习算法
【转自 赖永炫 老师的个人博文】MLlib由一些通用的学习算法和工具组成,包括分类、回归、聚类、协同过滤、降维等,同时还包括底层的优化原语和高层的管道API。具体来说,其主要包括以下几方面的内容:
-
算法工具:常用的学习算法,如分类、回归、聚类和协同过滤;
-
特征化公交:特征提取、转化、降维,和选择公交;
-
管道(Pipeline):用于构建、评估和调整机器学习管道的工具;
-
持久性:保存和加载算法,模型和管道;
-
实用工具:线性代数,统计,数据处理等工具。
Spark 机器学习库从 1.2 版本以后被分为两个包:
-
spark.mllib
包含基于RDD的原始算法API。Spark MLlib 历史比较长,在1.0 以前的版本即已经包含了,提供的算法实现都是基于原始的 RDD。 -
spark.ml
则提供了基于DataFrames 高层次的API,可以用来构建机器学习工作流(PipeLine)。ML Pipeline 弥补了原始 MLlib 库的不足,向用户提供了一个基于 DataFrame 的机器学习工作流式 API 套件。