欢迎来到优知文库! | 帮助中心 分享价值,成长自我!
优知文库
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 优知文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《Spark大数据技术与应用案例教程》教案第15课加载鸢尾花数据.docx

    • 资源ID:1169422       资源大小:52.78KB        全文页数:5页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录
    二维码
    扫码关注公众号登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《Spark大数据技术与应用案例教程》教案第15课加载鸢尾花数据.docx

    课题加载莺尾花数据课时2课时(90min)教学目标知识技能目标:(1)认识机器学习(2)了解SparkMLlib的组成(3)熟悉SparkMLIib的基本数据类型(4)理解SparkMLlib的运行流程素质目标:(1)能熟练运用机器学习算法解决日常生活中的数据分析问题(2)培养自主学习意识,提升实践操作能力教学重难点教学重点:SparkMLlib的组成,SparkMLlib的基本数据类型,SparkMLlib的运行流程教学睚点:SParkMLlib的运行流程教学方法案例分析法、问答法、讨论法、i井授法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤课前任务【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其他学习软件,完成课前任务请大家了解什么是机器学习。【学生】完成课前任务考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】提出以下问题:请简单说说什么是机器学习。【魅】思考、传授新知【教师】通过学生的回答引入新知,介绍机器学习、SparkMLIib的组成,SparkMLIib的基本数据类型,SparkMLIib的运行流程等内容一、认识机器学习机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析和算法复杂度理论等多门学科.它使用计算机工具模拟或实现人类的学习行为以获取新的知识或技能,并重新组织已有的知识结构以不断改善自身的性能。按照不同的维度,机器学习有多种分类方式。从学习方式的维度进行划分,机器学习可以分为监督学习、无监督学习和半监督学习.(1)监督学习。监督学习是一种比较简单且直接的学习方法,它利用含有标签的幡集对学习模型进行训练,然后得到预测模型,最后利用测试集对预测模型的性能进行评估.(2)无监督学习。无监督学习是在没有标签的数据集里发现数据之间潜在关系的学习方法。无监督学习是一种没有明确目的的学习方法,无法提前知道结果,且它的学习效果几乎无法量化.(3)半监督学习。半监督学习是一种介于监督学习和无监督学习之间的学习方法。它利用少量有标签的数据集和大量无标签的孀集进彳方川练,旨在扩展模型的覆盖范围,并提高模型的泛化能力。半监督学习通常应用于数据标注成本较高或难以获得大量含有标签的数据集的场景.二、SparkMLIib概述【教师】通过多媒体展示,SparkMLIib的组成”图片,并进行讲解传统的机器学习算法通常需要对整个数据集进行操作,这可能会导致计算时间过长或内存不足等问题。随着HDFS等分布式文件系统的出现,海量数据存储成为可能。但是,由于MapReduce自身的限制,使用M叩RedUCe实现分布式机器学习算法仍然存在延迟高、磁盘开销大等问题。为此,Spark提供了一个基于海量数据的机器学习库MLIib,使得开发者可以通过调用API实现基于海量数据的机器学习过程。SparkMLlib包含了一系列通用的学习算法和工具,涵盖了特征提取、特征转换、特征选择、聚类、分类、回归和协同过滤等。此外,SparkMLlib还提供了底层的优化功能和高层的管道API,用于构建复杂的机器学习工作流程.SparkMLIib的组成如图5-1所示。图5-1SParkMLlib的组成三、SparkMLIib的基本数据类型【教师】通过多媒体展示图表,并讲解SparkMLlib的基本数据类型SparkMLlib提供了一系列基本数据类型,用于支持底层的机器学习算法。常见的基本数据类型包括本地向量、本地矩阐口标注点等。其中,本地向量和本地矩阵作为公共接口提供简单的数据模型;标注点表示监督学习中的一个训练样本。详细说明如表5-1所示.表5-1SParkMLIib常见的基本数据类型数据类型说明本地向量(localVector)本地向量是一个数值数组,表示特征集合或样本。根据元素的存在情宓口存储方式,本地向量可分为稠密本地向量(denseIoCalVeClor)和稀疏本地向量(sparselocalVector)。其中,稠密本地向量是一个存储者所有特征值的数组,每个元素都代表向量的一个特征;稀疏本地向量只存储非零特征及其对应的索引本地矩阵(localMatrix)本地矩阵是一个二维数组,用于存储和处理数值型数据。本地矩阵可分为稠密本地矩阵(denselocalMatrix)和稀疏本地矩阵(sparselocalMatrix)稠密本地矩阵中的每个元素都有一个值;稀疏本地矩阵中大部分元素的值为零标注点(LabeledPoint)标注点表示监督学习中的一个训练样本,由特征向量和与之关联的标签组成。特征向量表示输入样本的特征;标签是一个浮点数或整数,表示样本的类别或输出四、SParkMLlib的运行流程【教师】通过多媒体展示“SparkMLIib的运行流程”图片,并进行讲解SparkMLlib的运行流程如图5-2所示。J试数超_(数据Li特征Lf特征Lr特征幽模型Lf模型Lf模型Lf模型)加载厂提取厂转换jf选择构建厂训练厂7测试厂评估J1.每处JgJJ训练-测试迭代图5-2SparkMLlib的运行流程(1)数据加载。使用SPark提供的方法读取数据创建DataFrame。(2)特征处理。对加载的数据进行特征处理,包括特征提取、特征转换、特征选择等。【小提示】在进行特征处理时,并不一定需要严格按照特征提取、特征转换、特征选择的顺序进行处理。根据具体的问题和数据情况,可以灵活选择特征处理的方法。(3)划分训练集和测试集。使用Spark提供的工具类,如randomSplit()方法,将数据按照比例划分为训练集和测试集。该方法的基本格式如下。randomSplit(weigh(s,seed)其中,参数weights为一个包含权重(权重之和为I)的列表,表示每个子数据集的相对大小;参数seed(可选)为一个整数种子,用于控制随机数生成器的种子值。(4)模型构建。选择合适的机器学习算法构建机器学习模型。(5)模型训练。输入训练数据,使用mo方法训练机器学习模型。fit(daiaset)其中,参数dataset为DataFrame类型的数据。(6)模型测试.使用IranSfOnn()方法执行转换操作,将训练好的模型应用于测试数据,生成预测结果。该方法的基本格式如下。transform(dataset)其中,参数dataset为DataFrame类型的数据。(7)模型评估。首先创建MuhiclassciassificationEvaluator对象,然后使用评估器(evaluator)评估训练好的模型,计算模型的性能指标,如准确率、召回率、Fl值等。该方法的基本格式如下.#创建MulticlassClassifica(ionEvalua(or对象eval=MulticlassClassificationEvaluator(IabelCol.predictionCol.metricName)eval_value=eval.evaluate(da(aset)其中,参数IabeICoI(可选)表示真实标签列的名称,默认值为label;参数PrediCIionCO1(可选)表示预混肝示签列的名称,默认值为prediction;参数metricName(可选)表示评估指标的名称,可选值包括accuracy(准确率)、fl(Fl值)、WeightedPrecision(加权精确率)、WeightedRecall(力哝召回率)等,默认值为11;参数dataset表示包含标签和预测值的DataFramee【学生】聆听、思考、理解、记录课堂实践【教师】介绍“加载莺尾花数据”的大概流程,安排学生扫描微课二维码观看视频“加载莺尾花数据“(详见教材),并要求学生进行相应操作Iris数据集是一组包含150个样本和4个特征的多元数据集。每个样本都包含Iris花卉的萼片长度、萼片宽度、花瓣长度和花瓣宽度,以及花卉对应的品种(Selosa、VerSieOlor或Virginica).该数据集存放在Musr/local/spark7mycode/MIlibZirisxsvw文件中,内容如图5-3所示。1打开日ihscsv保存(三)三×51,3.5,14r.2,Irissetosa49,3.,l4,.2,lris-setosa47,3.2,13,0.2,IriS-SetoSa46,3.1,15,.2,Iris-setosa5,3.6,14,.2,Iris-setosa54,3.9,17,.4,iris-setosa46,3.4,14,.3,Iris-setosa50,3.4,15r.2,Iris-setosa44,2.9,14,.2,Iris-setosa打开PyCharm,创建"MLlib"目录,然后新建"IrisFeaturepy"文件,并在该文件中编写应用程序,实现莺尾花幡的读取。具体实现步骤如下。步骤1创建SparkSession对象。步骤2A使用read.csv()方法加载莺尾花创建DataFrame(即data)其中,InferSchema=True表示自动推断字段类型;header=Fake表示不使用首行数据作为列名。步骤3A使用toDF()方法为data指定列名,得到一个新的DataFrame(即iris)。【高手点拨】toDF(*cols)方法是DataFrame的一种转换方法,该方法返回一个具有指定列名的DataFramee参数c。IS表示新的列名,多个列名之间以逗号隔开。步骤4A使用ShoWo方法显示iris中的数据。【参考代码】frompyspark.sqlimportSparkSessionfrompyspark.ml.featureimportVectorAssemblerlSlringIndexenPCAfrompyspark.ml.clusteringimportKMeansfromPysparkmLcIassificationimportDecisionTreeClassifierfrompyspark.rnl.evaluationimportMulticlassciassificationEvaluatorfrompyspark.sql.functionsimportCoI盼!J建SparkSession对象spark=SparkSession.builder.appName("IrisFeature").getOrCreate()# 加载莺尾花数据创建DataFramedata=spark.read.csv("file:/usr/local/spark/mycode/Mllib/iris.csv",inferSchema=True,header=False)# 使用toDF()方法为data指定列名iris=data.toDF("sepalJength","sepal_width","petaljength","petal_width","label")# 显示iris中的数据iris.show()【运行结果】在PyCharm中运行代码,控制台显示Iris数据集的前20行数据,如图5-4所示。十十.十Isepal_le

    注意事项

    本文(《Spark大数据技术与应用案例教程》教案第15课加载鸢尾花数据.docx)为本站会员(王**)主动上传,优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知优知文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 yzwku网站版权所有

    经营许可证编号:宁ICP备2022001189号-2

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知优知文库网,我们立即给予删除!

    收起
    展开