spark python 机器学习(python和spark)

技术机器学习实践中如何将Spark与Python结合本篇文章给大家分享的是有关机器学习实践中如何将Spark与Python结合,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小

本文是关于如何在机器学习实践中结合Spark和Python。边肖觉得很实用,所以分享给大家学习。希望你看完这篇文章能有所收获。让我们和边肖一起看看。

Apache Spark是处理和使用大数据应用最广泛的框架之一,Python是数据分析、机器学习等领域应用最广泛的编程语言之一。如果你想要更好的机器学习能力,为什么不把Spark和Python一起用呢?

在国外,Apache Spark开发者的平均年薪为11万美元。毫无疑问,Spark在这个行业得到了广泛的应用。Python也因其丰富的库集而被大多数数据科学家和分析师使用。两者融合并没有那么难。Spark是用Scala语言开发的,和Java非常相似。它将程序代码编译成JVM字节码,用于Spark大数据处理。为了集成Spark和Python,Apache Spark社区发布了PySpark。

Apache Spark是Apache软件基金会为实时处理开发的开源集群计算框架。Spark为编程整个集群提供了一个接口,具有隐式数据并行性和容错性。

以下是Apache Spark的一些特性,它们比其他框架有优势:

机器学习实践中如何将Spark与Python结合

速度:比传统大规模数据处理框架快100倍。

强大的缓存:简单编程层提供强大的缓存和磁盘持久化功能。

部署:可以通过Mesos、Yarn或者Spark自己的集群管理器进行部署。

实时:内存计算,实时计算,低延迟。

多语种:这是框架最重要的特性之一,因为它可以用Scala、Java、Python和r编程。

虽然Spark是在Scala中设计的,比Python快10倍,但是Scala只有在使用的内核数量很少的情况下才会显示出它的速度优势。由于现在大多数分析和处理都需要大量的内核,Scala的性能优势并不大。

Python相对来说更容易让程序员学习,因为它有丰富的语法和标准库。此外,它是一种动态类型语言,这意味着RDD可以存储许多类型的对象。

虽然Scala拥有SparkMLlib,但是它没有足够的库和工具来实现机器学习和NLP。此外,Scala缺乏数据可视化。

机器学习实践中如何将Spark与Python结合

 使用Python设置Spark(PySpark)

要先下载并安装spark,请解压缩Spark文件后,安装它并将其添加到。bashrc文件路径,需要输入source.bashrc。

机器学习实践中如何将Spark与Python结合

要打开PySpark shell,您需要输入命令。/bin/pyspark

  PySpark SparkContext和数据流

用Python连接Spark可以用RD4s和库Py4j来实现。PySpark Shell将Python API链接到Spark Core并初始化Spark Context。SparkContext是Spark应用的核心。

1.Spark Context设置内部服务并建立与sparkcontext执行环境的连接。

2.驱动程序中的Spark Context对象协调所有分布式进程,并允许资源分配。

3.集群管理器执行器,是带有逻辑的JVM进程。

4.sparkcontext对象将应用程序发送给执行器。

5.火花上下文在每个执行器中执行任务。

  PySpark KDD用例

现在我们来看一个用例:数据来源是KDD‘99杯(国际知识发现与数据挖掘工具大赛,国内也有类似的大赛开放数据集,比如知乎)。我们在这里取一部分数据集,因为原始数据集太大了。

机器学习实践中如何将Spark与Python结合

  创建RDD:

现在我们可以用这个文件来创建我们的RDD。

he.yisu.com/upload/information/20200703/144/40541.png” alt=”机器学习实践中如何将Spark与Python结合”>

  过滤

  假设我们要计算我们在数据集中有多少正常的相互作用。,可以按如下过滤我们的raw_data RDD。

机器学习实践中如何将Spark与Python结合

  计数:

  现在我们可以计算出新RDD中有多少元素。

机器学习实践中如何将Spark与Python结合

  输出:

机器学习实践中如何将Spark与Python结合

  制图:

  在这种情况下,我们想要将数据文件作为CSV格式文件读取。我们可以通过对RDD中的每个元素应用lambda函数。如下所示,这里我们将使用map()和take()转换。

机器学习实践中如何将Spark与Python结合

  输出:

机器学习实践中如何将Spark与Python结合

  拆分:

  现在,我们希望将RDD中的每个元素都用作键值对,其中键是标记(例如正常值),值是表示CSV格式文件中行的整个元素列表。 我们可以按如下进行,这里我们使用line.split()和map()。

机器学习实践中如何将Spark与Python结合

  输出:

机器学习实践中如何将Spark与Python结合

  收集:

  使用collect()动作,将RDD所有元素存入内存。因此,使用大型RDD时必须小心使用。

机器学习实践中如何将Spark与Python结合

  输出:

机器学习实践中如何将Spark与Python结合

  当然,这比我们之前的任何操作花费的时间都要长。每个具有RDD片段的Spark工作节点都必须进行协调,以便检索其各部分内容,然后将所有内容集合到一起。

  作为结合前面所有内容的最后一个例子,我们希望收集所有常规交互作为键值对。

机器学习实践中如何将Spark与Python结合

  输出:

机器学习实践中如何将Spark与Python结合

以上就是机器学习实践中如何将Spark与Python结合,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149950.html

(0)

相关推荐

  • 冷造句,一阵寒风吹过我冷得怎么造句

    技术冷造句,一阵寒风吹过我冷得怎么造句1 数九寒天冷造句,冰封千里。整个世界成了只大冰箱,山冷得在颤抖,河冻得僵硬了,空气也似乎要凝固起来。2 天气冷得能把湖水结成厚冰刚烧开的水,一落地就结冰了。3 春天的风是暖暖的风,

    生活 2021年10月20日
  • 酸菜素馅饺子都放啥,素酸菜粉条饺子馅怎么调

    技术酸菜素馅饺子都放啥,素酸菜粉条饺子馅怎么调酸菜在我们的饮食中是开胃小菜、下饭菜酸菜素馅饺子都放啥,也可以作为调味料来制作菜肴,酸菜配上粉条做成水饺,味道真的好极了。今天不做肉的饺子,就做素的“酸菜粉条饺子”,要多包一

    生活 2021年11月1日
  • KEGG Module 数据库的原理是什么

    技术KEGG Module 数据库的原理是什么KEGG Module 数据库的原理是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。具有相同功能的基因

    攻略 2021年12月2日
  • 【CSS】让图片在高宽固定的div里水平垂直都居中的三种办法

    技术【CSS】让图片在高宽固定的div里水平垂直都居中的三种办法 【CSS】让图片在高宽固定的div里水平垂直都居中的三种办法效果:实现一:绝对定位加精算!DOCTYPE html
    html
    head

    礼包 2021年12月21日
  • Windows如何实现任务计划隐藏显示黑窗口

    技术Windows如何实现任务计划隐藏显示黑窗口小编给大家分享一下Windows如何实现任务计划隐藏显示黑窗口,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Windows 任务计划隐藏显示黑窗口,主要通

    攻略 2021年11月18日
  • sqlite怎么使用子查询函数(sqlite select语句)

    技术SQLite中的SELECT子句如何使用通配符小编给大家分享一下SQLite中的SELECT子句如何使用通配符,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!SQLite中的SELECT子句使用通配符

    攻略 2021年12月18日