我的确是3天前才知道MLlib的存在,汗。。。基本上就是一个类似于mahout的东西,包括一些常用机器学习算法在Spark上的实现。目前有:Binary
Classification(二分)、Linear
Regression(回归)、Clustering(聚类)、Collaborative
Filtering(协同过滤)、Gradient Descent Primitive(梯度下降)。
试用了下Binary Classification下的SVMWithSGD支持向量机:
1、首先,可以像官网guide给出的那样,使用Spark-Shell交互式的运行MLlib,具体做法只要把guide里给出的那一坨代码全部复制到shell就好啦!
import
org.apache.spark.SparkContext
import
org.apache.spark.mllib.classification.SVMWithSGD
import
org.apache.spark.mllib.regression.LabeledPoint
// Load and parse the data file
val data =
sc.textFile("mllib/data/sample_svm_data.txt")
val parsedData =
data.map {
line =>
val parts
=
line.split('
')
LabeledPoint(parts(0).toDouble,
part