采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
spark ml中有关于聚类结果的一些评价指标吗,比如轮廓系数之类的
当然有啦,kmeans的评价指标一般是Silhouette score(轮廓系数),可以通过调用spark的评估类来实现:
val kmeans =
new
KMeans().setK(
2
).setSeed(1L)
val model = kmeans.fit(dataset)
// Make predictions
val predictions = model.transform(dataset)
// Evaluate clustering by computing Silhouette score
val evaluator =
ClusteringEvaluator()
val silhouette = evaluator.evaluate(predictions)
println(s
"Silhouette with squared euclidean distance = $silhouette"
)
以上代码节选自:
"examples/src/main/scala/org/apache/spark/examples/ml/KMeansExample.scala"
除此之外,还可以度量一些距离,参考此处:
http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.ml.evaluation.ClusteringEvaluator
好的 谢谢老师 老师 我想再问一下好像spark只有线性的svm,我需要使用ocsvm,有什么办法吗
Spark目前只有LinearSVC,如果使用one class svm的话可以调用libsvm,这个库是有java接口的,且有ocsvm的功能,可以通过参数指定。 不过这样会把分布式计算引擎的优势埋没,这也是Spark没有实现分布式模式下的其他svm功能的退路。
登录后可查看更多问答,登录/注册
案例+原理+代码 提升大数据处理能力
1.7k 14
868 11
1.0k 7
797 6
3.1k 5
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号