乐趣区

关于人工智能:Databricks入门分析COVID19

作者 |Renan Ferreira
编译 |VK
起源 |Towards Datas Science

典型的数据迷信工作流由以下步骤组成:

确定业务需要 -> 数据获取 -> 数据筹备 -> 数据分析 -> 共享数据见解

每一个步骤都须要一套专业知识,这些专业知识可分为:

数据工程师:开发、构建、测试和保护数据管道

数据科学家:应用各种办法建设数据模型(机器学习模型)

数据分析师:获取数据工程师筹备的数据,以图形、图表和仪表板的模式从中提取见解(商业智能)

平台管理员:负责管理和反对数据基础设施(DevOps)

Databricks 是一个对立的平台,它为每个作业提供了必要的工具。在本文中,咱们将通过创立一个数据管道并指出每个团队成员的职责来剖析巴西的 COVID-19 数据。

筹备

要实现下一步,你须要拜访 Databricks 帐户。最简略的启动办法是在 https://community.cloud.datab…

集群创立(平台管理员)

第一步是配置集群。Databricks 是一个基于 Spark 的平台,是最风行的大数据分析框架之一。Spark 实质上是一个分布式系统。驱动程序是集群的协调器,工作节点负责沉重的工作。

平台管理员负责依据用例、spark 版本、worker 节点数量和主动调整配置抉择适当的虚拟机系列。例如,ETL 过程可能须要内存优化的设施,而沉重的机器学习训练过程可能在 gpu 上运行。

转到 Clusters 页面,应用 6.6ML 运行时创立一个新的集群。如果你应用的是 Azure Databricks 或 AWS,则须要抉择驱动程序和 worker 节点的 VM 系列。对于本教程,你能够抉择最便宜的。

数据获取

数据获取可能是一个具备挑战性的畛域。通常,公司将数据存储在多个数据库中,而当初数据流的应用十分广泛。侥幸的是,Databricks 与 Spark 和 Delta-Lake 相结合,能够帮忙咱们为批处理或流式 ETL(提取、转换和加载)提供一个简略的接口。

在本教程中,咱们将从最简略的 ETL 类型开始,从 CSV 文件加载数据。

首先,咱们须要下载数据集。拜访以下网址:

https://github.com/relferreir…

下载文件 caso.csv.gz

解压缩该文件,拜访“数据”菜单,而后单击“增加数据”按钮。接下来,上传先前下载的 CSV 文件。

上传实现后,咱们将应用数据集中显示的信息创立一个新表。单击 Create Table UI,将表重命名为 covid,将第一行设置为题目,最初单击 Create 按钮。

数据分析

创立了表之后,咱们就能够开始剖析数据集了。首先,咱们须要创立一个新的 python notebook。

Worspace > Users > YOUR EMAIL

单击箭头并创立一个新的 Notebook

只管 Databricks 是一个 python Notebook,但它反对 Notebook 内的多种语言。在咱们的例子中,咱们将次要应用 SparkSQL。如果你相熟 SQL,SparkSQL 会让你感觉像家一样。

让咱们从查看新表开始:

%sql
SELECT * FROM covid

你应该看到这样的表:

作为数据分析员,你应该可能提取无关数据的有价值的信息。首先,咱们须要了解表中每一列的含意。一种办法是应用 DESCRIBE 函数:

%sql
DESCRIBE covid

通过剖析这两个表,咱们能够推断出,当列 place_type 为 state 时,每一行示意该 state 的总数。让咱们试着画出人口最多的三个州的死亡人数的演变:

%sql
SELECT date, state, deaths FROM covid WHERE state in (“MG”,“RJ”,“SP”) and place_type =“state”

单击 Bar Chart 按钮,Plot 选项,并对 Line chart 应用以下配置:

当初咱们有了大风行期间死亡人数演变的一个很好的代表。例如,咱们能够将此图嵌入仪表板,以揭示这些州的人口。

数据迷信

接下来,咱们将尝试预测先前绘制的工夫序列的将来值。为此,咱们将应用一个名为 Prophet 的 Facebook 库

首先,咱们须要装置一些依赖项。

Clusters > COVID > Libraries

并应用 PyPI 装置以下依赖项

  • pandas
  • pystan
  • fbprophet

咱们将尝试预测 Minas Gerais(MG)将来的死亡人数。所以第一步是收集咱们的数据。

兴许你须要革除你 Notebook 的状态

import pandas as pd
import logging

logger = spark._jvm.org.apache.log4j
logging.getLogger("py4j").setLevel(logging.ERROR)

query = """SELECT string(date) as ds, int(deaths) as y FROM covid WHERE state ="MG"and place_type ="state"order by date"""

df = spark.sql(query)
df = df.toPandas()
display(df)

接下来,咱们将应用 Prophet 拟合模型并最终绘制预测

from fbprophet import Prophet

m = Prophet()
m.fit(df)

future = m.make_future_dataframe(periods=30)

forecast = m.predict(future)

fig1 = m.plot(forecast)

你应该看到上面的图表和预测:

论断

咱们的指标是演示数据迷信工作流的所有步骤。这就是为什么咱们没有形容工夫序列模型是如何工作的。如果你遵循本教程,你应该对 Databricks 平台有一个很好的理解。

此公共存储库中提供了残缺的 Notebook:https://github.com/relferreir…

原文链接:https://towardsdatascience.co…

欢送关注磐创 AI 博客站:
http://panchuang.net/

sklearn 机器学习中文官网文档:
http://sklearn123.com/

欢送关注磐创博客资源汇总站:
http://docs.panchuang.net/

退出移动版