一、概念
1)MLib是一个构建在Spark上的专门针对大数据处理的并发式高速机器学习库,采用较为先进的迭代式、内存存储的分析计算,使得数据的计算处理速度大大高于普通的数据处理引擎
2)目前MLlib中已经有通用的学习算法和工具类,包括统计、分类、回归、聚类、降维等。
3)MLlib采用Scala语言编写,Scala语言是运行在JVM上的一种函数式编程语言,特点就是可移植性强,“一次编写,到处运行”是其最重要的特点。借助于RDD数据统一输入格式,让用户可以在不同的IDE上编写数据处理程序,通过本地化测试后可以在略微修改运行参数后直接在集群上运行。对结果的获取更为可视化和直观,不会因为运行系统底层的不同而造成结果的差异与改变。
二、MLib基本数据类型
RDD是MLlib专用的数据格式,它参考了Scala函数式编程思想,并大胆引入统计分析概念,将存储数据转化成向量和矩阵的形式进行存储和计算,这样将数据定量化表示,能更准确地整理和分析结果。
多种数据类型:
Local vector |
本地向量集。主要向Spark提供一组可进行操作的数据集合 |