大数据spark中ml与mllib 的区别你分清了吗?
发表于:2025-01-26 作者:千家信息网编辑
千家信息网最后更新 2025年01月26日,大数据学习过程中一个重要的环节就是spark,但是在spark中有很多的知识点,很多人都傻傻分不清楚,其中,最易搞混的就是ml与mllib的区别,所以我们不妨来详细的了解一下二者的区别。如果你想了解大
千家信息网最后更新 2025年01月26日大数据spark中ml与mllib 的区别你分清了吗?
大数据学习过程中一个重要的环节就是spark,但是在spark中有很多的知识点,很多人都傻傻分不清楚,其中,最易搞混的就是ml与mllib的区别,所以我们不妨来详细的了解一下二者的区别。
如果你想了解大数据的学习路线,想学习大数据知识以及需要免费的学习资料可以加群:784789432.欢迎你的加入。每天下午三点开直播分享基础知识,晚上20:00都会开直播给大家分享大数据项目实战。
首先、关于Spark ML
1、定义:ark机器学习,对的对象:DataFrame。 2、主要操作的是DataFrame。其中taFrame是Dataset的子集,也就是Dataset[Row]。DataSet是对RDD的封装,对SQL之类的操作做了很多优化。 其次、关于Spark MlLib 1、定义MLlib是Spark的机器学习(ML)库。其目标是使实用的机器学习具有可扩展性和容易性。在高水平上,它提供了以下工具: A、ML算法:常用的学习算法,如分类,回归,聚类和协同过滤 B、特征:特征提取,变换,维数降低和选择 C、管道:构建,评估和调整ML管道的工具 D、持久性:保存和加载算法,模型和流水线 E、实用程序:线性代数,统计,数据处理等 2、针对的对象:RDD 从Spark 2.0开始,软件包中基于RDD的API spark.mllib已进入维护模式。只修改bug,不增加系新的功能。Spark的主要机器学习API现在是包中的基于DataFrame的API spark.ml。 最后,二者的区别总结 1、编程过程 (1)构建机器学习算法的过程不一样:ML提倡使用pipelines,把数据想成水,水从管道的一段流入,从另一端流出。 (2)大体概念:DataFrame => Pipeline => A newDataFrame Pipeline: 是由若干个Transformers和Estimators连起来的数据处理过程 Transformer:入:DataFrame => 出: Data Frame Estimator:入:DataFrame => 出:Transformer 2、算法接口 (1)spark.mllib中的算法接口是基于RDDs的; (2)spark.ml中的算法接口是基于DataFrames的。 实际使用中推荐ml,建立在DataFrames基础上的ml中一系列算法更适合创建包含从数据清洗到特征工程再到模型训练等一系列工作的MLpipeline; 比如用朴素贝叶斯举个例子:在模型训练的时候是使用naiveBayes.fit(dataset: Dataset[]):NaiveBayesModel来训练模型的,返回值是一个naiveBayesModel,可以使用naiveBayesModel.transform(dataset: Dataset[]): DataFrame,进行模型的检验,然后再通过其他的方法来评估这个模型, 模型的使用可以参考上面方法,是使用transform来进行预测的,取预测值可以使用select来取值,使用select的时候可以使用"$"label""的形式来取值。类似与sql ,使用起来通俗易懂,且入门的门槛较低。 3、抽象程度 (1)mlib主要是基于RDD的,抽象级别不够高; (2)ml主要是把数据处理的流水线抽象出来,算法相当于流水线的一个组件,可以被其他算法随意的替换,这样就让算法和数据处理的其他流程分割开来,实现低耦合。 4、技术角度上:面向的数据集类型不一样 (1)ML的API是面向Dataset的 (2)mllib是面对RDD的。Dataset和RDD有啥不一样呢? Dataset的底端是RDD。 Dataset对RDD进行了更深一层的优化,比如说有sql语言类似的黑魔法,Dataset支持静态类型分析所以在compile time就能报错,各种combinators(map,foreach等)性能会更好。 在spark3.0之后,将会废弃mllib,全面的基于ml。因为ml操作的对象是DataFrame,操作起来会比RDD方便很多。所以,建议新接触spark的同学可以直接用ml 的方式。 大数据中的知识点需要大家详细的去理解和应用,处理数据一旦出错那么影响的将是整个大局,所以,求学者在学习过程中一定要打好基础,从而更好的掌握大数据的知识。
数据
算法
学习
模型
机器
知识
过程
处理
数据处理
基础
对象
接口
流水
流水线
特征
管道
训练
实用
就是
工具
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
人民大学会计本科就业数据库
流媒体服务器可连接但看不到图像
深圳梦易网络技术有限公司
网络安全就是防线又是底线
论坛数据库下载
陕西科技大学互联网加
街道应急指挥信息系统软件开发
优势刀片服务器售后服务
部队网络技术维护员
东莞送货单软件开发
高校就业管理系统数据库代码
服务器开机怎么下载软件
中专计算机网络技术专业升大专
香港高防云服务器
求学过数据库的学生学号
民营数据库杂志期刊
手机 控制 数据库
2020未成年人暑期网络安全
24号网络安全大会
祥云杯网络安全大赛比赛内容
内江大学生网络安全
数据库高级编程技术
软件开发专业的问题
跨数据库事物
山西太原dns服务器云服务器
东阳科技互联网推广
学校校园网络安全管理预案
开封大学计算机网络技术宿舍
网络安全公安联考
网页软件开发