《Spark MLlib 机器学习实战》1——读后总结

简介:

1 概念

2 安装

3 RDD

RDD包含两种基本的类型:Transformation和Action。RDD的执行是延迟执行,只有Action算子才会触发任务的执行。

宽依赖和窄依赖用于切分任务,如果都是窄依赖,那么就可以最大化的利用并行。

常用操作:

  • cache 缓存
  • cartesian 笛卡尔积
  • coalesce 重分区
  • countByValue 分组统计
  • distinct 去除重复
  • filter 过滤
  • flatMap
  • map
  • groupBy 分组
  • keyBy 增加key
  • reduce 拼接
  • sortBy 排序
  • zip 合并压缩

4 基本概念

基本的数据结构

MLlib中提供几种向量和矩阵的数据结构:

  • Local vector,本地向量
  • Labeld point,带标签的向量
  • Local Matrix,本地矩阵
  • Distributed matrix,分布式矩阵

一般向量或者矩阵都有两个方法,dense表示密集版,sparse表示稀疏版,稀疏版是可以指定下标的。

基本的统计方法

  • colStats 以列统计基本数据,count个数、max最大值、mean最小值、normL1欧几里德距离、normL2曼哈顿距离、numNonzeros不为0的个数、variance标准差
  • chiSqTest 皮尔逊距离计算,Statistics.corr(rddx,rddy,"spearman")
  • corr 数据集相关系数计算,Statistics.corr(rddx,rddy)
  • 分层抽样 data.sampleByKey(withReplacement=false,fractions,0)
  • 假设检验 自由度、统计量、P值、卡方检验
  • 随机数 RandomRDDs.normalRDD(sc,100)

5 协同过滤

协同过滤可以基于人也可以基于物品,不足之处在于:

  • 基于人会对热点物品不够精确
  • 基于物品,但是没有什么多样性

相似度度量

  • 基于欧几里德距离的计算
  • 基于夹角余弦的相似度计算

他们的区别:

  • 欧几里德注重空间上的差异
  • 夹角余弦注重趋势

最小二乘法

最小二乘,就是基于均方误差寻找最佳匹配函数的过程。在矩阵中就是把大矩阵拆分成连个小矩阵的计算。

实践

new ALS()
rank 隐藏的因子数
iterations 迭代次数
lambda 正则项参数
implicitPref 显示反馈还是隐式反馈
alpha 拟合修正的幅度

6 线性回归

梯度下降

道士下山的例子,以及随机梯度下降中 θ=θ-α*J'(θ)公式的原理。

正则项

避免过拟合,可以使用正则项——lasso回归(L1)和岭回归(L2)。关于岭回归可以参考下面两篇:

7 分类

分类算法,包括 逻辑回归、支持向量机SVM、贝叶斯等。

逻辑回归

跟线性回归差不多,多了一个sigmoid函数,输出的内容也稍有变化。
另外,对于损失函数的推导也不同了,这里需要最大似然估计的知识!

基本的流程就是,确定1或者0的概率,然后推导出极大似然公式,然后取对数,求导...最终基于梯度下降,优化参数。
由于忘记最大似然估计,所以这里真是理解不上去.

支持向量机

求解的是划分边界的最优解,他的名字听起来像一种很高级的机器人,其实跟逻辑回归差不多,就是选取一条最优的线把数据分作两类。

这里有疑问的可以参考——逻辑回归和SVM的区别是什么?各适合解决什么问题?
https://www.zhihu.com/question/24904422?sort=created

暂时不知道它的损失函数是怎么算出来的...慢慢研究吧

朴素贝叶斯

明明就是计算概率,非叫这么高大上的名字。

本文转自博客园xingoo的博客,原文链接:《Spark MLlib 机器学习实战》1——读后总结,如需转载请自行联系原博主。
相关文章
|
9月前
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
452 0
|
9月前
|
机器学习/深度学习 存储 运维
机器学习异常检测实战:用Isolation Forest快速构建无标签异常检测系统
本研究通过实验演示了异常标记如何逐步完善异常检测方案和主要分类模型在欺诈检测中的应用。实验结果表明,Isolation Forest作为一个强大的异常检测模型,无需显式建模正常模式即可有效工作,在处理未见风险事件方面具有显著优势。
721 46
|
机器学习/深度学习 数据可视化 TensorFlow
Python 高级编程与实战:深入理解数据科学与机器学习
本文深入探讨了Python在数据科学与机器学习中的应用,介绍了pandas、numpy、matplotlib等数据科学工具,以及scikit-learn、tensorflow、keras等机器学习库。通过实战项目,如数据可视化和鸢尾花数据集分类,帮助读者掌握这些技术。最后提供了进一步学习资源,助力提升Python编程技能。
|
12月前
|
机器学习/深度学习 人工智能 Java
Java机器学习实战:基于DJL框架的手写数字识别全解析
在人工智能蓬勃发展的今天,Python凭借丰富的生态库(如TensorFlow、PyTorch)成为AI开发的首选语言。但Java作为企业级应用的基石,其在生产环境部署、性能优化和工程化方面的优势不容忽视。DJL(Deep Java Library)的出现完美填补了Java在深度学习领域的空白,它提供了一套统一的API,允许开发者无缝对接主流深度学习框架,将AI模型高效部署到Java生态中。本文将通过手写数字识别的完整流程,深入解析DJL框架的核心机制与应用实践。
741 3
|
机器学习/深度学习 数据可视化 算法
Python 高级编程与实战:深入理解数据科学与机器学习
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化和调试技巧。本文将深入探讨 Python 在数据科学和机器学习中的应用,并通过实战项目帮助你掌握这些技术。
|
机器学习/深度学习 分布式计算 大数据
阿里云 EMR Serverless Spark 在微财机器学习场景下的应用
面对机器学习场景下的训练瓶颈,微财选择基于阿里云 EMR Serverless Spark 建立数据平台。通过 EMR Serverless Spark,微财突破了单机训练使用的数据规模瓶颈,大幅提升了训练效率,解决了存算分离架构下 Shuffle 稳定性和性能困扰,为智能风控等业务提供了强有力的技术支撑。
604 15
|
数据可视化 API 开发者
R1类模型推理能力评测手把手实战
R1类模型推理能力评测手把手实战
398 2
|
人工智能 自然语言处理 网络安全
基于阿里云 Milvus + DeepSeek + PAI LangStudio 的低成本高精度 RAG 实战
阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。
|
数据可视化 API 开发者
R1类模型推理能力评测手把手实战
随着DeepSeek-R1模型的广泛应用,越来越多的开发者开始尝试复现类似的模型,以提升其推理能力。
1083 2
|
数据可视化 API 开发者
R1类模型推理能力评测手把手实战
随着DeepSeek-R1模型的广泛应用,越来越多的开发者开始尝试复现类似的模型,以提升其推理能力。
809 3

热门文章

最新文章