Spark入门:SparkMLlib介绍

机器学习可以看做是一门人工智能的科学,该领域的主要研究对象是人工智能。机器学习利用数据或以往的经验,以此优化计算机程序的性能标准。一种经常引用的英文定义是:

AcomputerprogramissaidtolearnfromexperienceEwithrespecttosomeclassoftasksTandperformancemeasureP,ifitsperformanceattasksinT,asmeasuredbyP,improveswithexperienceE。

机器学习强调三个关键词:算法、经验、性能,其处理过程如上图所示。在数据的基础上,通过算法构建出模型并对模型进行评估。评估的性能如果达到要求,就用该模型来测试其他的数据;如果达不到要求,就要调整算法来重新建立模型,再次进行评估。如此循环往复,最终获得满意的经验来处理其他的数据。机器学习技术和方法已经被成功应用到多个领域,比如个性推荐系统,金融反欺诈,语音识别,自然语言处理和机器翻译,模式识别,智能控制等。

传统的机器学习算法,由于技术和单机存储的限制,只能在少量数据上使用。即以前的统计/机器学习依赖于数据抽样。但实际过程中样本往往很难做好随机,导致学习的模型不是很准确,在测试数据上的效果也可能不太好。随着HDFS(HadoopDistributedFileSystem)等分布式文件系统出现,存储海量数据已经成为可能。在全量数据上进行机器学习也成为了可能,这顺便也解决了统计随机性的问题。然而,由于MapReduce自身的限制,使得使用MapReduce来实现分布式机器学习算法非常耗时和消耗磁盘IO。因为通常情况下机器学习算法参数学习的过程都是迭代计算的,即本次计算的结果要作为下一次迭代的输入,这个过程中,如果使用MapReduce,我们只能把中间结果存储磁盘,然后在下一次计算的时候从新读取,这对于迭代频发的算法显然是致命的性能瓶颈。

MLlib是Spark的机器学习(MachineLearning)库,旨在简化机器学习的工程实践工作,并方便扩展到更大规模。MLlib由一些通用的学习算法和工具组成,包括分类、回归、聚类、协同过滤、降维等,同时还包括底层的优化原语和高层的管道API。具体来说,其主要包括以下几方面的内容:

Spark机器学习库从1.2版本以后被分为两个包:

使用MLPipelineAPI可以很方便的把数据处理,特征转换,正则化,以及多个机器学习算法联合起来,构建一个单一完整的机器学习流水线。这种方式给我们提供了更灵活的方法,更符合机器学习过程的特点,也更容易从其他语言迁移。Spark官方推荐使用spark.ml。如果新的算法能够适用于机器学习管道的概念,就应该将其放到spark.ml包中,如:特征提取器和转换器。开发者需要注意的是,从Spark2.0开始,基于RDD的API进入维护模式(即不增加任何新的特性),并预期于3.0版本的时候被移除出MLLib。

在接下来的几个章节里,我们将从基本的机器学习算法入手,循序渐进的来学习Spark平台下的机器学习。

厦门大学软件工程系副教授,2009年毕业于中国人民大学计算机系获工学博士学位。主要研究方向是网络数据管理,车载网络,大数据分析和管理。

THE END
1.教程:生成Spark机器学习应用将Anaconda scikit-learn 库用于 Spark 机器学习 HDInsight 中的 Apache Spark 群集包含 Anaconda 库。 它还包括适用于机器学习的 scikit-learn 库。 该库还包含用于直接从 Jupyter Notebook 生成示例应用程序的各种数据集。 有关使用 scikit-learn 库的示例,请参阅https://scikit-learn.org/stable/auto_examples/https://docs.microsoft.com/zh-cn/azure/hdinsight/spark/apache-spark-ipython-notebook-machine-learning
2.Spark机器学习(第2版)? Spark项目管理委员会成员作品 ? 注重技术实践,通过大量实例演示如何创建有用的机器学习系统 简介 本书结合案例研究讲解Spark 在机器学习中的应用,并介绍如何从各种公开渠道获取用于机器学习系统的数据。内容涵盖推荐系统、回归、聚类、降维等经典机器学习算法及其实际应用。第2版新增了有关机器学习数学基础以及Sparhttps://www.ituring.com.cn/book/2041
3.Spark机器学习(豆瓣)图灵程序设计丛书(共107册),这套丛书还有 《挑战程序设计竞赛2 算法和数据结构》《数据结构与算法图解》《Hadoop深度学习》《持续交付》《短码之美》等。 喜欢读"Spark机器学习"的人也喜欢 ··· Python机器学习实践指南 6.5 颠覆大数据分析 7.5 社交网站的数据挖掘与分析(第2版) 6.4 推荐系统 7.6 发https://book.douban.com/subject/26593179/
4.《Spark机器学习》([南非]彭特里思(NickPentreath)著)简介Spark大数据Spark机器学习Spark高级数据Spark最佳实践Spark大数据新版 人民邮电出版社当当自营 进入店铺收藏店铺 商品详情 开本:16开 纸张:胶版纸 包装:平装 是否套装:否 国际标准书号ISBN:9787115399830 所属分类:图书>计算机/网络>人工智能>机器学习 本商品暂无详情。 http://product.dangdang.com/23769060.html
5.1Spark机器学习sparkMLlib入门spark2.11和2.12区别1 Spark机器学习 spark MLlib 入门 开始学习sparkml了,都知道spark是继hadoop后的大数据利器,很多人都在使用spark的分布式并行来处理大数据。spark中也提供了机器学习的包,就是MLlib。 MLlib中也包含了大部分常用的算法,分类、回归、聚类等等,借助于spark的分布式特性,机器学习在spark将能提高很多的速度。MLlib底层https://blog.csdn.net/tianyaleixiaowu/article/details/82733440
6.[23章全]大数据硬核技能进阶Spark3实战智能物业运营系统实时流处理:Spark的流处理模块Spark Streaming可以实时处理数据流,并提供了低延迟的处理能力,适用于实时推荐、实时分析、日志处理等应用场景。 机器学习:Spark提供了机器学习库MLlib,包括各种常用的机器学习算法和工具,可以在大规模数据上进行机器学习任务,如分类、回归、聚类、推荐等。 https://www.bilibili.com/read/cv32064557/
7.横向对比三大分布式机器学习平台:SparkPMLSTensorFlow分布式机器学习是机器学习领域的一大主要研究方向。近日纽约州立大学布法罗分校计算机科学与工程教授、Petuum Inc. 顾问 Murat Demirbas 和他的两位学生一起发表了一篇对比现有分布式机器学习平台的论文,对 Spark、PMLS 和 TensorFlow 等平台的架构和性能进行了比较和介绍。Murat Demirbas 教授在论文公布后还发表了一篇解读https://www.51cto.com/article/547297.html
8.Spark机器学习库(MLlib)指南之简介及基础统计问题向导: (1)Spark机器学习库是什么,目标是什么? (2)MLlib具体提供哪些功能? (3)MLlib为什么要改用基于DataFrame的API?1.Spark机器学习库(MLlib)指南MLlib是Spark机器学习库,它的目标是使机器学习算法可扩展和易于使用。它提供如下工具: 机器学习(ML)算法:常用的学习算法,如分类、回归、聚类和协同过滤 https://cloud.tencent.com/developer/article/1072951
9.(课程)基于Spark的机器学习经验我之前写文章说,Spark-Shell 是个伟大的创新,加上牛逼的Scala语言,写spark程序就和写普通的shell脚本(或者类似python程序)一样容易。问题是,原来的shell,python只能在单机工作,现在你写的每一行代码,都被放到了一个几百台,几千台的规模上去做了。 以前的统计/机器学习依赖于数据抽样,抽样从统计的角度来看,如果足https://www.jianshu.com/p/8d55a3be3f6a
10.Spark机器学习(彭特里思著)中文pdf完整版[11MB]电子书下载《Spark机器学习》每章都设计了案例研究,以机器学习算法为主线,结合实例探讨了Spark 的实际应用。书中没有让人抓狂的数据公式,而是从准备和正确认识数据开始讲起,全面涵盖了推荐系统、回归、聚类、降维等经典的机器学习算法及其实际应用。 本书介绍了Spark的基础知识,从利用Spark API来载入和处理数据,到将数据作为多种https://www.jb51.net/books/532769.html
11.如何在Spark机器学习中应用scikitlearn?Python教程如何在 Spark 机器学习中应用 scikit-learn? 最近在写spark下的机器学习程序,用RDD编程模型。spark自带的机器学习算法API局限太多。想请问各路大侠,能不能再spark的编程模型下引用scikit-learn? 回复内容: 和以上几个观点不同,我认为在PySpark下引用scikit-learn可能的,但不能直接简单粗暴地移植,而是要相应地对各自https://www.php.cn/php-weizijiaocheng-88868.html
12.SparkMLlib机器学习算法与源码解析培训炼数成金黄美灵,Spark爱好者,现从事移动互联网的计算广告和数据变现工作,专注Spark机器学习在计算广告中的研究和实践。现著有:《Spark MLlib机器学习:算法、源码及实战详解》 CSDN博客专家:http://blog.csdn.net/sunbow0 课程试听: 新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取100元固定收费+300元暂存学费,学习圆http://www.dataguru.cn/article-9322-1.html
13.《SparkMLlib机器学习实践(第2版)》(王晓华)摘要书评试读清华大学出版社(Tsinghua University Press) >Spark MLlib机器学习实践(第2版)清华大学出版社京东自营官方旗舰店 登录查看更多图片 > Spark MLlib机器学习实践(第2版) 王晓华 著 京东价 ¥ 促销 展开促销 配送至 --请选择-- 支持 加入购物车 https://item.jd.com/12056577.html
14.Spark机器学习库指南[Spark1.3.1版]——朴素贝叶斯(NaiveBayes朴素贝叶斯是一个简单的多分类算法。之所以称为朴素,是因为该算法假设特征之间相互独立。朴素贝叶斯的训练非常高效:通过一趟遍历训练数据,计算出每个特征对于给定标签的条件概率分布,然后应用贝叶斯定理计算标签对于观察值的条件概率分布,最后使用这个条件概率进行预测。 https://vimsky.com/article/537.html
15.机器学习KNN算法原理&&Spark实现机器学习-KNN算法原理 && Spark实现 不懂算法的数据开发者不是一个好的算法工程师,还记得研究生时候,导师讲过的一些数据挖掘算法,颇有兴趣,但是无奈工作后接触少了,数据工程师的鄙视链,模型>实时>离线数仓>ETL工程师>BI工程师(不喜勿喷哈),现在做的工作主要是离线数仓,当然前期也做过一些ETL的工作,为了职业的https://www.imooc.com/article/314671
16.大数据平台核心技术(Spark)Spark GraphX—寻找社交媒体中的“影响力用户” 实验数 2 6-2 Spark GraphX—构建图及相关操作 实验数 2 6-3 Spark GraphX—预测社交圈子 实验数 3 Spark机器学习 Spark MLlib Spark中可以扩展的机器学习库,它有一系列的机器学习算法和实用程序组成。 https://www.educoder.net/paths/12027