3 分钟学会调用 Apache Spark MLlib KMeans
Apache Spark MLlib是Apache Spark体系中重要的一块拼图:提供了机器学习的模块。只是,眼下对此网上介绍的文章不是非常多。拿KMeans来说,网上有些文章提供了一些演示样例程序,而这些程序基本和Apache Spark 官网上的程序片断类似:在得到训练模型后,差点儿都没有展示怎样使用该模型、程序运行流程、结果展示以及举例測试数据等部分。
笔者依据Apache Spark官网上的程序片断。写了一个完整的调用MLlib KMeans库的測试程序,并成功在Spark 1.0 + Yarn 2.2
的环境上运行。因为仅为高速体验目的。本程序里面的非常多细节并未被打磨,但相信已可为对Spark MLlib感兴趣的朋友们提供些许入门级帮助。
[A. 程序主要部分]
[B. 測试数据]
[C. 运行]
利用 ${SPARK_HOME}/bin/spark-submit 将程序提交给Yarn去运行。
[D. 结果]
- Console 返回的结果(最后几行):
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2FtaGFja2Vy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
- Yarn Web Console返回的运行结果:
- Yarn Log 中显示 Scala 程序的Output:
[E. 总结]
- 调用 Spark MLlib 库的过程并不复杂
- 利用MLlib KMeans 训练出来的 Model(KMeansModel),能够方便地对新的数据作出分类预測
3 分钟学会调用 Apache Spark MLlib KMeans的更多相关文章
- spark mllib k-means算法实现
package iie.udps.example.spark.mllib; import java.util.regex.Pattern; import org.apache.spark.SparkC ...
- Spark MLlib KMeans 聚类算法
一.简介 KMeans 算法的基本思想是初始随机给定K个簇中心,按照最邻近原则把分类样本点分到各个簇.然后按平均法重新计算各个簇的质心,从而确定新的簇心.一直迭代,直到簇心的移动距离小于某个给定的值. ...
- Apache Spark MLlib的简介
MLlib 是构建在 Spark 上的分布式机器学习库,充分利用了 Spark 的内存计算和适合迭代型计算的优势,将性能大幅度提升.同时由于 Spark 算子丰富的表现力, 让大规模机器学习的算法开发 ...
- 使用 Spark MLlib 做 K-means 聚类分析[转]
原文地址:https://www.ibm.com/developerworks/cn/opensource/os-cn-spark-practice4/ 引言 提起机器学习 (Machine Lear ...
- Apache Spark源码走读之22 -- 浅谈mllib中线性回归的算法实现
欢迎转载,转载请注明出处,徽沪一郎. 概要 本文简要描述线性回归算法在Spark MLLib中的具体实现,涉及线性回归算法本身及线性回归并行处理的理论基础,然后对代码实现部分进行走读. 线性回归模型 ...
- KMeans|| in Spark MLLib
算法跟传统的kmeans的区别主要在于:kmeans||的k个中心的不是随机初始化的.而是选择了k个彼此"足够"分离的中心. org.apache.spark.mllib.clus ...
- Spark MLlib聚类KMeans
算法说明 聚类(Cluster analysis)有时也被翻译为簇类,其核心任务是:将一组目标object划分为若干个簇,每个簇之间的object尽可能相似,簇与簇之间的object尽可能相异.聚类算 ...
- Spark MLlib 机器学习
本章导读 机器学习(machine learning, ML)是一门涉及概率论.统计学.逼近论.凸分析.算法复杂度理论等多领域的交叉学科.ML专注于研究计算机模拟或实现人类的学习行为,以获取新知识.新 ...
- Spark MLlib - Decision Tree源码分析
http://spark.apache.org/docs/latest/mllib-decision-tree.html 以决策树作为开始,因为简单,而且也比较容易用到,当前的boosting或ran ...
随机推荐
- ASP.NET在主题中添加CSS文件
ASP.NET在主题中添加CSS文件 在ASP.NET中,可以使用CSS来控制页面上HTML元素和ASP.NET控件的皮肤.如果在主题文件夹中添加了CSS文件,则在页面应用主题时也会自动应用CSS. ...
- 获取C#中exe程序的实例名
获取sanjiao.frmsanjiao string strPass = @"D:\WinAutoTest\sanjiao.exe"; Assembly assebly = As ...
- Android USB Host 与 Hid 设备通信bulkTransfer()返回-1问题的原因
近期一直在做Android USB Host 与USB Hid设备(STM32FXXX)的通信,遇到了很多问题.项目源码以及所遇到的其他问题可以见本博客其他相关文章,这里重点讲一下bulkTransf ...
- Django Aggregation聚合
在当今根据需求而不断调整而成的应用程序中,通常不仅需要能依常规的字段,如字母顺序或创建日期,来对项目进行排序,还需要按其他某种动态数据对项目进行排序.Djngo聚合就能满足这些要求. 以下面的Mode ...
- Android 关于显示键盘,布局错乱网上顶的问题
<activity android:name="com.taiyi.DiscussActivity" android:windowSoftInputMode="st ...
- 【HDOJ】3480 Division
斜率dp+滚动数组. /* 3480 */ #include <iostream> #include <sstream> #include <string> #in ...
- cogs_14_搭配飞行员_(二分图匹配+最大流,网络流24题#01)
描述 http://cojs.tk/cogs/problem/problem.php?pid=14 有一些正飞行员和副飞行员,给出每个正飞行员可以和哪些副飞行员一起飞.一架飞机上必须一正一副,求最多多 ...
- Apache ‘mod_pagespeed’模块跨站脚本漏洞
漏洞名称: Apache ‘mod_pagespeed’模块跨站脚本漏洞 CNNVD编号: CNNVD-201310-677 发布时间: 2013-11-05 更新时间: 2013-11-05 危害等 ...
- c语言诊断_断言库函数#include<assert.h>
诊断<assert.h> assert #include <assert.h> void assert(int exp); assert宏用于为程序增加诊断功能.当asser ...
- Android Support v4、v7、v13的区别和应用场景
N久未做android了,以前做的时候,2.2才刚出来,现在android都更新到了4.3了,而从前一段时间android各个sdk版本市场占有率 来看,1.6.2.1还是占有一定的市场,故在有些时候 ...