集团主站
欢迎来到成都达内官方网站!达内—美国上市公司 亿元级外企IT培训企业!
成都it培训哪家好
成都it培训哪家好
全国服务监督电话:15023458194  |   联系客服   |
当前位置:主页 > 培训课程 > 人工智能 >

如何将Spark与Python结合,成都人工智能前景如何?

发布者: 周老师     浏览次数:

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

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

在国外,Apache Spark开发人员的平均年薪为110,000美元。毫无疑问,Spark在这个行业中被广泛使用。由于其丰富的库集,Python也被大多数数据科学家和分析专家使用。二者集成也并没有那么困难,Spark用Scala语言开发,这种语言与Java非常相似。它将程序代码编译为用于Spark大数据处理的JVM字节码。为了集成Spark和Python,Apache Spark社区发布了PySpark。

Apache Spark是Apache Software Foundation开发的用于实时处理的开源集群计算框架。Spark提供了一个接口,用于编程具有隐式数据并行和容错功能的整个集群。

下面是Apache Spark的一些特性,它比其他框架更具优势:


  速度:比传统的大型数据处理框架快100倍。
  强大的缓存:简单的编程层提供强大的缓存和磁盘持久性功能。
  部署:可以通过Mesos、Yarn或Spark自己的集群管理器进行部署。
  实时:内存计算,实时计算且低延迟。
  Polyglot:这是该框架最重要的特性之一,因为它可以在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设置内部服务并建立到Spark执行环境的连接。
  2. 驱动程序中的Spark Context对象协调所有分布式进程并允许进行资源分配。
  3. 集群管理器执行程序,它们是具有逻辑的JVM进程。
  4. Spark Context对象将应用程序发送给执行者。
  5. Spark Context在每个执行器中执行任务。

PySpark KDD用例

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

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

创建RDD:

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

机器学习实践:如何将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结合?



达内人工智能培训课程从理论到项目实战,层层深入学习。课程主要从Python基础扫盲、Python项目、深度学习、推荐算法及数据挖掘、综合项目实战以及职业素养等全方位讲解,更加注重于实际操作以及开发经验的讲解,对学生的日常工作或未来发展将起到十分重要的指导作用。

  第一阶段:Python开发基础

  1、Python基础语法

  2、Python函数高级

  3、Python面向对象编程

  4、Python模块、包

  5、项目实战,2048游戏设计、学生信息管理系统,飞机大战

  第二阶段:Python高级编程

  1、关系型数据

  2、Python多进程、多线程

  3、Python正则表达式

  4、完成爬虫项目,学习信息管理系统网络版,聊天软件开发

  第三阶段、Python全栈式WEB工程师

  1、WEB前端软件开发技术

  2、 WEB后端软件开发技术

  3、Python 服务端软件开发技术2

  4、完成东方财富智能云系统的数据获取、显示、账号管理、虚拟交易功能

  第四阶段、Python爬虫工程师、大数据分析工程师,人工智能工程师高级应用

  1、Python 爬虫工程师

  2、大数据分析技术

  3、人工智能,机器学习,深度学习技术

  4、完成东方财富智能云系统全部功能开发、整合、测试、提交、部署工作

  适合什么样的人学习?

  想从事IT类岗位的任何大专、本科类院校学员及社会人士

  想先从0基础入手的Python开发爱好者

  对前途迷茫、希望能丰富自己的职场技能小白人员

  课后收益

  找到一份收入满意的工作

  锐化逻辑思维

  展示你能够学习新事物的能力

  加深对人工智能未来的理解

  迎接未来世界的挑战,让自己不失业

  报名达内2018年6月免费训练营课程

  学习最新热门IT技术

  找一份自己满意的高薪工作

  5天免费学习,不要钱!!!


(责任编辑:周老师)
最新开班
  • 成都Java培训班
    免费试听名额发放中...
  • 成都C++培训班
    免费试听名额发放中...
  • 成都PHP培训班
    免费试听名额发放中...
  • 成都网络工程培训班
    免费试听名额发放中...
  • 成都Unity3D培训班
    免费试听名额发放中...
  • 成都大数据培训班
    免费试听名额发放中...
  • 成都uid培训班
    免费试听名额发放中...
  • 成都会计培训班
    免费试听名额发放中...
  • 成都Python培训班
    免费试听名额发放中...
  • 成都嵌入式培训班
    免费试听名额发放中...
  • 成都web培训班
    免费试听名额发放中...
  • 成都软件测试培训班
    免费试听名额发放中...
在线留言
提交

校区地址:绵阳市涪城区临园路东段68号富临大都会7栋3单元9层12号

联系电话:15023458194

公交路线:富乐路口凯德广场(10路;29路;3路;15路;11路;15a路;71路)

校区地址:成都市锦江区东大街紫东楼段35号明宇金融广场19楼1903室

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市高新区奥克斯广场蜀锦路209号一楼商铺

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都锦江区东大街芷泉街229号东方广场C座3楼303

联系电话:15023458194

公交路线:芷泉街(188路;115路;515路;236路;505路;501路;84路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市武侯区佳灵路3号红牌楼广场2号写字楼11楼1115号

联系电话:15023458194

公交路线:红牌楼东(11路;92路;100路;111路;139路;g28路;快速公交K1/K2) 地铁路线:红牌楼站(地铁3号线)

校区地址:成都市锦江区红星路二段70号四川日报大厦502-2

联系电话:15023458194

公交路线:市二医院站(6路;49路;102路;5路;37路;g92路;) 地铁路线:地铁市二医院(地铁3号线)

校区地址:成都市锦江区东大街紫东段35号明宇广场2306

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:四川省成都市武侯区高新科技孵化园9号园区E座7楼

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都市成华区建设路10号万科钻石广场B座5楼

联系电话:15023458194

公交路线:建设路中(6路;14路;42路;72路;76路;1010路;)

校区地址:成都市高新区奥克斯广场B座1708

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

了解达内动态
关注成都达内教育公众号

首页 | 关于达内 | 课程中心 | 专家师资 | 视频教程 | 学员空间 | 校企合作 | 新闻资讯 | 就业指导 | 网站地图

20016-2025 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56