Apache Spark机器学习.1.8 Spark notebook简介

简介:

1.8 Spark notebook简介


在本节中,我们首先讨论有关面向机器学习的notebook方法。然后,我们介绍R Markdown,以其作为一个成熟的notebook案例,最后介绍Spark中的R notebook。

学习完本节,读者将掌握notebook相关的方法和概念,并为将其用于管理和开发机器学习项目做好准备。

1.8.1 面向机器学习的notebook方法

notebook已经成为众人青睐的机器学习工具,因为该工具既能动态驱动,还具备可重复生成的特点。

大部分notebook接口由一系列代码块(称为单元)构成。其开发过程是一个探索的过程,开发者借此可以在一个单元中开发和运行代码,然后基于上一个单元的结果继续编写下一单元代码。特别是机器学习从业者分析大型数据集时,这种交互式方法利于从业者迅速发现数据模式或提出数据洞见。因此,notebook型的开发过程提供了探索式和交互式途径来编写代码,并可立即检查结果。

notebook允许用户在同一文件中无缝地融合代码、输出和注释,这便于机器学习从业者在后一阶段复用他们的工作。

采用notebook方法确保了可复用性,分析与计算、展现的一致性,从而结束了研究管理的复制和粘贴方式。

具体而言,运用notebook,用户可以实现:

迭代分析

透明报告

无缝协作

清晰计算

涵盖结果等的评估推理

以统一方式,notebook方法也为机器学习实践集成提供了许多分析工具

关于使用重现方法的更多信息,请访问:http://chance.amstat.org/2014/09/reproducible-paradigm/(R Markdown)。

R Markdown是一款非常流行的工具,可以帮助数据科学家和机器学习从业者生成动态报告,也能帮助他们重复使用分析流程。R Markdown是一种先进的notebook工具。

参照RStudio的说明:

“R Markdown是一种标签格式,允许方便地制作来源于R语言中可复写的web报表。通过把Markdown核心语法(一种易于编写网页内容的纯文本格式)与嵌入运行的R代码块连接,输出结果将包含在最终文件中。”

这样,我们可以使用R语言和Markdown程序包加上其他一些第三方相关的程序包,比如knitr,编写可复用的分析报告。然而,如果整合使用RStudio和Markdown包,将使数据科学家的工作变得更简便。

对R语言用户来说,使用Markdown非常容易。下面我们通过一个例子,说明如何使用三个简单的步骤创建一个报告。

第1步:做好软件准备

1.下载RStudio软件,网址:http://rstudio.org/。

2.设置RStudio选项:在菜单“Tools >Options”下,单击“Sweave”,选择“Knitr at Weave Rnw files using Knitr”。

第2步:安装Knitr包

1.在RStudio中安装包,你可以选择菜单“Tools >Install Packages”,然后可选择一个CRAN镜像站点和包进行安装。安装包的另一种方法是使用函数install.packages()。

2.为安装源自Carnegi Mellon Statlib CRAN镜像站点下的knitr包,我们可以使用函数命令:install.packages(“knitr”, repos = “http://lib.stat.cmu.edu/R/CRAN/”)。

第3步:创建一个简单的报告

1.单击菜单“File >New >R Markdown”,创建一个空白R Markdown文件。接下来将打开一个新建的.Rmd文件。

2.当你创建了空白文件,会看到一个已经写好的模块。

一个简单的方法是用你自己的信息替换相应的部分内容。

 

3.输入所有信息后,单击“Knit HTML”。

 

4.现在你会看到已经生成一个.html文件。

1.8.2 Spark notebook

目前,有一些与Apache Spark计算兼容的notebook。其中,由Spark原创团队开发的Databricks是最好的。Databricks notebook与R Markdown类似,但Databricks notebook实现了与Apache Spark无缝集成。

除了SQL、Python和Scala,现在Databricks notebook也可用于R语言,并且Spark 1.4默认包含了SparkR包。也就是说,从现在开始,数据科学家和机器学习从业者在R语言环境中通过在Spark之上编写和运行R notebook,就可毫不费力地从Apache Spark强大的能力中获益。

除了SparkR,通过运用install.packages(),能够十分方便地在Databricks的R notebook中安装R程序包。因此,数据科学家和机器学习从业者运用Databricks R notebook,即可获得Spark上R Markdown的技术功效。数据科学家和机器学习从业者可以(使用SparkR)访问和操作分布式存储(如亚马逊S3)或数据仓库(如Hive)上的大数据集(例如TB级的数据)。甚至,他们可以收集SparkR DataFrame的数据到本地的数据框中。

可视化是机器学习项目的重要组成部分。在R notebook中,数据科学家和机器学习从业者可以使用任何R语言的可视化库,包括R基本绘图函数,ggplot或者Lattice。如同R Markdown,绘图在R notebook中内联显示。用户可以对R DataFrame或SparkR DataFrame应用Databricks的内置函数display()。其结果在notebook显示为一个表,随后点击就可绘图。类似于其他(如Python notebook)的Databricks notebook,数据科学家还可以在R notebook里使用displayHTML()函数,生成任意基于HTML和Javascript的可视化。

Databricks端到端的解决方案也使建立从采集到生产的机器学习pipeline模型更加简便,应用于R notebook时,数据科学家可在Spark集群上安排R notebook作业的运行。包括可视化在内的每个运行作业的结果,可立即被浏览,这样使得工作到生产力的转化效率更加简洁快速。

综上所述,Databricks R notebook运用简约的Spark集群管理、丰富的一键可视化和生产作业的即时部署,让R语言用户充分利用了Spark的强大功能。Databricks R notebook提供了一个30天的免费试用。

请访问:https://databricks.com/blog/2015/07/13/introducing-r-notebooks-in-dat-a-br-icks.html。

相关文章
|
2月前
|
存储 机器学习/深度学习 Apache
如何将Apache Hudi应用于机器学习
如何将Apache Hudi应用于机器学习
23 0
|
2月前
|
SQL 机器学习/深度学习 分布式计算
Spark【基础知识 01】【简介】(部分图片来源于网络)
【2月更文挑战第12天】Spark【基础知识 01】【简介】(部分图片来源于网络)
27 2
|
3月前
|
Java 应用服务中间件 Apache
简介Nginx,Tomcat和 Apache
简介Nginx,Tomcat和 Apache
简介Nginx,Tomcat和 Apache
|
2天前
|
机器学习/深度学习 分布式计算 算法
使用Spark进行机器学习
【5月更文挑战第2天】使用Spark进行机器学习
9 2
|
2月前
|
存储 机器学习/深度学习 Apache
Apache Hudi与机器学习特征存储
Apache Hudi与机器学习特征存储
29 0
|
2月前
|
消息中间件 JSON Kafka
实战 | Apache Hudi回调功能简介及使用示例
实战 | Apache Hudi回调功能简介及使用示例
17 0
|
2月前
|
存储 机器学习/深度学习 分布式计算
Apache Hudi在Hopsworks机器学习的应用
Apache Hudi在Hopsworks机器学习的应用
29 0
|
2月前
|
分布式计算 Spark
Spark【Spark学习大纲】简介+生态+RDD+安装+使用(xmind分享)
【2月更文挑战第14天】Spark【Spark学习大纲】简介+生态+RDD+安装+使用(xmind分享)
33 1
|
2月前
|
消息中间件 分布式计算 Serverless
CDC一键入湖:当 Apache Hudi DeltaStreamer 遇见 Serverless Spark
CDC一键入湖:当 Apache Hudi DeltaStreamer 遇见 Serverless Spark
53 2
|
4月前
|
机器学习/深度学习 分布式计算 算法
Spark MLlib简介与机器学习流程
Spark MLlib简介与机器学习流程

推荐镜像

更多