版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大数据分析和挖掘工具——SparkMLlibCONTENTS目录01
本章学习目标02
SparkMLlib的运行和介绍03
SparkMLlib基本数据类型04
SparkMLlib支持的算法简介05
案例:使用SparkMLlib预测波士顿房价06
总结与思考练习本章学习目标01掌握SparkMLlib核心概念与架构了解SparkMLlib基本概念与架构明确SparkMLlib是Spark的机器学习库,旨在简化大规模机器学习工程实践,支持分类、回归等算法及底层优化原语与高层管道API理解基本数据类型与常用算法掌握本地向量、标注点等基本数据类型,熟悉分类、回归、聚类等常用机器学习算法的应用场景应用SparkMLlib进行数据分析建模能够运用SparkMLlib完成数据处理、模型训练与评估的完整流程,解决实际数据分析问题SparkMLlib的运行和介绍02SparkMLlib的运行流程
数据收集与准备涵盖数据获取、清洗、转换与特征工程,SparkMLlib提供丰富工具处理结构化与非结构化数据
特征提取与选择特征工程是关键步骤,需提取与问题相关的特征,SparkMLlib提供TF-IDF、Word2Vec等工具
模型选择与训练选择合适算法(如线性回归、决策树),用训练数据拟合模型,文档中房地产房价预测示例展示了完整训练流程线性回归示例代码解析创建SparkSession与数据集通过SparkSession.builder初始化会话,用createDataFrame创建房屋面积与价格的示例数据集特征向量转换使用VectorAssembler将特征列(area)转换为特征向量列(features),为模型训练做准备模型训练与预测初始化LinearRegression模型,拟合转换后的数据得到模型,用transform方法生成预测结果并展示机器学习基础概念机器学习的定义与应用
机器学习是人工智能分支,让机器从数据中学习经验、建模不确定性并预测未来,应用于搜索、推荐系统等领域大数据与机器学习的关系
大数据为机器学习提供海量训练数据,提升模型性能;机器学习则挖掘大数据背后的潜在知识,解决复杂问题机器学习的四大分类
监督学习(有标签数据训练,如分类、回归)、无监督学习(无标签数据挖掘结构,如聚类)、半监督学习(结合标签与无标签数据)、强化学习(通过交互反馈优化策略)SparkMLlib的核心组件
SparkMLlib的两大代码包spark.mllib:基于RDD的原始算法API,支持分类、回归等四类算法,但不再新增功能;spark.ml:基于DataFrame的API,支持Pipeline构建,是官方推荐使用的库
spark.ml的核心优势提供统一跨语言API、强大优化引擎、丰富数据源集成与便捷数据操作,支持特征处理、Pipeline构建等功能
MLlib支持的主要算法监督学习涵盖分类(如逻辑回归)与回归(如线性回归)算法;无监督学习包含聚类(如KMeans)与降维(如PCA)等算法SparkMLlib基本数据类型03本地向量与稀疏向量
本地向量的定义与类型存储在单机上,有整型索引与浮点型元素,分为稠密向量(存储所有值)与稀疏向量(存储非零值及其索引)
稠密向量与稀疏向量示例向量(1.0,0.0,3.0)的稠密表示为[1.0,0.0,3.0],稀疏表示为(3,[0,2],[1.0,3.0]),稀疏向量更节省内存
向量创建的最佳实践建议使用Vectors工厂方法创建向量,优先用NumPy数组提升稀疏向量创建效率标注点的定义与应用
标注点的组成与用途是带标签的本地向量(稠密或稀疏),标签为双精度浮点型,用于监督学习的训练样本
标注点的创建方式通过LabeledPoint类创建,label为标签值,features为特征向量,文档中展示了创建与查看标注点的代码
LIBSVM格式数据读取使用MLUtils.loadLibSVMFile方法读取LIBSVM格式数据,返回RDD[LabeledPoint],方便直接用于模型训练本地矩阵的存储与操作本地矩阵的定义与类型存储在单机上,有整数行/列索引与双精度值,分为稠密矩阵(按列主顺序存储所有值)与稀疏矩阵(按列主顺序存储非零值)稠密矩阵的存储示例3行2列的稠密矩阵[[1.0,2.0],[3.0,4.0],[5.0,6.0]],按列主顺序存储为数组[1.0,3.0,5.0,2.0,4.0,6.0]稀疏矩阵的创建方法使用Matrices.sparse方法创建,需指定行数、列数、列指针、行索引与非零值数组,文档中示例展示了3行2列稀疏矩阵的创建分布式矩阵的类型与特点
行矩阵(RowMatrix)面向行的分布式矩阵,无行索引,由RDD[Vector]支持,列数受整数范围限制,可通过computeColumnSummaryStatistics获取统计信息
索引行矩阵(IndexedRowMatrix)类似RowMatrix但有行索引,由RDD[IndexedRow]支持,可转换为RowMatrix,适用于需要行索引的场景
坐标矩阵(CoordinateMatrix)由RDD[MatrixEntry](行索引、列索引、值)支持,仅适用于两个维度大且稀疏的矩阵,通过三元组创建实例
分块矩阵(BlockMatrix)由RDD[MatrixBlock](块索引、子矩阵)支持,支持矩阵加减乘等操作,需确保底层RDD是确定性的SparkMLlib支持的算法简介04分类算法体系
01逻辑回归应用于二元分类,使用sigmoid函数建模线性组合,输出分类概率,相关类包括LogisticRegression与LogisticRegressionModel
02决策树分类基于树结构的分类算法,处理二元/多类别标签与连续/分类特征,通过划分特征空间构建树
03随机森林分类集成学习算法,训练多个决策树取投票结果,提升准确性与鲁棒性,支持并行训练
04梯度提升决策树分类串行训练多个决策树,通过加权修正前序错误,提升模型性能,支持二元标签分类算法体系
多层感知机分类人工神经网络,包含输入层、隐藏层与输出层,层间全连接,适用于复杂分类问题
一对多法分类将多分类问题转化为多个二分类问题,每个类别训练一个分类器,取置信最高的结果
朴素贝叶斯基于贝叶斯定理的分类算法,假设特征条件独立,计算先验概率与条件概率实现分类回归算法类型
线性回归用最小二乘法建模自变量与因变量的线性关系,确定回归系数,训练流程包括数据划分与梯度下降优化
广义线性回归线性回归的扩展,引入链接函数与指数分布族,拟合非正态分布的响应变量,用IRLS算法估计参数
决策树回归基于树结构的回归算法,通过划分特征空间预测连续值,包含特征选择、树生成与剪枝步骤
随机森林回归集成多个决策树,回归结果为各树预测值的平均值,减少过拟合风险,支持并行训练回归算法类型
梯度提升决策树回归迭代训练决策树,最小化损失函数(平方误差/绝对误差),逐步修正模型错误
生存回归基于加速失效时间模型,处理截尾数据,每个实例对目标函数贡献独立,易于并行化
保序回归有顺序约束的最小二乘法问题,拟合单调函数,采用池旁者算法,支持保序或反序设置协同过滤算法
协同过滤核心思想利用集体智慧,基于用户/物品的相似性推荐,SparkMLlib使用交替最小二乘(ALS)算法学习潜在因素
协同过滤实现步骤收集用户历史行为数据,计算用户/物品相似度(欧几里德距离、皮尔逊相关系数等),基于相似度进行推荐
冷启动问题与策略新用户/物品无历史数据导致预测困难,Spark支持将coldStartStrategy设为“drop”删除含NaN的预测行,解决评估指标无效问题聚类算法类型K-均值聚类无监督学习算法,将数据划分为k个簇,通过迭代更新聚类中心实现,K值可通过肘部法确定,K-Means++优化初始中心选择高斯混合模型概率式聚类方法,假设数据由多个高斯分布生成,通过EM算法估计参数,实现软聚类(输出样本属于各簇的概率)主题模型(LDA)三层贝叶斯概率模型,包含词、主题与文档,识别文档集中的潜藏主题,采用词袋方法处理文本二分K均值改进K-means算法,先将所有点作为一个簇,再递归二分SSE最大的簇,减少初始中心随机性的影响案例:使用SparkMLlib预测波士顿房价05波士顿房价数据集介绍
数据集特征组成包含CRIM(犯罪率)、ZN(住宅用地比例)、RM(平均房间数)等13个特征列,目标变量为MEDV(房屋中值价格)
案例目标通过训练线性回归、决策树回归等模型,学习特征与房价的关系,实现对新房屋价格的预测数据加载与探索
数据加载与Schema查看用SparkSession.read.csv读取CSV文件,通过printSchema以树状格式展示数据结构
描述性分析用describe方法获取数据统计信息(均值、标准差等),转换为PandasDataFrame便于查看
特征相关性分析计算各特征与MEDV的皮尔逊相关系数,如RM(房间数)与MEDV正相关,LSTAT(低收入群体占比)与MEDV负相关线性回归模型构建与评估特征向量组装与数据划分用VectorAssembler将所有特征列组合为特征向量列,按8:2比例随机划分训练集与测试集模型训练与预测初始化LinearRegression模型,拟合训练数据得到模型,对测试集进行预测模型评估用RegressionEvaluator计算RMSE(均方根误差)与R²(决定系数),文档中模型R²为0.79,说明MEDV的79%可由模型解释决策树回归模型构建与评估
Pipeline构建与数据划分构建包含VectorAssembler与DecisionTreeRegressor的Pipeline,划分训练集与测试集
模型训练与预测拟合Pipeline得到模型,对测试集进行预测并展示结果,文档中测试集RMSE为2.92637
特征重要性分析通过model.stages[-1].featureImportances获取特征重要性,文档中RM(房间数)是预测房价的最重要特征梯度提升树回归模型构建与评估模型初始化与Pipeline构建初始化GBTRegressor模型(maxIter=100),构建包含特征组装与模型的Pipeline模型训练与预测拟合训练数据得到模型,对测试集进行预测,文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年江西宜春市地理生物会考试卷题库及答案
- 2025年陕西宝鸡市初二地理生物会考真题试卷(含答案)
- 2026服装制造企业市场供应链分析及竞争格局研究报告
- 2026服装产业品牌建设市场竞争格局发展创新供应链研究报告
- 2026服务业领域中旅游业市场供需分析及投资评估规划分析研究报告
- 2026昆虫蛋白饲料替代传统饲料的经济性分析报告
- 2026斐济旅游岛屿开发市场潜力及度假村管理与服务创新策略研究
- 2026教育行业虚拟化桌面部署趋势与成本效益报告
- 2026教育类SaaS产品迭代分析及客户粘性与续费率研究报告
- 2026教育物联网行业市场现状与未来方向研究报告
- 四川卫健委课题申报书
- MES系统开发合同
- 2025年宝山区社区工作者招聘考试真题(附含答案)
- 高速公路改扩建交通导改方案
- 2025年全国初级导游人员资格考试(政策与法律法规、导游业务)历年参考题库含答案详解(5卷)
- 【MOOC答案】《人力资源管理》(南京邮电大学)章节作业慕课答案
- 如何书包班会课件
- 服装公司资产管理制度
- 冬病夏治及中医夏季养生课件
- 园区污水接纳协议书
- 《现代农业技术与装备》课件
评论
0/150
提交评论