大数据开发之机器学习总结(Mllib示例)(五)

本文总结了Spark大数据开发中的机器学习库Mllib,涵盖分类(如逻辑回归、支持向量机、朴素贝叶斯、决策树)、回归(线性回归、岭回归、Lasso)、聚类(KMeans)和协同过滤算法的应用。通过实例展示了如何在训练数据集上执行训练、预测和评估模型,强调了根据业务场景选择算法的重要性,并提及Spark对Scala、Java和Python的生态支持。
摘要由CSDN通过智能技术生成

大数据开发之机器学习总结(Mllib示例)(五)

背景

  1. 作为spark框架中支持机器学习的模块,其算法库核心内容如下在这里插入图片描述
  2. 可以看到,主要就是分类,回归,决策树等算法

1. 分类算法

  1. 分类算法属于监督式学习,使用类标签已知的样本建立一个分类函数或分类模型,应用分类模型,能把数据库中的类标签未知的数据进行归类
  2. 分类在数据挖掘中是一项重要的任务,目前在商业上应用最多,常见的典型应用场景有流失预测、精确营销、客户获取、个性偏好等
  3. MLlib 目前支持分类算法有:

逻辑回归、支持向量机、朴素贝叶斯和决策树

导入训练数据集,然后在训练集上执行训练算法,最后在所得模型上进行预测并计算训练误差

import org.apache.spark.SparkContext
import org.apache.spark.mllib.classification.SVMWithSGD
import org.apache.spark.mllib.regression.LabeledPoint

// 加载和解析数据文件
val data = sc.textFile("mllib/data/sample_svm_data.txt")
val parsedData = data.map {
    line =>
  val parts = line.split(' ')
  LabeledPoint(parts(0).toDouble, parts.tail.map(x => x.toDouble).toArray)
}

// 设置迭代次数并进行进行训练
val numIterations = 20
val model = SVMWithSGD.train(parsedData, numIterations)

// 统计分类错误的样本比例
val labelAndPreds = parsedData.map {
    point =>
val prediction = model.predict(point.features)
(point.label
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值