3 分钟学会调用 Apache Spark MLlib KMeans

时间:2023-12-19 15:38:44

Apache Spark MLlib是Apache Spark体系中重要的一块拼图:提供了机器学习的模块。只是,眼下对此网上介绍的文章不是非常多。拿KMeans来说,网上有些文章提供了一些演示样例程序,而这些程序基本和Apache Spark 官网上的程序片断类似:在得到训练模型后,差点儿都没有展示怎样使用该模型、程序运行流程、结果展示以及举例測试数据等部分。

笔者依据Apache Spark官网上的程序片断。写了一个完整的调用MLlib KMeans库的測试程序,并成功在Spark 1.0 + Yarn 2.2
的环境上运行。因为仅为高速体验目的。本程序里面的非常多细节并未被打磨,但相信已可为对Spark MLlib感兴趣的朋友们提供些许入门级帮助。

[A. 程序主要部分]

3 分钟学会调用 Apache Spark MLlib KMeans

[B. 測试数据]

3 分钟学会调用 Apache Spark MLlib KMeans

[C. 运行]

利用 ${SPARK_HOME}/bin/spark-submit 将程序提交给Yarn去运行。

[D. 结果]

- Console 返回的结果(最后几行):

3 分钟学会调用 Apache Spark MLlib KMeans

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2FtaGFja2Vy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

- Yarn Web Console返回的运行结果:

3 分钟学会调用 Apache Spark MLlib KMeans

- Yarn Log 中显示 Scala 程序的Output:

3 分钟学会调用 Apache Spark MLlib KMeans

[E. 总结]

- 调用 Spark MLlib 库的过程并不复杂

- 利用MLlib KMeans 训练出来的 Model(KMeansModel),能够方便地对新的数据作出分类预測